Visual RFC.
ALL RFCs / RFC 9846
Read the RFC ↗
RFC 9846 / MECHANISMS

The protected handshake

01

TLS 1.3 negotiates keys before encrypting the remainder of the handshake.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

DIAGRAM§ 2 ↗
RFC 9846 · § 2EXAMPLE
3 / 3
The protected handshakeTLS 1.3 negotiates keys before encrypting the remainder of the handshake. Current state: Finished.The protected handshakeClientServerClientHello + shareServerHello + shareEncrypted authenticationClient FinishedSame TLS 1.3 version; RFC 9846 tightens the specification.
03
Finished

Check the transcript and complete the required Finished exchange.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
WHAT CHANGED
RFC 8446 TLS 1.3RFC 9846 § 1.2

This backward-compatible revision retains version 1.3 while tightening key-share reuse, key-update, version-negotiation, and other requirements.

Read the updated RFC section ↗
KEY POINT

ClientHello and ServerHello negotiate the parameters and key exchange.

  • ClientHello and ServerHello negotiate the parameters and key exchange.
  • Handshake messages after ServerHello are encrypted.
  • Authentication and Finished checks must succeed before relying on the connection.
DETAILS

The illustration is schematic. Example values are illustrative; profiles and later security guidance can add requirements.

Read the RFC section ↗

Diagrams simplify the RFC. Read the linked sections for complete requirements.

Privacy
All chapters in this RFC
  1. The protected handshake
  2. Fresh key shares for each connection
  3. Retry stays in the transcript
  4. Update before key limits
  5. Early data still needs replay handling
RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗