密钥交换方式对照
密钥交换方式的选择直接决定前向保密能力与部署成本。历史上常见的 RSA 密钥传输已被淘汰:长期私钥一旦泄露,攻击者可以解密此前录下的全部流量。当前主力是 (EC)DHE,靠每次会话的临时密钥实现前向保密;PSK 用于预共享密钥场景;KEM 是后量子过渡期的方案,通常与经典算法组合使用。
基本信息
| RSA 密钥传输 | 无前向保密,长期私钥泄露可解密历史流量,TLS 1.3 已移除 |
|---|---|
| DHE 与 ECDHE | 有前向保密,每次会话使用临时密钥 |
| PSK | 前向保密视配置而定,可单独使用或与 (EC)DHE 组合 |
| KEM(如 ML-KEM) | 混合使用时具备前向保密,用于后量子过渡 |
| TLS 1.3 允许 | 仅 (EC)DHE、PSK 及其组合 |
| 选型顺序 | 先看前向保密与合规要求,再看客户端兼容性 |
方式对照
| 方式 | 前向保密 | 说明 |
|---|---|---|
| RSA 密钥传输 | 无 | 长期私钥泄露可解密历史流量;TLS 1.3 已移除 |
| DHE / ECDHE | 有 | 每次会话临时密钥,当前通用做法 |
| PSK | 视配置 | 预共享密钥;TLS 1.3 支持与 (EC)DHE 组合 |
| KEM | 混合时有 | 后量子过渡方案,与经典算法组合使用 |
典型使用场景
- 站点加固:确认握手使用 ECDHE 而不是静态密钥传输
- 合规评估:说明前向保密能力是否满足要求
- 网关与设备兼容:逐跳验证密钥交换方式是否被限制
- 后量子规划:评估混合 KEM 的引入节奏
- 性能排查:不同方式的握手开销在慢链路上差异明显
TLS 1.3 的密钥建立方式
TLS 1.3 的密钥建立方式
TLS 1.3 只允许 (EC)DHE、PSK 及其组合(psk_dhe_ke 等)
静态 RSA 密钥传输与静态 DH 均已移除
查看实际协商结果:s_client 输出中的 Server Temp Key 或密钥交换组信息场景与建议
| 场景 | 建议方式 | 原因 |
|---|---|---|
| 公网站点 | ECDHE 加证书认证 | 前向保密与兼容性兼顾 |
| 设备与网关 | ECDHE,必要时评估兼容性 | 部分设备限制密钥交换方式 |
| 内部服务 | ECDHE 或 PSK 加 ECDHE | 双向认证下可简化证书管理 |
| 后量子过渡 | 混合 KEM | 兼顾当前与长期保密需求 |
选择方式时先看是否需要前向保密与合规要求,再看客户端兼容性;现代浏览器普遍支持 ECDHE 与 TLS 1.3。
PSK 长期不变且不与 (EC)DHE 组合时,前向保密特性会消失:一旦 PSK 泄露,历史流量同样面临被解密的风险。
静态 DH 与 RSA 密钥传输的区别在于前者仍做了协商,但双方密钥固定,因此同样不具备前向保密,评估时不要把它当作安全方案。