首页
学习
活动
专区
工具
TVP
发布

解密数字证书 支付安全有他守护

互联网时代,我们几乎每天都在网上消费,“隔空转账”不同于现金交易,支付安全需要用技术手段进行保障,数字证书就扮演着这样一个角色。数字证书的理论体系和数学算法虽然早已存在,但真正让大家近距离接触到并普遍使用的还是网银时代的到来。随着2004年8月28日《中华人民共和国电子签名法》颁布以及中国人民银行对于银行大额转账提出要求,使用植入了数字证书的“网银盾”一时成了各大银行的“标配”,开始蓬勃发展。

而到底为什么需要使用这项技术呢? 这是因为,在进行网络转账的时候数据都是在互联网上流转,不可能“一手交钱一手交货”,那我们在数字支付中很明显就面临几个直接的问题:

如何确保交易的安全进行、没有篡改?

举例来说,如果我买了一件100元的衣服,付款时候也显示付款100元,结果之后发现银行卡扣了1000元,我认为这个是系统故障或者是故意欺诈,但如何证明我当时看到的确实是100元?

如何避免身份冒用?

一笔几十万元的巨大金额交易,发生了纠纷,一方说,这不是我付的钱,另一方说,就是你,我亲眼看到。这种情况到底怎么鉴定、怎么证明?

而数字证书,正适合解决这些问题。

公钥密码学

数字证书为何能解决安全交易防篡改、以及身份认证的问题呢?虽然可以简单的将个人数字证书比作一个人的“数字身份证”,但实际理论并不如此简单,毕竟不能“出示”数字证书就解决问题。

这里就要提到目前数字正式使用的密码学原理“公钥密码学”,使用数学算法产生公钥-私钥对。此处不再赘述其实现原理,但是公钥密码学使用数学的方法使得持有私钥的使用者获得两个能力:

使用数学的方法可以使私钥的拥有者使用这把“钥匙”对数据进行签名操作,防止篡改。

使用数学的方法可证明使用者真正持有这个私钥,而没有这把“钥匙”的人无法做到。

这两个特性正对应了前面的需求:防止篡改与身份认证,这也是为什么选择数字证书的重要原因。

PKI-CA体系

虽然目前常用的数字证书使用了“公钥密码学”,但是纯粹的密码学实际上并不足以解决全部问题,这里牵扯到一个信任的问题。举例来说,如果两个人都声明,“钥匙”属于他,该如何分辨?如果“钥匙”仅仅是一串数学意义上的字符串,其对于身份认证的效力还是有限,这时就引入了CA,也就是认证中心这个概念。 “钥匙”的使用者在产生密钥对之后,将向CA也就是认证中心发起申请,将自己的真实身份和自己的“钥匙”进行绑定,而认证中心则对此予以证明,签发“数字证书”,至此才成为一个完整的数字证书。可以利用数学算法加密解密,签名,验证签名,并进行身份的核验。

数字证书的范围非常宽泛,并非自然人才能申请证书,一个企业,一个网站,甚至一台设备,都可以申请自己专属的数字证书,存放在U盾中为网银交易保驾护航的,就是这样一种数字证书。

网银时代的数字证书

硬件保护

数字密码钥匙,又称电子密码钥匙、USBkey,我们经常简称其“U盾”。

网银时代的数字证书存放在U盾中,但是当时作为“U盾”刚刚出现的时候,实际上和U盘看起来样子有些类似,如果不了解其中原理,可能以为就是一块特殊的专用u盘。 实际上,U盾最核心的部分还是其中的密码芯片,安全存储着用户真正的“钥匙”私钥。即便U盾丢失,攻击者也极难破解其中的内容获取用户的私钥。实际上,即便是在已经经过了那么多年的今天,也几乎看不到任何通过直接攻击破解U盾中密钥的案例。

升级换代

随着时代的变迁,像极了U盘的“U盾”开始渐渐不太像U盘了,为什么呢?我们可以看到“U盾”上面开始有了屏幕,还有按键,这也就是我们常说的“第二代U盾”“二代盾”。

屏幕和按键是仅仅为了功能的增强吗?其实还是安全上的考虑。

在早期时代,因为U盾看起来就像是U盘插在计算机上,如果使用者的计算机中了木马类软件,被完全控制了,是有可能产生攻击的,比如在交易之前偷偷修改金额,虽然数字证书可以保证交易金额不被篡改,但是在使用数字证书之前就是错误的数据,那数字证书也爱莫能助。以及可能发生通过远程控制输入了密码,完成转账。

这时候屏幕和按键就起到了关键的作用:

交易要素直接显示在U盾的屏幕上,所见即所签,U盾上面只要显示1万元,实际签名就一定是1万元,杜绝了“提前篡改”的可能性。

远程操控再强力,也难以模拟真正的物理按键点击,最后的交易确认在U盾上面点击,远程模拟操作也难以奏效。

随着监管的完善以及要求的提高,二代盾逐渐普及,在网银蓬勃发展的时代,好像人人都有好几个盾,对应了不同的银行。

移动时代的数字证书

移动时代的来临是不可阻挡的,随着手机和各种可携带的移动设备的增强,很多必须使用电脑才能完成的操作开始被替代,因为手机操作的便利性,人们逐渐倾向于能在手机上完成的事情就不再动用电脑。

在这个基础上,网银时代的“U盾”,使用率就开始逐渐下降并且走向没落,但是数字证书却没有,从前面我们了解到,数字证书是核心,而“U盾”是其载体和防护措施,那么既然时代变了,数字证书怎么才能在移动端中使用呢? 各种巧妙的方法被提出和实践:比如,可以给U盾加入蓝牙功能,变成蓝牙盾,手机和电脑都可以用;比如说将U盾做成IC卡的形状,方便携带,就和带了一张银行卡一样;又比如使用专门的SIM盾,将密钥存储在专用的SIM卡中,可以插入电话卡槽使用;还有就是在“可穿戴设备” 比如手环,智能手表,眼镜中加入芯片…..

以上这些方法,虽然都有具体实践,且安全度都相当不错,但是时至今日,我们眼见的这类产品却没有普及。 这是为什么呢?

不向外求

不向外求,其实是现在移动端的一个整合趋势,当手机查看时间极为方便时,仅为了看时间而戴手表的人就不会选择手表了。当手机摄像能力不停增强,卡片式照相机几乎绝迹了,而当手机的安全模块不断增强时,外部的设备就逐渐失去了用户的喜爱:如果手机就足够了,为何还要额外的设备呢? 诚然,额外设备带来的“分离式”认证安全性足够高,但用户倾向于使用便捷方案的脚步越来越快,除了一些巨额和超大额交易场景,对于“不便捷但安全”的场景越来越不再能接受,用户更喜欢“一机在手,天下我有”的舒适感,而这种趋势目前是很明显且很难被替代的。

这就导致了手机、移动端本身的功能越做越多,很多本属于其他专用设备的元件和芯片也开始加入手机内部,而外部专用设备的使用率明显下降。

化繁为简

除了“不向外求”之外,简化流程和便捷性也是产品的生死线。回想起来我们当年是怎么使用网银的,拿到u盾需要开启,可能还需要专门去一趟银行做授权,真正使用的时候还需要安装驱动程序,安装网银助手,为指定的浏览器安装插件,安装完之后如果出现兼容问题还需要换浏览器,这一系列的操作以现在来看实在过于繁杂。如果在APP中滑动一个按钮,验证一下信息就可以开启高级功能,显然更简单舒适,而且目前主流的支付应用也确实就是这么实践的。

兼容度与安全性的方案整合

说完了“不向外求”与“化繁为简”,这里还是需要面临一个问题,那就是移动端的显著差异性明显比PC时代更高。比如大家都有电脑,装的操作系统也都相似,而PC机器并没有“不向外求”的特点,那么一个当时的U盾产品,其实只需要适配操作系统和浏览器就好,基本不会在乎这个PC的品牌是什么,是戴尔还是神州,对于U盾来说几乎没有任何区别。

但是在移动端,就会有显著的差异,比如一家手机在其芯片中加入了安全模块,另一家并没有,而有的手机加入了3D结构光的人脸识别,其他手机没有等等,新技术的发展和竞争异常迅速和激烈,这也就导致了做方案的时候“兼容度”和“安全性”有了一定的“冲突”。

在这种情况下,多种移动端方案的整合就成了一种很合适的模式,比如CFCA的移动端解决方案就非常完善的解决了这个问题,利用密钥分隔算法实现云端与本地分别存储密钥的云证通产品可以兼容绝大多数智能机型,同时可以提供较高的安全服务保障,FIDO+产品可以提供基于本地金融级生物识别大额支付,且规避生物识别信息泄露问题,手机盾产品可以为手机提供最高安全级别的,U盾级别的的安全防护。

方案的结合不但可以保障安全,更为使用方提供了更全面的使用场景和模式,满足各种情况下的需求,这也是当前移动端生态中最好的兼容性与最强的安全性从冲突到统一的未来前景。

文|张翼

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190903A0BZSC00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券