Quiz Entry - updated: 2026.07.14
What is the comprehensive comparison between symmetric and asymmetric cryptography?
Symmetric is fast but needs pre-shared keys and scales poorly. Asymmetric solves key distribution but is slow. In practice, they're always combined in a hybrid approach.
* The hybrid pattern: asymmetric sets up a shared key and authenticates it; symmetric does the bulk work. *
| Aspect | Symmetric | Asymmetric |
|---|---|---|
| Key distribution | Hard — needs secure channel | Easy — only public keys |
| # Keys (n users) | $\frac{n(n-1)}{2}$ = $O(n^2)$ | $n$ key pairs = $O(n)$ |
| Speed | Very fast | 100-1000x slower |
| Key compromise | Replace shared key | Replace key pair; RSA: replace whole system |
| Operations | Encryption/decryption | Encrypt, sign, key exchange, authentication |
| Provides | Confidentiality | Confidentiality + integrity + non-repudiation |
| Examples | AES, ChaCha20 | RSA, ECC, DH |
| Hardware | AES-NI in all modern CPUs | Smart cards, HSMs |
| Quantum resistance | Double key size | Completely broken → need PQC |
The hybrid principle (used everywhere in practice):
- Key exchange: ECDH or RSA → establish shared AES key
- Bulk encryption: AES-GCM with the shared key
- Authentication: ECDSA or RSA signatures on the handshake
- Integrity: HMAC or GCM's built-in authentication
Example — TLS 1.3 handshake:
- ECDHE for key exchange (ephemeral ECC Diffie-Hellman)
- AES-256-GCM for data encryption
- ECDSA or RSA for server authentication
- HKDF (HMAC-based) for key derivation
Go deeper:
Hybrid cryptosystem (Wikipedia) — how TLS combines public-key setup with symmetric bulk encryption.
Public-key cryptography (Wikipedia) — the asymmetric half in depth.