SET的交易实现

TIME:2019-03-21   click: 394 次

SET的交易过程有以下5个步骤。过程信息在持卡人、商家、支付网关、认证中心和银行系统间流动。

1.持卡人注册获取证书

持卡人在网上进行电子交易前首先要向CA申请证书。证书中含该持卡人的账号有效期等信用卡信息,用来证明持卡人身份的有效性。为保证私人信息不被外界查看,通常通过一个单向散列函数加密这些信息,使持卡人证书在网上使用和传输的中隐私得到保护。

2.商家注册获取证书

商家在接收持卡人SET指令或借助网关处理SET交易时,都需请求证书,其申请流程和持卡人申请流程类似。

3.购买请求

持卡人接通 Internet后,打开浏览器即可进入商家服务器。浏览和选购完所需商品或服务后,商家会向客户给一份详细的订单,客户可修改订购的项目,然后提交确认信息。

1.jpg

图 购买请求过程

1)持卡人发送初始购买请求:持卡人选购确定数量的商品或服务后向商家发送初始购买请求。

2)商家响应请求并发送证书:商家收到请求后,为消息产生唯一的事务处理标识并响应;响应消息通过散列函数产生消息摘要;然后用商家的私钥加密它,形成数字签名;最后把响应消息及商家、支付网关证书共同发给持卡人。

3)持卡人接收响应并发送请求:SET用了双签名技术,即当持卡人发出购买指令时已含了订购和付款两条指令,商家只可看到订购指令,而支付网关只可看到付款指令,这样对商家来说持卡人的账号是不可见的,而用户的购买详情对支付网关来说也一样不可见。由商家管理持卡人订单消息;支付网关管理付款指令。

4)商家处理请求消息:商家收到订单消息后先通过证书链校验持卡人证书;接着用持卡人公钥校验数字签名,保证在传输中订单没被篡改;然后商家开始管理订单并把PI消息转给支付网关,申请授权。当OI消息处理完后,商家产生购买响应;生成响应消息的摘要并用商家的私钥加密;最后商家把响应消息发给持卡人。一旦授权了本次交易,商家即确认持卡人所购指定数量的商品或服务。

5)持卡人接收购买响应:持卡人收到购买响应后校验商家签名证书,并用服务器公钥核对其私钥。持卡人存储购买响应并可查询状态信息。

4.扣款授权

商家在向持卡人给出所购商品或服务前,先向支付网关发出扣款授权指令,查询持卡人是否有足够的支付能力。

2.jpg

图 支付授权过程

1)商家请求授权:商家处理持卡人订单时,会产生含需授权的商品或服务总数及其他信息的授权请求消息。接着,商家产生授权请求信息的消息摘要,并用其私钥产生数字签名;随机产生的对称密钥对授权请求信息加密后,然后用支付网关的公钥加密对称密钥成数字信封;之后商家把加密后的授权请求消息及持卡人购买请求中经加密的PI信息都发给支付网关。

2)支付网关处理授权请求:支付网关收到授权请求后进行如下处理:

(a)先打开数字信封取得对称密钥,用其对请求消息解密,接着借助证书链检验商家签名证书,并检查证书是否过期;同时,用商家公钥校验私钥签名的请求信息。

(b)支付网关打开装有付款指令的数字信封得到对称密钥和账号信息,用对称密钥解开PI信息,接着由证书信任链校验持卡人签名证书查看证书过期与否;用持卡人公钥和OI消息的摘要核查数字签名来保证OI信息在传输中未被篡改。

(c)支付网关比较授权请求消息中的事务处理标识符与持卡人付款指令中的标识符,该响应由新生成的对称密钥加密后再用商家的公钥加密,然后发给商家。

③商家处理响应:商家按确认的订单内容向持卡人给出相应数量的商品或服务,至此商家完成一项订单。

5.扣款获取

购物过程完成后,商家为得到货款要向支付网关发出扣款请求。支付网关通过金融网络将货款从持卡人账户转入商家所在的收单银行账户,从而完成了一次扣款过程,如下图所示。

3.jpg

图 获取扣款过程

1)商家请求支付:处理完一个订单后,商家请求支付。在请求授权消息和付款消息间有一个时间差。首先,商家软件产生一个含订购数量和事务处理标识符的扣款请求;接着对扣款请求顺次产生消息摘要、数字签名和信封,并把加密后的信息发给支付网关。

2)网关处理扣款请求:通过已有的信用卡处理系统扣款后,支付网关产生并加密响应消息,然后发给商家。

3)商家接收响应:商家收到扣款响应后,经过一系列的解密后把响应消息存起来,它们将用在商家和收单银行间的转账和对账处理。

以上五个步骤讲的是SET协议的电子商务销售流程。实际上持卡人和商家在证书有效期内只需进行一次证书申请过程,因此销售过程通常包括购买请求,付款授权、获取扣款三个步骤,虽然SET有严密的加密机制和复杂的消息传递过程,但这些复杂的操作是由相应的软件产品来提供和实现的,用户只需经过简单的购买过程便可得到所需商品或服务。

上一篇:SET的支付流程 下一篇:第三层隧道协议