
Vol.22,No.9
2005年9月 Computer Applications and Software Sep.2005
一种改进的电子商务支付系统的支付策略
徐小平1,2
冯玉翔1
1(华南理工大学软件学院 广东广州5100) 2
(广东技术师范学院电子信息工程系 广东广州510631)
收稿日期:
2004-12-22。本课题为广东省教育厅高校自然科学研究项目(编号:Z03061)。徐小平,副教授,主研领域:软件工程,Internet 环境及应用。
摘 要 支付系统是电子商务中最重要的环节之一。如何提供用户在一个并不安全的Internet 上进行安全的购物支付,是支付系统的核心问题。本文阐述了电子商务支付系统的概念及相应的流程,讨论了支付系统的安全性问题,并对一个典型的支付系统FirstVirtual 的支付策略进行了改进,增强了它的安全性。关键词 支付系统 支付策略 支付安全
AN IMPROVING PAYMENT STRATEGY FOR PAYMENT SYSTEM IN E-COMMERCE
Xu Xiaoping 1,2
Feng Yuxiang 1
1
(School of Software ,South China University of Technology ,Guangzhou Guangdong 5100,China )
2
(Department of Electron Engineering ,Guangdong Technical Normal University ,Guangzhou Guangdong 510631,China )
Abstract Payment system is one of the key activities in e-commerce.It is a main problem providing customers with a secure way to buy goods though unsecured Internet.In this paper we expound the concepts and relative process in payment system of e-commerce ,discuss the se-curity of the payment system ,and improve a typical payment system ,FirstVirtual ,to enhance the security of the system.Keywords Payment system Payment strategy Payment security
1 引 言
随着数字化进程和Internet 的不断深入发展,电子商务的应用也越来越普及。作为电子商务应用的关键技术,电子支付系统日益引起人们的重视。电子商务的支付问题是随着电子商务本身的快速发展而衍生的,支付体系是开展电子商务的必备条件。由于电子商务是基于互联网的这一开放网络环境下的商务形式,支付的安全问题就凸现出来。与开放式网络环境下的电子商务相对应的,就是要有安全的支付方式去实现交易双方的终极目的。而支付问题正是目前制约我国电子商务发展的瓶颈。
本文对电子商务的支付策略及其安全问题进行了研究,阐述了电子商务支付系统的概念及相应的流程,讨论了支付系统的安全性问题,并对一个典型的支付系统FirstVirtual 的支付策略进行了改进,增强了它的安全性。
2 支付系统概念
电子商务支付系统是电子商务系统的重要组成部分,它是指消费者、商家和金融机构之间使用安全电子手段交换商品或服务,即把新型支付手段(包括电子现金、信用卡、借记卡、智能卡等)的支付信息通过网络安全传送到银行或相应的处理机构,来实现电子支付
[1]
。
电子支付的过程包括三个重要因素:支付人、收取人、支付系统。电子支付完成的流程是:
(1)支付人通过支付系统生成支付凭证,包含交易内容、支
付人和收取人名字、交易日期以及应付金额等(表示交易的传
票和证据)。
(2)支付人使用自己的个人键码对凭证进行签署。(3)凭证的收取人用公开的键码读取这一记录,并对其进行签署,以确认个人键码的所有者所承担的义务。
(4)收取人向清算系统提出该凭证,以取得收款的法律依据。
3 支付系统安全分析
3.1 支付系统安全概述
电子支付的安全完成是电子商务目的实现的基本保证,所以支付系统的支付安全成为一个重要课题。就目前来说,在电子商务支付系统中,消费者和商家面临的威胁有:
1)虚假定单:假冒者以客户名义订购商品,而要求客户付款或返回商品;
2)付款后收不到商品;3)商家发货后,得不到付款;
4)机密性丧失:PIN 或口令在传输过程中丢失,商家的确认信息被篡改;
5)电子钱币丢失:可能是物理破坏,或者被偷窃。由于交易双方信息交换的增多,交互式操作中的数据安全越来越重要,电子支付安全也因此包括了集加密传输、数字签名
和安全认证于一体的安全机制。
3.2 支付系统的安全性能要求
电子商务支付系统的安全性要求[2]包括:
·机密性为了防止不法分子采用搭线窃听的方法获取信息,在电子交易中交易双方的身份、订购信息、支付信息等,要求能够实现机密传输。
·数据源的鉴别和不可抵赖性为了防止交易各方在交易过程中抵赖,必须采取数据源鉴别机制。
·授权访问没有付款人直接授权,就不能从付款者那里提取资金。
·消息的完整性鉴别为了防止消息在传输过程中被篡改,要求采用完整性鉴别机制。
·匿名性在某些电子交易中,交易各方的身份要求保密,需要支付系统能抵制对个人的消费情况、收入情况等的跟踪。
·不可伪造性要求交易各方不可伪造交易信息,如防止用户伪造信用卡、伪造电子现金实现交易,防止商家伪造用户交易信息,从金融机构提取资金等。
·不可重用性在电子交易中要求防止交易各方重复使用交易信息,如采用电子现金支付手段时,支付系统要能够自动发现用户两次使用同一电子现金。
·交易信息的安全存储由于每次交易信息中含有交易各方重要的机密信息,因而必须以安全的存储方式来保存它,必要时可以完全销毁交易信息。
3.3 安全协议
目前使用的保障电子商务支付系统安全的主要协议有:SSL (Secure Socket Layer)和SET(Secure Electronic Transaction)。SSL作为一种针对两方通信的协议,不完全适合需多方参与的电子商务环境。另外与SSL相比,SET的安全性更强。因此,SET已成为一种事实上的标准。
3.3.1 SET的基本原理
SET给出了一整套安全电子交易的过程规范,可以实现电子商务交易中的机密性、认证性、数据完整性等安全功能。由于SET提供商家和收单银行的认证,确保了交易数据的安全、完整可靠和交易的不可抵赖性,特别是具有保护消费者信用卡号不暴露给商家等优点,因此它成为目前公认的信用卡/借记卡网上交易的国际标准。
SET协议的工作原理如图1所示[3]:
图1 SET协议的工作原理
具体工作流程如下:
(1)消费者使用浏览器在商家的主页上查看在线商品目录浏览商品。
(2)消费者选择要购买的商品。
(3)消费者填写订单。
(4)消费者选择付款方式,此时SET开始介入。
(5)消费者发送给商家一个完整的订单及要求付款的指令。在SET中,订单和付款指令由消费者进行数字签名。同时利用双重签名技术,保证商家看不到消费者的帐号信息。
(6)商家接受订单后,向消费者的金融机构请求支付认可。通过网关到银行,再到发卡机构确认,批准交易,然后返回确认信息给商家。
(7)商家发送订单确认信息给顾客,顾客端软件可记录交易日志,以备将来查询。
(8)商家给顾客递运货物,完成订购的服务。至此,一个购买过程已经结束。
(9)商家从消费者的金融机构请求支付。商家可以立即请求银行将钱从购物者的帐号转移到商家帐号,也可以等到某一时间,请求成批划账处理。
前三步与SET无关,从第四步开始SET起作用,一直到第九步。在处理过程中,通信协议、请求信息的格式、数据类型的定义等,SET都有明确的规定。在操作的每一步,消费者、商家、网关都通过CA来验证通信主体的身份,以确保通信的对方不是冒名顶替。
3.3.2 SET的安全特点
SET安全支付机制有以下几个特性[4]:
·交易时身份的识别
电子交易是在虚拟的电子环境下完成的,交易双方无法见面,因此合法身份的识别非常重要。在SET的机制里,每个参与交易的个体,在交易之前都必须去认证中心取得合法的电子认证(X.509标准格式)。交易时,每个参与的个体必须出示其电子认证,以辨识交易双方的合法身份。
·交易资料传送过程的安全性
为防止交易资料在传送过程中被第三者所窃取,SET的机制是:在每次交易时产生56bits的对称DES Key,再以此DES Key将传送的交易资料进行加密。为防止解密的DES Key外泄,以接收方的公开密钥RSA1024bits对此DES Key进行加密,以保证交易资料的安全。
·交易资料的完整性
交易资料的完整性是为了防止不法分子篡改交易内容。SET的机制里,传送方先将原有的交易资料经函数产生摘要,再将原有的交易资料与摘要一起传送给接收方。接收方收到上述资料后,将收到的交易资料经函数产生新的摘要,并与传送方传过来的摘要进行对比,如果对比结果一致,则表示原有交易资料没被篡改过,接收此次交易,否则,就拒绝此次交易。
·交易的不可否认性
交易的不可否认性是为了确认交易是合法拥有人所发动的交易,而非第三者发动的交易。SET是用签名技术来完成此项机制的。公钥加密的资料只能由相对应的私钥加以解密,同理,私钥加密的资料也只能由相对应的公钥加以解密。SET机制里,传送方将欲签名的资料用私钥加密,接收方再以传送方的公钥来解密进行验证。由于私钥只有该传送方保管和持有,由此确定该交易资料为合法传送出的交易,保证交易的不可否认性。
·商家无法得到支付人的相关资料
为了防止不法商家收集持卡人的相关资料,进行假交易真取款,SET提供了使商家无法获得支付人相关资料的安全交易机制。虽然在整个交易过程中,持卡人所提供的交易资料都经由商家传送给收单银行以进行交易授权,但有关持卡人的个人资料是由收单银行的公钥加以保护,这部分资料只有传送到收
单银行的支付网关方能解开,因而实现了信息的保密。
第9期
徐小平等:一种改进的电子商务支付系统的支付策略25
4 改进的支付模型
4.1 概 述
SET 的支付过程虽然建立在认证的基础上,它提供了一条称为OPI 的指令,将顾客的订单信息和信用卡帐号信息分别用商家的公共密钥和结算中心的公共密钥加密,使商家无法看到客户的支付信息。但持卡人的信用卡帐号、密码信息都需要通过商家服务器送到支付网关,商家不可避免地保留了客户的支付信息。同样地,支付网关的应答信息也需要通过商家服务器传到客户,商家服务器事实上成了客户与支付网关的信息中转站。由于商家服务器作为一个商业的站点,很容易受到黑客的攻击,这样的一个过程同样有可能使客户信息暴露在黑客的攻击中。
因此,有必要把客户在使用信用卡支付时的支付敏感信息从与商家服务器通信的一般描述信息中脱离开来。使用一个第三方支付服务器进行处理,即商家在生成订单后,不再参与信用卡支付的接续支付过程,而使用一个第三方支付服务器去代替SET 支付协议支付过程中的商家服务器。这样不仅可以使支付信息不至于暴露在商业站点中,增强支付信息的安全,同时,第三方对每一订单支付作出记录,还可以作出交易中不可否认性的公证。
4.2 FirstVirtual
FirstVirtual 正是通过第三方进行交易的Internet 上最早的支付模型之一,被称作为“绿色商务”。顾客和商家都在First-Virtual 上有一个PIN ,交易时,双方都采用PIN 进行,由FirstVir-tual 代替他们进行转帐。
其购物过程如图2所示:
图2 FirstVirtual 的购物过程
4.3 FirstVirtual 的缺点
FirsvVirtual 支付模型正是基于第三方的支付系统模型。虽然如此,但FirstVirtual 却有如下缺点:
·并不是一个实时支付的模型,
其实质为离线支付,客户支付的实时性无法得到满足;
·传送的信息都没有加密;
·身份认证仅仅处于表面上的帐号验证;
·用户容易被别人冒充。同样,
第三方发送给用户的确认信息,也有可能被冒充者伪造;
·订单和用户帐号信息完全暴露;
·只能完成单一的业务功能。
由上分析可以看出,这样的支付机制已经不适应目前信用卡的支付要求。因此,我们对FirstVirtual 模型做了改进,将第三方服务器作为支付服务器去承担SET 支付协议中商家的支付职能。
4.4 对FirstVirtual 的改进
1)针对FirstVirtual 身份认证仅仅处于表面上的帐号验证
的情况,引入CA 认证中心,旨在为参与支付的用户、支付服务
器、商家、支付网关实现真正的身份验证。
2)对传送的信息进行加密。在新的支付系统模型中引入SET 协议,基于商家、客户的交互处理采用SET 的交易规范,使信息在安全的通道下传送,使用数字签名和数字信封,实现电子商务交易中的机密性、认证性、数据完整性等安全功能。
3)对支付服务器进行再一次划分,分为在线支付、离线支付以及单独个体交易部分,对不同的部分实施不同的安全支付策略。
4)在支付服务器上引入一个冗余的再确认服务,即使到最后客户在支付服务器上做好所有确定支付的动作时,支付仍然不能进行,还需经过再确认机制才能最终进行支付。再确认机制可由电子邮件或语音系统平台结合原始密码来实现。
有了以上几个策略的改进,新的支付系统模型已基本具备了实现实时的网上支付的功能。其模型如图3所示。
图3 改进的支付模型
例如,一个在线支付的交易流程如下:
(1)客户通过浏览器在商家网站浏览商品信息;(2)客户发出购买请求;
(3)网站向客户返回可支付方式;(4)客户返回其所要求的支付方式;
(5)商家启用配置在本地的支付服务器客户端;(6)商家配置支付服务器生成的订单信息;(7)商家送回订单信息;
(8)支付服务器检验商家信息的有效性;
(9)若有效,激活支付服务器标准的SET 协议支付流程;(10)用户发出交易初始化请求;
(11)支付服务器将请求转发给支付网关;(12)支付网关返回应答;
(13)支付服务器返回用户消费应答;(14)客户得到正确的应答信息;(15)客户返回确认信息;
(16)支付服务器返回商家交易的完成信息;
(17)商家验证信息有效性,并把验证有效的信息返回支付服务器;
(18)支付服务器验证有效并返回。
4.5 两个模型的对比
如表1所示,改进后的模型在传输加密、身份认证、适合的支付模式等方面都比FirstVirtual 要好,特别是加入了冗余的支付再确认机制,更有效地维护了支付过程中身份的唯一性、交易的不可否认性。而且,由于保留了FirstVirtual 的特点,使新的模型仍然适合作为两个个体的交易平台。(下转第
81
页)
系,记录其算法标识,加载定制器时,读取相应的配置文件。用
户一旦在统计条件定制器中作了对该类派生信息统计的定制,
我们便将其算法标识写入生成的统计条件文件中。统计引擎通
过解析统计条件文件获得对该统计项的算法标识,在执行统计
时,根据算法标识便可进行相应的运算。
3.2.3报表定制载体
统计报表定制载体的设计应尽量以用户为中心。除了界面
风格外,最主要就是操作简便,让用户定制统计报表时尽量地得
心应手。用户在该载体中可以方便地定义统计报表的格式:报表的表头,行列标题,字体,字号的大小等等。另外,用户通过该载体进行简单的操作即可加载统计条件定制器,进而进行统计范围条件和报表行列统计条件的定制。
3.3 统计引擎的设计与实现
执行统计的方法和算法是统计引擎的核心。通常实现二维统计报表的统计方法是对于每一个统计结果单元格综合其对应的行条件和列条件(如果有报表统计范围条件,则还要综合该条件),构造出相应的SQL语句,然后与数据库交互,得到该单元格所对应的统计结果。对于一个M×N(M代表报表中具有的行条件的个数,N代表报表中具有的列条件的个数)的统计报表来说,与数据库交互的次数为M×N。这样,当M和N比较大时,统计效率就比较低。为避免这种情况,本文中所介绍的统计引擎采用下面的统计思想。
首先,统计引擎解析报表统计范围文件和报表统计条件文件,得到执行统计所需要的统计范围条件和各行列统计条件,然后综合这两种条件,构造出一条SQL语句和数据库进行一次交互,生成一个包含有统计需要的所有信息的结果集;之后,逐个遍历结果集的每一条记录,同时将记录和统计报表的行列条件进行匹配。如果行列条件均匹配成功,则将与行列条件交叉对应的单元格的匹配结果标志置1;如果行或列条件为3.2.2中所述的第二类可统计派生信息,则该行或该列对应的所有单元格的匹配结果均置0,并将二次计算标识置1。如果行或列条件为3.2.2中所述的第三类可统计派生信息,则先将该行或该列对应的所有单元格的匹配结果均置0,并记下该派生信息在该记录中所对应的相关数据信息,然后根据该派生信息项对应的算法标识调用相应算法,得到遍历至该条记录时该行或列单元格所对应的统计结果;当遍历完结果集的时候,统计即结束,此时将所有匹配结果合并起来就得到了统计结果。如果二次计算标识为1,则根据3.2.2中所述的针对第二类可统计派生信息项的统计,还要读取并解析二次计算配置文件,获取在现有统计结果基础上进行二次计算所需要的单元格数据信息以及相应算法,然后进行相应的计算,得到二次计算结果,将该二次计算结果与之前的统计结果合并,即可得到报表的最终统计结果。
4 灵活统计报表应用实例
依照上述设计思想,并基于现有的WEB人员信息管理系统,开发了上述的统计报表的灵活定制模块。图4是统计报表灵活定制的界面。用户可以按照业务需要的格式定制统计报表,从而生成统计引擎执行统计所需要的统计格式文件,定制报表的行列统计条件也是非常方便的,用户选中需要定制条件的单元格,执行“定制统计条件”的属性,就可以加载统计条件定制器了。
图4 统计报表的灵活定制应用实例
5 结束语
本文介绍的统计报表的灵活定制组件具有较强的可移植性和可扩展性。我们已开发了相关的报表灵活定制和报表统计引擎组件,实现了整个灵活统计报表功能。该功能已成功置入为某党政机关开发的WEB下的信息管理系统,目前处于全面测试阶段,初步测试结果良好。
参考文献
[1]组织部,组织部全国组织,干部人事管理信息系统信息结构体系[S],北京:党建读物出版社,1997.
[2]Didier Martin,XML高级编程[M],北京:机械工业出版社,2001.[3]夏良华、宋一中、徐英,“MIS中军械统计报表的动态设计与实现[J]”,《计算机应用》,2001,21(2).
[4]陈小青、殷宏,“基于元数据的数据库分析与设计方法[J]”,《计算机工程与应用》,2002,(12).
[5]徐鹏、谢晓芹、王克宏,“基于XML数据字典的元数据对象分级控制模型的研究[J]”,《计算机科学》,2002,29(9)~~~~~~~~~~~~~~~~~~~~~~~
.
(上接第25页)
表1 两个模型的对比
FirstVirtual改进的模型
传输加密无有
身份认证帐号认证CA认证
支付模式离线支付在线支付、离线支付
支付协议无SET
再确认机制无有
5 结束语
本文阐述了电子商务支付系统的概念及相应的流程,讨论了支付系统的安全策略,并对FirstVirtual支付模型进行了改进,使其安全性得到了完善和增强。对于一些具体的支付策略,特别是支付网关,还需要作进一步的研究。目前,我们只做了策略上的研究,还没有对相应的策略进行实现以验证其正确性。
参考文献
[1]徐汀荣、黄斐,电子商务原理与技术,北京:科学出版社,2001.5.[2]陈兵、王立松编著,网络安全与电子商务,北京:清华大学出版社,2002.1.
[3]梁晋、施仁等编著,电子商务核心技术———安全电子交易协议的理
论与设计,西安:西安电子科技大学出版社,2000.8.
[4]潘辛平,电子商务的安全决策问题,国家信息安全实验室.
[5]Dr.Cheng Hsu,Business on the Web:Strategies and Economics,Presen-ted at the Fifth International World Wide Web Conference,1996,Paris.
