跳到主要内容

1. 简介 (Introduction)

1. 简介 (Introduction)

TLS 1.3 [RFC8446] 移除了在 CertificateVerify 消息中对 RSASSA-PKCS1-v1_5 [RFC8017] 的支持, 转而使用 RSASSA-PSS. 虽然 RSASSA-PSS 已经存在很久, 但某些传统硬件加密设备并不支持它. 这些设备在 TLS 服务器中并不常见, 但 TLS 客户端有时会将它们用于客户端证书.

例如, Trusted Platform Module (可信平台模块, TPM) 常用于保护 TLS 客户端证书私钥. 许多 TPM 无法生成与 TLS 1.3 兼容的 RSASSA-PSS 签名. TPM 2.0 之前的 TPM 规范没有定义 RSASSA-PSS 支持, 而 TPM 2.0 设备只有在兼容 US FIPS 186-4 时, 才能依赖其支持与 TLS 1.3 兼容的盐长度.

继续停留在 TLS 1.2 的部署会向网络攻击者泄漏客户端证书 [PRIVACY], 并且无法保护流量免受拥有量子计算机的攻击者进行追溯解密 [RFC9954]. TLS 还会先于客户端证书协商版本, 因此客户端和服务器可能协商到 TLS 1.3, 之后却因为客户端具有传统密钥而失败.

禁用 TLS 1.3 会影响本来不受影响的连接, 而外部 fallback 机制会破坏 TLS 的安全分析, 并可能引入漏洞 [POODLE]. 本文档为在 TLS 1.3 中配合客户端证书使用这些传统密钥分配代码点, 从而降低选择这些缓解手段的压力, 并解除 TLS 1.3 部署障碍.