⚡ The Core Distinction
Symmetric encryption uses one key for both encryption and decryption — fast, efficient, used for bulk data. Asymmetric encryption uses a key pair (public + private) — slower but solves the key distribution problem. Hashing is one-way — produces a fixed-length digest that cannot be reversed. Hybrid encryption combines both: asymmetric to securely exchange a symmetric key, then symmetric for the actual data. This is how HTTPS works.
The Four Types at a Glance
Keys1 shared secret key
SpeedFast — great for bulk data
ProblemKey distribution (how to share the key securely?)
AlgorithmsAES, DES, 3DES, RC4, Blowfish
Use casesDisk encryption, VPN tunnels, file encryption
KeysPublic key (shared) + Private key (secret)
SpeedSlow — not for bulk data
SolvesKey distribution — public key can be shared openly
AlgorithmsRSA, ECC, Diffie-Hellman, DSA
Use casesKey exchange, digital signatures, TLS handshake
KeysNo key — one-way function
Reversible?No — cannot decrypt a hash
OutputFixed-length digest regardless of input size
AlgorithmsSHA-256, SHA-3, MD5 (broken), HMAC
Use casesPassword storage, file integrity, digital signatures
How it worksAsymmetric exchanges the key; symmetric encrypts the data
SpeedFast for data (uses symmetric after key exchange)
SecuritySecure key exchange (uses asymmetric)
Real examplesHTTPS/TLS, SSH, PGP/GPG email
Why it existsGets the best of both — security + speed
🎯 The Most Tested Distinction
Symmetric = one key, fast, key distribution problem. Asymmetric = two keys, slow, solves key distribution. The exam loves to give a scenario and ask which type is appropriate. Rule of thumb: if the question involves securely sharing a key with someone you've never met — asymmetric. If it involves encrypting large amounts of data after a secure connection is established — symmetric.
Symmetric Encryption Algorithms
The gold standard for symmetric encryption. AES is the algorithm you default to unless there's a specific reason not to — it's used in WPA2/WPA3, TLS, disk encryption (BitLocker, FileVault), and VPNs. Block cipher operating on 128-bit blocks with key sizes of 128, 192, or 256 bits.
Key sizes: 128, 192, 256 bit
Block size: 128 bit
AES-256 = strongest
NIST approved
Used in: WPA2, TLS, BitLocker
The original US government encryption standard, now broken. DES uses a 56-bit key — too short to be secure today. Can be brute-forced in hours with modern hardware. Replaced by 3DES (triple DES) as an interim solution, then by AES. You'll never use DES in production, but you need to know why it was deprecated.
Key size: 56 bit
Block size: 64 bit
Broken — do not use
Brute-forceable
Applies DES three times with different keys to increase security. Created as a stopgap when DES was broken but before AES was standardised. 3DES is deprecated but still appears on exams as a legacy algorithm still found in older systems. Effective key length of 112 bits (not 168 due to meet-in-the-middle attacks).
Key size: 112 effective bits
3x DES operations
Deprecated 2023
Slower than AES
A stream cipher (encrypts data bit by bit rather than in blocks). RC4 is broken and prohibited in TLS 1.3. Most famous for being used in WEP (the broken Wi-Fi encryption standard) and early SSL/TLS. On the exam, RC4 is always the wrong answer for "which algorithm should you use."
Stream cipher
Used in: WEP (broken), old SSL
Prohibited in TLS 1.3
Do not use
Asymmetric Encryption Algorithms
The most widely known asymmetric algorithm. Based on the mathematical difficulty of factoring the product of two large prime numbers. RSA is used for key exchange, digital signatures, and encrypting small pieces of data (like symmetric session keys). Minimum recommended key size is 2048 bits; 4096 bits for high security.
Key sizes: 1024, 2048, 4096 bit
2048 bit = minimum recommended
Used in: TLS, SSH, PGP
Slow — not for bulk data
A modern asymmetric algorithm based on elliptic curve mathematics. ECC achieves the same security as RSA with much smaller key sizes — a 256-bit ECC key is equivalent in strength to a 3072-bit RSA key. Faster and more efficient, making it ideal for mobile devices and IoT. Used in modern TLS, Bitcoin, and most new deployments.
256-bit ECC ≈ 3072-bit RSA
Smaller keys = faster
ECDSA = ECC digital signatures
Used in: modern TLS, mobile, IoT
Not for encrypting data — Diffie-Hellman is specifically a key exchange protocol. It allows two parties to establish a shared secret over an insecure channel without ever transmitting the secret itself. DHE (Ephemeral) generates a new key for each session, providing perfect forward secrecy (PFS). ECDHE combines DH with elliptic curves for smaller, faster keys.
Key exchange only
DHE = ephemeral (new key each session)
ECDHE = ECC + DH
Perfect Forward Secrecy
Used in: TLS handshake
Hashing Algorithms
Hashing is not encryption — it's a one-way process that produces a fixed-length output (digest/hash) from any input. The same input always produces the same hash. Different inputs should produce different hashes (collision resistance). You cannot reverse a hash to get the original data.
The standard hashing algorithm family. SHA-256 is the current go-to hash for most applications. SHA-1 is deprecated (collision attacks found). SHA-2 family (SHA-256, SHA-384, SHA-512) is widely deployed. SHA-3 is the newest family based on a completely different design (Keccak), used when SHA-2 is a concern.
SHA-1: 160 bit — deprecated
SHA-256: 256 bit — standard
SHA-512: 512 bit — high security
SHA-3: newest family
Used in: TLS, code signing, passwords
Once the standard hash function, now broken for security purposes. MD5 produces a 128-bit hash and is vulnerable to collision attacks — it's possible to craft two different inputs that produce the same MD5 hash. Still used for non-security checksums (file download verification), but never for passwords or digital signatures.
Output: 128 bit
Collision attacks possible
OK for checksums only
Never use for security
Combines a hash function with a secret key to produce a message authentication code. HMAC provides both integrity (data wasn't changed) and authentication (it came from who you think) — a plain hash only provides integrity. Used in TLS, IPSec, and API authentication (HMAC-SHA256 is common in API key signing).
Hash + secret key
Integrity + Authentication
HMAC-SHA256 = common variant
Used in: TLS, IPSec, APIs
Quick Reference — All Algorithms
| Algorithm | Type | Key/Output Size | Status | Primary Use |
| AES | Symmetric | 128/192/256 bit | Current standard | Bulk encryption, WPA2, disk encryption |
| 3DES | Symmetric | 112 effective bit | Legacy / deprecated | Older systems, being replaced by AES |
| DES | Symmetric | 56 bit | Broken | Historical only — not used |
| RC4 | Symmetric stream | Variable | Broken | Historical (WEP, old SSL) — not used |
| RSA | Asymmetric | 2048–4096 bit | Current standard | Key exchange, digital signatures, TLS |
| ECC | Asymmetric | 256–384 bit | Modern preferred | Mobile, IoT, modern TLS — smaller keys |
| Diffie-Hellman | Key exchange | 2048+ bit | Widely used | Establish shared secret (TLS handshake) |
| SHA-256 / SHA-2 | Hash | 256 bit output | Current standard | File integrity, passwords, code signing |
| SHA-1 | Hash | 160 bit output | Deprecated | Legacy — collision attacks found |
| MD5 | Hash | 128 bit output | Broken (for security) | Non-security checksums only |
| HMAC | Hash + MAC | Varies with hash | Current standard | Message authentication, API signing |
How HTTPS (Hybrid Encryption) Actually Works
When your browser connects to an HTTPS site, the TLS handshake uses asymmetric encryption (RSA or ECDHE) to securely exchange a session key. Once both sides have the session key, all data is encrypted with symmetric AES because it's much faster. Hashing (SHA-256) is used for the MAC to verify message integrity.
This is why hybrid encryption exists: RSA is too slow to encrypt your entire Netflix stream, but it's perfect for encrypting the 256-bit AES key that will. Once both sides share the AES key securely, speed wins.
Digital Signatures — Asymmetric in Reverse
A digital signature uses asymmetric encryption in reverse: you encrypt with your private key, anyone verifies with your public key. Since only you have the private key, if the public key decrypts it successfully, it proves you signed it.
In practice: the sender hashes the message with SHA-256, then encrypts the hash with their private key (the signature). The receiver decrypts the signature with the sender's public key and compares the hash. Match = integrity + authenticity confirmed.
Exam Scenarios
💬 "A company needs to encrypt large volumes of data at rest efficiently. Which type of encryption should they use?" → Symmetric encryption (specifically AES-256). Symmetric is fast and efficient for bulk data. Asymmetric would be far too slow for this purpose.
💬 "Two parties need to exchange an encryption key securely over an untrusted network without having met before. Which algorithm is designed specifically for this?" → Diffie-Hellman key exchange — specifically designed to establish a shared secret over an insecure channel. ECDHE (elliptic curve DHE) adds perfect forward secrecy.
💬 "A user downloads a file and wants to verify it hasn't been tampered with during transit. Which cryptographic function provides file integrity?" → Hashing — specifically SHA-256. The provider publishes the expected hash; the user runs SHA-256 on the downloaded file and compares. A mismatch means the file was modified.
💬 "An organisation's security audit finds that MD5 is being used for password hashing. What is the main concern?" → MD5 is broken — collision attacks allow crafting inputs that produce the same hash. For passwords, this means pre-computed rainbow tables can crack MD5 hashes quickly. Replace with bcrypt, Argon2, or at minimum SHA-256 with salting.
💬 "A developer needs to choose between RSA-2048 and ECC-256 for a mobile application. Which is recommended and why?" → ECC-256 — achieves equivalent security to RSA-3072 with a much smaller key size. Smaller keys mean faster operations and lower battery consumption, making ECC the preferred choice for mobile and IoT devices.
💬 "Which encryption algorithm does WPA2 use?" → AES with CCMP (Counter Mode CBC-MAC Protocol). WPA used TKIP (RC4-based, now deprecated). WPA3 uses AES-GCMP which is even stronger. On the exam: WPA2 = AES, WPA = TKIP, WEP = RC4 (all broken).
Related Articles