Lesson 04: TLS 1.3 & Frontier Cryptography
TLS 1.3 Handshake · Forward Secrecy · Post-Quantum (Kyber, Dilithium) · Schnorr ZKP
1. TLS 1.3 Handshake — Click từng message
Click vào từng message để xem nội dung chi tiết. TLS 1.3 hoàn thành trong 1 round-trip (1-RTT).
🖥️ Client
Messages (→ = Client→Server, ← = Server→Client)
🖥️ Server
HKDF Key Derivation Tree
2. Forward Secrecy (PFS)
❌ Không có PFS (RSA Key Exchange)
Client mã hóa pre-master-secret bằng server pubkey.
Attacker lưu traffic hôm nay.
2 năm sau server private key bị lộ
→ Giải mã pre-master-secret
→ Derive session key
→ Decrypt toàn bộ past traffic!
Client mã hóa pre-master-secret bằng server pubkey.
Attacker lưu traffic hôm nay.
2 năm sau server private key bị lộ
→ Giải mã pre-master-secret
→ Derive session key
→ Decrypt toàn bộ past traffic!
✓ Có PFS (ECDHE)
Session key = ECDHE(a, b): a, b ephemeral.
a, b bị XÓA ngay sau handshake.
Attacker lưu traffic hôm nay.
Server private key bị lộ sau này
→ Chỉ verify cert — không liên quan session key
→ Past sessions vẫn an toàn!
Session key = ECDHE(a, b): a, b ephemeral.
a, b bị XÓA ngay sau handshake.
Attacker lưu traffic hôm nay.
Server private key bị lộ sau này
→ Chỉ verify cert — không liên quan session key
→ Past sessions vẫn an toàn!
TLS 1.3 loại bỏ hoàn toàn RSA key exchange — mọi session đều dùng ECDHE → PFS là bắt buộc.
3. Post-Quantum Cryptography
⚠ Shor's Algorithm (1994): Máy tính lượng tử factor số nguyên trong
O((log n)³) — polynomial! RSA-2048, DH, ECDH, ECDSA đều bị phá. Timeline CRQC ước tính ~2030-2035.NIST PQC — Key Size Comparison
NIST PQC Standards (2022-2024)
| Thuật toán | Loại | Cơ sở toán học | Pubkey | Sig/CT | Speed |
|---|---|---|---|---|---|
| CRYSTALS-Kyber (FIPS 203) | KEM | Module-LWE (Lattice) | 1,184 B | 1,088 B (ct) | Nhanh |
| CRYSTALS-Dilithium (FIPS 204) | Signature | Module-LWE + SIS | 1,952 B | 3,293 B | Nhanh |
| SPHINCS+ (FIPS 205) | Signature | Hash functions only | 32 B | 17,088 B | Chậm |
| Falcon (FIPS 206) | Signature | NTRU Lattice | 1,793 B | 1,280 B | Nhanh |
Hybrid TLS hiện tại: Chrome, Firefox đã deploy X25519Kyber768 — ECDH (chống classical) + Kyber (chống quantum). Cả hai phải bị break cùng lúc mới compromised.
4. Schnorr Zero-Knowledge Proof
Prove "Tôi biết x sao cho y = g^x mod p" mà không tiết lộ x. Protocol 3 messages: Commit → Challenge → Response.
5. Timeline Crypto & Quantum
| Năm | Sự kiện | Ý nghĩa |
|---|---|---|
| 1977 | RSA published | First practical public-key encryption |
| 1994 | Shor's algorithm | Quantum threat to RSA/DH/ECC — if CRQC built |
| 1999 | TLS 1.0 | Widespread HTTPS — now deprecated |
| 2009 | RSA-768 factored | 2 năm CPU — RSA-1024 deprecated |
| 2018 | TLS 1.3 (RFC 8446) | Mandatory PFS, 1-RTT, fewer suites |
| 2022 | NIST PQC Round 3 selections | Kyber, Dilithium, SPHINCS+, Falcon |
| 2024 | FIPS 203-206 finalized | PQC chuẩn hóa chính thức |
| ~2030-35 | CRQC (estimated) | Quantum computer đủ mạnh break RSA-2048 |
| NOW | Hybrid PQC + Classic | X25519Kyber768 trong TLS — đã deploy |