Wat is Block Hash?
Een Block Hash is de vingerafdruk van een block in een blockchain. Het is een tekenreeks met vaste lengte die de data van dat block op een bepaald moment uniek weergeeft. Zie het als een ontvangst-ID dat ook meteen alarm slaat als iemand zelfs maar één teken van het ontvangstbewijs verandert.
Mensen denken dat een Block Hash slechts een willekeurig ID is. Dat is helemaal niet willekeurig. Het is het directe resultaat van de blockdata, dus verander één bit en de Block Hash is totaal anders.
Hoe Block Hash werkt
Stel je voor dat er een nieuw block wordt gemaakt en naar het netwerk gestuurd. Dit is een korte uitleg over hoe de Block Hash tot stand komt.
- Stap 1: Het block bundelt transacties en metadata in de header van het block.
- Stap 2: Die header wordt door een cryptografische hashfunctie gehaald, die het omzet in een korte, vaste tekenreeks.
- Stap 3: Mijnwerkers passen de nonce aan en hashen opnieuw totdat de uitkomst onder een doelwaarde valt. Denk aan een gokkast gecombineerd met een rekenles.
- Stap 4: Zodra de Block Hash aan de doelwaarde voldoet, wordt het block geaccepteerd en wordt de hash de referentie in het volgende block, waarmee de keten verbonden blijft.
- Stap 5: Nodes verspreiden het resultaat over het netwerk, en die Block Hash is nu het publieke gezicht van het block.
Het is snel, het is deterministisch, en het staat geen manipulatie toe.
Waarom Block Hash belangrijk is
Waarom Block Hash in de praktijk relevant is:
- Voordeel: Het biedt directe integriteitscontroles. Eén blik is genoeg om te zien of het block legitiem is.
- Perspectief: Het netwerk beloont de enorme rekenkracht die nodig is om geldige hashes te vinden, wat proof of work ketens veilig houdt.
- Relevantie: Je ziet Block Hash op explorers bij het volgen van bevestigingen, bij het debuggen van apps of bij het lezen van protocolupdates.
Als je een Block Hash van een blockexplorer vergelijkt, kopieer deze dan als platte tekst en let op overbodige spaties. Eén extra teken breekt een exacte vergelijking.
Belangrijkste eigenschappen van Block Hash
Dit zijn de eigenschappen die het betrouwbaar maken:
- Deterministisch: Zelfde invoer geeft altijd hetzelfde resultaat.
- Vast: De uitvoer heeft altijd dezelfde lengte, ongeacht hoe groot het block is.
- Gevoelig: Verander één bit in het block en de Block Hash lijkt totaal anders.
- Gekoppeld: Elk block verwijst naar de vorige Block Hash, waardoor de geschiedenis vastligt.
- Onomkeerbaar: Je kunt niet vanuit de Block Hash terugrekenen om de inhoud van het block te onthullen.
Hoe wordt Block Hash berekend?
De meeste proof of work ketens berekenen de Block Hash uit de header met een tweestaps hash. In Bitcoin is dat dubbele sha.
In vereenvoudigde vorm:
block_hash = sha256( sha256( block_header_bytes ) ) De header bevat velden zoals versie, previous hash, merkle root, timestamp, difficulty target en een nonce. Pas de nonce aan, hash opnieuw, herhaal, en vier het wanneer het onder de doelwaarde past.
Een Block Hash is geen transactie-hash. Een Block Hash vat de header van het block samen, terwijl een transactie-hash één specifieke transactie in dat block identificeert.
Voorbeeld
Je opent een blockexplorer, zoekt een recent block, kopieert de Block Hash en plakt die in je node-logs om te bevestigen dat je dezelfde weergave als het netwerk hebt.
Leuk weetje
De genesis-blockhash van Bitcoin begint met een lange reeks nullen, een visuele demonstratie die laat zien hoe streng de vroege mining doelwaarde al was.
Samenvatting
Block Hash in één regel: het is het manipulatie-alarm en het publieke label voor elk block, makkelijk te delen, moeilijk te vervalsen, en de reden dat je keten eerlijk blijft.
