It starts as anything.
A word, a file, a whole block of transactions. Here it's just two letters.
sha256("hash") =
A word, a file, a whole block of transactions. Here it's just two letters.
SHA-256 chops it up and runs 64 rounds of shuffling, rotating and mixing bits.
Exactly 64 characters, 256 bits. Same input, same fingerprint, every time.
Just m to n. Watch the fingerprint.
About half of all bits flip. That's the avalanche effect, and it's why nobody can fake a hash.
Keep scrolling to zoom in.
Transactions, the time, and the last block's hash. Scroll to start mining.
Type something, then change one letter. This is real SHA-256, running right in your browser.
Nothing you type leaves your device. Still, never type a seed phrase or password into any website.
Hans Peter Luhn at IBM writes up a way to file information by chopping it into short codes. Hashing is born.
Ralph Merkle shows how to hash hashes into a tree, so one short root can vouch for thousands of records.
Stuart Haber and Scott Stornetta link timestamped documents with hashes, so no one can backdate one. Sound familiar?
The US government publishes the SHA-2 family, including SHA-256, as a standard anyone can use.
On January 3, Bitcoin's first block is mined using SHA-256. Every Bitcoin block since points back to it.
Bitcoin miners worldwide make hundreds of quintillions of SHA-256 guesses every second, all looking for a lucky hash.
The chain isn't finished. Someone reading this adds the next block.
With just 23 people in a room, there's a 50% chance two share a birthday. Hashes face the same math, but with 2²⁵⁶ birthdays instead of 365, you'd need about 2¹²⁸ hashes for an even chance of one match.
Pair them up, hash the pairs, then hash those pairs, until one root is left. Change any transaction and the root changes too.
A hash doesn't keep your secret. It proves you knew it. Change one letter, and the whole world can tell.
Your browser is guessing for real. Find a hash that starts with enough zeros and you've mined a block. Scroll fast to overclock.
We timed your device hashing a few thousand times when the page loaded. Here's what that speed means.