安全电子支付系统的设计
王海
(南京航空航天大学信息科学与技术学院 南京 210016)
摘 要:本文从电子支付的安全需求及安全攻击入手,结合多种网络安全技术,针对电子信用
卡提出了基于 SET 协议的安全电子支付系统,该系统可以从根本上保证了交易的安全性,是一
种很好的电子商务模式的解决方案。
关键词:电子商务;电子支付;网络安全 SET 协议
1.引言
所谓电子商务(Electronic Commerce),是指通过电子手段来完成整个商业贸易活动的过程。
电子商务主要涉及三方面内容:信息、电子数据交换和电子资金转帐。在从传统的基于纸张的
贸易方式向电子化的贸易方式转变的过程中,如何保持电子化的贸易方式与传统方式一样安全
可靠是人们关注的焦点,同时也是电子商务全面应用的关键问题之一。电子支付作为电子商务
的核心环节和关键步骤,其实现程度一直是影响电子商务发展速度的主要因素之一。如何在不
安全的因特网上实现安全的支付,是人们密切关注的焦点,也是一个值得深入研究的课题。
2.电子支付的安全要素
信息传输的安全性:
机密性(Confidentiality)又叫保密性,是指信息在传送或存储的过程中不被他人窃取、不被泄
露或披露未经授权的人或组织,或者经过加密伪装后,使未经授权者无法了解其内容。机密性
一般通过密码技术对保密的信息进行加密处理来实现。
信息的完整性:
完整性(Integrity)又叫真实性,是保护数据不被未授权者修改、建立、嵌入、删除、重复传
送或由于其他原因使原始数据被更改。完整性一般可通过提取信息消息摘要的方式来获得。
信息的不可抵赖性:
不可抵赖性又叫不可否认性(Non-repudiation ),是指信息的发送方不能否认已发送的信息,
接收方不能否认已收到的信息,这是一种法律有效性要求。不可抵赖性可通过对发送信息进行
数字签名来获得。
交易各方身份的认证性:
认证性(Authentication)是指网络两端的使用者在沟通之前相互确认对方的身份。在电子商务
中,认证性一般都通过证书机构 CA 和证书来实现。
3.电子支付的安全隐患
电子支付的安全隐患五花八门,我们把它们划归为两个大类:一类是技术层面;另一类属
于非技术层面。
技术层面的安全隐患
从技术上看,对网络的攻击包括对静态数据的攻击和对动态数据的攻击。对静态数据的攻
- 1 -
击主要有:
口令猜测
通过穷举方式搜索口令空间,逐一测试,得到口令,进而非法入侵系统。
IP 地址欺骗
攻击者从一个外部地点伪装成源自一台内部主机传送信息包,这些信息包中包含有内部系
统的源 IP 地址,冒名他人,窃取信息。
指定路由
发送方指定一个信息包到达目的地的地点的路由,而这条路由是经过精心设计的,绕过设
有安全控制的路由。
非技术层面的安全隐患
非技术层面的安全隐患主要包括管理方面的风险和法律方面的风险。由于非技术层面的问
题不是本文研究的重点,所以在此不再赘述。
4.基于 SET 电子支付交易流程
目前,比较完善的电子商务安全技术通常采用基于 SSL 协议和采用基于 SET 协议的两种技
术。基于 SET 的电子商务安全技术是专门为电子支付设计的,保证了电子交易的机密性、数据
完整性、身份的合法性和抗否认性。下面我们所介绍的这个安全电子支付系统就是基于 SET 协
议。
电子商务模式的参与方有客户、商家、认证中心、商业银行和支付网关。参与电子商务交
易的各方,他们都必须拥有CA(即数字证书认证中心,Certification Authority)所发放的数字证书。
数字证书包含了证书拥有者的信息和所签发证书的CA的相关信息,该证书既可以对信息进行加
密,又可以用于签名,它保证了信息传输的机密性、真实性、完整性和交易的不可否认性[1]。CA
作为独立的、客观的、公正的、可信赖的第三方机构,专门为参与网上交易各方提供认证服务。
参与网上交易的各方通过彼此验证证书,确认对方的身份,防止欺诈,从而保证了交易的安全。
参与交易的各方及交易流程如图 1 所示。
协商 审核 审核
图 1 参与交易各方及交易流程图
电子商务的工作流程与实际的购物流程非常接近,使得电子商务与传统商务可以很容易融
合,用户使用也没有什么障碍。从顾客通过浏览器进入在线商店开始,一直到所定货物送货上
门或所定服务完成,以及账户上的资金转移,所有这些都是通过公共网络完成的。如何保证网
上传输数据的安全和交易对方的身份确认是电子商务能否得到推广的关键,这正是 SET 所要解
决的最主要的问题。一个包括完整的购物处理流程的 SET 的工作过程如图 2 所示。
客 户 商 家 支付网关 商业银行
订单 确认 确认
确认
认证中心
- 2 -
4.客户支付命令
及授权请求 1.初始化请求
图 2 基于 SET 协议的交易流程图
5.电子支付的安全设计
数据的私有安全性设计
数据的私有性如果不采用特别的保护措施,那么在订购过程和支付过程中的定单信息甚至
包括密码等在Internet中开放传输的数据都可能被第三者监视和阅读。考虑到巨大的传输量和难
以计数的传输途径,想任意窃听一组数据传输是不可能的,但是一些设置在Web服务器的黑客程
序却可以查找和收集特定类型的数据。这些数据包括信用卡、存款的账号和相应的口令。同时
因为Internet的开放性设计,数据私有性和安全性还包括数据传输之外的问题,例如连入Internet
的数据存储网络驱动器的安全性,所以任何存储在Web服务器上的数据必须采取保护措施[2]。
其保护措施是采用在客户向商家订购或支付过程中,客户填写定单,包括项目列表、价格、
总价、运费、搬运费和税费,定单可通过电子化方式从商家传过来,或由客户的电子购物软件
建立。其次商家根据定单形成账单,然后商家将账单和确认单发送到客户的金融机构请求支付
认可。其中,客户和商家之间需进行双向身份认证,定单、账单、确认单进行数字签名,同时
利用双重签名技术保证商家看不到客户的账号信息,即被发送文件用 Hash 编码加密产生 128bit
的数字摘要。发送方用自己的私用密钥对摘要再加密,这就形成了数字签名。将原文和加密的
摘要同时传给对方,对方用发送方的公共密钥对摘要解密,同时对收到的文件用 Hash 编码加密
产生又一摘要。将解密后的摘要和收到的文件在接收方重新加密产生的摘要相互对比。如两者
一致,则说明传送过程中信息没有被破坏或篡改过,否则不然。
数据的完整性安全设计
由于Internet的开放体系,如果某些黑客或有意破坏者具备了特定的知识和工具完全可以更
改传输中的数据,从而破坏数据的完整性。因此,要采取适当的存取访问控制,以保证数据存
取系统的安全[3]。在电子商务中务必保存数据最初的格式和内容。它的保护措施是采用在客户向
商家订购或支付过程中,商家从客户的金融机构请求支付,其安全需求包括商家与银行之间的
双向身份认证。保证除商家外的任何第三方均不能了解账单的内容,除商业银行外的任何第三
方均不能了解支付信息的内容,同时对支付信息进行数字签名以及支付信息应包括解决争议的
足够信息。商业银行还需要对确认单进行数字签名,提供防篡改和不可否认保护。确认信息中
包括发票号、交易号、转账金额和转账结果等。
客
户
商
家
支
付
网
关
金
融
机
构
2.商家及网关证书
初始化响应
3.订单信息及
支付命令
7.购买响应
6.授权响应及
付款标志
8.付款请求
5.授权请求
9.付款请求
10.付款响应
- 3 -
身份认证安全设计
在电子商务的具体实现中,首先要确认当前的通讯、交易和存取要求是合法的。例如 Internet
中的计算机系统的身份是其由 IP 地址确认的。黑客通过 IP 欺骗,使用虚假的 IP 地址,从而达
到隐瞒自己身份盗用他人身份的目的。在日常电子邮件的使用中可以很容易地发匿名邮件,或
者使用不真实的邮件用户名。因此,在电子商务系统中必须建立严格的身份认证机制以确保参
加交易各方的身份真实有效,其安全措施是采用 国际标准所规定的数字证书。
不可否认安全设计
不可否认主要包含数据的原始记录和发送记录,确认数据已经完成发送和接收,防止接收
用户更改原始记录,或在己经收到数据以后否认收到数据,并拖延自己的下一步工作。为了保
证交易过程的可操作性,必须采取可靠的方法确保交易过程的真实性,保证参加电子交易的各
方承认交易过程的合法性。
系统组成及功能设计
根据参与电子商务的角色和交易流程,可以将整个电子支付系统划分为客户子系统、商家
子系统、支付网关子系统、数字证书授权与认证子系统四部分组成[4]。其系统框架结构图如图 3
所示。
客户子系统 商家子系统
图 3 系统框架结构图
客户子系统
包括与商家之间的双向身份认证、产生客户对定单的数字签名、验证商家对账单和承诺的
数字签名、加解密与商家之间传递的信息。其次提供支付过程所需的安全功能,采用商业银行
的公钥加密提交的转账信息、生成商家需保存的交易证据、产生对交易证据的数字签名。
商家子系统
包括与客户之间的双向身份认证、验证客户对定单的数字签名、生成商家对账单和承诺的
数字签名、加解密与购买商之间传递的信息。其次提供支付过程所需的安全功能,验证银行返
回的支付结果的数字签名。
支付网关子系统。
支付网关子系统是指由银行运行的一套设备,用来处理商户的付款信息以及客户发出的付
款指令。其技术特点是采用 IF3M 的电子商务框架结构。本电子商务系统具有如下的安全交易特
点:
(1)遵循 SET 国际标准、具有 SET 标准规定的安全机制,是目前国际互联网上运行的比较安
支付网关子系统 银行机构
SET 协议
数字认
证中心
- 4 -
全的电子支付系统;
(2)兼顾国内信用卡、储蓄卡与国际信用卡的业务特点,具有一定的中国特色;
(3)具有开放特性,可与经 SETCO 国际组织认证的任何电子支付系统进行互操作。
数字证书授权与认证子系统。
客户可从公开媒体上获得商家的公开密钥,但客户无法确定商家不是冒充的,于是客户请
求 CA 对商家认证。CA 对商家进行调查、验证和鉴别后,将包含商家公开密钥的证书经过数字
签名传给客户。同样,商家也可对客户进行验证。
本电子支付 CA 的主要功能包括:接收注册请求、处理、批准请求和颁发证书。
6.结语
随着经济的飞速发展以及计算机技术的不断进步,基于 Internet 的电子商务发展迅速,这不
仅给经济的发展提供了持续的动力,也给人们的生活带来了便利。但电子商务安全支付系统作
为电子商务系统重要组成部分,其安全问题也变得越来越突出、安全方便的电子支付系统是电
子商务发展急需研究和解决的问题。
参考文献
[1]覃征等,电子商务体系结构及系统设计,西安交通大学出版社,2001
[2]聂哲,电子商务支付系统的安全研究,福建电脑,
[3]杨千里,电子商务技术与应用,电子工业出版社,
[4]常晓燕,崔泽永,安全电子支付系统探析,电子商务.
The Design of A Secure Electronic Payment System
Wang Hai
(College of Information Science&Technology of Nanjing University of Aeronautics and
Astronautics,Nanjing 210016)
Abstract
This paper gives the subsystem's payment processing description, Aiming at the electronic payment's
security and its security attacks, combining with many network security techniques, this paper gives a secure
electronic payment system based on SET protocol for the electronic credit card. This system can assure the
security of the transaction ultimately, it is an efficient solution of electronic trade.
Keywords: E-commerce;electronic payment;network security;SET protocol
作者简介:王海(1977-),男,南京航空航天大学信息科学与技术学院 2005 级在读硕士研究
生。主要从事计算机网络等方面的研究。
- 5 -