Encryption is mathematically transforming data so it looks like random noise to anyone who doesn't have the decryption key. The same data can be transformed back (decrypted) by anyone who does.
What it does
If you encrypt a message before sending it, anyone intercepting the transmission sees gibberish. Only the intended recipient β who has the matching key β can turn the gibberish back into the original message.
This is how almost every secure system on the internet works. HTTPS encrypts your traffic to websites. Messaging apps like Signal and WhatsApp encrypt your messages. Password managers encrypt your stored passwords. VPNs encrypt your network traffic.
Symmetric vs asymmetric
Symmetric encryption: the same key encrypts and decrypts. Fast. Examples: AES-256, ChaCha20. The problem: you have to share the key securely with the recipient first.
Asymmetric encryption: a pair of keys β a public key that anyone can use to encrypt messages to you, and a private key that only you have for decryption. Slower but solves the key-sharing problem. Examples: RSA, ECDSA, X25519.
Modern systems use both: asymmetric to securely share a symmetric key, then symmetric for the actual data (because it's much faster).
Why "256-bit" matters
The number refers to the size of the key. A 128-bit key has 2^128 possible values; a 256-bit key has 2^256. Both are unfathomably large numbers β far beyond what any computer, present or theoretically possible, could brute-force.
256-bit is the practical maximum used in mainstream cryptography. Both AES-128 and AES-256 are considered unbreakable today; 256 just has more headroom against future cryptanalytic advances.
What encryption doesn't do
Encryption protects data in transit and at rest. It doesn't protect against:
- Compromised endpoints (if your device or the destination is hacked, the attacker sees data before/after encryption).
- Stolen keys (if someone gets your private key, they can decrypt anything encrypted to you).
- Metadata leakage (encryption hides contents but not necessarily that communication is happening).
- Implementation bugs (a flawed encryption library can leak data despite using strong algorithms).