APP下载

基于SSL/SET协议下的电子支付系统研究

2010-08-23陈蓉琳

制造业自动化 2010年11期
关键词:数字签名商家交易

陈蓉琳

CHEN Rong-lin

(铜仁学院 数学计算机科学系,铜仁 554300)

0 引言

随着网络的发展,电子商务也得到了相应的发展。越来越多的企业、政府部门和消费者通过Internet进行商务活动。然而在商务交易活动中如何保证交易安全,即双方身份的合法性,交易信息的机密性和完整性,交易行为的不可抵赖性是商家实现安全电子交易所必须考虑的问题。本文从安全的角度出发,探讨如何利用加密技术和支付协议,构建安全的电子支付系统。

1 电子商务支付系统的概述

电子支付指的是电子交易的当事人,包括消费者、商家和金融机构之间,使用安全的电子支付手段(包括电子现金、信用卡、借记卡、智能卡等),通过网络进行的货币或资金流转。而电子支付系统是融购物流程、支付工具、安全技术、认证体系、信用体系及金融体系为一体的综合大系统。它由六个部分组成:1)客户:指由发卡银行所发行的支付卡的授权持有者。2)商家:指出售商品或服务的个人或机构。商家必须与收单银行建立业务联系.以接受支付卡这种付款方式。3)发卡银行:指向客户提供支付卡的金融机构。4)收单银行:指与商家建立业务联系的金融机构。5)支付网关:实现对支付信息从Internet到银行内部网络的转换,并对商家和客户进行认证。6)认证中心(CA):为客户、商家和支付网关签发X.509V3数字证书,让它们通过数字证书进行认证。如图1所示

图1 电子支付系统模型

2 电子支付系统的安全要求

基于Internet平台的电子商务支付系统由于涉及到客户、商家、银行和认证部门的资金划拨,因而面临的主要安全问题有支付帐号和密码等隐私信息在网络传送过程中被窃取;支付金额被更改;不能有效验证收款人的身份。针对这些问题,需要考虑的安全要素主要包括:1)身份认证:对数据和信息的来源进行验证,以确保发送方的真实身份。2)数据保密性:对要传递的敏感信息,如:帐户、密码等。保证这些信息不能被泄漏。3)数据完整性:网上交易的信息要能做到确保其完整性。避免数据传输中信息的丢失、重复和被篡改等。4)不可抵赖性:防止一方否认电子交易行为,而损害另一方的利益。

3 基于SSLSET协议下的电子支付系统设计

目前,国内外使用的保障电子商务支付系统安全的协议包括:SSL( secure Socket Layer),SET secureElectronic Transaction )等协议标准。本文对基于这两个协议的安全支付系统进行了比较研究,提出了改进意见。

3.1 基于SSL的电子支付系统的设计

SSL协议是由网景(Netscape)公司推出的一种安全协议,是对计算机之间整个会话进行加密的协议,它能够对信用卡和个人信息提供较强的保护。主要包括协议简介、记录协议、握乎协议、协议安全性分析以及应用等.

1)基于SSL协议的电子支付系统基本模型。如图2所示。

图2 基于SSL协议的电子支付系统基本模型

基本流程:(1)客户登陆商家电子商务网站,验证商家身份。(2)客户选择相应服务,向商家发出购买请求。(3)商家回复客户的购买请求,客户机浏览器弹出新窗口页面.提示即将建立与发卡银行端网络服务器的安全连接,SSL协议机制开始介入。客户端自动验证银行端网络服务器的数字证书身份后,SSL握手协议完成,双方建立起安全通道。(4)出现相应银行的支付网页,显示从商家发来的相应的订单及支付金额信息,客户填写支付信息,确认支付。支付成功后,客户确认离开安全SSL连接。(5)银行在后台把相关资金转入商家帐号,发送付款成功消息给商家。(6)商家收到银行发来的付款成功消息后,发送收款确认信息给客户,支付过程结束。

2)SSL提供的主要服务有:采用对称密码和公开密码相结合的技术(1)保证了数据的机密性:SSL在客户机和服务器之间建立起安全通道。并对其所有信息进行密钥加密处理,以确保信息的机密性。(2)保证了数据的完整性:SSL利用密码算法和HASH函数,对传输信息特征值的提取来保证服务器和客户机之间的信息的完整性。(3)保证了合法认证性。利用认证技术和可信的第三方CA,让客户机和服务器相互识别的对方的身份。

3)SSL存在的问题:(1)数字签名问题:SSL协议没有数字签名功能,即没有抗否认服务。(2)加密强度问题:根据美国内政部的规定,SSL协议的国际版浏览器和服务器上使用40位的密钥,使破译一个SSL密钥变得比较容易实现。(3)密钥管理问题: SSL的握手协议存在一些密钥管理问题。如客户机浏览器和服务器在互相发送自己能够支持的加密算法时,是以明文传送的,存在被攻击修改的可能。

3.2 基于SET的电子支付系统设计

SET是由Visa和MasterCard两大信用卡组织联合开发的电子商务安全协议,目前已成为国际上所公认的Internet电子商业交易的安全标准。

基于SET协议的电子支付系统模型,如图3所示。

图3 基于SET电子支付系统基本模型

1)基本流程:(1)客户在商家Web主页上查看并选择要购买的商品和服务,填写定购单,请求并选择在线网络支付类型(如信用卡)。(2)客户计算机自动激活装有电子钱包信息的客户端软件,输入软件客户名及其相关信息,取出里面的电子钱包进行支付,SET协议开始介入。(3)客户端软件自动与商家服务器软件进行SET协议规定的信息交换与身份认证,然后自动提取电子钱包等信息,连同订货单等一起发送给商家。(4)商家收到持卡客户发来的信息,验证通过后,回复持卡客户,同时进行结算请求,并将客户端信息一起发给支付网关。(5)支付网关收到支付信息后,转入后台银行网络处理,通过验证审核后,支付网关收到银行端发来的支付确认信息,否则向商家回复支付不成功。(6)客户收到商家发来的购货确认与支付信息后表示这次购货与网络支付成功,客户端软件自动关闭,网络支付结束。

2)SET协议中提供的主要服务:利用数字证书、数字签名及双重签名的加密技术保证了。(1)资料的保密性、完整性、资料来源可辨识性及不可否认性。(2)通过双向签名实现对商家隐藏客户的信用卡号,保证参与者之间信息的相互隔离。(3)保证网上交易的实时性:由于可靠的身份验证,可以实时在线支付。(4)SET要完成多方认证,即客户、商家、银行相互认证。

3)SET协议存在的不足。(1)实现过程复杂,成本高,互操作性差。由于SET要求在银行网络、商家服务器以及客户计算机上安装相应软件,并向各方发放证书,其使费用非常昂贵。(2)SET报文消息太复杂。且SET软件价格高,影响了对SET的推广。(3)SET没有解决交易中证据的生成和保留,也无法解决客户对商家提供的商品不满意时的责任问题。

4 分析两种协议的优劣,提出以下改进电子支付系统的方案

通过对两个协议的比较可以看出:SSL侧重于保证通信的安全性。设计简单,成本低,得到广泛应用,但却缺少数字签名功能,因而安全性较低。SET协议侧重于机密性和身份认证,协议安全性高,但却结构复杂,成本高,且无法解决客户和商家的之间的责任问题。针对这些主要缺陷提出以下改进方案。

方案一:对ssl进行改进

SSL在电子商务安全方案中的致命缺陷是缺乏数字签名能力。而SSL又具备实现数字签名技术的基础。1)观察SSL协议栈,其中SSL握手协议,SSL加密规则协议,SSL警告协议这几个SSL高层协议和其他如HTTP等应用层协议处于相同的地位,本文提出给SSL加一个高层协议SSL签名协议( SSL Signature Pmtncol),使SSL的协议栈变成“改进后的ssl协议栈”的结构。2)SSL签名协议是在现有SSL协议的基础上实现功能的扩充,利用了SSL协议原有的密码资源,如证书、公私密钥对、公开密钥密码算法、哈希函数,参考SSL定义消息的格式,以一个独立的功能模块方式实现,专门处理对需要签名的信息、消息交换、签名和认证。3)另外在SSL基础上使用SSL签名协议的应用程序只需要满足一个条件:双方在SSL握手过程中的身份认证使用具有签名能力的X.509数字证书。因此,SSL签名协议的提出可以弥补SSL在数字签名能力方而的不足,同时通过数字签名的校验,提高了SSL在身份认证方而的能力,进一步发挥了SSL的技术潜力。通过对SSL的改良来满足政府和企业在信息安全方而的需要,不失为一条低成本高效益的可行之路。改进后如图4所示。

方案二:对SET进行改进:

图4 ssl协议栈改进后的结构

针对 SET协议存在主要问题,在不损害其安全性的前提下,可以对SET的购物流程做下面一些改进:○1采用最新的椭圆曲线加密算法ECC代替RSA。由于在采用SET协议的购物流程中要涉及多次的RSA算法进行数字签名和数字信封,而RSA算法的时间复杂度是指数级的,ECC的时间复杂度是加密位数的三次方,所以加密位数越多,ECC算法比RSA算法在时间开销方面的优越性就越明显。另外可定义不同级别的保密要求,对加密强度做调整。客户可以根据交易额的大小,选择不同的保密要求。如果选择较高的保密要求,则密钥的长度可以相应增加,其安全性也就更高,但加密解密需要的时间会更长;如果客户对安全性要求低的话,则密钥的长度可以相应短些,以减少完成一次购物的时间。○2在传统的CA机构(只确定交易双方身份的有效性的机构)上增设一个由政府职能部门(如商检局和质量监督局)来担任的电子交易认证中心(E—business Transactions CA)的机构(确认电子交易有效性的机构),电子交易认证中心自身的身份也应由CA来认证。其主要功能体现在:第一,一旦交易成功,双方不得否认此交易的有效性。第二:对有效交易加盖时间戳,并在一段时间内加以保存,作为交易有效性的法律证据。任何人不得做丝毫改动。第三:电子交易认证中心在交易确认成功之前,交易双方发生争执时有权进行仲裁,即此交易是否应当取消或应当生效。改进后的模型如图5所示。

图5 基于SET电子支付系统基本模型

方案三:ssl和set组合式

为发挥SSL,SET协议各自优势,可以在一次网上交易过程中将两种协议充分应用,尽可能带来方便性、简单性。为此,提出了以下方案如图6所示。

本方案流程为:1)客户登录商品发布站点,挑选商品;2)客户决定购买,使用SET软件(电子钱包)向商家发出购买请求信息;3)商家利用SET软件返回付款方式等信息及自己的相关数字证书;4)客户验证商家身份,将订购信息通过SET协议加密方式传给商家;5)客户跳转到发卡行支付站点,验证发卡行支付站点身份,通过SSL向发卡行传送支付信息;6)银行处理客户的支付信息,划账;7)商家通过SSL定期到发卡行站点查询成交商品,送货,交易结束。

图6

该电子支付系统的解决方案是:在商家与顾客连接的时候使用SET协议,而在与银行连接的时候采用SSL协议。支付时可使用银行发行的储值卡、信用卡。其优势:要求银行必须建立支付站点,成为支付系统的主体;支付信息不经过商家,不存在顾客的信用卡资料泄露给商家的问题,数字证书的验证避免了商家的网站恶意欺诈;在银行和商家之间,系统的设置成本较低;在客户与商家之间信息的传输过程中由SET的相关软件来实现,安全性得到充分的保证。在客户支付请求和商家支付结果查询过程中使用SSL传输协议,也较好地保障了安全。此方案回避了客户端安装电子钱包软件。 SSL协议与SET协议的结介,为电子支付模型提供了良好的环境:1)保证了网络上资金流数据的保密性;2)保证了网络上资金流数据不被篡改;3)保证了资金结算双方身份的认定; 4)保证了交易双方支付结算行为以及内容的不可抵赖性;5)保证了一定的支付结算速度。

5 结论

通过对现有的SSL和SET的电子商务支付系统存在的不足点,提出了三种改进意见:其一:对SSL协议进行改进,针对ssL不能提供交易的不可抵赖性的缺陷,在其应用层上加了一个SSL签名协议,其目的是提高SSL在身份认证方面的不足。其二:对SET协议进行改进,用最新的椭圆曲线加密算法ECC代替RSA,其目的是解决加密的复杂性和交易不可否认性;另外增设一个 电子交易认证中心,解决客户和商家的责任纠纷问题。其三:采用SSL和SET协议相组合的方式,解决了两者存在的不足,发挥了两者的优点。总之,安全支付是电子商务中最为核心的问题,随着加密技术的发展,电子交易的安全性会得到很好的解决,支付方式也会呈现多元化。有待于今后思考的问题:能否构建集ssl和set的优势为一体的一种安全方便、速度良好和安全性较好的一种新型交易模型的出现。

[1]张福德.电子商务安全辞典[M].北京:清华大学出版社,2005.

[2]郭晶晶,李腊元.基于SET协议的电子商务支付系统的研究[D].计算机应用,2002(3).

[3]韩宝明,杜鹏.刘华电子商务安全与支付[M].北京:人民邮电出版社,2001.

[4]郭涛,等.电子商务安全支付系统综述.计算机应用研究[J].2003(1).

[5]土茜.杨德礼.电子商务的安全体系结构及技术研究[J].计算机工程,2003(1).

[6]关翔.中国电子商务与实践[M].北京:清华大学出版社,2000.

[7]同锋.电子商务的安全性及其技术[Z].信息工程学院学报,1999,(12).

[8]刘卫宁,宋伟.电子商务在线支付的安全保障[C].计算机应用,1999,(7)

[9]唐礼勇,陈钟.电子商务技术及其安全问题[J],计算机工程与应用,2000(7).

[10]王蝉,姚赤丹.SSL/SET协议比较与改进模型[J],现代计算机,2002(8).

猜你喜欢

数字签名商家交易
中国人不骗中国人
基于正交拉丁方理论的数字签名分组批量验证
交通运输行业数字签名系统的设计与实现分析
浅析计算机安全防护中数字签名技术的应用
No.4 快手电商:已帮助至少50万线下商家恢复生意
大宗交易榜中榜
大宗交易榜中榜
大宗交易
春节黄金周陕西省商家揽金二百一十亿元
掌握方法用好数字签名