1、第 5 章 网上支付5.1 银行卡支付5.2 电子支付5.3 电子现金5.4 网上支付系统的比较5.1 银行卡支付一、网上银行卡支付问题二、基于 SSL 的银行卡支付系统三、基于 SET 的银行卡支付系统四、First Virtual五、CyberCash一、网上银行卡支付问题银行卡:由银行发给消费者的一种支付工具。类别有借记卡先存款,后消费。 贷记卡先消费,后存款。银行卡支付通常涉及三方:消费者(持卡人) ;商户和银行。支付过程:包括清算和结算。清算为支付指令的传递,结算与支付相关的资金转移。传统的在金融专用网,银行卡在因特网上银行卡支付的流程1、持卡人用卡进行消费,结账时交验银行卡,将卡插
2、入 POS 机输入数据,通过通信线路传到银行,请求授权支付。2、发卡行核实账户合法性和可用余额后,告诉特约商户同意交易,然后从持卡人账户扣除相应金额,划入特约商户的银行账户;3、商户提供商品或服务,并要求持卡人签字;4、发卡行每月向持卡人提供对账单二、基于 SSL 的银行卡支付系统1、SSL 协议概述:最早由 Netscape 公司于 1994 年 11 月提出,即 SSL V2.0 Internet-Draft 版本。1996 年 3 月,经 5 次改进,推出 SSL V3.0 Internet-Draft 版本,支持更多加密算法。IETF 所采纳,制定为传输层安全(transport la
3、yer security,TLS)标准,成为 Web 上部署最为广泛的信息安全协议之一。安全套接层协议 SSL(secure socket layer)是在因特网基础上提供的一种保证机密性的安全协议。SSL 建立在 TCP 协议之上,它的优势在于与应用层协议独立无关,应用层协议能透明地建立于 SSL 协议之上。它是目前在电子商务中应用最广泛的安全协议之一。2、SSL 协议的功能(1) SSL 服务器认证:允许客户机确认服务器身份。判断客户信任的 CA,检查证书。(2)确认用户身份:检查客户证书的合法性。(3)保证数据传输的机密性和完整性。安全插口层 SSL 的功能模型 3、SSL 体系结构:S
4、SL 两层的工作内容握手层工作:传送数据前相互验证身份、协商加密算法、生成密钥等。SSL 握手层过程SSL 两层的实现的操作客户机认证服务器;允许客户机与服务器选择他们都支持的加密算法或密码;可选择的服务器认证客户;使用公钥技术生成共享密码;建立加密 SSL 连接4、基于 SSL 的银行卡支付过程1、持卡人登录商品发布站点,验证商户身份。2、若决定购买,向商户发出购买请求;3、商户返回同意支付等信息;4、持卡人验证支付网关的身份,填写支付信息,将订购信息和支付信息通过 SSL 传给商户,但支付信息被支付网关的公钥加密过,对商户是不可读5、商户用支付网关的公钥加密支付信息等,传给支付网关要求支付
5、;4、基于 SSL 的银行卡支付过程6、支付网关解密商户传来的信息,通过传统的银行网络到发卡行验证持卡人的支付信息是否有效,并即时划账;7、支付网关用它的私钥加密结果,把结果返回商户;8、商户用支付网关的公钥解密后返回信息给持卡人,发货交易结束。三、基于 SET 的银行卡支付系统SET 协议采用了对称密钥和非对称密钥体制,把对称密钥的快速、低成本和非对称密钥的有效性结合在一起,以保护在开放网络上传输的个人信息,保证交易信息的隐蔽性。安全电子交易 SET 是专为在因特网上进行安全支付卡交易的协议。 (1) SET 是专为与支付有关的报文进行加密的。(2) SET 协议涉及到三方,即顾客、商家和商
6、业银行。所有在这三方之间交互的敏感信息都被加密。(3) SET 要求这三方都有证书。在 SET 交易中,商家看不见顾客传送给商业银行的信用卡号码。商业银行看不见1.安全电子交易 SET 协议的主要目标:(1) 保证电子参与者信息相互隔离。(2) 保证信息在 Internet 上安全传输,防止数据被窃取。(3) 解决多方认证。(4) 保证网上交易的实时。(5) 规范协议和消息格式 。 2.安全电子交易 SET 协议的安全服务:(1) 确保在支付系统中支付信息和订购信息的安全性。(2) 确保数据在传输过程中的完整性。(3) 对持卡者身份的合法性进行检查。(4) 对支付接收方身份的合法性进行检查。(
7、5) 提供最优的安全系统,以保护在电子贸易中的合法用户。(6) 确保该标准不依赖于传输安全技术,也不限定任何安全技术的使用。(7) 使通过网络和相应的软件所进行的交互作业简便易行 。 3.安全电子交易三个阶段:(1) 购买请求阶段:持卡人与商家确定所用支付方式的细节。(2) 支付认定阶段:商家向银行核实持卡人的情况。(3) 受款阶段:商家向银行出示所有交易的细节,然后银行以适当方式转移货款。每个阶段都要使用不同的方法对数据加密,并进行数字签名。4.安全电子交易的参与者:(1)持卡人:是网上消费者或客户,持卡人申请一套 SET 交易的持卡人软件称为电子钱包,再由 CA 发证书,才具备网上交易条件
8、。网上交易是由嵌入在浏览器中的电子钱包软件来实现的,电子钱包具有发送、接受信息,存储自身签名公钥和参与方的公开密钥交换密钥,申请、接收和保存认证等功能,还其他功能如增删改银行卡,检查证书状态,显示银行卡信息和交易历史记录等。(2)商户(特约商店):是网上商店的经营者,在开户行有账号,商户申请一套 SET 交易的商家软件,再由 CA 发证书,才具备网上交易条件。(3)支付网关:是由收单银行或指定的第三方操作的专用系统,用于处理支付授权和支付。专用系统实现隔离和格式转换;(4)收单银行:为商户建立账户并处理支付授权和支付。不是 SET 交易的直接组成部分,但支付网关将支付请求通过专用网转给收单银行
9、进行银行内部的联网支付处理。(5)发卡银行:为持卡人建立账户并处理支付授权和支付。保证对经授权的交易进行付款。发卡银行也不是 SET 交易的直接组成部分,但发卡银行通过专用网与收单银行进行银行内部的联网支付处理。(6)认证中心:CA 提供的功能:批准证书请求:生成密钥对:密钥的备份:签名撤消证书:颁发证书:生成证书并签名,以适当方式发给用户。管理证书:记录已颁发证书和撤消的证书。用户管理:新提交的申请与现存标识名比较拒绝重复。吊销证书:在证书有效期内使其无效,发布 CRL (Certificate Revocation List )验证申请者身份:必要的身份验证保护证书服务器:证书服务器安全制
10、定政策:公布制定 CA 的政策5.SET 协议采用的加密和认证技术:(1)对称密钥加密:(2)公钥加密技术:(3)Hash 算法:(4)数字签名:(5)数字证书:(6)双重签名:3.SET 购物流程1.持卡人使用浏览器在商户的 WEB 主页上查看在线商品目录浏览商品。2.持卡人选择要购买的商品3.持卡人填写相应的订单,订单可从商户服务器以电子形式发放,也可通过电子购物软件在持卡人自己的机器上创建。4.持卡人选择付款方式,当选择 SET 方式进行付款时,SET 开始起作用。5.持卡人发送给商户订单和付款指令。在 SET 中,订单和付款指令由持卡人签名。同时利用双重签名保证商户看不到账号信息。6.
11、商户收到订单后,向持卡人所在银行发出支付请求。支付信息通过支付网关到收单银行,再到发卡银行。支付请求获得发卡银行授权后,返回给商户 。7.商户将订单确认信息通知持卡人,同时发货或完成订购服务。8.持卡人终端软件记录交易日志,以备查询。SET 购物流程.SET 协议的交易过程:(1)顾客告诉商家想用信用卡购买商家的物品。(2)商家将物品清单和一个唯一标识符发给顾客(3)商家将其证书(含公钥)发给顾客,商家将其银行证书(含公钥)发给顾客。(4)顾客用的公钥对两个数字证书解密,顾客有商家公钥和银行公钥。(5)顾客生成两个数据包,给商家的订单信息 OI 和给银行的支付指令 PI; OI 用商家公钥加密
12、, PI 用银行公钥加密,并加密后的 PI 和 OI 发给商家。(6)商家生成对信用卡支付请求的授权请求。(7)商家用银行的公钥将含授权请求的报文加密及 PI 和商家的证书发送给银行。(8)商家的开户银行收到此报文,将其解密,并检查报文的一致性,及客户的 PI 数据包的一致性。(9)商家的开户银行向客户的开户银行发请求支付授权的报文。(10)客户的开户银行准许支付,向商家的开户银行发响应。SET 协议的购物流程 4.SET 支付消息SET 协议执行流程的过程,一笔完整的购买交易通常包括四对 SET 支付消息:1.支付发起请求 /支付发起应答:支付发起请求/ 支付发起应答主要完成初始化工作,持卡
13、人选中商品后,发出支付发起请求;2.购买请求/购买应答:购买请求是持卡人向商户发出的两个要素;订单信息(OI)和支付指令3.授权请求/授权应答:授权过程商户验证持卡人的信用;验证订单信息(OI)和支付指令4.支付请求/支付应答:收单行将支付请求发给发卡行,发卡行从持卡人账户扣款,向收单行发送支付应答,收单行验证后,贷记商户账户,经支付网关向商户发支付应答。4.SET 支付消息1.支付发起请求/支付发起应答:1.支付发起请求/支付发起应答:支付发起请求/支付发起应答主要完成初始化工作,持卡人选中商品后,发出支付发起请求支付发起请求包括:持卡人所选择的支付品牌、持卡人使用的标识、持卡人软件已存储的
14、证书列表等。商户收到支付发起请求后,生成交易 ID 以区别其他购买。支付发起应答包括:交易 ID、证书和当前日期等,商户公钥和收单行公钥2.购买请求 /购买应答:购买请求是持卡人向商户发出的两个要素;订单信息(OI)和支付指令3.授权请求 /授权应答:授权过程商户验证持卡人的信用;验证订单信息(OI)和支付指令4.支付请求 /支付应答:收单行将支付请求发给发卡行,发卡行从持卡人账户扣款,向收单行发送支付应答,收单行验证后,贷记商户账户,经支付网关向商户发支付应答。双重签名消费者的订单信息(OI order information)商家;支付命令(PI payment instruction)
15、银行。持卡人发送采购请求商家核对消费者的发送采购信息SET 交易的安全性7.SET 协议采用安全措施:(1)通过加密保证信息的机密性。(2)通过数据签名进行身份签别。(3)使用 X.509V3 数据证书来提供信任。(4)使用 Hash 算法保证数据的完整性。5.SET 交易流程与传统银行卡交易流程的比较消费者与商户:网络进行交易,不见面;防窃取和篡改存在消费者、商户身份真实性购物后签名的真伪,防伪造和抵赖,双重数字签名SET 协议交易保留了传统银行卡交易的基本流程,加上基于数字证书的安全加密及数字认证系统。6.SET 与 SSL 的比较1.认证方面:SET 安全需求较高,交易成员要有证书,SS
16、L 可选择2.对消费者:SET 保证了商户的合法性,卡的信息保密3.安全性方面:SET 高于 SSL,SSL 只限于持卡人到商家的信息交流4.应用性: SET 有互操作接口,一个系统可由不同的产品构筑。只用于支付5.采用比率:SET 成本高,SSL 普及率高 80%(1)认证方面:SET 实现多方认证,SSL 只进行单方或双方认证(2)安全性方面:SSL 只对交易双方信息交换进行加密保护 ,而 SET 对交易的各方都进行了加密保护和认证工作。(3)协议位置:SSL 是基于传输层;SET 位于应用层。(4)应用方面:SSL 主要和 Web 应用一起工作,主要用于客户机与服务器之间的通讯,应用范围
17、较广;SET 只为银行卡支付交易服务。(5)处理速度:SET 复杂、庞大处理速度慢;SSL 简单处理速度快。SET 的缺陷:在银行、商户、消费者安装相应的软件,成本高。私钥和证书的重要SET 优点:可以用在系统的一部分或全部。商户和银行使用 SET,与顾客仍使用 SSL。四、First Virtual第一虚拟公司(First Virtual Holdings,Inc.)是在互联网上开发以信用卡为基础的支付模式的公司。此模式简称为 VPIN,是不用加密的支付系统,不需要专用的软件。主要用于销售低价的信息产品,无商品配送问题,但不能完全防欺诈。VPIN 或卡丢失FV 交易前准备1.交易前,商户和买
18、方要到 FV 登记。2.买方要到 FV 登记信用卡情况和电子邮箱地址,FV 给虚拟 PIN(VPIN )识别信息。3.商户要到 FV 登记银行账户情况, FV 给商户虚拟 PIN(VPIN )识别信息。FV 的购物过程销售遵循 “买前先试的原则”五、CyberCash1994 年 8 月,CyberCash 公司是为互联网上安全金融交易提供软件和服务解决方案的公司。此模式采用专门的钱包软件,让消费者能用信用卡在 CyberCash 联营商户进行安全购物。主要用于商户销售商品,有电子钱包、电子支票等。CyberCash 模型提供网关服务器与现有金融网联接CyberCash 的购物1. Cyber
19、Cash 钱包CyberCash 是消费者用信用卡购物的应用软件,可与浏览器一起运行,对用户完全透明。CyberCash 协议用 56 位 DES 和 768 位 RSA 保护用户的卡片信息,加密仅用于金融数据,获美出口许可。2. CyberCash 用户每个 CyberCash 用户选择一个唯一的口令和 CyberCash ID,ID 和口令用于解开钱包3.CyberCash 的购物过程5.2 电子支付一、电子支票的概念二、NetBill三、NetCheque四、Echeck一、电子支票的概念电子支票:是将支票的全部内容电子化,借助因特网完成支票在客户与客户之间的传递,实现银行客户间的资金结
20、算。电子支票是一个经付款人私钥加密的写有相关信息的电子文件。它由客户计算机内的专用软件生成,一般应包括支付数据(支付人、支付金额、支付起因等) 、支票数据(出票人、收款人、付款人、到期日等) 、客户的数字签名、CA 证书、开户行证明文件等内容。电子支票参与者消费者和他的银行;商户和他的银行;不同银行之间支票的清算处理电子支票应用过程电子支票应用过程1.购买电子支票:买方在银行注册,开具电子支票,支票有银行签名。2.电子支票付款:买方用自己的私钥对支票进行签名,用卖方的公钥加密后传给卖方。3.清算:卖方定期将支票存到银行,进行转账,不同行间进行支票清算。电子支票支付的特点 1.工作方式与传统相同
21、,易于理解和接受。2.加密的电子支票易于流通,确认和验证。3.电子支票适于各种市场,更适合 B2B 模式。4.电子支票降低处理成本,减少在途资金,提高了资金利用率。5.给第三方金融机构带来收益。6.电子支票将公共网络连入金融支付和金融清算。二、NetBillNetBill 是美国卡内基- 梅隆大学设计的一个电子支票系统。与其他不同是提供一个完整系统,从价格协商到送货。其主要贡献:自动的证书提交方法,确保顾客在收到商品完好的信息后再付款;会员机制,打折有匿名结构来保护顾客的身份;三、NetChequeNetCheque 是美国南加洲大学的信息科学研究所 ISI 研制的基于 Kerberos 的在
22、线电子支票支付系统。NetCheque 是分布式账户服务,由用来清算支票的 NetCheque 服务器和清算银行之间的账号分层次地构成。四、EcheckEcheck 是美国金融服务技术联合会 FSTC 组织开发的电子支票系统。Echeck 的使用流程:付款方使用 “电子支票簿” 的硬件或软件生成电子支票并签名,通过网络发给收方,收方使用自己的“电子支票簿” 对收到的支票进行背书、生成进账单,签名发给银行,银行确认双方身份后,根据电子支票里的内容,把款项从付款方账户划入收款方账户。1.Echeck 的使用流程2.Echeck 的使用的关键技术1.电子支票簿电子支票簿是一种硬件和软件装置,可实现电
23、子支票的签名、背书,防篡改。电子支票簿常用有智能卡、PC 卡、掌上电脑等。3)映射:公钥发送给银行 CA,银行 CA 把公钥与支票账户和持卡人进行映射。4)银行证书发放:银行验证账户信息和公钥后,给电子支票簿发放银行签名的证书。5)系统确认银行证书,把证书和账户信息存入卡内。6)系统 生成电子支票簿卡,在卡上打印银行标识、持卡人姓名,识别码。7)随机生成初始 PIN,安装到芯片。8)把卡和被覆盖的 PIN 发给用户。电子支票的功能:密钥生成;加密和签名的密钥对签名和背书;发放银行签名的证书存取控制:通过输入个人身份识别码(PIN )激活电子支票簿5.3 电子现金一、电子现金的属性二、电子现金的
24、支付过程、特点及优点三、电子现金应用系统一、电子现金的属性1.货币价值:可等值交换2.可交换性:可与其他工具进行交换,多银行广泛使用3.可存储性:存入专用设备可存储和查询4.重复性:防复制和重复使用。二、电子现金的支付过程、特点及优点电子现金的支付过程:1)购买 E-Cash:在发行银行开 E-Cash 账号,并购买电子现金。2)存储 E-Cash:使用专用软件从银行取出电子现金存在特定的设备上。3)用 E-Cash 购买商品和服务:买方订货后,用卖方的公钥加密 E-Cash 传给卖方。4)资金清算:卖方与发行银行进行清算。5)确认订单:卖方获得付款后,向确认买方发确认信息。三方电子现金支付过
25、程电子现金的特点:1.银行和卖方之间应有协议和授权关系;2.买方、卖方和 E-Cash 银行都使用 E-Cash 软件;3. E-Cash 适用于小交易量;4.身份验证是由 E-Cash 本身完成;5. E-Cash 银行负责买方、卖方间资金的转移6.具有现金特点,可存、取、转让7.方式安全,买卖双方无法伪造银行的数字签名,且双方可确信支付是有效的。8. E-Cash 与普通钞票一样会丢失。电子现金的优点:1.匿名:2.不可跟踪性:3.节省交易费用:4.节省传输费用:5.风险小:6.支付灵活方便:三、电子现金应用系统1.DigiCash荷兰的求索现金公司 DigiCash 是专门从事电子支付系
26、统和数值现金开发的公司,E-Cash 现金试验项目已接近现钞的功能。只能使用一次存贮在硬盘。将遵循一定规则排列的一定长度的数字串,即将电子化的数字信息块,作为代表纸币或辅币的手段。例可用“99005088”的数字串表示 50 元, “99010099”表示 100 元。电子化的数字信息块存贮在硬盘中。支付时将若干信息块综合即可完成支付。采用密码技术防复制。E-Cash 的系统组成和功能参与者有客户、商户和银行。客户和商户在 E-Cash 银行开立账户,客户可从账户提取硬币存到自己的 E-Cash 钱包(CyberWallet ),钱包可存贮和管理现金,保存交易记录。使用 E-Cash 时,将其
27、硬币送到银行分辨真伪和未消费过,然后存入商户账户。E-Cash 的特点:1.匿名处理:在用现金前用自己的钱包软件 CyberWallet 产生一个随机序列号,并送银行进行盲签名,银行签名后可流通。2.防止重复消费:银行记录已消费的序列号。3.与 Web 集成:客户的 CyberWallet 钱包软件与 Web 浏览器联手运行。4. E-Cash 转让:个人间可转让,送银行进行检验,将同值新币送回到收款者。5.防止 E-Cash 犯罪:可监视存款2.Modex英国试验,将电子信息块存贮在 IC 卡内,卡内保存了货币价值的汇兑余额,余额以二进制数字形式存贮,相当于货币价值的计数器,支付时卡内余额减
28、少,可实现支付的分散和离线处理。以智能卡为基础的储值系统,现金存储在晶片里,是由用户持有的一个凭证,可完成客户间价值转移。Modex 卡对卡的价值转移机制:客户到特约商户购买时,将卡片插入 POS 后认证客户,认证后商户签署支付要求送入客户卡中,客户再认证商户的凭证;若正确,客户签署支付信息到商户,客户卡减去要支付的值,商户验证数字签名送确认信息,商户卡中增加相应的值。Modex 的电子钱包:Modex 的电子钱包是在晶片内建立了一个支付应用软件,通过电子钱包相互转移 Modex 的价值,转移价值可通过 POS、ATM、 Modex 电话终端等。Modex 的安全机制:Modex 在晶片、开发环境、电子钱包、系统运营各方面精心设计了安全措施。5.4 网上支付系统的比较P97 表 5-4-1