电子支付技术电子支付概述安全套接层协议SSL安全电子交易SET协议电子支付工具网上银行1989年美国法律学会的《统一商业法》中定义:电子支付是支付命令发送方把存放于商业银行的资金,通过一条线路划入收益方开户银行,以支付给收益方的一系列转移过程。电子支付是以金融电子化网络为基础,以商用电子化机具和各类交易卡为媒介,以计算机技术和通信技术为手段,以电子数据(二进制数据)形式存储在银行的计算机系统中,并通过计算机网络系统以电子信息传递形式实现流通和支付。电子支付的定义以计算机技术为支撑,进行储存、支付和流通集储蓄、信贷和非现金结算等多种功能为一体可广泛应用于生产、交换、分配和消费领域使用简便、安全、迅速、可靠电子支付通常要经过银行专用网络电子支付的特点第一阶段是银行利用计算机处理银行之间的业务,办理结算第二阶段是银行计算机与其他机构计算机之间资金的结算第三阶段是利用网络终端向客户提供各项银行服务第四阶段是利用银行销售点终端(POS)向客户提供自动的扣款服务第五阶段是最新发展阶段,电子支付可随时随地通过互联网络进行直接转账结算,形成电子商务环境。这是正在发展的形式,也将是新世纪的主要电子支付方式。我们又称这一阶段的电子支付叫网上支付。电子支付的发展阶段电子商务交易协议:来支持常用的信用卡支付、数字现金支付和电子支票支付Digicash:是一个匿名的数字现金协议,客户在消费中不会暴露其身份SSL:是一个使用加密的办法建立安全的通信通道的协议,可以支持简单加密的信用卡支付方式,通过采用SSL,可以将客户的信用卡号加密安全地传送给商家SET:是基于安全的信用卡协议,实现了信息的集成、全部金融数据的证实、敏感数据的加密等工作Netbill:是支持电子支票支付的协议电子商务交易协议电子商务中常见的电子交易有以下五种类型:支付系统无安全措施的模式通过第三方代理人支付的模式数字现金支付模式简单加密支付系统模式安全电子交易SET支付模式电子交易的主要模式支付系统无安全措施的模型特点风险由商家承担商家完全掌握用户的信用卡信息信用卡信息的传递无安全保障通过第三方经纪人支付的模型特点用户账户的开设不通过网络信用卡信息不在开放的网络上传送通过电子邮件来确认用户身份商家自由度大,风险小支付是通过双方都信任的第三方(经纪人)完成的数字现金支付模型特点银行和商家之间应有协议和授权关系用户、商家和数字现金的发行都需要使用数字现金软件适用于小额交易身份验证是由数字现金本身完成的数字现金的发行负责用户和商家之间实际资金的转移数字现金与普通现金一样,可以存、取和转让简单加密支付系统模型特点信用卡等关键信息需要加密使用对称和非对称加密技术可能要启用身份认证系统以数字签名确认信息的真实性需要业务服务器和服务软件的支持SET协议的目标信息在互联网上安全传输,不能被窃听或篡改用户资料要妥善保护,商家只能看到订货信息,看不到用户的账户信息持卡人和商家相互认证,以确定对方身份软件遵循相同的协议和消息格式,具有兼容性和互操作性安全电子交易SET支付模式电子支付概述安全套接层协议SSL安全电子交易SET协议电子支付工具网上银行SSL-SecureSocketLayerNetscapeCommunication公司设计开发。V3作为RFC发布。后IETF建立一个TLS工作小组,作为InternetStandard。TLS的第一个版本可以看作是SSLv3.1SSL提供数据加密、服务器认证、报文完整以及TCP/IP联接用可选客户认证等,对计算机之间整个会话过程进行加密采用SSL协议,可确保信息在传输过程中不被修改,实现数据的保密与完整性,在Internet上广泛用于处理财务上敏感的信息。SSL使用了证书、数字签名、以及加密技术(基于RSA)等多种技术SSL协议的服务认证用户和服务器,使得他们能够确信数据将被发送到正确的客户和服务器上加密数据,以保证数据在传送过程中的安全,即使数据被窃,盗窃者没有解密密钥也得不到可读的资料维护数据的完整性,确保数据在传送过程中不被改变。SSL协议的作用向客户端进行服务器认证可选的,向服务器进行客户认证在两台机器间产生加密的连接SSL协议的特性保密性:握手之后,采用单钥体制进行数据加密、采用双钥体制进行身份鉴别可靠性:采用消息摘要算法进行完整性检查确认性:尽管会话的客户端认证是可选的,但是服务器端始终是被认证的灵活性:通信双方可选择密码算法;允许多种形式各种级别的身份鉴别IPSSLChangeCipherSpecProtocolSSLAlertProtocolApplicationProtocolTCPSSLRecordProtocolSSLHandshakeProtocolSSLProtocolStackHTTPLDAPIMAPSSL位于TCP/IP协议和应用协议之间SSL体系结构SSL被设计用来使用TCP提供一个可靠的端到端安全服务,它包括两个层次的协议:SSL记录协议(RecordProtocol)所有从更高层协议来的数据都是通过记录层到达传输层。记录层发送的数据块称为有固定长度的记录。一个记录包括内容的类型、协议的版本号、长度和经过压缩和加密的数据。每个信息都具有以下功能:—分段数据,对信息分割或结合到一个记录中—在数据发送前进行压缩—对记录的数据部分加密通讯协议:有四个通讯协议—Handshakeprotocol:定义在两个实体间建立一个SSL会话的一系列事件SSL体系结构(续)SSL握手协议包含两个阶段,第一个阶段用于建立私密性通信信道,第二个阶段用于客户认证。•第一阶段是通信的初始化阶段,首先SSL要求服务器向浏览器出示证书;浏览器中的SSL软件发给服务器一个随机产生的传输密钥•第二阶段的主要任务是对客户进行认证—ChangeCipherSpecificationprotocol:是握手协议的子集。它的主要功能是表明中在加密部分中有变化的其他部分—Alertprotocol:处理错误。一个警告信息包括两个部分,实际错误的描述和错误的安全级别。—Applicationprotocol:负责从应用层将信息传送到记录层SSL握手协议(HandshakeProtocol)SSL的安全性几乎所有操作平台上的WEB浏览器(IE、Netscatp)以及流行的Web服务器(IIS、NetscapeEnterpriseServer等)都支持SSL协议。因此使得使用该协议便宜且开发成本小。但应用SSL协议存在着不容忽视的缺点:系统不符合国务院最新颁布的《商用密码管理条例》中对商用密码产品不得使用国外密码算法的规定系统安全性差。SSL协议的数据安全性其实就是建立在RSA等算法的安全性上,因此从本质上来讲,攻破RSA等算法就等同于攻破此协议。由于美国政府的出口限制,使得进入我国的实现了SSL的产品(Web浏览器和服务器)均只能提供512比特RSA公钥、40比特对称密钥的加密。但是,一个安全协议除了基于其所采用的加密算法安全性以外,更为关键的是其逻辑严密性、完整性、正确性,从目前来看,SSL比较好地解决了这一问题。另外,SSL协议在“重传攻击”上,有它独到的解决办法。SSL协议为每一次安全连接产生了一个128位长的随机数——“连接序号”。理论上,攻击者提前无法预测此连接序号,因此不能对服务器的请求做出正确的应答。总的来讲,SSL协议的安全性能是好的,而且随着SSL协议的不断改进,更多的安全性能、好的加密算法被采用,逻辑上的缺陷被弥补,SSL协议的安全性能会不断加强。SSL的安全性SSL的应用SSL的典型应用主要有两个方面,一是客户端,如浏览器等;另外一个就是服务器端,如Web服务器和应用服务器等。目前,一些主流浏览器(如IE和Netscape等)和IIS、DominoGoWebServer、NetscapeEnterpriseServer、Appache等Web服务器都提供了对SSL的支持。要实现浏览器(或其他客户端应用)和Web服务器(或其他服务器)之间的安全SSL信息传输,必须在Web服务器端安装支持SSL的Web服务器证书,在浏览器端安装支持SSL的客户端证书(可选),然后把URL中的“http://”更换为“https://”。SSL的应用(续)由于出口限制和其他原因,目前的浏览器(包括IE和Netscape)只能支持56位对称密钥和512位非对称密钥长度的SSL连接,这在实际应用中是非常不安全的,安全的SSL系统需要至少128位对称密钥和1024位非对称密钥长度。在SSL的客户机/服务器模式下,即使服务器端可以支持位数更多的密钥长度,具有较高的安全强度,但由于客户端的限制,实际SSL连接中只能使用客户端较低位数的密钥长度来进行安全信息传输。所以很多安全系统的客户端大都安装了一个SSL代理程序,它直接接管浏览器发送和接收的信息,利用安全的密钥长度与服务器进行交互(必要的时候还需要在服务器端安装SSL服务器代理)。SSL的缺陷对于电子商务应用来说,使用SSL可保证信息的真实性、完整性和保密性。但由于SSL不对应用层的消息进行数字签名,因此不能提供交易的不可否认性SSL在全球的大规模使用还有一定的难度。SSL产品的出口受到美国国家安全局(NSA)的限制,美国政府只允许加密密钥为40位以下的算法出口,而美国的商家一般都可以使用128位的SSL,致使美国以外的国家很难真正在电子商务中充分利用SSL电子支付概述安全套接层协议SSL安全电子交易SET协议电子支付工具网上银行安全电子交换协议SETSET(SecureElectronicTransaction)是由Visa和MasterCard两大信用卡组织联合开发的电子商务安全协议。它是一种基于消息流的协议,用来保证公共网络上银行卡支付交易的安全性,因而成为Internet上进行在线交易的电子付款系统规范它采用公钥密码体制和X.509数字证书标准,主要应用于BtoC模式中保障支付信息的安全性。SET协议本身比较复杂,设计比较严格,安全性高,它能保证信息传输的机密性、真实性、完整性和不可否认性。SET协议是PKI框架下的一个典型实现,也是一个基于可信的第三方认证中心的方案SET协议的目标信息在Internet上的安全传输,保证网上传输的数据不被黑客窃听;订单信息和个人账号信息的隔离,在将包括消费者账号信息的订单送到商家时,商家只能看到订货信息,而看不到消费者的账户信息;消费者和商家的相互认证,以确定通信双方的身份,一般由第三方机构负责为在线通信双方提供信用担保;要求软件遵循相同的协议和消息格式,使不同厂家开发的软件具有兼容和互操作功能,并且可以运行在不同的硬件和操作系统平台上。SET协议中的角色持卡人:在电子商务环境中,消费者和团体购买者通过计算机与商家交流,持卡人通过由发卡机构颁发的付款卡(例如信用卡、借记卡)进行结算。在持卡人和商家的会话中,SET可以保证持卡人的个人帐号信息不被泄漏。发卡机构:它是一个金融机构,为每一个建立了帐户的顾客颁发付款卡,发卡机构根据不同品牌卡的规定和政策,保证对每一笔认证交易的付款。商家:提供商品或服务,使用SET,就可以保证持卡人个人信息的安全。接受卡支付的商家必须和银行有关系。银行:在线交易的商家在银行开立帐号,并且处理支付卡的认证和支付。支付网关:是由银行操作的,将Internet上的传输数据转换为金融机构内部数据的设备,或由指派的第三方处理商家支付信息和顾客的支付指令。UsingSETinE-commerceTransactionsSET协议的工作原理(1)用户向商家发送购货单和一份经过签名、加密的信托书。书中的信用卡号是经过加密的,商家无从得知;(2)商家把信托书传送到收单银行,收单银行可以解密信用卡号,并通过认证验证签名;(3)收单银行向发卡银行查问,确认用户信用卡是否属实;(4)发卡银行认可并签证该笔交易;(5)收单银行认可商家并签证此交易;(6)商家向用户传送货物和收据;(7)交易成功,商家向收单银行索款;(8)收单银行按合同将货款划给商家;(9)发卡银行向用户定期寄