Diffie-Hellman 密钥交换的共享密钥

网络工程 虚拟专用网 安全 ipsec
2022-02-26 03:19:57

据我所知,在非对称密钥中有公钥和私钥。例如:

第一步:Alice 和 Bob 得到公众号 P = 23, G = 9

第 2 步:Alice 选择了一个私钥 a = 4,Bob 选择了一个私钥 b = 3

第 3 步:Alice 和 Bob 计算公共值 Alice:x​​ =(9^4 mod 23) = (6561 mod 23) = 6 Bob:y = (9^3 mod 23) = (729 mod 23) = 16

第四步:Alice 和 Bob 交换公众号

第 5 步:Alice 收到公钥 y =16,Bob 收到公钥 x = 6

第 6 步:Alice 和 Bob 计算对称密钥 Alice:ka = y^a mod p = 65536 mod 23 = 9 Bob:kb = x^b mod p = 216 mod 23 = 9

第 7 步:9 是共享密钥。

所以我的问题是,

1)是使用私钥(在本例中为 4 和 3)还是共享密钥完成解密。

2)如果它使用私钥完成,那么共享密钥的用途是什么,在每种情况下都是 9。

1个回答

你把不同的东西混在一起了。

DH 用于交换可用作对称密钥的共享密钥。由于 DH 容易受到中间人攻击,它通常与其他方法结合使用。

公钥和私钥对用于非对称加密公钥通常包含在由共同认可的权威机构签署的公共证书中。公钥也可以使用使用 DH 建立的对称加密通道进行交换(在没有进一步措施的情况下也容易受到 MITM 的攻击)。

1) DH 中使用的私人号码仅用于密钥交换。一旦完成,就不能再使用它们(以避免其他人重建交换)。共享密钥用于加密。

2) 见 1)