在上一篇对称加密,非对称加密的博客中,我们提到了使用对称加密的时候加密解密的钥匙容易被他人窃取的安全性问题,为了解决这种问题,我们要不使用非对称加密,要不就要使用混合加密方式。除此之外,我们现在要介绍的另一种方法是使用迪菲-赫尔曼加密方法。
迪菲-赫尔曼密钥
迪菲-赫尔曼密钥交换(英语:Diffie–Hellman key exchange,缩写为D-H) 是一种安全协议。它可以让双方在完全没有对方任何预先信息的条件下通过不安全信道创建起一个密钥。这个密钥可以在后续的通讯中作为对称密钥来加密通讯内容。
对称加密的问题就是双方使用同一把钥匙加密解密,此钥匙容易让中间人获取从而窃取数据,那么,假设存在下面这样一种可能:
如果A方、B方使用的钥匙有这样一种特点:
1.这把钥匙可以由多把钥匙组合而成:
2.即使拿到合成之后的钥匙和任意一把合成之前的钥匙也不可能得到另一把合成之前的钥匙:
3.合成之后的钥匙可以再与另一把钥匙合成:
现在如果有了这样一把钥匙,我们就可以在这把钥匙的基础上构建出安全的密钥交换过程了,至于这样的钥匙怎么生成,下面我们会提到,我们先来看看我们有了这样一种钥匙之后怎么构建一套安全的密钥交换过程:
A方生成了自己的一把钥匙,发送给了B方