Visual RFC.
ALL RFCs / RFC 8996
Read the RFC ↗

RFC 8996 / START HERE

Retiring old TLS, before the details

Retiring old Transport Layer Security

TLS, or Transport Layer Security, protects data travelling between applications. This RFC says the obsolete TLS 1.0 and 1.1 versions must no longer be used.

The idea in one picture

  1. An old connection is offered

  2. Obsolete TLS is rejected

  3. A supported version is required

A simplified picture of the idea; the chapters explain the actual mechanisms.

Why it exists

Old security protocols carry weaknesses and constraints that modern systems should not keep relying on. This is retirement guidance, not a new encryption protocol.

A familiar example

A website and browser need a supported TLS version rather than falling back to TLS 1.0 when connecting.

Helpful background

You can start here without reading another RFC. If these ideas are unfamiliar, these short introductions may help.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. Why retire a working protocol?Old cryptographic dependencies and compatibility code increase risk even when a connection still succeeds.
  2. Reject TLS 1.0 negotiationSupporting a modern protocol must not leave TLS 1.0 as an available fallback.
  3. Reject TLS 1.1 negotiationTLS 1.1 improved some TLS 1.0 behavior, but it still does not meet the newer protocol baseline.
  4. DTLS is included tooThe deprecation also applies to Datagram TLS 1.0, while leaving DTLS 1.2 outside this prohibition.
  5. What changes for OAuth?The TLS deprecation updates the older OAuth framework’s transport baseline.
  6. Migration, fallback, and operationsA peer that only supports a retired version will stop interoperating when the new policy is applied.
Start with chapter one →

This introduction explains RFC 8996 (2021). Read the original RFC ↗