【密码学原理】Diffie-Hellman密钥交换算法与中间人攻击
Diffie-Hellman密钥交换算法
Diffie-Hellman密钥交换算法的目的是使两个用户能安全交换密钥,以便在后续的通信中用该密钥对消息加密。所以这个算法本身只限于密钥交换。
Diffie-Hellman密钥交换算法的有效性建立在离散对数上,在计算离散对数是困难的前提下才能确保秘密交换。
Diffie-Hellman密钥交换算法如图所示
Diffie-Hellman密钥交换算法的安全性建立在下列事实上:
- 计算素数模的幂运算相对容易,计算离散对数却非常困难
- 对大素数,求离散对数被认为是困难的
基于这样的事实,保证了Diffie-Hellman密钥交换算法的保密性。
中间人攻击
上图的协议,不能抵御中间人攻击,中间人攻击的过程如下图所示
通过上述协议,Bob和Alice以为各自共享了密钥,实际上他们都是与Darth共享密钥,所以如果Alice和Bob通过共享密钥加密传输,将会泄露各自的明文
密钥交换不能抵御上述攻击,是因为没有对通信的参与方进行认证。(CA证书可以解决这个问题)
原文链接:https://blog.csdn.net/m0_50984266/article/details/108922333