Apply the rule when the server advertises first
03TLS 1.3 also has server-initiated offers. A CertificateRequest can include GREASE, and the client must keep real choices.
Separate invalid case: client CertificateVerify selects 0x1A1A. The server MUST fail the connection before accepting it.
Source for this drawing: RFC 8701 · Read RFC section 4.1 ↗
New to this? Start hereA quick picture + helpful background
A seal answers a specific question.
A certificate or signature supports particular checks about a key or message. It does not automatically prove that every claim or sender is trustworthy.
Helpful first, if these ideas are unfamiliar
These pictures are analogies to help you learn. The linked RFC explains the actual rules.
Terms in this drawing
Related RFCs and changes
“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.
The offer/selection distinction works in both directions.
- A server MAY advertise GREASE extensions and signature algorithms in TLS 1.3 CertificateRequest, in the permitted fields.
- The client MUST ignore unknown offered values, MUST NOT negotiate GREASE, and MUST attempt remaining parameters.
- The server MUST fail the connection for a GREASE client Certificate extension or client CertificateVerify signature algorithm.
CertificateRequest asks for client authentication; CertificateVerify carries a signature. The known signature example is rsa_pss_rsae_sha256 (0x0804), assuming a suitable client key and other requirements. This picture abstracts away the intervening Certificate message and does not prove authentication. Separately, GREASE extensions MAY appear in TLS 1.3 NewSessionTicket; that message does not elicit an immediate client choice/response.
Read the RFC section ↗