DH和IKE的关系理解
DH 协议是 IKE 的“钥匙胚子机”,IKE 负责“谈判+发钥匙”,DH 负责“生钥匙”。
DH 协议(Diffie-Hellman)
- 身份:一种密钥协商算法,不是加密算法。
- 作用:让通信双方在不安全的网络上共同算出一把相同的对称密钥,即使有人全程监听,也还原不出这把密钥(基于离散对数难题)。
- 输出:一段共享的对称密钥材料(后续用于 AES、3DES 等加密)。
IKE 协议
- 身份:完整的密钥交换与 IPSec 协商协议(RFC 7296)。
- 工作流程
- 第 1-2 包(IKE_SA_INIT):双方用 DH 交换算出共享密钥 → 建立 IKE-SA。
- 第 3-4 包(IKE_AUTH):用刚算出的密钥加密身份、证书、策略 → 建立 IPSec-SA。
- 后续(CREATE_CHILD_SA):用 IKE-SA 再衍生更多 IPSec-SA,或更新密钥。
关系
IKE 协议(全程)
├─ 1. 提议算法、认证方式
├─ 2. 调用 DH 算法 ← 这里用到 DH
│ ├─ 双方各发 DH 公钥
│ └─ 各自算共享密钥
├─ 3. 用共享密钥加密身份
└─ 4. 建立 IPSec-SA
IKE 是“谈判+发钥匙”的完整流程;DH 只是流程里“造钥匙”的那台机器。