混合加密实现方式
1、信息(明文)采用DES密钥加密。
2、使用RSA加密前面的DES密钥信息。
最终将混合信息进行传递。
而接收方接收到信息后:
1、用RSA解密DES密钥信息。
2、再用RSA解密获取到的密钥信息解密密文信息。
非对称加密算法需要两个密钥:公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私
钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解
密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 非对称加密算法实现机密信息交
换的基本过程是:甲方生成一对密钥并将公钥公开,需要向甲方发送信息的其他角色(乙方)使用该密
钥(甲方的公钥)对机密信息进行加密后再发送给甲方;甲方再用自己私钥对加密后的信息进行解密。
甲方想要回复乙方时正好相反,使用乙方的公钥对数据进行加密,同理,乙方使用自己的私钥来进行
解密。
一、DH算法是一种密钥交换协议,它可以让双方在不泄漏密钥的情况下协商出一个密钥来。
DH算法基于数学原理,比如小明和小红想要协商一个密钥,可以这么做:
1. 小明先选一个素数和一个底数,例如,素数p=23,底数g=5(底数可以任选),再选择一个秘密整数a=6,计算A=(g^a mod p)=8,然后大声告诉小红:p=23,g=5,A=8;
2. 小红收到小明发来的p,g,A后,也选一个秘密整数b=15,然后计算B=(g^b mod p)=19,并大声告诉小明:B=19;
3. 小明自己计算出s=(B^a mod p)=2,小红也自己计算出s=(A^b mod p)=2,因此,最终协商的密钥s为2。
在这个过程中,密钥2并不是小明告诉小红的,也不是小红告诉小明的,而是双方协商计算出来的。
第三方只能知道p=23,g=5,A=8,B=19,由于不知道双方选的秘密整数a=6和b=15,因此无法计算出密钥2。
|