密钥协商

来源:互联网 发布:不加群提取群成员软件 编辑:程序博客网 时间:2024/04/27 18:07

传统的加密通信:

找一个便于理解的例子来说,最一般常见的就是移位加密:

26个英文字母对应数字0~25,比如加密密钥K=3,plaintext(明文)是cipher,那么加密算法就是将cipher的字母对应的数字加上K,然后找到对应的字母,即是:FLSKHU。

解密算法也就很清晰易见了,找到ciphertext(密文)对应的数字,然后减去K,找到数字对应的字母即可。

这种加解密使用相同密钥的方法就是对称加密了。

这种加密方法使用的密钥是事先商量好的,然后通过安全信道进行传输的,这里的安全信道,我个人认为是一个很抽象的概念。比如我准备用K=3这个密钥进行移位加密,但你不知道我这个加密密钥是什么,我就通过打电话或者找人传话等方式告诉你,这也算是安全信道的啊……

这种传输密钥的方式很麻烦,所以后来就有两个人想出来一个直接在线上(不安全信道,容易遭受窃听)进行密钥的协商,通过两方协作来共同协商出来一个用于后面进行通信会话加密的密钥,这个就是密钥协商的概念,那两个人就是Whitefield Diffie和Martine Hellman,没错,他们两个搞出来的这个用于协商通信会话加密的密钥的协议

就叫做Diffie-Hellman密钥协商协议。

其主要的算法如下图所示,利用两轮通信,就可以在Alice和Bob之间协商出来一个K=g^xy modp用于后面的会话加密。



这是最早期的在不安全的信道中进行会话密钥协商的手段,当然现在很少用到,但以后的密钥协商的思想基本都是从这里发展出来的。

这个协议存在很多的缺陷,最大的就是中间人攻击,先放在这里,以后还会介绍更多其他发展起来的密码体制

0 0
原创粉丝点击