安全电子交易 (SET) 协议
安全电子交易或 SET 是一种系统,可确保在场景中使用信用卡完成的电子交易的安全性和完整性。 SET 不是启用支付的系统,而是应用于这些支付的安全协议。它使用不同的加密和散列技术来保护通过信用卡完成的互联网支付。 SET 协议得到了主要组织的支持,例如 Visa、Mastercard、提供其安全交易技术 (STT) 的 Microsoft 和提供安全套接字层 (SSL) 技术的 Netscape。
SET 协议限制向商家透露信用卡详细信息,从而阻止黑客和小偷。 SET 协议包括使用标准数字证书(如 X.509 证书)的证书颁发机构。
在进一步讨论 SET 之前,让我们看一下电子交易的一般场景,包括客户端、支付网关、客户端金融机构、商户和商户金融机构。
SET 中的要求:
SET 协议需要满足一些要求,其中一些重要要求是:
- 它必须提供相互验证,即通过确认客户是否是预期用户来验证客户(或持卡人)以及商家验证。
- 它必须通过适当的加密对 PI(支付信息)和 OI(订单信息)保密。
- 它必须能够抵抗消息修改,即不允许对正在传输的内容进行任何更改。
- SET 还需要提供互操作性并利用最佳安全机制。
SET 的参与者:
在在线交易的一般场景中,SET 包括类似的参与者:
- 持卡人 –客户
- 发行人——客户金融机构
- 商人
- 收单方——商户金融
- 证书颁发机构——遵循某些标准并向所有其他参与者颁发证书(如 X.509V3)的机构。
设置功能:
- 提供身份验证
- 商户身份验证——为防止盗窃,SET 允许客户检查商户与金融机构之间的先前关系。标准 X.509V3 证书用于此验证。
- 客户/持卡人身份验证– SET 检查信用卡的使用是否由授权用户完成或未使用 X.509V3 证书。
- 提供消息机密性:机密性是指防止不知情的人阅读正在传输的消息。 SET 通过使用加密技术来实现机密性。传统上,DES 用于加密目的。
- 提供消息完整性:SET 不允许借助签名修改消息。使用带有 SHA-1 的 RSA 数字签名和一些使用带有 SHA-1 的 HMAC 来保护消息免受未经授权的修改,
双重签名:
双重签名是 SET 引入的一个概念,旨在连接用于两个不同接收器的两个信息片段:
商家的订单信息 (OI)
银行付款信息 (PI)
您可能认为单独发送它们是一种简单且更安全的方式,但以连接的形式发送它们可以解决未来可能出现的任何争议。这是双重签名的生成:
Where,
PI stands for payment information
OI stands for order information
PIMD stands for Payment Information Message Digest
OIMD stands for Order Information Message Digest
POMD stands for Payment Order Message Digest
H stands for Hashing
E stands for public key encryption
KPc is customer's private key
|| stands for append operation
Dual signature, DS= E(KPc, [H(H(PI)||H(OI))])
采购请求生成:
采购请求生成过程需要三个输入:
- 付款信息 (PI)
- 双重签名
- 订单信息消息摘要 (OIMD)
采购请求生成如下:
Here,
PI, OIMD, OI all have the same meanings as before.
The new things are :
EP which is symmetric key encryption
Ks is a temporary symmetric key
KUbank is public key of bank
CA is Cardholder or customer Certificate
Digital Envelope = E(KUbank, Ks)
商家方的采购请求验证:
商家通过比较通过 PIMD 散列生成的 POMD 与通过解密 Dual Signature 生成的 POMD 进行验证,如下所示:
由于我们在这里使用客户的私钥进行加密,因此我们使用 KUC,它是客户或持卡人的公钥,用于解密“D”。付款授权和付款捕获:
支付授权顾名思义就是商户对支付信息的授权,以保证商户收到付款。付款捕获是商家接收付款的过程,其中包括再次向网关生成一些请求块,然后支付网关向商家发出付款。