Skip to content

模型Model

Diffie–Hellman 密钥交换

施工中 · 内容逐步修订

Diffie–Hellman key exchange

双方公开交换群幂并在离散对数型假设下导出共享秘密的协议。

形式陈述 ​

在由安全参数 λ 生成、编码和群运算高效的有限循环群 G=⟨g⟩ 中,记群阶为 q。Alice 与 Bob 独立均匀选择 a,b∈Zq,分别发布 ga 与 gb,双方分别计算 (gb)a=(ga)b=gab。协议正确性只来自指数律;CDH定义从公开群幂计算 gab 的成功实验,DDH则定义 DH tuple 与随机 tuple 的判别游戏,二者不与协议本身合并。对仅看公开参数与 (ga,gb) 的被动窃听者,恢复原始共享值就是上述 CDH 实验。若进一步选择 DDH 条目规定的素数阶群族,把共享值与独立均匀群元素互换的两种完整记录恰好是那两个 DDH 分布,故相同判别器具有相同接受概率差。这个结论只给群元素的不可区分性;派生比特密钥还须核对 KDF 的模型与上下文。基础协议不认证身份,主动中间人可分别与两端建立不同密钥。

直觉

Diffie–Hellman 让双方公开交换各自的一次幂 ga,gb,再利用指数乘法的交换性,以私有指数计算同一个二次组合 gab。群、生成元与参数验证属于具体协议条件;底层计算假设只覆盖其游戏授予的 PPT 对手能力,不会因为公开值“看不出规律”而自动成立。原始协议只建立共享秘密,不认证对方身份,因此会遭中间人分别协商两个密钥。

Diffie–Hellman 的共享群幂
例子与边界

有限域乘法群和椭圆曲线群都可实例化。群参数必须避免小子群和无效点攻击,临时指数应随机并保密。静态 DH、临时 DH 和混合协议提供不同前向保密与认证性质。离散对数、CDH 与 DDH 是不同任务;尤其带高效配对的群可能让 DDH 易判而 CDH 仍被假设困难。

在模 23 乘法群中取 g=5,Alice 选 a=6 得公开值 56mod23=8,Bob 选 b=15 得 19。Alice 算 196mod23=2,Bob 算 815mod23=2,得到相同共享值;现实中再经 KDF 派生会话密钥。

小群只是演示,毫无安全性。未验证群元素可能遭小子群攻击;静态密钥、临时密钥和签名绑定决定认证与前向保密属性。共享群元素不应直接当作多个用途的密钥。

推论与应用

Diffie–Hellman 是重要的密钥协商原语,也是 TLS、SSH、Signal 等协议的基础构件,安全证明常使用 计算安全 假设。与 数字签名 或预共享认证结合可阻止中间人,TLS 等协议采用临时椭圆曲线 DH 获得前向保密。

把共享群值接到会话时,认证握手transcript绑定临时公钥、双方身份、版本与角色,HKDF分别处理提取与用途扩展。前向保密与擦除另行限定会后长期密钥泄漏;本页的被动CDH/DDH接口不自动提供这些主动认证和状态保证。

参考资料
  • Whitfield Diffie and Martin E. Hellman, New Directions in Cryptography, IEEE Transactions on Information Theory 22(6), 1976,pp. 644–654。
  • Jonathan Katz and Yehuda Lindell, Introduction to Modern Cryptography, 3rd ed., CRC Press, 2020,Chs. 2–12。
关系图谱9 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系