Verify

Don’t trust. Verify.

Every number on a poster comes from the Bitcoin chain, and you can check it without trusting us. Here is block 100,000, as any node answers.

  1. Find the block by its height

    Any node running Bitcoin Core gives the hash of a height:

    $ bitcoin-cli getblockhash 100000
    000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506
  2. Get its 80-byte header

    The header is what the proof of work covers. Ask for it raw, in hexadecimal:

    $ bitcoin-cli getblockheader 000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506 false
    0100000050120119172a610421a6c3011dd330d9df07b63616c2cc1f1cd00200000000006657a9252aacd5c0b2940996ecff952228c3067cc38d4885efb5a4ac4247e9f337221b4d4c86041b0f2b5710
  3. Hash it twice with SHA-256

    The hash of a block is SHA-256 applied twice to its header, read backwards. One line of Python does it:

    $ python3 -c "import hashlib; h = bytes.fromhex('0100000050120119172a610421a6c3011dd330d9df07b63616c2cc1f1cd00200000000006657a9252aacd5c0b2940996ecff952228c3067cc38d4885efb5a4ac4247e9f337221b4d4c86041b0f2b5710'); print(hashlib.sha256(hashlib.sha256(h).digest()).digest()[::-1].hex())"
    000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506
  4. Compare with the poster

    The result is the hash printed on the poster, leading zeros included: the work that found this block cannot be faked. No node at hand? Any block explorer shows the same hash for the same height.

Make your poster