a hands-on cryptography lab
Watch real ciphers turn real input into real output — one step at a time.
Every algorithm here runs the actual cryptographic logic, not a simulation. Step through the animated walkthrough to see the machinery, then play with your own input and keys in the live console. The two are driven by the exact same code, so they can never disagree.
Choose an algorithm
- classical~50 BC
Caesar Cipher
Shift every letter a fixed number of places down the alphabet.
open → - classical
Affine Cipher
Multiply, then shift — a Caesar cipher with a scaling factor.
open → - classical1553
Vigenère Cipher
Shift each letter by a different amount, driven by a repeating keyword.
open → - classical1917
One-Time Pad
A random key as long as the message, used exactly once — provably unbreakable.
open → - classical1854
Playfair Cipher
Encrypt letters two at a time using a 5×5 key square.
open → - classical1929
Hill Cipher
Encrypt blocks of letters with matrix multiplication mod 26.
open → - modern1977
DES
A 16-round Feistel block cipher — the first modern encryption standard.
open → - modern2001
AES
The modern standard — a substitution-permutation network on a 4×4 byte grid.
open → - modern1977
RSA
Public-key encryption built on the difficulty of factoring large numbers.
open →