跳到主要内容

1.2. 术语和适用性

1.2. 术语和适用性

本文档使用 [STRUCTURED-FIELDS] 第 3 节中的以下术语来规定语法和解析: List 和 Byte Sequence.

本文档通篇使用 "TLS client certificate authentication" 或 "mutually authenticated TLS" 等短语, 指的是这样一个过程: 除了使用证书进行正常的 TLS 服务器认证之外, 客户端在协商 TLS 连接或恢复此类连接时, 向服务器出示其 X.509 证书 [RFC5280], 并证明自己持有对应的私钥. 在当代 TLS 版本 [TLS] [TLS1.2] 中, 相互认证要求客户端在握手期间发送 Certificate 和 CertificateVerify 消息, 并要求服务器验证 CertificateVerify 和 Finished 消息.

HTTP/2 限制 TLS 1.2 重新协商 ([HTTP/2] 第 9.2.1 节), 并禁止 TLS 1.3 握手后认证 ([HTTP/2] 第 9.2.3 节). 但是, 在 HTTP/1.1 [HTTP/1.1] 中, 它们有时用于实现响应式客户端证书认证, 即服务器根据 HTTP 请求决定是否请求客户端证书. 在接收并验证客户端证书之后, 通过此类连接发送的 HTTP 应用数据也经过相互认证, 因此适用于本文档描述的机制. 使用握手后认证时, 同一连接上也可能出现来自客户端的多个证书和证书链, 尽管实践中这种情况不太可能. 在这种情况下, 本文所述头字段只使用最后一次握手后认证的证书和证书链.