您好,欢迎访问三七文档
电子商务技术(第五章SET协议)郭伟西南交通大学信息科学与技术学院E-mail:WGuo@home.swjtu.edu.cn2一个近期的新闻携程网泄露客户信息2014年3月22日晚间,乌云漏洞平台发布消息称,携程将用于处理用户支付的服务接口开启了调试功能,使部分向银行验证持卡所有者接口传输的数据包均直接保存在本地服务器,有可能被黑客所读取。报告并称,漏洞泄露信息包括用户姓名、身份证号、银行卡类别、银行卡卡号、银行卡CVV码等。尽管国内信用卡消费有时还需验证pin码,但携程这次泄露的信用卡信息包括CVV码,足够完成大多国外电商的网络支付验证了。这次出问题的是携程所提供的快捷支付方式。这一方式与支付宝的快捷支付有所不同。支付宝的快捷支付是支付宝与银行的合作业务,支付宝需要验证用户身份证、银行卡、手机号码,只有三者身份都相符,才会为用户开通快捷支付服务。携程的快捷支付与银行无关。携程更应该把自己的快捷支付业务称为“常用信用卡信息保存”。携程快捷支付的工作方式是这样的,如果用户在使用信用卡支付购买商品时,勾选“保存至常用信用卡”,携程便会将用户每次刷卡所需输入的信用卡信息保存在携程服务器上,这样当用户下次在携程进行网络支付时,携程便无需用户重复输入信用卡卡号、有效期等信息,只需输入信用卡后四位、CVV验证码、手机号码便可完成支付。3信用卡4SET简介SET-SecureElectronicTransaction(安全电子交易):是由VISA和MasterCard两大信用卡公司于1997年5月联合推出的规范。SET协议的产生背景–电子商务交易的广泛应用–需要保护Internet上信用卡交易的安全性是一种应用在互联网上,以信用卡为基础的国际通用电子付款系统规范,目的是为了保证网络交易的安全。SET协议得到了IBM、HP、Microsoft、VeriFone、GTE、Verisign等许多大公司的支持,已成为事实上的工业标准。目前,它已获得了IETF标准的认可。1997年2月,由MasterCard和Visa发起成立SETCO公司。SETCO负责SET协议在全球的推广,并作为了Master和Visa的SET根CA。世界上第一个Internet下的SET付款系统-丹麦SET付款系统由IBM建成。SET协议主要是为了解决用户、商家和银行之间通过信用卡支付的交易而设计的,以保证支付信息的机密、支付过程的完整、商家及持卡人的合法身份及可操作性。5SET简介SET协议是应用层协议,是一种基于消息流的协议,支持B2C类型的电子商务模式。涉及的核心技术–公开密钥加密、数字签名、数字信封、数字证书等商业需求–支付信息的机密–订单信息和个人帐号信息的隔离–商户及持卡人的合法身份–互可操作性SET协议的功能(提供的安全性保护)–在线交易的保密性(公钥密码算法)–数据的完整性(MessageDigest)–交易行为的不可否认性(数字签名)–交易各方的身份认证(数字证书)–隐私保护(双重数字签名)6SET涉及到的主要参与者7SET涉及到的主要参与者持卡人(Cardholder)上网电脑+SET交易的持卡人软件(即电子钱包,到发卡银行申请)+数字证书特约商店(Merchant)集成SET交易的商家软件(用于支付结算,到支持网上支付业务的收单银行申请)+数字证书收单行(Acquirer)为在线交易的商家在银行设立帐号,并在每次SET交易中担任收款服务的金融机构,并协助特约商店做认证,核对信用卡账户是否有效及消费金额是否超出信用额度。由于商家必须在收单银行开立帐户,所以收单银行也是商家的开户银行。大多数发卡银行都兼营收单业务,也有一些非银行专业服务机构经营收单业务。发卡行(Issuer)发行信用卡的银行。交易的扣款请求最后必须通过银行专用网,经过收单行传送到持卡人的发卡行,进行授权和扣款。认证中心(CertificateAuthority,CA)数字证书管理机构,是对网络上的各方进行网络身份认证的机构。SET协议规定参加交易的各方都必须持有证书,在交易中每次交换信息都要出示自己证书和验证对方证书。支付网关(PaymentGateway)8支付网关支付网关的作用包括:是公用网(Internet)和金融专用网之间的接口支付信息必须通过支付网关才能进入银行等金融机构的支付系统完成支付操作。它把不具备安全性的公用网(Internet)上的交易信息传递给安全性很高的金融专用网,起到了隔离和保护专网的作用主要完成通信,数据加解密和协议转换等工作,其主要功能有:将Internet传来的数据包解密,并按照银行系统内部的通信协议将数据重新打包;接收银行系统内部反馈的响应消息,将数据转换为Internet传送的数据格式,并对其进行加密。支付网关也必须到指定的认证中心申请数字证书,才能参与SET交易活动Internet卖方买方支付网关金融专用网9SET要实现的主要目标保障付款安全。保证信息在互联网上安全传输,防止数据被黑客或被内部人员窃取。保证电子商务参与者信息的相互隔离。客户的资料加密或打包后通过商家到达银行,但是商家不能看到客户的账户和密码信息。解决多方认证问题。不仅要对消费者的信用卡认证,而且要对在线商店的信誉程度认证,同时还有消费者、在线商店与银行间的认证。确保应用的互通性。提供一个开放式的标准,明确定义细节,以确保不同厂商开发的应用程序可共同协作,促成软件互通;并在现存各种标准下构建该协定,允许在任何软硬件平台上执行,使标准达到相容性和接受性的目标。达到全球市场的接受性。在对特约商店、持卡人影响最小及容易使用的前提下,达到全球普遍性。10SET交易的三个阶段1.购买请求阶段–持卡人与商家确定所用支付方式的细节2.支付的认定阶段–商家与银行核实,随着交易的进行,他们将得到付款3.收款款阶段–商家向银行出示所有交易的细节,然后银行以适当方式转移货款•如果不是使用信用卡而直接支付现金,商家在第二阶段完成后的任何时间都可供货支付。•在整个交易中,持卡人只和第一阶段有关,银行与第二、三阶段有关,而商家与三个阶段都要发生联系。11SET网上购物流程12SET网上购物流程1.消费者开立账户。消费者(持卡人)首先在支持电子支付及SET的银行开立信用卡帐户,获得信用卡;2.消费者收到证书。银行签署的X.509v3证书用来核对消费者的RSA公开密钥及密钥的有效期限。同时,也建立了消费者的密钥组与信用卡之间的关系,并由银行来保证这个关系;3.特约商店证书。接受某家公司的信用卡的特约商店必须拥有两个证书,分别包含一把公开密钥:一个用来签署信息,一个是用在密钥交换。特约商店也要保留一份支付网关的公开密钥证书;4.消费者订购。消费者在线浏览商品,并选择商品后填写订单;5.特约商店核对。除了订单,特约商店会发送它们的证书副本,而消费者可以核对所消费的商店是否合法有效。6.发送订单及支付。消费者将其订单、支付命令与其证书传送给特约商店。这份订单对所支付的款项进行核对。支付命令中会包含了信用卡的细节。因此支付的信息要经过加密,才不会被特约商店获取其中的重要信息。而消费者的证书可以让特约商店核对消费者身份;7.特约商店请求支付认证。当商家收到订单后,会向支付网关传送支付命令,并且请求核对消费者的信用卡是否能支付这笔款项;8.特约商店核准订单。特约商店将核准的订单信息传送给消费者;9.特约商店提供其货物或服务;10.特约商店请求支付。商店将请求支付的消息送到支付网关,支付网关会处理支付工作。13SET协议工作流程卖方收到订单后,会把对买方支付命令的授权请求提交给开户银行的支付网关,这一授权请求还将会通过收单银行提交到发卡银行卖方系统响应后对买方进行一次确认:确认买方为合法的持卡人支付产生支付请求确认支付提交授权请求授权响应支付响应买方在线决定购买商品,选择用SET电子钱包支付买方系统将内嵌有消费者数字签名的订单和支付命令提交,由于使用双重签名技术,卖方是无法看到买方帐户信息的。只有位于卖方的开户银行的被称为支付网关的服务器,可以处理支付命令中的信息收单银行得到发卡银行的确认后,通过支付网关将授权响应发给卖方卖方收到授权响应后,还会转发给买方,同时买卖双方会将交易记录备份。14与SET有关的密码技术对称密码体制(DES):SET中使用56位的密钥非对称密码体制(RSA):SET中使用1024bit、2048bit两种密钥长度,以满足不同等级的加密要求。消息摘要——是一个唯一对应一个消息或文本的值,它由哈希(Hash)加密算法对消息进行运算生成消息摘要,由此验证消息在传输过程中没有被修改。SET中用SHA-1算法计算消息摘要,摘要长度为160bit数字签名——SET中使用RSA算法来实现数字签名,保证发送者对所发信息不能抵赖。数字信封——在SET中使用对称密钥来加密数据,然后将此对称密钥用接收者的公钥加密(称为消息的“数字信封”),将其和数据一起送给接收者。数字证书——在SET中用来验证交易双方的身份,并提供加密公私钥和签名公私钥。152Alice产生一对密钥,用于加密和解密3Alice将一个密钥公开,另一个密钥私有BobAlice1Bob要发送消息给Alice4Bob用Alice的公钥对消息加密,发送给Alice。只有Alice能解密问题:需要对整条消息加密,需大量计算与SET有关的密码技术用公钥进行加密16与SET有关的密码技术加密过程对称密钥明文数据密文发送方解密过程接收方私钥接收方加密过程接收方公钥被加密的密钥数据密文解密过程对称密钥明文密文密文对称密钥被加密的密钥对称密钥数字信封技术17BobAlice解决的方法:仅对消息的认证符加密如何解决??问题:需要对整条消息加密,占用大量存储空间问题:需要对整条消息加密,需大量计算与SET有关的密码技术用公钥进行签名与SET有关的密码技术明文AliceBobA的私钥HiBobAliceA的公钥摘要哈希函数gJ39vzamp4xOurjj9rRr%9$数字签名HiBobAlice明文Ourjj9rRr%9$数字签名HiBobAlice明文gJ39vzamp4x新摘要哈希函数gJ39vzamp4x=?相同1、没有篡改2、是Alice发送的1234567基于消息摘要的数字签名19SET的发送方加密流程发方私钥数字签名③加密④生成对称密钥消息密文⑤加密数字信封⑥加密②Hash运算消息明文消息摘要①证书认证接收方证书收方公钥⑦发送发方证书20SET的接收方解密流程⑧保存明文①接收发方证书数字签名消息密文数字信封④证书认证发方公钥⑤解密消息摘要收方私钥②解密对称密钥③解密消息明文消息摘要⑥Hash运算⑦比较?21与SET有关的密码技术SET协议希望能够保障顾客的个人隐私和信用卡信息的安全:使得商家能够看到订货信息(OI)并可验证持卡人支付指令(PI)的合法性;银行可以看到支付指令(PI)并可在合法验证持卡人订购信息(OI)。将订单信息和个人信用卡账号信息分别生成两条消息摘要(PIMD和OIMD)商家得到OI和PIMD;银行得到PI和OIMD。22与SET有关的密码技术双重签名:双重签名的目的在为消费者提供额外的隐私保护。在这里,消费者想要发送订单信息OI到特约商店,且发送支付命令PI给银行。特约商店并不需要知道消费者的信用卡卡号,而银行不需要知道消费者订单的详细信息。消费者需要将这两个消息分隔开,而受到额外的隐私保护。在必要的时候这两个消息必须要连结在一起,才可以解决可能的争议、质疑。这样消费者可以证明这个支付行为是根据他的订单来执行的,而不是其它的货品或服务。23与SET有关的密码技术PIHPIMDOIHOIMDHPOMDEDualsignatureSKcPI:支付命令PIMD:PI消息摘要OI:订单信息OIMD:OI消息摘要H:哈希函数POMD:支付/订单消息摘要‖:连结E:签名算法(RSA)SKc:消费者私钥双重签名的生成过程24与SET有关的密码技术双重签名:保
本文标题:电子商务第五章
链接地址:https://www.777doc.com/doc-39426 .html