Default to TLS 1.3, keep TLS 1.2 only where clients need it, and turn off SSLv2, SSLv3, TLS 1.0 and TLS 1.1. In TLS 1.2, allow only ephemeral key exchange with authenticated encryption suites. This is the position of OWASP's TLS cheat sheet.
What changed in TLS 1.3
RFC 8446 lists the differences from TLS 1.2. Legacy algorithms are gone, and only AEAD symmetric ciphers remain. Static RSA and static Diffie-Hellman suites are removed, along with compression and custom DHE groups. Messages after ServerHello are encrypted, including extensions that TLS 1.2 sent in the clear.
Because static key exchange is gone, all public-key exchange in TLS 1.3 provides forward secrecy. The exception is 0-RTT data, which the RFC says is not forward secret and has no non-replay guarantee between connections.
What to disable
From OWASP:
- SSLv2 and SSLv3, always.
- TLS 1.0 and 1.1, deprecated by RFC 8996.
- Null, anonymous and EXPORT cipher suites.
- RSA key transport and static DH or ECDH suites.
- CBC mode in TLS 1.2, preferring AEAD suites.
- TLS compression, to avoid CRIME style attacks.
For TLS 1.2, OWASP says to use ephemeral ECDHE suites with authenticated encryption and to avoid finite field DHE suites because of known parameter weaknesses.
If you must serve end-of-life clients, OWASP suggests isolating them on a separate endpoint with no access to sensitive data.
What standards bodies say
NIST SP 800-52 Rev. 2 says TLS 1.2 configured with FIPS based cipher suites must be supported by government TLS servers and clients, and that TLS 1.3 support was required by 1 January 2024. If you sell to those buyers, check how this affects your configuration.
Rollout steps
- Inventory endpoints, load balancers and internal services with TLS.
- Check client versions in your logs before turning anything off.
- Disable old protocols in staging, then production.
- Test with a scanner you trust, and retest after every platform upgrade.
- Treat 0-RTT carefully: do not allow replayable requests such as payments or state changes over early data.
Checking what you serve today
Before changing anything, find out what your endpoints negotiate. Run a TLS scanner against each public endpoint and list the versions and suites offered. Then look at your own access logs, or load balancer metrics, for the TLS version clients actually used. If a tiny share of traffic still uses TLS 1.0 or 1.1, you can usually switch it off and handle complaints, and OWASP's suggestion of a separate endpoint helps when one old integration partner cannot upgrade. Remember internal traffic: service to service links often run with defaults nobody reviewed. Include them in the inventory, and decide whether mutual TLS suits your high value APIs, as OWASP suggests considering.
Quick check
Should I disable TLS 1.2 entirely?
Not yet for most public services. OWASP says to keep it only for compatibility. Review client data first.
Does TLS protect data stored in my database?
No. TLS covers data in transit. Stored data needs encryption at rest. See encryption at rest levels.
Sources
- OWASP Transport Layer Security Cheat Sheet
- RFC 8446: TLS 1.3
- NIST SP 800-52 Rev. 2
- MDN: Transport Layer Security
Last reviewed: 19 October 2026.