电子支付领域密码算法与安全技术趋势研究


2017-6-2 19:54

作者:电子商务与电子支付国家工程实验室 狴犴安全团队

1、引言

电子支付在金融活动中占据越来越重要的位置,并呈现爆发性增长趋势,而随着电子支付带来的新的特殊属性与计算机技术的升级,使电子支付系统面临着攻击频率更高、破坏性更大、影响范围更广等诸多安全威胁。

近两年,“金融科技”的概念从国际逐渐走入国内视线,金融科技强调科技助推金融服务的创新与升级,以区块链、人工智能、大数据、云服务为代表的新兴技术催生了不少金融科技公司与研究团队,越来越多新形态的金融产品也逐步面世并为消费者提供更优质的金融服务体验。在此发展背景下,作为一种被大众所普遍接受并得以广泛使用的新兴支付方式,电子支付走进人们的日常生活中。相较于传统支付,电子支付具有操作方便、及时快捷、成本低廉等特点,它为人们的工作及生活提供了便利,并呈现出良好的发展势头。

但是,移动支付、无卡支付等新型电子支付手段在为金融行业带来机遇的同时,也带来了更多的安全挑战。

一方面,迅猛增长的网络支付业务数据,使得银行与非银行类支付机构带来的用户资金安全、信用卡信息泄露、金融诈骗等问题显得尤为刺眼。

另一方面,电子支付正在进入由网上银行、在线支付向手机银行、移动支付转变的移动互联时代,支付终端由原来的PC端逐渐变为手机终端、车联网智能设备、物联网(IoT)设备甚至是穿戴式设备,支付终端更加便捷并且具有体积变小、电池电量与计算能力有限的特点,支付网络覆盖面更广也更加移动化,这些因素就要求电子支付系统所使用的安全技术要易于部署,使用的密码体制及算法要有较高的计算效率,并且不能占用过多的终端系统资源。

另外,计算机软硬件技术的发展造就了计算机专业性、计算能力的大幅提高,各国科研人员也在研究现有密码系统与算法的安全性并尝试寻找攻破方法。近几年发展的新兴计算技术如量子计算、DNA计算等,也在向包括电子支付系统在内的各领域安全系统提出了不小的挑战。

因此,在金融科技创新不断演进,安全形势日益严峻的大背景下,电子支付系统中各环节能否得到安全技术的保驾护航,对金融科技的持续发展有着至关重要的意义,也直接影响了金融领域甚至是国家关键信息基础设施的安全。如何保障电子支付系统的高安全性、银行卡产业的交易信息敏感性和支付智能终端的可认证性等等,是目前在电子支付系统架构中亟待解决的问题。

当前,电子支付领域使用的安全技术多集中在安全支付协议上,在安全协议中采用较为成熟的密码体制及算法,但由于成熟的密码及算法存在系统部署开销大、加解密或身份认证算法计算量大的缺点,因而必须建立适用于电子支付领域的密码算法与安全技术,在此安全体系下提升电子支付系统安全性能与用户支付体验。

综上,研究电子支付领域的密码算法与安全技术发展趋势是非常必要的。

2、电子支付密码技术现状

电子支付流程如图2-1,在此支付流程中,为了满足电子支付在云、管、端的安全需求,保证交易信息的机密性、交易各方的身份认证性、交易信息的完整性、交易的不可否认性,一般在持卡人、商户、在线支付系统与银行网关之间都需要进行信息加密和身份认证,除此之外,还要保障数据完整性和交易的不可否认。其中,信息加密一般是对交易信息进行对称或者非对称加密运算;身份认证、数据完整性和不可否认性通过数字签名实现,先将交易信息通过Hash运算生成消息摘要,再对消息摘要进行非对称加密进而生成数字签名,接收端使用发送端的数字证书来验证数字签名是否正确,进而完成身份认证。

电子支付流程图

图2-1 电子支付流程图

上述安全要求使得电子支付系统在网络服务层与应用系统层之间部署了额外的安全层面,安全技术在当前的电子支付系统中的应用如图2-2,体现在:

(1)在网络服务层之上建立加密技术层与身份认证层。加密技术层通过对称与非对称加密实现,身份认证层通过部署传统PKI体系下的CA认证中心实现,参与交易的各方进行数字签名完成身份认证。

(2)在加密技术层与身份认证层之上建立安全协议层,常用于电子支付的安全协议有SSL/TLS协议、SET协议与3DS协议。

电子支付安全技术示意图

图2-2 电子支付安全技术示意图

本章主要介绍当前在电子支付领域部署应用的安全技术现状及其短期内的迁移趋势,这里的安全技术主要是指可用于电子支付系统架构中的密码体制,以及由此密码体制产生的密码算法。在实际应用中,密码体系及算法内置于安全协议中得以实现,因此在本章第二节对电子支付相关安全协议进行了简要介绍。最后,基于当前电子支付密码技术现状,给出未来可能的电子支付密码算法与安全技术研究方向。

2.1密码体制及算法

密码体制分为对称密码体制和非对称密码体制(也称为公钥密码体制),对称密码体制在电子支付系统中用于敏感数据加解密,公钥密码体制常用于电子支付系统中的身份认证。

在电子支付系统中,目前广泛采用PKI/CA公钥密码体制:通过第三方的可信任机构CA签发的公钥证书,把用户的公钥和用户的其他标识信息(如名称、身份证号等)捆绑在一起,从而可以在网络上验证用户公钥的有效性。但是,在面对庞大用户群的应用系统中,证书管理极为复杂,鉴于PKI体制在大型系统中的部署应用困难,有研究者提出基于身份的密码学体制IBC(Identity-Based Cryptography),并在此体制下设计了大量签名、密钥协商、加解密算法。IBC体制目前已逐渐走向实际应用,国际上,美国在金融支付和电子邮件加密、文档加密方面已经大量使用了IBC的相关技术;在国内,中国国家密码管理局2007年组织了国家标识密码体系IBC标准规范的编写和评审工作,该标准于12月16日正式通过了评审,形成了中国的自有IBC算法。专家们一致认定,该标准拥有独立知识产权,属于国内首创,达到了国际领先水平,并已逐步开始应用在智能密钥、加密邮件、网络安全设备等产品中。

在不同的密码体制下,密码算法也不同。对称密码体制下常用的加密算法有DES、3DES、AES等,非对称密码体制下的加密算法有RSA算法、椭圆曲线ECC等,Hash算法有SHA-2、SHA-3等。

对称算法方面,在国内,随着三金工程尤其是金卡工程的启动,DES算法在POS、ATM、磁卡及智能卡(IC卡)、加油站、高速公路收费站等领域被广泛应用,以此来实现关键数据的保密,如信用卡持卡人的PIN的加密传输,IC卡与POS间的双向认证、金融交易数据包的MAC校验等,均用到DES算法。但随着攻击及计算能力的增强,DES安全强度已不能满足系统保密性需求,因此算法开始向AES迁移,在此期间,使用3DES(即Triple DES,是DES加密算法的一种模式,是DES的一个更安全的变形,它使用3个64位的密钥对数据进行三次加密)作为DES向AES过渡的加密算法。AES算法有安全、非保密、公开、灵活、简单且易于实现等特点,能在各种软件和硬件平台满足计算效率,包括智能卡,是目前较理想的对称密码算法。

非对称密码算法方面,与金融领域相关度较高的通常是数字签名和Hash算法。数字签名通常基于RSA、ECC算法构造,以实现身份认证和信息的抗抵赖性安全需求;Hash函数可选SHA-2、SHA-3等算法。

值得一提的是,为了保障商用密码安全,改变目前我国金融行业密码安全广泛采用国际密码算法的现状,国家商用密码管理办公室制定了一系列密码标准,包括SM2、SM3、SM4、祖冲之密码算法等。

2.2安全协议

电子支付的安全性需要依靠安全协议的保障,密码体制及算法需要内置于安全协议中才能实现其安全作用。为了保障交易安全,人们开发了各种电子支付安全协议。目前,应用最为广泛的电子支付安全协议主要有SSL/TLS协议、SET协议和3-D Secure三种。其中,3DS协议是国际卡组织最为推荐使用的协议之一,截止到目前,3DS协议已经更新到2.0版本。

3DS协议(3 Domain Secure,也写作3-D Secure)是由于SET协议未如预期被广泛采用而用来取代它的,是为提高信用卡网上支付的安全性,保障用户网上支付安全,卡组织与发卡行向持卡人推出的一种在线交易用户身份认证协议。3DS 1.0版本只能实现在线购物(基于浏览器的网上购物),所以为了顺应当前移动支付发展的潮流,突破3DS 1.0版本无法在手机APP上使用等限制,国际支付标准组织EMVCo制定了3DS 2.0标准,并于2016年10月25日发布。该标准主要针对于PC端和手机端的网上支付安全认证,全面保障持卡人网上支付的安全,有效降低信用卡在网络上被冒用的风险,从而提升交易安全性能。

3DS 2.0与3DS 1.0相比较,有几个明显的改变。首先,3DS 1.0只能在浏览器上使用,而3DS 2.0能够在各种场合使用,包括手机、PC上,而且支持app支付、电子钱包等。其次,由于改进了验证方式、提高了信息处理效率,3DS 2.0将带来更好的用户/商户体验。第三,之前的3DS 1.0的所有者是Visa,而3DS 2.0是由EMVCo来制定的,其适用范围将更广,灵活性更强,能够适应不同国家、不同监管体系的需求。

随着移动端购物比重的增加,3DS 2.0将可以有效地验证手机端网购网站的合法性与安全性,有效防范木马病毒与钓鱼网站,提高购物安全系数,对整个移动互联网支付应用的推进具有重要意义。可以预测,3DS协议必将在未来的电子支付中发挥越来越重要的作用。

3、电子支付密码技术发展与研究方向

如第二章所述,在现有安全层面的密码算法与安全技术下,虽然一定程度上保障了电子支付系统与交易各环节的安全,但电子支付安全协议(如SET协议)本身存在的不足限制了其大规模应用,在身份认证层采用的PKI/CA体系及数字签名算法也不完全适合电子支付各类应用场景(如电子货币系统),这就导致了当前电子支付安全技术尤其是密码技术的研究与应用仍有较大的缺口。

本章主要介绍可用于电子支付领域的安全技术,这种安全技术包括:

新的公钥密码体制。经调研,有两种新的密码体制可以作为保障电子支付系统安全的密码体系:基于身份的公钥密码体制IBC和无证书公钥密码体制CL-PKC。

新的签名技术。作为电子支付领域中关键技术之一的电子货币,将对未来电子支付领域的发展起到至关重要的作用,若银行能够建立有效安全的电子货币系统,才能够在真正意义上实现互联网信息化时代的电子支付。安全性一直是电子货币系统在设计过程中最受关注的问题,因此对群签名、盲签名等特殊签名技术的研究持续升温,用以实现电子货币系统的匿名性、不可跟踪性等特殊性质。

新的密码技术。除了对传统密码体制及算法的研究之外,近几年出现的量子密码、DNA密码等新兴密码技术也应引起关注,因为一旦这些新兴密码技术得到了实际应用,将会对现有系统中的密码技术产生颠覆式的影响。

3.1新的密码体制

3.1.1基于身份的公钥密码体制IBC

IBC(Identity-Based Cryptography)指基于身份的密码体制,是在传统的PKI(公开密钥基础设施)基础上发展而来。在IBC体制下,每个实体的公钥为其唯一身份标识(如Email地址或者身份证号码),私钥由第三方可信实体生成。

由于IBC消除了传统PKI/CA体系中公钥数字证书发放、证书撤销列表维护、证书认证等复杂繁琐的工作,在实际应用中带来了极大的便利。随着理论和实现技术的日趋成熟,在要求高效的密钥管理和中等强度的安全性的应用中,可以考虑使用IBC系统代替PKI/CA系统,作为构建电子支付安全体系的一个理想选择。

实现原理:

基于身份的公钥密码系统的实现原理是,在系统中设置了一个可信的实体,我们称之为密钥生成中心KGC(Key Generation Center)。KGC生成并秘密保存整个公钥密码系统的主私钥,利用用户身份和系统主私钥计算得到用户的私钥,并安全发送给用户。用户的公钥不需要CA颁发证书进行验证,而是将可唯一确定用户身份(如Email地址或者身份证号码)的公开信息作为自己的公钥。用户的身份信息具有公开的天然的真实性,因此不需再去验证其公钥,极大地简化了管理密码系统的复杂性。

应用现状:

在国际上,美国在金融支付方面已经大量使用了IBC的相关技术;在国内,中国国家密码管理局2007年组织了国家标识密码体系IBC标准规范的编写和评审工作,该标准于12月16日正式通过了评审,形成了中国的自有IBC算法,并已逐步开始应用在智能密钥、加密邮件、网络安全设备等产品中。

3.1.2无证书公钥密码体制CL-PKC

CL-PKC(Certificateless public key cryptography)指无证书公钥密码体制,是基于传统PKI与IBC的基础上发展而来。在CL-PKC体制下,每个实体的私钥由两部分组成,一部分由实体自己生成,另一部分由第三方可信实体生成,实体的公钥由私钥经过一定的计算得到。

CL-PKC既克服了传统PKI证书管理问题,又客服了IBC中密钥托管问题,结合了两者优点。可以看出,基于CL-PKC的安全技术更适用于终端数量剧增、通信节点趋于移动化的当前网络状况,对于电子支付领域来说,这种密码体制更适用于当前电子支付移动化的应用场景,具有很大的应用潜力。

但必须指出,此种密码体制的研究仍处于较初级的阶段,其安全的理论性证明与相应算法的设计仍有待继续研究与验证。

实现原理:

无证书公钥密码系统的实现原理是:在无证书公钥密码系统中,设置了一个可信的实体——密钥生成中心KGC(Key Generation Center)。KGC生成并秘密保存整个公钥密码系统的主私钥,而后发布系统主公钥以及其他的系统公开参数,网络中的所有节点均可得到所有系统公开参数。KGC根据网络中合法用户的身份信息(如Email地址或者身份证号码)和系统主私钥计算出用户的部分私钥,并通过一个机密的、安全的通道传送给用户。用户收到KGC为其生成的部分私钥后,可以利用系统主公钥来验证其合法性及正确性;同时,用户再选择一个随机数作为自己的秘密值,秘密值与部分私钥共同组成用户完整的私钥。用户的公钥由私钥通过一定的计算得出,并在必要的时候公布出去。之后,用户就可以用自己的私钥对消息进行加密和签名,接收到密文或签名消息的其他用户就可以用其公钥进行解密或验证。

根据以上原理我们可以看出,无证书公钥密码体制可以有效克服基于身份的密码体制中密钥托管问题的原因是:系统中的可信第三方KGC只能为网络中的用户生成一部分私钥,用户的另一部分私钥由自己选择并生成,因此KGC无法得知任何用户的全部私钥,从而克服了密钥托管的问题。

应用现状:

目前未见对CL-PKC的实际应用与标准制定,该密码体制仍处于研究阶段。对无证书公钥密码体制的研究集中在算法改进、可证明安全理论研究以及对其可能应用场景的探索等方面。

3.2新的签名技术

新的签名技术用以构造安全可信的电子货币系统。当前电子货币系统仍然处在研究与设计阶段,其在全球范围内的运行可以推动金融科技的发展,帮助电子支付更好的发挥它在金融领域的作用,使金融支付真正走到线上。在新的签名技术中,群签名可以用来设计由多个银行发行电子货币的系统模型,盲签名可以满足电子货币匿名性和不可追踪性的要求等。

3.2.1群签名

群签名技术的特殊性体现在,它允许群成员中的一个代表群体对消息进行签名,知道群公钥的人可以验证签名正确与否,却不知道是群里哪个人签的名,这个性质保护了签名人的匿名性。匿名性质是相对的,为了解决可能出现的争议,需要揭示匿名人的身份,一个可信任的第三方——群管理员,可以打开签名,确定签名人的身份。

以电子货币的发行为例:如果使用普通的数字签名,那么只能由一个可信的银行发行电子货币,否则银行各自发行自己的电子货币将导致货币无法得到统一认证,进而引起货币发行混乱。因此,可以看出,使用群签名技术可以构建由多个银行发行电子货币的系统模型,这些银行形成一个群体受中央银行的控制,中央银行担当了群管理人的角色。

目前已有一些使用群签名技术构造电子货币系统的方案提出,可使电子货币由多个银行发行。

3.2.2盲签名

盲签名是一种特殊的数字签名,其特殊性体现在签名者并不知道签署的内容,即便签名者知道了签名与消息对,也无法将它们联系起来。因此,盲签名技术也可以应用到电子货币系统中。

以电子货币使用的流程为例:用户从银行获得电子货币,然后在商家处使用给予电子货币的凭证,最后商家再到银行将凭证换成现实世界的现金或存款。这里要求电子货币是完全匿名的,银行不能将签署的电子货币与用户联系起来,同时用户的使用情况也不能被跟踪,即不能通过电子货币的使用凭证将用户追踪到。

目前已有一些使用盲签名技术构造电子货币系统的方案提出,可使电子货币具备匿名性和不可追踪性。

此外,结合群签名与盲签名的概念,可以利用群盲签名来构造有多个银行参与发行电子货币的匿名的、不可跟踪的电子货币系统。

3.2.3代理签名

现实中,当客户(原始签名人)因为某些原因不方便在网上进行电子支付活动时,需要代理人(代理签名人)为其在网上寻找和购买一些特殊的商品或服务,可以使用基于代理签名的安全电子支付。代理签名在银行系统、电子货币等领域,都具有无法比拟的发展前景。

3.3新兴密码技术

近几年来,量子计算、DNA计算等新科学技术的发展引起了人们极大的兴趣,一旦这些高速计算技术得以实现,那么基于数学难题的传统公钥体制在面对窃听、篡改等行为就显得无能为力了。相对应的,量子密码、DNA密码的提出,将会弥补现有密码体制的缺陷,极大提高密码系统的计算、传输速率。对于电子支付系统来说,量子密码与DNA密码等新密码技术的应用将极大地提高系统安全性、加解密效率和用户体验。

虽然量子密码经过一段时间的研究已经处于应用于实际的初步尝试阶段,DNA密码也受到学者的热切关注,但距离其真正在实际密码系统中的应用还有一定的距离,仍需要强大的理论研究与实验操作助力,未来几十年内,新兴技术引起的密码学革命是值得期待的。

4、总结

电子支付发展迅速,区块链、电子货币等新概念掀起金融领域研究新高潮,人工智能、大数据、云服务、物联网(IoT)等相关技术与电子支付的结合也推动了其快速发展与部署应用,与此同时,电子支付的安全问题更成为大家最为关注的问题。

本文以电子支付领域中使用的密码技术为切入点,分析研究了当前电子支付系统中的密码算法与安全技术现状与几年内的发展趋势,然后结合现有技术的不足与面临的挑战,给出了未来电子支付领域密码技术发展与研究的方向。具体如下:

(1)在电子支付系统所使用的密码体制当中,目前广泛采用PKI/CA公钥密码体制用于身份认证,但存在证书管理复杂等缺点。由此,各国开始着手部署基于身份的公钥密码体制IBC,以降低系统管理维护负担,同时学术界提出了无证书密码体制CL-PKC并称其结合了PKI和IBC的优点,无繁重的证书管理负担且不存在密钥托管问题,但目前仍停留在理论研究阶段。

(2)电子支付系统中使用的密码算法分为对称和非对称算法两类。其中,对称密码算法目前处于将3DES逐渐过渡到AES、密钥长度随着时间推移逐渐增加的阶段;非对称密码算法方面,目前应用广泛的 RSA算法将会在一定时期内长期存在,同时ECC算法将逐步占据重要地位,Hash算法中MD5由于安全性原因将不再使用,SHA-1将逐步过渡到SHA-2、SHA-3。上述密码算法密钥长度均将逐渐增加,密码算法本身也会向计算速度更快、安全强度更高、计算量更小的算法方向发展。

(3)电子支付所使用的安全协议主要有SSL/TLS协议、SET协议和3DS三种。当前国内外在电子支付中使用的安全协议大多数为SSL/TLS协议,以保护网络传输的加密和身份认证,但其只能保证基于浏览器的电子支付安全;SET协议由于设计太过复杂而且成本过高并未得到大规模使用;3DS为适应移动支付的需要发布了2.0版本,该版本可应用于手机端与PC端,支持app支付、电子钱包等,提升了认证速率,适用范围广,预测将会有良好的应用前景。

(4)量子计算、DNA计算等领域的发展,使量子密码、DNA密码技术引起关注和讨论,一旦这些新兴密码技术得以实现,将可能会对现有的密码体系构成冲击。传统的密码、DNA密码和量子密码将各自以不相同的方式,实现着共同目的的信息安全,它们有可能成为未来密码学的三大主要领域。这需要我们在研究现有安全密码技术的情况下,密切关注新兴的密码技术带来的技术变革。

本文转载目的在于知识分享,版权归原作者和原刊所有。如有侵权,请及时联系我们删除。
评论加载中
相关文章

月点击排行
关于本站    联系我们    版权声明    手机版
Copyright © 2011-2022 移动支付网    粤ICP备11061396号    粤公网安备 44030602000994号
深圳市宇通互联信息技术有限公司    地址:深圳市宝安区新安街道28区宝安新一代信息技术产业园C座606