29
第四节 网上支付安全协议及其应用 一、基于SSL协议的网上支付 1.SSL协议特点 SSL协议是Secure Sockets Layer(安全套接层)的缩写,是由 Netscape公司在1994年所提出的一种在网络信息包的应用层和传输层之间 的网络安全协议(见图8),它通过采用信息加解密技术、服务器端认证技 术、客户端认证技术等提供了一个安全的信道,确保用户数据传输的安全性。

第四节 网上支付安全协议及其应用 - njude.com.cnmedia.njude.com.cn/pub/ZF_CPS/Courses/pdf/07118A/ch3_4_1.pdf · 第四节 网上支付安全协议及其应用 一、基于SSL协议的网上支付

  • Upload
    others

  • View
    37

  • Download
    0

Embed Size (px)

Citation preview

第四节 网上支付安全协议及其应用

一、基于SSL协议的网上支付1.SSL协议特点SSL协议是Secure Sockets Layer(安全套接层)的缩写,是由Netscape公司在1994年所提出的一种在网络信息包的应用层和传输层之间的网络安全协议(见图8),它通过采用信息加解密技术、服务器端认证技术、客户端认证技术等提供了一个安全的信道,确保用户数据传输的安全性。

SSL协议的特点主要有:

① SSL协议是一个工作于应用层和传输层之间的协议,因此它不是局限于一个特定的应用程序协议,而是一个可以应用于所有的网络服务的协议;

②为了使用SSL协议,就必须有一个支持SSL协议的浏览器和服务器;

③SSL协议是一种开放的、非专有的协议;

④在初始化握手之后,对称加密体制(如DES 、RC4 等)会产生一个用来加密数据的密钥,因此从客户机到服务器的所有SSL连接都是加密传输的,从客户机到服务器来往的所有信息内容都是保密的;

⑤用非对称加密体制(如 RSA 、DSS 等)认证双方的身份;

⑥对服务器通过数字证书进行身份认证是强制性要求,因此服务器必须申请属于自己的数字证书并把它安装到服务器中,这样它不仅可以供买方识别其身份时使用,还可以供买方向服务器方发送机密数据时选用;

⑦对客户端通过数字证书进行身份认证是选择性的,因此就可以根据自己的需求、技术水平等因素决定是否需要申请属于自己的数字证书,是否需要在浏览器中安装数字证书;

⑧SSL协议虽然能够提供客户端到服务器之间的安全联机,但是并不参与后端付款机制的部分;

⑨用安全哈希函数(如SHA 、MD5 等)产生的消息认证码(MAC)进行消息完整性核对,保证连接的可靠性;

⑩允许客户机与服务器选择双方都支持的加密体制。

2.SSL协议工作原理SSL协议(SSL protocol)包含两个子协议:SSL握手协议(SSL Handshake

Protocol)和SSL 记录协议(SSL Record Protocol)。SSL握手协议负责完成会话前客户机与服务器通信参数设置,SSL 记录协议负责定义封装来自更高层协议的数据格式。SSL握手协议位于SSL记录协议之上,被SSL记录协议所封装。SSL握手协议的工作任务是完成客户机与服务器“沟通”工作,这些工作包括协商通信中所使用的SSL版本(如SSL2.0版或SSL3.0版)、信息加密用的算法(如RC4)和双方身份验证的选择,产生非对称密钥体制的共享密钥。SSL握手协议的工作程序是:(见图9)

①客户机给服务器发送一条包括所使用的协议版本(protocol version)、会话ID(session ID)、密码组 (cipher suite)、压缩方法(compression

method)、服务器认证请求(CertificateRequest)等内容在内的问候信息(ClientHello)。②服务器接收到客户机问候信息(ClientHello)后,立即给客户机回发一条包括所使用的协议版本(protocol version)、会话ID(session ID)、密码组(cipher suite)、压缩方法(compression method)、服务器数字证书(Certificate)、客户机认证请求(CertificateRequest)、服务器公开密钥(ServerKeyExchange)等在内的服务器问候信息(ServerHello)。③客户机接收到服务器问候信息(ServerHello)后,根据服务器的需求,给服务器发送客户机数字证书(Certificate)、客户机公开密钥(ClientKeyExchange)、客户机数字签名(CerificateVerify)、改变密码说明(change cipher spec)、客户机问候完成信息(Finished)等内容。④服务器给客户机发送改变密码说明(change cipher spec)、服务器问候完成信息(Finished)等。⑤客户机与服务器的全部“沟通”工作完成,双方就可以交换应用层数据了。

图9 SSL握手协议的工作程序

SSL记录协议是在描述SSL信息交换过程中的记录格式。SSL记录包括消息认证码(Message Authentication Code,缩写为MAC)、信息内容和附加数据三个部分组成。消息认证码是由哈希函数产生的一个固定长度的数字数据,用来验证信息内容是否完整。信息内容是指应用层所传送的数据。附加数据是信息加密后所产生的附加信息。

3.怎样识别SSL联机?

SSL协议提供了安全功能,并且客户端的用户无需要介入就可以完成。但是,怎样判定一个网站或者一个网站的某个页面是否提供SSL联机呢?主要有两个判定方法:

①无论是在Netscape浏览器还是在Internet Explorer浏览器中,进入支持SSL协议的页面时,浏览器“地址栏”的“http:”就会多加一个“s”,即“http:”变为“https:”。

②在Netscape浏览器中,进入不支持SSL协议的页面时,在浏览器左下角有一个“打开”的小锁;进入支持SSL协议的页面时,在浏览器左下角有一个“关闭”的小锁。在Internet Explorer浏览器中,进入支持SSL协议的页面时,在浏览器右下角有一个的小锁;进入不支持SSL协议的页面时,则在浏览器右下角没有小锁。

4.SSL协议的优点与缺点

SSL协议的优点主要有:

①构建SSL服务器的技术上非常简单;

②SSL协议应用弹性大,可执行 Telnet、E-mail、Web 及其它自行开发的应用程序;

③买方只要拥有信用卡,不需额外至银行申请任何认证,就像操作一般未受加密保护之网页一样,很容易地付款。

SSL协议的缺点主要有:

①设定网页支持SSL协议后,连接网页速度因通讯协议及加密而变得较慢;

②网上传输信息只作加密保护,并未含带双方的数字签名,身份认证上有所不足;

③虽然SSL协议提供了信息传递过程中安全性的保障,但是买方的订购信息和信用卡信息到了服务器端都被解密,因此对卖方和商家都是透明的,这对买方来说存在着潜在的不安全性;

④如果买方信息卡信息被盗用,并且买方可明确举证非本人消费,这将会卖方带来损失。

二、基于SET协议的网上支付

1.SET协议特点

SET是Secure Electronic Transaction(安全电子交易)的简写,它是VISA国际组织、MasterCard国际组织、IBM、Microsoft、Netscape、GTE、Verisign、SAIC等组织共同制定并于1996年2月1日正式发布的一个用来确保消费者在开放型网络(如互联网)持信用卡付款交易安全的标准。目前SET已成为国际上公认在互联网电子商务交易之安全标准。

SET协议的特点主要有:

①它要求所有参与电子商务交易活动的各方都必须拥有自己的数字证书,接受身份认证,这就保证买卖双方身份的真实性和合法性;

②确保从买方到卖方、卖方到支付网关、支付网关到收单银行、收单银行到发卡银行联机的安全性;

③卖方只能看到买方的订单信息,而银行也只能取得买方的信用卡数据信息,这就保证买方消费行为的安全性;

④采用信息加密和数字信封技术保证信息的机密性;

⑤采用数字签名技术保证信息的完整性;

⑥通过买方的数字证书和数字签名,完成对买方账户的认证;

⑦通过商店服务器的数字证书和数字签名,完成对卖方的特约商店的认证。

2.基于SET协议的网上支付系统的参与主体

基于SET协议的网上支付系统的参与主体主要有:

①买方(Buyer)。买方又称为“持卡人(Cardholder)”或“付

款人”,是指在网上交易中使用数字认证技术通过信用卡购买商品

的人。

②卖方(Seller)。卖方又称为“商店服务器(Merchant)”或

“收款人”,是在互联网上符合SET规格的从事电子商务交易并出售

商品的商店。

③支付网关(Payment Gateway)。支付网关又称为“付款转接

站”,其主要职责是接收卖方发送来的付款信息,并负责把它转交

给收单银行。

④收单银行(Acquiring Bank)。收单银行的主要职责是接受来自

卖方送来的交易付款数据,通过发卡银行验证信用卡信息,验证无

误后,取得信用卡付款授权。

⑤发卡银行(Issuing Bank)。发卡银行是给买方签发信用卡并在

电子商务交易过程中负责验证买方信息卡信息的银行。

⑥认证中心 (Certification Authority)。认证中心的主要职责

是:接受买方、卖方、支付网关、收单银行和发卡银行的数字证书

申请,并负责签发、作废、查询、更新等与数字证书管理有关的事

情。

3.基于SET协议的网上支付系统的软件组件

基于SET协议的网上支付系统的软件组件主要有:

A.电子钱包(Electronic Wallet或E-Wallet)。电子钱包是一种符合SET规范安装在客户端计算机上的软件。其功能主要有:①与商店端的SET软件沟通,激活SET交易;②通过商店服务器

查询订单信息和付款信息;③接收来自商店服务器的响应信息;④买方从认证中心申请、下载自己的数字证书;⑤从认证中心查询数字证书的状态。

B.商店端服务器[Merchant Server或Point of Sale(POS)]。商店服务器是一种符合SET规范安装在商店服务器上的软件。其功能主要有:①与客户端的电子钱包软件沟通,取得买方订单和信用卡信息;②联系支付网关和银行端传来的付款信息;③从认证中心查询数字证书的状态。

C.支付网关(Payment Gateway)。其功能主要有:①负责接收来自商店服务器的符合SET规格的信用卡信息,并把它转换成

银行网络的格式后,传送给收单银行;②验证商店服务器和买方的身份;③负责将商店服务器的清算信息转换成银行网络的格式后,传送给收单银行。

D.认证中心(Certification Authority)

4.基于SET协议的电子商务交易流程

基于SET协议的电子商务交易程序主要有:

①买方通过浏览器在支持SET协议的网上商店填写订单,结账时激活电子钱包,买方在输入自己电子钱包账户名称和密码进入电子钱包系统,然后选择经SET认证的信用卡付账。

②商店服务器收到经过数字签名及加密的订单和信用卡信息后,卖方解密订单信息后判定该信息是否完整,把信用卡信息转发给支付网关,由其将数据格式转换成银行网络所能接收的格式,传送给收单银行,收单银行通过信用卡发卡组织的银行网络,连接到发卡银行向发卡银行申请授权。

③在发卡银行验证买方信用卡的卡号真伪、信用额度、有效期限均有效后,即核发授权给收单银行;收单银行获得由发卡银行授权成功的数据,便将授权成功的信息转送给商店服务器。

④商店服务器给买方回复订单确认信息(显示交易数量、交易金额等),同时将买方的订单转成送货单,通知卖方的仓库系统出货。

⑤卖方的仓库系统出货并将送货单传送至其物流系统,物流系统将货物送交买方,买方签收后,物流系统便将到货单回送到卖方的仓储系统。

⑥卖方的仓储系统收到到货单后,便通知卖方请求付款,卖方通过支付网关发送请求付款信息,支付网关将这些信息转换后,通过银行网络传送至收单银行。

⑦收单银行回复卖方的请求付款要求,并将货款转入卖方账户。

⑧收单银行与发卡银行通过国际信用卡发卡组织进行清算。

⑨发卡银行累计买方的消费款项数据,并向买方发送消费账单,通知买方缴款,买方根据账单到发卡银行缴款。

图10 基于SET协议的网上支付

5.SET协议与SSL协议之比较

相同点是:二者都提供一种电子商务安全交易的机制。

不同点是:

①SET协议要求所有参与SET交易的主体(买方、卖方、支付网关、收单银行、发卡银行等)都必须拥有自己的数字证书,并要求在交易过程中在线认证它们身份的合法性和真实性;而在SSL协议买方的身份认证是可选择的。

②SET协议不仅要求所有参与SET交易的主体都必须进行身份认证,这保证了交易各方身份的真实性和不可否认性,而且要求在整个交易过程中,从买方到卖方的联机、卖方到支付网关、支付网关到收单银行、收单银行再到发卡银行联机,都受到严密的保护,这又保证了交易机密性和安全性;而SSL协议不仅只保护了买方到商店服务器信息传输的安全,而且由于买方的身份认证是选择性的,如果买方不选择身份认证,这将导致在交易中无法确定买方身份的真实性和合法性,也无法防范买方交易后的否认行为;所以说,SET协议的安全性高于SSL协议。

③在基于SET协议的交易中,卖方只能看到买方的订单信息,而银行也只能取得买方的信用卡数据信息,这就保证买方消费行为的安全性;而在基于SSL协议的交易中,买方的订单信息和信用卡数据信息对卖方和银行来说都是透明的,这无法保证买方消费行为的安全性。

④在基于SET协议的交易中,如果买方想申请SET交易,不仅必须自己申请数字证书,还必须在客户端的计算机上安装符合SET规格的电子钱包软件;而在基于SSL协议的交易中,买方在没有数字证书和不安装任何软件的情况下,也可完成交易;所以,对于买方来说,基于SSL协议的交易比基于SET协议的交易更简单、更易用。

⑤基于SET协议的交易因需相关认证,交易程序复杂,且卖方构建商店服务器的成本较高;而基于SSL协议的交易因交易简单方便,且卖方构建网上商店的成本较低;所以,目前基于SSL协议的交易普及率仍然高于基于SET协议的交易。

⑥在基于SET协议的交易中,买方除了要承担信用卡支付的交易费用外,还有可能要承担数字证书和电子钱包的使用费;而在基于SSL协议的交易中,如果买方选用的是不需身份认证的系统,则仅仅只承担信用卡支付的交易费用。

⑦基于SSL协议的交易适合风险较低的交易采用,基于SET协议的交易多用于转帐、缴税、缴费或其它需要确认身份的交易选用。

三、招商银行的网上支付系统1.招商银行简介

图11 招商银行的主页面

2.招商银行“个人银行大众版”简介

“个人银行大众版”是招商银行为不想使用数字证书的个人用户提供的一种网上支付系统,该系统针对基于SSL协议本身的缺陷——买方信用卡信息对卖方透明,为了保护个人用户的利益,招商银行采取了以下两个措施:①给拥有一卡通账户的用户,再分配一个网上支付卡账户,用于网上支付活动,个人用户的资金平时都存在一卡通账户中,而网上支付卡账户没有资金,只在需要支付时,才把资金从一卡通账户转入网上支付卡账户,并且转入后立即支付出去,当完成支付后,卖方只能看到已经没有资金的网上支付卡账户号。②对网上支付卡的每日支付金额进行了限制。

招商银行“个人银行大众版”的使用方法是:①在招商银行的主页面(见图11)中,点击“登录个人银行大众版”后,就会出现图12所示的第一幅画面,让个人用户选择开户地点;②选好开户地点,按“确定”按钮,就会出现图12第二幅画面,要求输入信用卡号、密码和附加码;③如果用户使用的是8位卡号的旧卡,需要点击“新旧卡号查询”,进入图12第三幅画面,输入旧卡号查询得到新卡号,再用新卡号、密码和附加码完成登录,就会进行网上“个人银行大众版”系统;④进入系统后,可以办理账务查询、修改密码、卡内定活互转、同身份证账户互转、专户互转、小额网上支付等各项业务。(详见图13)

图12 网上个人银行大众版界面

第一幅 第二幅

第三幅

图13 网上个人银行大众版操作指南

3. 招商银行“个人银行专业版”的简介招商银行“个人银行专业版”是“个人银行大众版”的扩展和完善,是招商银行为需要提供更多功能、支付金额较大的、拥有数字证书的、安全性要求较高的个人用户提供的一种网上支付系统。招商银行“个人银行专业版”与“个人银行大众版”有以下不同:①业务内容不同。“个人银行专业版”在“个人银行大众版”账务查询、修改密码、卡内定活互转、同身份证账户互转、专户互转、小额网上支付等功能基础上,增加了同城转账、异地汇款、大额网上支付等功能。②安全机制不同。“个人银行大众版”充分利用了浏览器本身的安全机制,而“个人银行专业版”采取了X.509标准数字证书体系,具有更高的安全性。③使用方法不同:“个人银行大众版”无需下载任何软件,只需一台联网电脑,就可以使用该项功能,在浏览器界面操作。“个人银行专业版”则需要下载客户端软件,操作时自动打开“个人银行专业版”窗口,且只能在安装个人证书的电脑上使用。

正是由于招商银行“个人银行专业版”与“个人银行大众版”上述的不同,这导致基于“个人银行专业版”的“一卡通活期网上支付”和基于个人银行大众版”的“网上支付卡”明显的区别:①使用方法不同。用户只要安装了浏览器就能使用“网上支付卡”的网上支付,但使用“一卡通活期网上支付”则需要下载安装“个人银行专业版”客户端软件。

②安全机制不同。“网上支付卡”的网上支付充分利用了浏览器本身的安全机制,而“一卡通活期网上支付”则使用了招商银行自主开发的基于数字证书的安全机制,具有更高的安全性。

③限额不同。“网上支付卡”的网上支付每日有一定的金额限制,限额由银行统一设定;而“一卡通活期网上支付”限额由客户自己设定,可以设定有限金额或无限额。

④支付账户不同。“网上支付卡”的网上支付是从“网上支付”子账户付款,使用前必须先把资金从“一卡通”活期转到支付卡账户中;而“一卡通活期网上支付”是直接从“一卡通”活期账户付款。

“个人银行专业版”的功能主要有增加或删除用户、通讯设置、一卡通管理(安装一卡通向导、申领或删除一卡通、初学者指南、系统设置、修改用户密码、日志查询)、证书管理(申请、更新、下载、查询、备份和恢复证书)、账务查询(一卡通的账户、当天交易与历史交易查询、网上支付卡卡号与支付记录查询)、修改密码(修改一卡通、网上支付卡和网通IP通话密码 )、转账汇款(定活互转、网上支付卡转账、网通IP长话预付费转账、同城转账、异地汇款、批量转账汇款数据编辑、批量转账汇款、查询转账汇款记录、收款方信息管理)、自助缴费(一卡通缴费)、 自助贷款(申请贷款、申请展期、债务转化、归还贷款、查询贷款情况、查询贷款额度)、外汇买卖(外汇行情及委托、查询专户余额和交易记录、外汇专户转账)、国债投资(查询国债信息、购买国债、提前兑付国债)、证券服务(银证转账、一卡通证券交易)、功能申请(网上支付卡、一卡通网上支付、一卡通缴费、一卡通转账、汇款、外汇实盘买卖、神州行电话充值、网通IP长话 、设置网通IP直拨功能)、挂失等。(见图14)

图14 网上个人银行专业版操作指南

“个人银行专业版”的应用程序是:①带上个人身份证、一卡通帐号及填写好的申请表,到银行柜台申请数字证书,银行职员审核申请人身份合格后,就给申请人签发一个包含授权码的密封信封。②下载并安装“个人银行专业版”软件。③启动安装好的“个人银行专业版”软件,就会看到图15第一幅画面。如果计算机是通过代理上网的,就需要完成“个人银行专业版”的通讯设置,才能使用该系统。点击第一幅画面中的“通讯设置”,就会出现图15第一幅画面,选中“用户设置”和“使用代理服务器”,然后像图15第三幅一样完成,填写好“代理服务器地址”“代理服务器端口”“代理服务器用户”“代理服务器密码”,然后按确定键,就会回到图15第一幅画面。④点击图15的第一幅画面中的“证书管理”,就会出现图16第一幅画面,点击“下一步”,就会图16第二幅画面。如果是首次使用,就选择“证书启用”,在点击“下一步”,就会出现图16第三幅画面;如果不是首次使用,就需要选择“证书恢复(证书输入)”,把备份好的(以前导出的)导入,导出导入数字证书和前一章从浏览器中导出导入的方法大同小异。在图16第三幅画面填写上申请数字证书拥有者的真实名称和登录专业版所要用的密码两次,再按“下一步”就会出现图16第四幅画面,在这幅画面中填写个人信息(必须申请数字证书填写的完全一致)和密封信封中的授权码,填完按“完成”按钮就会接收到银行数字证书服务器提示信息(见图16第五幅画面),然后再“确定”按钮,就回到了图16第六幅画面。⑤在图16第六幅画面中,输入前面设定的密码就会进入“个人银行专业版”系统主界面(见图17),这时就可以办理账务查询、修改密码、卡内定活互转、同身份证账户互转、专户互转、同城转账、异地汇款、大额网上支付等各项业务。

图15 招商银行个人银行专业版登录界面和通讯设置

第一幅 第二幅 第三幅

第一幅 第二幅 第三幅

第四幅 第五幅 第六幅

图16 招商银行个人数字证书的启用过程

图17 招商银行个人银行专业版主界面

4.招商银行“网上企业银行”的简介招商银行“网上企业银行”是招商银行网上银行“一网通”的重要组成部分,是指企事业单位客户通过招商银行提供的基于互联网或其他公用信息网的客户端软件,实现将需求指令自主提交到开户银行,从而实现支付、查询等业务需求的服务系统。1998年4月,招商银行在1995年11月开发的企业客户终端的基础上推出了网上企业银行1.0版;历经2.0版和3.0版,目前使用的是2003年10月推出的4.0版。招商银行“网上企业银行”的特点主要有:采用数字证书安全机制,但是只对涉及资金交易等敏感业务的经办要求数字签名,业务授权较为方便、灵活;该系统能与中国人民银行的支付系统实时对接,这使得企业可通过该系统实时跨地区进行资金调拨、集团理财等。招商银行“网上企业银行”主要有“通用版”和“商务版”两种版本,两种版本都提供简体版和繁体版以及数字证书卡与非数字证书卡登录方式。网上企业银行“通用版”的主要功能有:账户与帐务查询(账户信息、当天帐务、历史帐务)、内部转帐(同城转帐、异地转帐、帐务查询和打印)、支付(单笔经办、成批经办、收方信息编辑、成批制单、帐务查询和打印、按票据格式打印支付和内转结果)、发工资(工资名册管理、经办发工资、发工资明细查询和打印)、其它(查询通知信息、查询企业银行收费、修改登录密码、查询系统日志、数字证书卡管理等)。网上企业银行“商务版”除了具备“通用版”上述的基本业务功能外,还提供集团支付(实现集团公司对多个同城子公司账户资金收付的统筹管理)、信用管理(查询在招商银行信贷管理系统内的信用情况以及借款借据的当前状态和历史交易)、定活期存款互转、集团公司/总公司对子公司收付两条线的管理、网上信用证等增强功能,并将不断增加新的功能,以满足客户需求。

招商银行“网上企业银行”的应用流程(见图18)是:

①携带公司的“营业执照”和“法人代码证”正本以及加盖公章的复印件、企业公章、银行预留财务章、私章的印鉴章,到招商银行网点办理开户手续。

②填写《网上“企业银行”申请表》和《网上“企业银行”服

务协议》。按格式填写后在“协议”上加盖公章,在“申请表”上加盖预留印鉴(如果客户多个账号使用不同印鉴,则须分别填写多份申请表),然后将申请表和协议书提交账户行。

③银行审核用户的身份及检查申请表和协议是否正确。

④客户服务中心根据用户的申请,为企业开户,打印并分发用户开户资料及系统管理密码信封、IC卡密码信封等。

⑤客户取得系统管理员用户号、数字证书卡及其读写器、读写器驱动程序等资料。

⑥如果是数字证书卡用户,先安装好数字证书卡读写器及其驱动程序,然后从招商银行网站上下载并安装企业银行程序。

⑦进行系统设置。

⑧处理业务(见图19)。

图18 招商银行“网上企业银行”的应用流程

图19 招商银行“网上企业银行”主界面

节后讨论问题及可探索领域建议除了前述的网上支付安全协议,还有哪些网上支付安全协议?为何在我国SSL协议广为采用,而SET协议较少采用?您如何看待SSL协议和SET协议的发展前景?请调查网络安全协议的发展及应用现状,您认为如何才能推进网上安全协议本身的发展与应用?目前制约网民使用数字证书的因素有哪些?您如何看待银行对数字证书的收费?目前影响电子商务安全的威胁主要哪些?如何防范这些威胁?