-snip-
And how was that bitcoin eater address found, did people
just typed various combinations into the blockchain explorer until they found it
or is there another approach?
People must have used a tool or script to create a so-called "
Proof-of-Burn" address.
Those tools are designed to compute the checksum and the preferred remaining characters of your prefix.
Here's one example of
Proof-of-Burn tool:
https://gobittest.appspot.com/ProofOfBurn (
wont work for long prefixes)
For the "
combination", there's a checksum like they explained.
And the checksum is what makes addresses safe from typo errors just like when you changed one character of 1BitcoinEaterAddressDontSendf59kuE
Here's an easy understandable and
reproducible example: (
let's use 1BitcoinEatenAddressDontSendaBQGRD)
- 1. Address: 1BitcoinEatenAddressDontSendaBQGRD
- 2. Base58 decode: 00759d6677091e973b7e390bf4ba0d30280f5e3abfa8c70cf0
- 3. Remove the checksum: 00759d6677091e973b7e390bf4ba0d30280f5e3abf
- 4. SHA256 of the above: d820699ba4bf3c9ecf058677b48e6de5c8fb1a978cb837172dc0f14d181a5478
- 5. SHA256 of the above: a8c70cf092774dccafc0ba609ada689a9be1d579e18af6aeee25d32f46272e41
- 6. Compare the checksum and first 4bytes of the above: a8c70cf0 = a8c70cf0
As you can see, any character from the address can't be changed without changing the last 4 bytes which is a SHA256d of the Base58 encoded data.
If you change at least one character, the checksum wont match that will make the address invalid.
If you use 1BitcoinEate
nAddressDontSendf59kuE like your example, the checksum will not match.
- 1. Address: 1BitcoinEatenAddressDontSendf59kuE
- 2. Base58 decode: 00759d6677091e973b7e390bf4ba0d30280f5e3ac0682bd8a1
- 3. Remove the checksum: 00759d6677091e973b7e390bf4ba0d30280f5e3ac0
- 4. SHA256 of the above: fd7041a06bc30e9863de29ba2ea126d5db8fd0b2031160ff0becd23e0e912eec
- 5. SHA256 of the above: 71f7e0262d59454339013c08b5768ab0d8ccb203fe144d23ef02f4fef41a616e
- 6. Compare the checksum and first 4bytes of the above: 71f7e026 ≠ 682bd8a1
In this case, the address is invalid.