美文网首页
DH 迪菲-赫尔曼密钥交换

DH 迪菲-赫尔曼密钥交换

作者: 小易哥学呀学 | 来源:发表于2021-12-09 09:29 被阅读0次

名词解释

迪菲-赫尔曼密钥交换(英语:Diffie–Hellman key exchange,缩写为DH) 是一种密钥交换协议(不是加密算法),双方使用DH确定对称密钥后,要使用加密算法实现加密和解密。

前向保密(英语:Forward Secrecy,FS),指的是如果长期使用的密钥泄漏了,不会导致过去的会话被解密。比如你的一对公钥/私钥泄漏了,过去的会话就可以被解密出来。

DH原理

图示.png

g一般是2或者5,p是一个质数。一般来讲服务端持有g与p,g与p一般放在xxx.dh文件中
如何生成dh文件
2048代表p是一个2048位的大数,可以指定:

openssl dhparam -5 -out redis.dh 2048
或
openssl dhparam -2 -out redis.dh 2048
密钥交换步骤:
  1. 服务端生成一个自然数a=6(保密的,不传输),并传输以下三个值给客户端
    • A = 56 mod 23 = 8
    • g = 5
    • p = 23
  2. 客户端生成一个自然数b=15(保密的,不传输),并传输以下一个值给服务端
    • B = 515 mod 23 = 19
  3. 服务端计算key = Ba mod p
    • 196 mod 23 = 2
  4. 客户端计算key = Ab mod p
    • 815 mod 23 = 2
  5. 双方均获得密钥 key = 2
数学原理

(ga mod p )b mod p 等价于 gab mod p
(gb mod p )a mod p 等价于 gba mod p
所以服务端与客户端计算得到的密钥是相同的。
redis应用DH配置实践

相关文章

网友评论

      本文标题:DH 迪菲-赫尔曼密钥交换

      本文链接:https://www.haomeiwen.com/subject/yenzxrtx.html