// ne nous croyez pas sur parole. vérifiez vous-même.
une hauteur de bloc, un hash de bloc, le code imprimé sur un poster, ou le sha256 de votre pdf
un exemple, le bloc 100 000 :
- oken-tête décodé80 octets · version 1 · bits 1b04864c · nonce 274148111
- okhash recalculésha256(sha256(header)) =
000000000003ba27aa200b1cecaad478
d2b00432346c3f1f3986da1afd33e506 - okpreuve de travailhash sous la cible 0x1b04864c · 11 zéros en tête
# même vérification, sur votre propre nœud
$ bitcoin-cli getblockhash 100000
$ bitcoin-cli getblockheader 000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506 false
pas à pas
trouvez le bloc par sa hauteur : tout nœud Bitcoin Core donne le hash d’une hauteur.
$ bitcoin-cli getblockhash 100000 000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506récupérez son en-tête de 80 octets, brut, en hexadécimal : c’est l’en-tête que couvre la preuve de travail.
$ bitcoin-cli getblockheader 000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506 false 0100000050120119172a610421a6c3011dd330d9df07b63616c2cc1f1cd00200000000006657a9252aacd5c0b2940996ecff952228c3067cc38d4885efb5a4ac4247e9f337221b4d4c86041b0f2b5710hashez-le deux fois avec SHA-256, et lisez le résultat à l’envers : une ligne de Python suffit.
$ python3 -c "import hashlib; h = bytes.fromhex('0100000050120119172a610421a6c3011dd330d9df07b63616c2cc1f1cd00200000000006657a9252aacd5c0b2940996ecff952228c3067cc38d4885efb5a4ac4247e9f337221b4d4c86041b0f2b5710'); print(hashlib.sha256(hashlib.sha256(h).digest()).digest()[::-1].hex())" 000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506comparez avec le poster : le résultat est le hash qui y est imprimé, zéros en tête compris. pas de nœud sous la main ? n’importe quel explorateur de blocs affiche le même hash pour la même hauteur.