Game · easy · 5 min
Checksum Catcher
Sort addresses before the clock runs out, and let the checksum catch the typos
- What a bech32m checksum catches, and what it can't tell you
- prl1, tprl1 and rprl1 prefixes name the network
- Pearl has only prl1p and prl1z addresses carrying 32 bytes
- Why bc1… and prl1q… addresses are never Pearl
How to play
You are the last check before a wallet sends coins. Addresses arrive one at a time, each with a short wallet scan underneath: the prefix and the network it names, the result of the checksum calculation, and how many bytes the address carries. Sort each one into a bin before the bar runs out:
- Valid: a mainnet Pearl address,
prl1p…orprl1z…, checksum fine. - Typo: a character is wrong, missing or extra. The checksum fails.
- Wrong network: a real Pearl address for testnet (
tprl1…) or regtest (rprl1…). Its checksum is fine, but mainnet coins sent there would never arrive. - Not Pearl: a Bitcoin address (
bc1…), a witness-version-0 address (prl1q…) or one that carries the wrong number of bytes.
The prefix is readable at a glance. A typo isn’t, so you can wait for the scan or trust your eyes. Faster answers
score more, three right in a row starts a combo, and three misses end the level. Each level shortens the clock,
and in level 3 the scanner shows only the raw checksum result: 0x2bc830a3 is the number that means “bech32m,
valid”.
Keyboard: 1–4 (or V, T, W, N) sort the address. After a miss, Enter moves on.
What’s real and what’s simplified
- Real: the referee is the site’s own address decoder, which follows Pearl’s rules (bech32m only,
prl,tprlandrprlprefixes, witness versions 1 and 2, 32-byte programs). The explanations you see are its error messages. The scanner runs the real BCH polymod over the address. The real addresses come from mainnet transactions; the others are encoded fresh in your browser from random bytes. - Simplified: the four bins are this game’s grouping. A wallet would just say “invalid” and quote the reason. Nobody controls the random addresses, so never send coins to one.
- Bech32m is guaranteed to catch any single changed character. Dropping or adding a character is caught with overwhelming odds but not with certainty, and the game only deals typos that the decoder actually rejects.