资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第五章 网上支付,学习目的和要求,了解各种网上支付工具的特点;,理解网上支付系统的实现方法;,掌握网上支付的工作过程和安全措施;,主要内容,银行卡支付;,电子支票;,电子现金;,网上支付工具的比较;,9/28/2024,背景:随着信息技术、Internet的高速发展,电子商务变得越来越炙手可热,引起了流通领域的重大变革。在电子商务的实践中,在线电子支付是电子商务的关键环节,也是电子商务得以顺利发展的基础条件。没有相应实时的电子支付手段相配合,电子商务就只能是没有实际意义的“虚拟商务”,只能是电子商情、电子合同,而无法实现真正的网上交易。,9/28/2024,在线电子支付,是电子商务的核心,也是目前制约国内网络应用开展的一个瓶颈。,在电子商务活动中,主要的三个要素是信息流、资金流和物质流。当客户完成在线选购商品后,必须支付相应的费用,然后由商家按时将货物送达客户手中,完成交易过程。因此,在线电子支付是电子商务发展的重心所在,是完成网上交易的关键步骤。,9/28/2024,网上支付,,又可称为在线电子支付、电子货币支付,从广义上来说,是指交易双方在网上发生的一种资金交换;它是以金融电子化网络为基础,以商用电子化机具和各类交易卡为媒介,以电子计算机技术和通信技术为手段,以电子数据(二进制数据)形式存储在银行的计算机系统中,并通过计算机网络系统以电子信息传递形式实现的流通和支付。,在线电子支付多种多样,主要有网上银行卡支付、电子现金支付、电子钱包支付、电子支票支付等几种形式。,9/28/2024,一、银行卡支付,(一)网上银行支付问题,银行卡支付:1)类别:借记卡、贷记卡,2)特点:不用现金,3)支付过程涉及消费者、商户和银行,4)支付过程:清算和结算,5)资金支付流程,9/28/2024,传统的银行卡支付是在银行专用网络上传输数据和交易信息,而基于银行卡的支付转移到因特网上进行,信息会在完全开放的网络上传输,那么对支付的安全性提出了更高的要求。,核心问题,是:消费者、商家和银行之间的支付信息的安全传输和身份认证,9/28/2024,(二)基于SSL的银行卡支付系统,1. SSL协议概述,安全套接层协议SSL (Secure Socket Layer)为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密技术,可确保数据在网络上之传输过程中不会被截取及窃听。 此协议时在因特网基础上提供的一种保证机密性的安全协议。其始终保持对服务器进行认证,还可以选择对客户进行认证。,9/28/2024,优势:其与应用层协议独立无关,应用层协议能够透明的建立于SSL协议之上。,SSL协议在应用层协议通信之前就已经完成加密算法、通信加密的协商以及服务器的认证工作。在此之后,应用层协议所传送的数据都会被加密,从而保证在因特网上通信的机密性。,9/28/2024,SSL是目前在电子商务中应用最广泛的安全协议之一,1)应用范围的普遍性,凡是构建TCPIP协议上的客户机服务器模式需要进行安全通信时,都可以使用SSL协议。,2)SSL被大部分Web浏览器和Web服务器所内置,比较容易被应用。,9/28/2024,计算机数据通信原理(TCP/IP协议),TCP/IP中文名为,传输控制协议/因特网互联协议,,又叫网络通讯协议,这个协议是Internet最基本的协议、Internet国际互联网络的基础,简单地说,就是由网络层的IP协议和传输层的TCP协议组成的。 TCP/IP是一个两层的程序。高层为传输控制协议,它负责聚集信息或把文件拆分成更小的包。这些包通过网络传送到接收端的TCP层,接收端的TCP层把包还原为原始文件。,9/28/2024,低层是网际协议,它处理每个包的地址部分,使这些包正确的到达目的地。网络上的网关计算机根据信息的地址来进行路由选择。即使来自同一文件的分包路由也有可能不同,但最后会在目的地汇合。 TCP/IP使用客户端/服务器模式进行通信。 TCP/IP通信是点对点的,意思是通信是网络中的一台主机与另一台主机之间的。,整体构架概述,TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。,9/28/2024,应用层:,应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。,传输层:,在此层中,它提供了节点间的数据传送,应用程序之间的通信服务,主要功能是数据格式化、数据确认和丢失重传等。如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。,互连网络层:,负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。,网络接口层(主机-网络层):,接收IP数据报并进行传输,从网络上接收物理帧,抽取IP数据报转交给下一层,对实际的网络媒体的管理,定义如何使用,实际网络(如Ethernet、Serial Line等)来传送数据。,9/28/2024,2. SSL协议的功能,SSL协议提供的,服务,主要有:,1)认证用户和服务器,确保数据发送到正确的客户机和服务器;,2)加密数据以防止数据中途被窃取;,3)维护数据的完整性,确保数据在传输过程中不被改变。,9/28/2024,基本,功能,:SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。 运行时,支持SSL协议的服务器可以向一个支持SSL协议的客户机认证它自己,客户机也可以向服务器认证它自己,还允许这两个机器间建立加密连接。,1)SSL服务器认证:允许客户机确认服务器身份,支持SSL协议的客户机软件能使用公钥密码技术检查服务器证书、是否由在客户信任的认证机构CA列表内的认证机构发放。,9/28/2024,2)确认用户身份:使用同样的技术,支持SSL协议的服务器软件能检查客户证书、是否由在服务器信任的认证机构列表内的认证机构发放。,3)保证用户传输的机密性和完整性:SSL要求客户机与服务器之间的信息由发送方加密由接受方解密;所有数据都会被一种检测修改的机制所保护,保证数据完整性。,9/28/2024,3. SSL体系结构,SSL协议位于TCP/IP协议模型的网络层和应用层之间,使用TCP来提供一种可靠的端到端的安全服务,它是客户/服务器应用之间的通信不被攻击窃听,并且始终对服务器进行认证,还可以选择对客户进行认证。SSL协议在应用层通信之前就已经完成加密算法、通信密钥的协商以及服务器认证工作,在此之后,应用层协议所传送的数据都被加密。,9/28/2024,SSL实际上是共同工作的两层协议组成。从体系结构图可以看出SSL安全协议实际是SSL握手协议、SSL修改密文协议、SSL警告协议和SSL记录协议组成的一个协议族。,9/28/2024,其中最重要的两个SSL子协议是记录协议和握手协议。,SSL记录协议为SSL连接提供了两种服务:一是机密性,二是消息完整性。,记录协议定义了要传输数据的格式,从高层SSL子协议收到数据后,对它们进行封装、压缩、认证和加密。从而保证数据的机密性和完整性。,9/28/2024,SSL握手协议被SSL记录协议所封装。该协议允许服务器与客户机在应用程序传输和接收数据之前相互认证、协商加密和密钥。,SSL握手协议可以使得服务器和客户能够相互鉴别对方,协商具体的加密算法和MAC算法以及保密密钥,用来保护在SSL记录中发送的数据。SSL握手协议允许通信实体在交换应用数据之前协商密钥的算法、加密密钥和对客户端进行认证(可选)的协议,为下一步记录协议要使用的密钥信息进行协商,使客户端和服务器建立并保持安全通信的状态信息。,9/28/2024,SSL握手协议是在任何应用程序数据传输之前使用的。SSL握手协议包含四个阶段:第一个阶段建立安全能力;第二个阶段服务器鉴别和密钥交换;第三个阶段客户鉴别和密钥交换;第四个阶段完成握手协议。,9/28/2024,SSL协议的工作流程:,服务器认证阶段:1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;,2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;,3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;,9/28/2024,4)服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。,5)用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证。,9/28/2024,4. 基于SSL的银行卡支付过程,基于SSL的银行卡支付系统使用SSL协议,RSA加密算法、数字签名和防火墙等保证交易的安全。系统的参与者有持卡人、商户、支付网关和发卡银行。,基于SSL的银行卡支付流程如下:,持卡人登录商品发布站点,验证商户身份,持卡人决定购买,向商户发出购买请求;,商户返回同意支付等信息;,9/28/2024,持卡人验证支付网关的身份,填写支付信息,将订购信息和支付信息通过SSL传给商户,但支付信息被支付网关的公开密钥加密过,对商户来说是不可读的;,商户用支付网关的公开密钥加密支付信息等,传给支付网关,要求支付;,支付网关解密商户传来的信息,通过传统的银行网络到发卡行验证持卡人的支付信息是否有效,并即时划账;,9/28/2024,支付网关用它的私有密钥加密结果,把结果返回商户;,商户用支付网关的公开密钥解密后返回信息给持卡人,送货,交易结束。,SSL协议存在的问题,从SSL 协议所提供的服务及其工作流程可以看出,SSL协议运行的基础是商家对消费者信息保密的承诺,这就有利于商家而不利于消费者。在电子商务初级阶段,由于运作电子商务的企业大多是信誉较高的大公司,因此这问题还没有充分暴露出来。,9/28/2024,但随着电子商务的发展,各中小型公司也参与进来,这样在电子支付过程中的单一认证问题就越来越突出。虽然在SSL3.0中通过数字签名和数字证书可实现浏览器和Web服务器双方的身份验证,但是SSL协议仍存在一些问题,比如,只能提供交易中客户与服务器间的双方认证,在涉及多方的电子交易中,SSL协议并不能协调各方间的安全传输和信任关系。,9/28/2024,要想电子商务得以成功的广泛开展,必须在SSL基础上采用更先进的基于PKI体系结构的银行卡支付系统,克服SSL仅为通信双方提供安全通道而没有解决持卡人的身份认证和交易的不可抵赖等问题。,在这种情况下,Visa和 MasterCard两大信用卡公组织制定了SET协议,为网上信用卡支付提供了全球性的标准。,9/28/2024,(三)基于SET的银行卡支付系统,1. SET协议概述,背景:电子商务在提供机遇和便利的同时,也面临着一个最大的挑战,即交易的安全问题。在网上购物的环境中,持卡人希望在交易中保密自己的帐户信息,使之不被人盗用;商家则希望客户的定单不可抵赖,并且,在交易过程中,交易各方都希望验明其他方的身份,以防止被欺骗。针对这种情况,由美国Visa和MasterCard两大信用卡组织联合国际上多家科技机构,共同制定了应用于Internet上的以银行卡为基础进行在线交易的安全标准,这就是,安全电子交易,(Secure Electronic Transaction,简称SET)。,它采用公钥密码体制和X.509数字证书标准,主要应用于保障网上购物信息的安全性。,9/28/2024,概述:,SET是一种应用于因特网环境下,以信用卡为基础的安全电子支付协议,它给出了电子交易的过程规范。通过SET协议可以实现电子商务交易中的加密,认证机制,密钥管理机制等,保证在开放网络上使用信用卡进行在线购物的安全。,由于SET 提供了消费者、商家和银行之间的认证,确保了交易数据的安全性、完整可靠性和交易的不可否认性,特别是保证不将消费者银行卡号暴露给商家等优点,因此它成为了目前公认的信用卡/借记卡的网上交易的国际安全标准。,9/28/2024,SET协议中采用的数据加密模型,9/28/2024,该模型具有以下特点:,1)交易参与者的身份鉴别采用数字证书的方式来完成,数字证书的格式一般采用X509国际标准。,2)交易的不可否认性用数字签名的方式来实现。由于数字签名是由发送方的私钥产生,而发送方的私钥只有他本人知道,所以发送方便不能对其发送过的交易数据进行抵赖。,3)用报文摘要算法来保证数据的完整性。,4)由于非对称加密算法的运算速度慢,所以要和对称加密算法联合使用,用对称加密算法来加密数据,用数字信封来交换对称密钥。,9/28/2024,SET协议的安全性,SET协议采用了对称密钥和非对称密钥体制,把对称密钥体制的快速、低成本和非对称密钥的有效性结合在一起,以保护在开发网络上传输的个人信息,保证交易信息的隐蔽性,其重点是如何确保商户和消费者的身份和行为的认证和不可抵赖性,其理论基础是非否认协议,采用的核心技术包括X.509电子证书标准与数字签名技术、报文摘要、数字信封、双重签名等技术。,SET交易过程十分复杂性,在完成一次SET协议交易过程中,需验证电子证书9次,验证数字签名6次,传递证书7次,进行签名5次,4次对称加密和非对称加密。,9/28/2024,保证网上交易安全,SET协议使用,数字证书,对交易各方的合法性进行验证;,数宇签名,确保数据完整性和不可否认;,双重签名,对SET交易过程中的支付信息和定单信息分别签名,商家看不到支付信息,只能对订单信息解密,金融机构对支付和账户信息解密,看不到交易内容,保证消费者的账户和订购信息的安全性。SET制定,标准和各种技术手段,,解决了电子商务发展的安全问题,包括购物欲支付信息的保密性、交易支付完整性、身份认证和不可抵赖性,在电子交易环节上提供了更大的信任度和更少受欺诈的可能性。,9/28/2024,SET协议存在的缺陷和文档组成,SET协议存在的缺陷,昂贵、互操作性差和难以实施,它提供了多层次的安全保障,复杂程度显著增加;,SSL协议的广泛应用,SET支付方式只适用与卡支付,对其他支付方式有所限制,其用以支持B2C类型的电子商务模式,而不支持B2B类型的模式。银行的支付业务不仅是卡支付业务,所以在银行支付业务应用过程中有一定的限制。,9/28/2024,SSL协议的文档组成,商业描述:提供SET处理的总述;,程序员指导:介绍SET数据区、消息及处理流程;,正式的协议定义:提供SET消息和数据区的严格描述,下载地址:http:/www.setco.org,9/28/2024,2. SET协议的数据交换过程,9/28/2024,SET协议的工作流程,(1)支付初始化请求和响应阶段。当客户决定要购买商家的商品并使用电子钱包支付时,商家服务器上POS软件发报文给客户的浏览器电子钱包,电子钱包要求客户输入口令然后与商家服务器交换“握手”信息,使客户和商家相互确认,即客户确认商家被授权可以接受信用卡,同时商家也确认客户是一个合法的持卡人。,(2)支付请求阶段。客户发出一个报文,包括订单和支付命令。在订单和支付命令中必须有客户的数字签名,同时利用双重签名技术保证商家看不到客户的账号信息。而位于商家开户行的被称为支付网关的另外一个服务器可以处理支付命令中的信息。,9/28/2024,(3)授权请求阶段。商家收到订单后,POS组织一个授权请求报文,其中包括客户的支付命令,发送给支付网关。支付网关是一个Internet服务器,是连接Internet和银行内部网络的接口。授权请求报文通过支付网关到达收单银行后,收单银行再到发卡银行确认。,(4)授权响应阶段。收单银行得到发卡银行的批准后,通过支付网关发给商家授权响应报文。,(5)支付响应阶段。商家发送购买响应报文给客户,记录客户交易日志,以备查询。之后进行发货或提供服务,并通知收单银行将钱从消费者的账号转移到商店账号,或通知发卡银行请求支付。,9/28/2024,SET交易参与方:,9/28/2024,上图的系统架构图中我们可以看到,五种角色,,分别是持卡人、特约商场、收单银行、发卡银行及认证中心,系统的构成份子包含了所有参与交易的个体,以及验证交易个体身份的单位。对于电子交易进行的顺利及安全,这几个角色是缺一不可。基本上这五个角色都加入此系统中,并遵循SET的规范。为使网际网路上的交易兼具安全与方便性,对所有网际网路交易的对象必须规范其作业方式及流程。,持卡人:即消费者,他们通过web浏览器或客户端软件购物,9/28/2024,商户:提供在线商店或服务给消费者;,支付网关:是由受款银行或指定的第三方操纵的设备,它处理商家的支付信息,同时也包括来自消费者的支付指令,收单行:它为商家建立帐户,并且处理支付卡的认证和支付事宜,发卡行:它是一金融机构,为持卡人开帐户,并且发放支付卡,认证中心:不参与SET的支付流程,它给各参与方颁发证书,各参与方可以通过查看对方的证书,来确定对方是否准确而不是冒充的。,9/28/2024,3. SET购物流程,SET购物流程与传统的银行卡购物流程十分接近,通常包括几个步骤:,持卡人使用浏览器在商户的WEB主页上查看在线商品目录浏览商品。,持卡人选择要购买的商品。,持卡人填写相应的订单,包括商品名称、单价列表等。订单可以从商户服务器以电子形式发放,也可以通过电子购物软件在持卡人自己的机器上创建。,持卡人选择付款方式。当选择SET方式进行付款时,SET开始起作用。,9/28/2024,持卡人发送给商户一个完整的订单及要求付款的指令。在SET中,订定单和付款指令由持卡人进行数字签名。同时利用双重签名技术保证商户看不到持卡人的账号信息。,商户收到订单后,向持卡人所在银行发出支付请求。支付信息通过支付网关到收单银行,再到发卡银行。支付请求获得发卡银行的支付授权后,返回授权指令给商户。,商户将订单确认信息通知持卡人,同时商户开始给顾客装运货物,或完成订购的服务。,持卡人终端软件记录交易日志,以备将来查询。,9/28/2024,SET B2C模式网上购物系统(SET购物流程),持,卡,人,商,户,收,单,银,行,认证中心,支付,网关,发卡银行,协商,订单,确认,审核,确认,审核,批准,认证,认证,认证,9/28/2024,4. SET支付消息,通过SET购物流程可以知道,SET的交易流程是非常复杂的,那么SET协议如何来执行交易流程的。需要进一步理解SET协议的支付消息。,完整的一笔交易通常包括四对SET支付消息:支付发起请求/支付发起应答、购买请求/购买应答 、授权请求/侵权应答 、支付请求/支付应答,9/28/2024,四对支付消息的功能,支付发起请求/支付发起应答:将支付发起消息传送给商户,表明持卡人已准备为其所选定的物品进行支付。支付发起请求支付发起应答主要完成一些初始化工作,。,购买请求/购买应答:这一对消息是持卡人和商户之间真正支付时所使用的消息对,持卡人向商户发送两个要素:订单信息和支付指令,商户收到购买请求后,向支付网关请求授权,得到应答后,向持卡人发购买应答。,9/28/2024,授权请求/授权应答。授权过程允许商户验证持卡人具有该笔购买的信用,并为该笔交易从持卡人银行卡上获取收款的许可。,支付请求/支付应答,通过收单银行将支付请求发给发卡银行,发卡银行收到支付请求后,才真正将货款从持卡人的账户中扣除,然后,向收单银行发出支付应答。,9/28/2024,SET协议的缺陷在于:,SET要求在银行网络、商户服务器、顾客的PC上安装相应的软件。这给顾客、商家和银行增加了许多附加的费用,成了SET被广泛接受的阻碍。另外,SET还要求必须向各方发放证书,这也成为阻碍之一。所以这些使得使用SET要比使用SSL昂贵很多。,SET的优点在于,:安全性高,保证了交易双方的安全交易和信息隐私;它还可以用在系统的一部分或者全部,即如商户可以考虑在银行连接中使用SET,而与顾客连接时仍使用SSL,这种方案既回避了在顾客机器上安装电子钱包软件,同时又获得了SET提供的很多有点。,9/28/2024,5、SET交易流程与传统银行卡交易流程比较,SET系统保持了传统银行卡交易的基本流程,只是将交易过程搬到了公开的网络因特网上,并且加上了一层基于数字证书的安全加密和数字认证系统,以保证交易的安全性。其在安全方面考虑的很周密,提供了各个环节的协议,为电子商务安全交易提供了一个重要的保障机制,但它局限于使用信用卡方式的支付手段。,9/28/2024,6、SSL与SET的区别,主要表现在以下几个方面:,(1)用户接口:SSL协议已被浏览器和Web服务器内置,无需安装专门软件;而SET协议中客户端需安装专门的电子钱包软件,在商家服务器和银行网络上也需安装相应的软件。,(2)处理速度:SET协议非常复杂、庞大,处理速度慢。一个典型的SET交易过程需验证电子证书9次、验证数字签名6次、传递证书7次、进行5次签名、4次对称加密和4次非对称加密,整个交易过程可能需花费152 min;而SSL协议则简单得多,处理速度比SET协议快。,9/28/2024,(3)认证要求:早期的SSL协议并没有提供身份认证机制,虽然在SSL30中可以通过数字签名和数字证书实现浏览器和Web服务器之间的身份验证,但仍不能实现多方认证,而且SSL中只有商家服务器的认证是必须的,客户端认证则是可选的。相比之下,SET协议的认证要求较高,所有参与SET交易的成员都必须申请数字证书,并且解决了客户与银行、客户与商家、商家与银行之间的多方认证问题。,9/28/2024,(4)安全性:安全性是网上交易中最关键的问题。SET协议由于采用了公钥加密、信息摘要和数字签名可以确保信息的保密性、可鉴别性、完整性和不可否认性,且SET协议采用了双重签名来保证各参与方信息的相互隔离,使商家只能看到持卡人的订购数据,而银行只能取得持卡人的信用卡信息。,(5)协议层次和功能:SSL属于传输层的安全技术规范,他不具备电子商务的商务性、协调性和集成性功能。而SET协议位于应用层,他不仅规范了整个商务活动的流程,而且制定了严格的加密和认证标准,具备商务性、协调性和集成性功能。,9/28/2024,SET与SSL购物过程对比,SET协议和SSL协议购物过程对比表如表1所示。,9/28/2024,结合我国的具体情况可以预见,安全认证在我国的发展趋势将可能为以下2种:,(1)SET与SSL共存,优势互补。如美国较多采用的是“面向商家的SET协议”,即在银行与商家之间采用SSL协议,但这对银行的要求就更高了。,(2)随着SET与SSL的融合程度上升,有可能出现一种新的安全认证体系,类似于目前的公钥基础结构(PKI)。从广义上来说,所有提供公钥加密和数字签名服务的系统都可叫做PKI系统,因此他既支持SET,SSL,还支持其他一些协议,并且可为B2B及B2C两种电子商务模式提供兼容性服务,其前景目前较为看好。,9/28/2024,9/28/2024,
展开阅读全文