Addresses & Checksums
From pubkey to address—and how a single bit breaks the checksum.
Encode and decode Base58Check, see the checksum bytes, then flip a bit to watch verification fail. This is the safety net behind “copy-paste your address carefully.”
Base58Check Checksums Typos & bit flips Address safety
Quick guide
- Pick version + payload and Encode to Base58Check; Decode to inspect version/payload/checksum.
- Derive a toy address from a pubkey hash; see every intermediate hash plus the checksum.
- Flip a bit in the payload and watch the recomputed checksum fail—typos get caught.
Base58Check sandbox
Encode & decode with checksum
Encode (HEX → Base58Check)
Tip: Use Random to generate a valid 20-byte HEX.
Generates Base58Check with checksum
Address:
Decode (Base58Check → fields)
Tip: Use Random to try a known valid address.
Parses version, payload, and verifies checksum
Version:
Payload (HEX):
Checksum OK:
Toy pipeline: pubkey → address → checksum
Compressed pubkey, SHA-256 only (teaching)
Step 1 — SHA-256(pubkey) (hex)
—
Step 2 — Address = first 20 bytes
—
Step 3 — Checksum = first 4 bytes of SHA-256(address)
—
Step 4 — Base58Check(version 0x00 | addr | checksum)
—
Flip a bit (see checksum fail)
Address payload = 20 bytes (160 bits)
(status: —)
Mutated address (hex) + recomputed checksum
—
—
Checksums, typos, and why Base58Check sticks
- Encode: pick version and payload, click Encode to see Base58Check.
- Decode: paste an address and Decode to inspect version/payload/checksum validity.
- Derive: use Randomize then Derive address to view every intermediate hash.
- Flip: choose a bit index, flip, and compare the new checksum to the original.