// learn · episode 01
What is a hash?
A hash is a fingerprint for data. Feed anything in — a word, a contract, a whole hard drive — and out comes a short, fixed-length code that identifies it. It's the single most load-bearing idea in blockchain, and you're about to use one, not just read about it. Everything on this page runs in your browser; nothing you type leaves the page.
01 · try it
Text in, fingerprint out
This panel uses MD5 for learning; the homepage uses SHA3-256. MD5 is broken for collision resistance and must not protect passwords, signatures or adversarial integrity checks. Type below and watch the fingerprint react to every keystroke. Then try the two presets that differ by a single capital letter.
md5 fingerprint
5d41402abc4b2a76b9719d911017c592
input: 5 characters → output: always 32 hex characters (128 bits).
Deterministic
The same input always gives the same hash. Type it again next year, on another machine — identical fingerprint.
Fixed length
One letter or a whole book: the MD5 output is always 32 hex characters (128 bits). Even empty text has a hash.
Avalanche effect
Change one character and roughly half the output flips. Nothing about the new hash hints it was a small edit.
02 · one-way street
You can't run it backwards
Given a hash, there is no formula that recovers the text. The only move an attacker has is guessing inputs and comparing fingerprints. Watch how differently that plays out for a short secret versus a long one.
Crack this PIN
search space: 10,000Behind this hash hides a 4-digit PIN. You can't reverse the hash — but you can guess forwards. Try a guess, or let your machine try all 10,000.
4a7d1ed414474e4033ac29ccb8653d9b
Now try this one
search space: 94¹² ≈ 4.8 × 10²³This hash hides a full sentence. Same attack, same machine — completely different outcome.
8e6883fb18963b2d27e84e6dad47a065
03 · the birthday attack
Two texts, one hash
A hash is only trustworthy if nobody can find two different inputs with the same fingerprint — a collision. Attackers don't need to match your document's hash; they just need any pair that collides. Probability is heavily on their side.
Hunt for a collision
mini-hash = first 6 hex chars (24 bits)We shrink MD5 to 24 bits so you can watch — in seconds — what took researchers years on the full 128. Guessing a specific 24-bit hash takes ~16.7M tries. But finding any two texts that share one? Only about √2²⁴ ≈ 4,096 tries — the same math that makes two people in a room of 23 share a birthday half the time.
04 · proof of work
Mining is hashing with a target
Bitcoin miners aren't solving equations — they're doing exactly what you did above: hashing, over and over, hunting for a lucky output. The rule: combine your block with a counter (the nonce) until the SHA-256 hash starts with enough zeros. This time you're using the real thing — SHA-256, Bitcoin's actual hash function.
target: hash starts with “0000” — expected ~65,536 tries. Each extra zero ≈ 16× harder.
05 · not all hashes age well
MD5, SHA-1, SHA-2, SHA-3
There isn't one hash function — there's a lineage, and it has casualties. The MD5 you played with today is a museum piece.
- 1992
MD5
BrokenCollisions demonstrated in 2004 using attacks on MD5’s structure; the truncated birthday demo illustrates a different, generic collision search. Use here only for learning or non-adversarial error checks; never for security.
- 1995
SHA-1
RetiredGoogle's SHAttered collision (2017) ended it. Browsers and certificate authorities have dropped it.
- 2001
SHA-2 (SHA-256)
Today's standardWhat your bank's TLS session and Bitcoin's proof-of-work both run on. The mining you just did? SHA-256.
- 2015
SHA-3
The spare tireA structurally different backup, standardized so the world has somewhere to go if SHA-2 ever cracks.
Hash functions age. The lesson isn't “MD5 bad” — it's that security has a shelf life, and serious systems are built to migrate before the math catches up with them. That's why banking and blockchain run on SHA-256 today, and why SHA-3 is already waiting on the bench.
next up
Episode 02 — Blocks & chains play now →You now hold the atom. Next: how chaining hashed blocks makes history tamper-evident.