TLS 1.3 (2018) cải tiến TLS 1.2: giảm từ 2-RTT xuống 1-RTT, bắt buộc forward secrecy (ECDHE), loại bỏ cipher cũ và mã hóa certificate — nhanh hơn và an toàn hơn đáng kể.
TLS 1.2 (2008): handshake 2-RTT, hỗ trợ nhiều cipher suite cũ (RC4, DES, export-grade), RSA key exchange cho phép decrypt retroactively nếu có private key (không có forward secrecy trừ khi dùng ECDHE).
TLS 1.3 (2018):
- 1-RTT handshake (giảm 1 round-trip so với TLS 1.2)
- 0-RTT cho resumed sessions (client gửi data ngay trong handshake, nhưng có replay attack risk)
- Forward secrecy bắt buộc: loại bỏ RSA key exchange, chỉ dùng ephemeral Diffie-Hellman (ECDHE) — session key thay đổi mỗi session, ngay cả khi server private key bị lộ sau này cũng không decrypt được session cũ
- Bỏ cipher cũ: loại bỏ MD5, SHA-1, RC4, DES, 3DES, RSA static
- Encrypted handshake: certificate được mã hóa (TLS 1.2 gửi certificate plaintext). TLS 1.3 nhanh hơn và an toàn hơn — Chrome, Firefox, Nginx đều default TLS 1.3. Disable TLS 1.0/1.1 trong production (PCI DSS requirement)