浅析电子商务安全协议SSL与SET_电子商务协议ssl与set
浅析电子商务安全协议SSL与SET由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“电子商务协议ssl与set”。
浅析电子商务安全协议SSL与SET
一、引言
电子商务融计算机技术、通信技术、网络技术于一体,以Internet为基础平台,互动性、开放性、广泛性为其显著特点。由于其开放性与广泛性,必然面临各种安全风险,如信息泄露或被篡改、欺骗、抵赖等。所以,安全问题已成为发展可信赖电子商务环境的瓶颈。目前,众多的安全技术都是通过安全协议来实施的。因此,简洁、有效的安全协议对电子商务安全而言至关重要。现今,国际上主要通行的两种安全协议:安全套接层协议SSL和安全电子交易协议SET,二者均是成熟和实用的安全协议,但是由于它们的设计目的不同,所以在应用上有很大的差别。
二、两种电子商务安全协议介绍
(一)安全套接层协议SSL
SSL是网景(Netscape)公司提出的基于WEB应用的安全协议,其目的是在Internet基础上提供的一种保证机密性的安全协议。它能使客户端/服务器应用之间的通信不被攻击者窃听,并且始终对服务器进行认证,而且还可选择对客户端进行认证。
SSL协议是国际上最早应用于电子商务的一种网络安全协议,主要用于提高应用程序之间的数据安全。它同时使用对称加密算法和公钥加密算法,前者在速度上比后者要快很多,但是后者可以实现更好的安全认证。一个SSL传输过程首先需要握手:用公钥加密算法使服务器在客户端得到认证,以后就可以使用双方商议成功的对称密钥来更快速的加密、解密数据。
SSL协议要求建立在可靠的传输层协议(例如:TCP)之上。SSL协议的优势在于它是与应用层协议独立无关的。高层的应用层协议(例如:HTTP,FTP)能透明地建立于SSL协议之上。SSL协议在应用层协议通信之前就已经完成加密算法、通信密钥的协商以及服务器认证工作。应用层协议所传送的数据都会被加密,从而保证通信的机密性。对于电子商务应用来说,使用SSL可保证信息的真实性、完整性和保密性。SSL协议由SSL记录协议和SSL握手协议两部分组成。
1、SSL记录协议
在SSL协议中,所有的传输数据都被封装在记录中。所有的SSL通信,包括握手消息、安全空白记录和应用数据都使用SSL记录协议。记录协议允许服务器和客户端相互认证并协商加密算法和密钥,对所有发送和接收的数据进行分段、压缩、认证、加密和完整性服务。
2、SSL握手协议
SSL握手协议包括建立在记录协议之上的握手协议、警报协议、更改加密说明协议和应用数据协议等对会话和管理提供支持的子协议,其用于在通信双方之间建立安全传输通道。握手过程一般分为4个阶段:
(1)初始化逻辑连接,客户端先发出ClientHello消息,服务器返回一个ServerHello消息,这两个消息用来协商双方的安全能力,包括协议版本、对称加密算法、压缩算法等。
(2)服务器发送数字证书(包含了服务器的公钥等)和会话密钥。如果服务器要求认证客户端,则要发送CertificateRequest消息。最后服务器发送ServerHelloDone消息,表示hello阶段结束,服务器等待客户端的响应。
(3)如果服务器要求认证客户端,则客户端先发送Certificate消息,然后产生会话密钥,并用服务器的公钥加密,封装在ClientKeyExchange消息中,如果客户端发送了自己的数字证书,则再发送一个数字签名CertificateVerify来对数字证书进行校验。
(4)客户端发送一个ChangeCipherspec消息,通知服务器以后发送的消息将采用先前协商好的安全参数加密,最后再发送一个加密后的Finished消息。服务器在收到上述两个消息后,也发送自己的ChangeCipherspec消息和Finished消息。
至此,握手全部完成,双方就可以开始传输应用数据了。
3、SSL提供的功能及局限性
SSL使用加密的办法建立一个安全的传输通道,它可提供以下3种基本的安全服务功能:
(1)信息加密。客户端和服务器之间的所有的应用数据使用在SSL握手过程中建立的密钥和算法进行加密。这样就防止了某些用户通过使用IP packet sniffer等工具进行非法窃听或者破译。
(2)信息完整。SSL提供完整信息服务,以建立客户端与服务器之间的安全通道,使所有经过SSL协议处理的业务能全部准确无误地到达目的地。
(3)相互认证。客户端和服务器都有各自的识别号,这些识别号由公开密钥进行编号。为了认证用户是否合法,SSL协议要求在握手交换数据前进行数字认证,来确保用户的合法性。
SSL协议的局限性:首先,客户的信息先到商家,让商家阅读,这样,客户资料的安全性就得不到保证;其次,SSL只能保证资料信息传递的安全,而传递过程是否有人截取就无法保证了。所以,SSL并没有实现电子支付所要求的保密性、完整性,而且多方互相认证也是很困难的。此外,该协议最大的弱点是不能做数字签名,因此不支持不可否认性。另外,它不能对商家进行认证,不能防止网上欺诈行为。
(二)安全电子交易协议SET
安全电子交易(Secure Electronic Transaction.简称SET)协议是由Visa和Master Card公司在1996年底开发的,主要为在网上在线交易时保证使用信用卡进行支付时的安全而设立的一个开放的协议,它是面向网上交易,针对利用信用卡进行支付而设计的电子支付规范。SET提供了消费者、商家和银行之间的认证,确保交易的保密性、可靠性和不可否认性,从而保证在开放网络环境下使用信用卡进行在线购物的安全。目前,SET已得到IBM、Microsoft、VeriSign等著名公司的参与和支持,是国际上所公认的Internet电子商务的安全标准。
1、基于SET的交易流程
SET协议的购物系统由持卡人、商家、支付网关、收单银行、发卡银行和证书授权中心(CA)等六大部分组成,它们之间的关系如图1所示。
此外,基于SET协议的购物系统至少包括电子钱包软件、商家软件、支付网关软件和签发数字证书软件。目前,SET电子钱包主要是安装在客户端的交易软件,它是持卡人实现网上交易过程的主要工具。
SET协议在一般环境下的工作步骤如下:
(1)持卡人注册:持卡人为了使用信用卡,必须向支持SET的发卡银行申请开户,从而获得一个可用于Internet支付的信用卡帐号,同时向CA申请该信用卡的数字证书。此后,持卡人可以使用终端进行购物。
(2)商家注册:商家同样向CA申请用于电子商务支付的数字证书。此后,商家可以在网络上开设商城来销售货物。
(3)持卡人利用电子商务平台选定物品,并提交定单;
(4)商家接收定单,生成初始应答消息,数字签名后与商家数字证书、支付网关数字证书一起发送给持卡人;
(5)持卡人对应答消息进行处理,选择支付方式,确认定单,签发付款指令,将定单信息和支付信息进行双签名,对双签名后的信息和用支付网关公钥加密的支付信息签名后连同自己的数字证书发送给商家(商家看不到持卡人的帐号信息);
(6)商家认证持卡人数字证书和双签名后,生成支付认可请求,并连同加密的支付信息转发给支付网关;
(7)支付网关通过金融专网到发卡银行认证持卡人的帐号信息,并生成支付认可消息,数字签名后发给商家;
(8)商家收到支付认可消息后,认证支付网关的数字签名,生成购买定单确认信息发送给持卡人。
至此交易过程结束。商家发送货物或提供服务并请求支付网关将购物款从发卡银行持卡人的帐号转账到收单银行商家帐号,支付网关通过金融专网完成转账后,生成取款应答消息发送给商家。
在以上的工作步骤当中,持卡人、商家和支付网关都通过CA来认证通信主体的身份,以确保通信的对方不是冒名顶替。
2、SET提供的功能
(1)所有信息在Internet上加密安全传输,保证数据不会被他人窃取。
(2)数字签名保证信息的完整性和不可否认性。
(3)订单信息和个人信用卡信息的隔离,使商家看不到客户的信用卡信息。
(4)参与交易各方的身份认证,保证各方身份不可假冒。
三、SSL与SET的比较
SET是一个多方面的消息报文协议,它定义了银行、商家、客户之间必须符合的报文规范。SSL只是简单地在客户端与服务器之间建立了一个安全传输通道,在涉及多方的电子交易中,只能提供交易中客户端与服务器间的认证,其并不具备商务性、服务性和集成性。SET报文能够在银行内部网络或其他网络传输,而SSL之上的支付系统只能与Web浏览器捆绑在一起。除此之外,它们还有以下区别:
1、认证机制方面,SET的安全需求较高,因此所有参与SET交易的成员都必须先申请数字证书来识别身份,而在SSL中只有商家服务器需要认证,客户端认证是可选的。
2、对客户而言,SET保证了商家的合法性,并且用户的信用卡号不会被窃取。SET替客户保守了更多的秘密使其在线购物更加轻松。在SSL协议中则缺少对商家的认证。
3、安全性上,SET的安全性较SSL高,主要原因是在整个交易中,包括客户到商家、商家到支付网关再到银行都受到严密的保护。而SSL的安全范围只限于客户到商家的信息交流。
四、结论
总的来讲,由于SSL协议的成本低、速度快、使用简单,对现有网络系统不需进行大的修改,因而其应用也相对较广泛。目前我国已有多家银行采用SSL协议,开展网上银行业务。SET协议比较复杂,它还要求在银行网络、商家服务器、客户端的PC上安装相应的软件,此外还要求必须向各方发放数字证书。这些都阻止了SET的广泛发展。但从安全性角度看,SSL协议不如SET协议安全,对于使用信用卡支付的系统来说,SET协议是最好的选择。
结合我国的具体情况,可以预见,电子商务安全措施在我国的发展趋势将是SET与SSL共存,优势互补。即在商家与银行之间采用SET协议,而与顾客连接时仍然使用SSL协议。这种方案既回避了在顾客端机器上安装软件。同时又可获得了SET提供的很多优点(作者单位:温州医学院计算机教研室)