Skip to content
ecdsa.com

TLS session resumption

Re-establishing a TLS session from secrets of an earlier connection, which skips certificate authentication and saves computation and, in TLS 1.3, can carry 0-RTT data.
Also written assession resumptionsession ticketsPSK resumptionNewSessionTicket

TLS 1.3 uses pre-shared keys: after the handshake the server sends NewSessionTicket messages; the client later offers a ticket in the pre_shared_key extension, proven with a binder. With psk_dhe_ke a fresh (EC)DHE exchange still runs and the new session has forward secrecy; psk_ke alone does not. TLS 1.2 used session IDs (server-side cache) or session tickets (RFC 5077), both without forward secrecy for the resumed session.

Session ticket encryption keys are long-term secrets: anyone holding them can decrypt every session resumed with them, so rotate them frequently and share them across a server fleet only as needed. Resumption is also a tracking vector across sites and sessions, which is why browsers limit ticket reuse.

Standards and references

All terms