Set协议及双签名方法及验证
来源:互联网 发布:数据库缓存redis 编辑:程序博客网 时间:2024/04/29 14:58
Set协议参与方:
用户,卖家,CA,internet,物流中心,银行
规范:
- 用户,卖家,支付网关通过internet与ca交流
- CA与银行通过专用网络
- 收单银行与发卡银行通过银行专用网络
- 支付网关与银行通过网络专线交互
步骤:
- 购买初始化请求:用户c向商家M请求交易号,消息一
- 回答:M指派交易号,签名后,消息二发送给c
- 购买请求:c验证消息二后发送购买请求消息三给M,其中包含(OI,PI),详细过程见后面
- 授权与获取请求:M验证后,产生授权请求到支付网关P,消息4
- P回答:验证后,看PI,OI,持卡人是否一致,通过则发消息给M,消息5
- 购买回答:M收到5后,转发给c,消息六。
其中步骤3中发送的消息3是双签名,5是验证,如何实现:
- C产生OI和PI,OI是订单消息,PI是付款消息,分别hash,有H(OI), H(PI), 然后连接二者,再hash,得H(PO),然后用自己的私钥加密,
得Sign(H(PO)), 之后发送(OI,H(pI),sign(H(po))给M,发送(PI,H(OI),sign(H(PO))给P,分别用对方的公钥加密。附带上自己的证书。
- 验证方法:
M和P分别用自己的私钥解密,
对M而言得到,OI,hash之,得到H(OI),然后加上c发过来的H(PI),并hash之,得到H(PO1),用c的公钥解密sing(H(PO)),得到H(PO),然后用
H(PO1)与H(PO)比较,银行也这么做,如果H(PO1)和H(PO2)均与H(PO)一致,则认为消息一致。
That's easy!
- Set协议及双签名方法及验证
- php生成签名及验证签名
- php生成签名及验证签名
- RSA加密及验证签名
- 获取apk签名及apk签名方法
- RSA加密使用方式及签名验证
- 微信公众号支付流程解读及支付签名验证方法
- 【代码优化】方法签名及参数检查
- apk空包签名方法及工具
- apk空包签名方法及工具
- Android APK签名原理及方法
- apk空包签名方法及工具
- apk空包签名方法及工具
- apk空包签名方法及工具
- RTP 传输协议及方法
- RSA加密解密及RSA签名和验证
- RSA加密解密及RSA签名和验证
- 使用Microsoft CryptoAPI进行加密、解密、签名及验证
- RFC
- JAVA反射机制
- mssql查询存储过程中的文本
- 开始学习Liux shell洛
- JS传值到HTML页面乱码解决办法
- Set协议及双签名方法及验证
- Struts1 优点与缺点
- magento的DeveloperToolbar开发扩展工具插件
- 2010-12-28
- 权限
- 如何在JavaScript中封装Java的StringBuffer方法
- 2010.12.30
- java使用itext操作pdf
- 租房和搬家日志