网络支付安全协议SSL和SET的比较

时间:2022-10-02 08:32:16

网络支付安全协议SSL和SET的比较

[摘要] 安全协议是目前电子支付技术安全问题中的热点,安全套接层协议(SSL)和安全电子交易协议( SET)是电子商务中支持支付系统的关键技术。文章通过分析这两种协议的工作原理,对两者的特点进行了对比。

[关键词] 电子支付 安全 SSL协议 SET协议

网络和信息技术的不断发展和渗透,使得电子商务得到了飞速的发展。然而,电子商务在提供机遇和便利的同时,也面临着一个最大的挑战,即交易的安全问题。其中,安全协议是保证电子商务安全的核心所在。

目前,国内外使用的保障电子商务支付系统安全的协议包括:安全套接层协议SSL(Secure Socket Layer)、安全电子交易协议SET(Secure Electronic Transaction)等协议标准。

一、SSL协议

SSL协议是Netscape Communication公司推出在网络传输层之上提供的一种基于RSA和保密密钥的用于浏览器和Web服务器之间的安全连接技术。是对计算机之间整个会话进行加密的协议,提供了加密、认证服务和报文完整性。它是国际上最早应用于电子商务的一种由消费者和商家双方参加的信用卡/借记卡支付协议。

1.SSL协议提供的服务主要有

(1)用户和服务器的合法性认证;

(2)加密数据以隐藏被传送的数据;

(3)维护数据的完整性,确保数据能完整准确地传输到目的地。

该协议主要是使用公开密钥体制和X.509数字证书技术保护信息传输的机密性和完整性,它不能保证信息的不可抵赖性,主要适用于点对点之间的信息传输,常用Web Server方式,它包括:服务器认证、客户认证、SSL链路上的数据完整性和SSL链路上的数据保密性。对于电子商务应用来说,使用SSL可保证信息的真实性、完整性和保密性。

2.SSL协议的工作流程

(1)接通阶段:客户通过网络向服务商发送连接信息,服务商回应;

(2)密码交换阶段:客户与服务器之间交换双方认可的密码,一般选用RSA密码算法,也有的选用Diffie-Hellmanf和Fortezza-KEA密码算法;

(3)会谈密码阶段:客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;

(4)检验阶段:服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。

(5)客户认证阶段:服务器通过数字签名验证客户的可信度;

(6)结束阶段,客户与服务商之间相互交换结束的信息。SSL协议运行的基点是商家对客户信息保密的承诺。从SSL 协议所提供的服务及其工作流程可以看出,该协议有利于商家而不利于消费者。客户的信息首先传到商家,商家阅读后再传给银行,这样,客户资料的安全性便受到威胁。商家认证客户是必要的,但整个过程中,缺少了客户对商家的认证。在电子商务的初级阶段,由于运作电子商务的企业大多是信誉较高的大公司,因此这问题还没有充分暴露出来。但随着电子商务的发展,各中小型公司也参与进来,这样在电子支付过程中的单一认证问题就越来越突出。虽然在SSL3.0中通过数字签名和数字证书可实现浏览器和Web服务器双方的身份验证,但是SSL协议仍存在一些问题,比如,只能提供交易中客户与服务器间的双方认证,在涉及多方的电子交易中,SSL协议并不能协调各方间的安全传输和信任关系。在这种情况下,Visa和 MasterCard两大信用卡公组织制定了SET协议,为网上信用卡支付提供了全球性的标准。

二、Set协议

Set协议是1997年5月31日由VISA和MasterCard两大信用卡公司联合推出的一个基于开放网络的安全的以信用卡支付为基础的电子商务协议。它运用了RSA安全的公钥加密技术,具有资料保密性、资料完整性、资料来源可辨识性及不可否认性,是用来保护消费者在Internet持卡付款交易安全中的标准。现在,SET已成为国际上所公认的在Internet电子商业交易中的安全标准。

1.SET支付系统的组成

SET支付系统主要由持卡人(CardHolder)、商家(Merchant)、发卡行(Issuing Bank)、收单行(Acquiring Bank)、支付网关(Payment Gateway)、认证中心(Certificate Authority)等六个部分组成。对应地,基于SET协议的网上购物系统至少包括电子钱包软件、商家软件、支付网关软件和签发证书软件。

2.SET协议的工作流程如下

在SET协议介入之前,消费者通过因特网进行选货、下订单并与商家联系最终确定订单的相关情况、付款方式和签发付款指令。此时SET协议开始介入,进入以下几个阶段

(1)支付初始化请求和响应阶段。当客户决定要购买商家的商品并使用电子钱包支付时,商家服务器上POS软件发报文给客户的浏览器电子钱包,电子钱包要求客户输入口令然后与商家服务器交换“握手”信息,使客户和商家相互确认,即客户确认商家被授权可以接受信用卡,同时商家也确认客户是一个合法的持卡人。

(2)支付请求阶段。客户发出一个报文,包括订单和支付命令。在订单和支付命令中必须有客户的数字签名,同时利用双重签名技术保证商家看不到客户的账号信息。而位于商家开户行的被称为支付网关的另外一个服务器可以处理支付命令中的信息。

(3)授权请求阶段。商家收到订单后,POS组织一个授权请求报文,其中包括客户的支付命令,发送给支付网关。支付网关是一个Internet服务器,是连接Internet和银行内部网络的接口。授权请求报文通过支付网关到达收单银行后,收单银行再到发卡银行确认。

(4)授权响应阶段。收单银行得到发卡银行的批准后,通过支付网关发给商家授权响应报文。

(5)支付响应阶段。商家发送购买响应报文给客户,记录客户交易日志,以备查询。之后进行发货或提供服务,并通知收单银行将钱从消费者的账号转移到商店账号,或通知发卡银行请求支付。

三、SSL协议和SET协议的对比

1.SSL协议的优缺点

SSL协议是两层协议,建立在TCP传输控制协议之上、应用层之下,并且与上层应用协议无关,可为应用层协议如HTTP、FTP、SMTP等提供安全传输,通过将HTTP与SSL相结合,Web服务器就可实现客户浏览器与服务器间的安全通信。因此简便易行是SSL协议的最大优点,但与此同时其缺点也是显而易见的。首先,在交易过程中,客户的信息先到达商家那里,这就导致客户资料安全性无法保证;其次,SSL只能保证资料传递过程的安全性,而传递过程是否有人截取则无法保证;再次,由于SSL协议的数据安全性是建立在RSA等算法上,因此其系统安全性较差;最后,虽然SSL协议中也使用了数字签名来保证信息的安全,但是由于其不对应用层的消息进行数字签名,因此不能提供交易的不可否认性,这就造成了SSL协议在电子银行应用中的最大不足。

2.SET协议的优缺点

由于SET提供了消费者、商家和银行之间的双重身份认证,确保了交易数据的安全性、完整可靠性和交易的不可否认性,特别是保证不将消费者银行卡号暴露给商家等优点,因此它成为目前公认的信用卡/借记卡的网上交易的国际安全标准。但在实际应用中,SET协议依然存在以下不足:

(1)SET协议中仍存在一些漏洞。如:不可信的用户可能通过其它商家的帮助欺骗可信的商家在未支付的情况下得到商品;密钥存在被泄露的危险;存在冒充持卡人进行交易的隐患。

(2)SET协议的性能有待改进。如:单纯支持信用卡,需要进一步适应借计卡的使用;协议过于复杂,要求安装的软件包过多,处理速度慢,价格昂贵;由于该协议的每一个阶段都要进行多次数据加密解密、签名、证书验证等安全操作,因此协议的交易时间过长,不能满足实时交易要求。

3.总结

由于SSL协议的成本低、速度快、使用简单,对现有网络系统不需进行大的修改,因而目前取得了广泛的应用。但随着电子商务规模的扩大,网络欺诈的风险性也在提高,在未来的电子商务中SET协议将会逐步占据主导地位。

参考文献:

[1]徐震邓亚平:SET的安全性分析与改进[J].重庆邮电学院学报,2005,17 (6),745~748

[2]马瑞萍:SSL安全性分析研究[J];网络安全技术与应用; 2001,12期,17~20

[3]吴建耀张玉清莫燕:SET协议的安全性研究综述,2004全国网络与信息安全技术研讨会[c]

[4]周龙骧:电子商务协议研究综述[J].软件学报,2001,12

上一篇:电子商务与特许经营的联合发展分析 下一篇:基于轻量级J2EE电子商务的设计与实现