服务器发送 CertificateRequest,列出可接受的签名算法,还可以附带 CA 名称;客户端回复自己的证书链以及对握手记录(transcript)的签名。服务器根据自己的信任库(通常是私有 CA)验证该证书链,并把证书映射到某个身份,例如 SAN URI 中的 SPIFFE ID 或主体名称。
服务网格(Istio、Linkerd)、零信任网关、支付网络、IoT 设备群,以及 OAuth 2.0 的 mTLS 客户端身份验证和证书绑定令牌(RFC 8705)都依赖它。证书绑定只在端到端的情况下才成立:终止 TLS 的代理必须通过受信任的请求头转发已验证的客户端身份。
公共 TLS 证书已不再能作为客户端证书的来源:Chrome 根证书计划要求只含服务器用途的 EKU,公共 CA 也已在2026年停止签发带 clientAuth 的 TLS 证书。应改用签发短期证书的私有 CA。