在银行卡支付流程中,为了保证交易的顺利进行,SET采用了多种安全技术,包括对称密钥加密技术、公钥加密技术、数字摘要、双重数字签名、数学信封,证书机制持卡的身份认证用的是数字证书的方式来完成,用数字摘要算法确保消息的完整性。因公钥加密算法的运算速度慢,因此与对称加密算法联合起来用,用对称加密算法来对数据加密,用数字信封交换对称密钥。
1.数字信封
SET通过密码系统让消息进行可靠传输,在SET中,用DES算法产生的对称密钥来对数据加密,然后,把此对称密钥用接收者的公钥加密,叫做消息的“数字信封”,将他与数据共同送给接收者,接收者第一步用其私钥对数字信封进行解密,得到对称密钥,然后用对称密钥解开数据。
2.数字签名
因公钥和私钥之间有数学关系,用其中一个密钥加密的数据仅能用另一个密钥解开。发送者用自己的私钥对数据签名并传给接收者,接收者用发送者的公钥对签名验证后,就可明确消息从谁那里来。这就确保了发送者对发的信息不可以抵赖。
3.消息摘要
在SET协议中,由SHA-1算法得到消息的摘要。
4.双重签名
为保证商家不清楚消费者的账号等关键信息,SET中用了双重签名技术,它是SET在数字签名方面的新应用。
第一步生成2条消息的摘要,把它们连接在一起,得到1个新的摘要,叫做双重签名,然后用签名者的私钥加密。这样,随便1条消息的接收者均能用如下方法核验消息的真实性:生成消息摘要,把它与另1个消息摘要连接在一起,得到新的摘要,若它和解密后的双重签名等同,就能断定消息的真实性。