附录 A. 与 RFC 7525 的差异
本次对 Best Current Practices (最佳当前实践) 的修订包含许多变更, 本节重点说明其中的规范性变更.
-
高层差异:
-
描述了对新建且纳入 TLS 的传输协议, 以及分层构建在 TLS 之上的新应用协议的期望.
-
澄清了仅适用于 TLS 1.2 的项目, 例如重新协商 (renegotiation).
-
将 TLS 1.0 和 1.1 的状态从 "SHOULD NOT" 改为 "MUST NOT".
-
以 "SHOULD" 级别加入 TLS 1.3.
-
对 DTLS 做出类似变更.
-
纳入针对多路复用协议 (multiplexed protocols) 的具体指导.
-
为 ALPN 给出 "MUST" 级别的实现要求, 并为 ALPN 和 SNI 给出更具体的 "SHOULD" 级别指导.
-
澄清了关于严格 TLS 策略的讨论, 包括 "MUST" 级别的建议.
-
对密钥用法施加限制.
-
[RFC7457] 之后出现的新攻击: ALPACA, Raccoon, Logjam, 以及 "Nonce-Disrespecting Adversaries".
-
RFC 6961 (OCSP status_request_v2) 已被弃用.
-
将服务器端 RSA 证书至少具有 2048 位模数的要求提升为 "MUST" 级别, 取代原先的 "SHOULD".
-
-
TLS 1.2 专属差异:
-
关于 AES-GCM nonce 生成的 "SHOULD" 级别指导.
-
"SHOULD NOT" 使用静态或临时的有限域 DH 密钥协商.
-
"SHOULD NOT" 在多个连接之间复用临时有限域 DH 密钥.
-
"SHOULD NOT" 使用静态椭圆曲线 DH 密钥交换.
-
2048 位 DH 现在是 "MUST", ECDH 的最小曲线大小为 224 位, 而此前为 192 位.
-
支持 extended_master_secret 现在是 "MUST" (此前因为相关 RFC 当时尚未发布, 只是软性建议). 同时删除了其他更复杂的相关缓解措施.
-
对会话票据 (session ticket) 有效期施加 "MUST" 级别限制, 取代原先的 "SHOULD".
-
根据 [RFC5077] 票据密钥的轮换周期, 对 TLS 会话持续时间施加 "SHOULD" 级别限制.
-
从推荐密码套件中移除 TLS_DHE_RSA_WITH_AES.
-
将 TLS_ECDHE_ECDSA_WITH_AES 加入推荐密码套件.
-
"SHOULD NOT" 使用旧的 MTI 密码套件 TLS_RSA_WITH_AES_128_CBC_SHA.
-
在 NIST P-256 之外推荐曲线 X25519.
-
-
TLS 1.3 专属差异:
-
新的 TLS 1.3 能力: 0-RTT.
-
移除的能力: 重新协商和压缩.
-
增加了对 TLS Encrypted Client Hello 的提及, 但在其最终确定前不建议使用.
-
对 TLS 1.3 会话恢复中的前向保密 (forward secrecy) 提出 "SHOULD" 级别要求.
-
给出通用的 "MUST" 级别指导: 除非特定协议已有文档说明, 否则避免使用 0-RTT.
-