Following the collapse of SSL and early TLS versions, the IETF focused on two goals: removing 'cruft' (legacy features) and reducing latency. The jump from TLS 1.2 to 1.3 wasn't just an update; it was a complete redesign of the cryptographic handshake.
TLS 1.0 (1999) was essentially SSL 3.1. While it improved the MAC (Message Authentication Code) and alerting system, it remained vulnerable to BEAST attacks. TLS 1.1 added protection against these by using explicit IVs (Initialization Vectors) for block ciphers. Both are now considered insecure for modern use.
๐ก The transition to TLS 1.2 was the first major step toward 'modern' crypto, introducing support for Authenticated Encryption with Associated Data (AEAD) ciphers like AES-GCM.
The output above confirms the connection is using TLS 1.3. If you try `--tlsv1.0` on most modern sites, the connection will be immediately terminated by the server.
TLS 1.3 (RFC 8446) is fundamentally different. It removed several dangerous features: static RSA key exchange (eliminating the lack of Forward Secrecy), custom Diffie-Hellman groups, and several weak hashes. It also reduced the handshake from two round-trips (2-RTT) to one (1-RTT), and introduced 0-RTT (Zero Round Trip Time) for returning visitors.
โ ๏ธ 0-RTT is a performance miracle but a security nightmare. Because the client sends data before the handshake completes, 0-RTT is vulnerable to **Replay Attacks**.
# Analyzing a TLS 1.3 handshake with tshark (conceptual)
tshark -i eth0 -Y "tls.handshake.version == 0x0304"| Feature | TLS 1.2 | TLS 1.3 |
|---|---|---|
| Handshake Latency | 2-RTT | 1-RTT (or 0-RTT) |
| Key Exchange | Static RSA or DH | Ephemeral DH only (PFS) |
| Cipher Suites | Hundreds (many weak) | 5 (all strong AEAD) |
| Handshake Encryption | Cleartext | Encrypted after first flight |
When configuring a server, you must balance security and availability. While TLS 1.3 is ideal, some legacy enterprise clients (e.g., old Java 7 apps) only support TLS 1.2. The current 'gold standard' is to support TLS 1.2 and 1.3, and explicitly disable everything else.
Avoid enabling 'TLS Fallback Signaling' (TFO) unless you have a specific reason, as it can be abused to force downgrades.
Verify exercises to earn โ 140 XP and unlock next lab level.