Belangrijkste punten
- Een hash is een eenrichtings cryptografische vingerafdruk: dezelfde invoer geeft altijd dezelfde output met een vaste lengte, en de kleinste wijziging geeft een compleet andere output.
- Bij Proof of Work hashen miners een blok plus een veranderende nonce net zo lang tot het resultaat onder het doel van het netwerk valt, wat bewijst dat er echte rekenkracht is besteed.
- Omdat elk blok de hash van het vorige blok bevat, zou knoeien betekenen dat elk volgend blok opnieuw gemined moet worden, en dat maakt de chain onveranderlijk en veilig.
In dit artikel
Als je je verdiept in de wereld van cryptocurrencies zoals Bitcoin, heb je vast wel eens gehoord van Proof of Work (PoW). Dit systeem vormt de basis voor hoe transacties worden gevalideerd en blokken aan de blockchain worden toegevoegd. Maar heb je je ooit afgevraagd wat het belangrijkste onderdeel is dat PoW laat werken? Daar komt de hash om de hoek kijken.
Dus, wat is een hash precies?
Zie een hash als een digitale vingerafdruk. Wanneer je data invoert in een hashfunctie, krijg je een unieke output met een vaste lengte. Deze output is een reeks tekens die willekeurig lijkt, maar nauw verbonden is met de oorspronkelijke data. En hier zit de truc: zelfs de kleinste wijziging in de invoerdata levert een compleet andere output op. Dat is de essentie van een hash!
Enkele belangrijke kenmerken van een hashfunctie zijn:
- Deterministisch: dezelfde invoer geeft altijd dezelfde hashwaarde. De zin “Hello, World!” genereert bijvoorbeeld elke keer dezelfde hash.
- Vaste lengte: hoe lang of kort de invoer ook is, de output heeft altijd dezelfde lengte (SHA-256 produceert bijvoorbeeld altijd een 256-bits hash).
- Pre-image-resistentie: het is praktisch onmogelijk om de oorspronkelijke invoer te reconstrueren op basis van alleen de hashwaarde.
- Collision-resistentie: twee verschillende invoeren leveren niet dezelfde hash-output op.
- Avalanche-effect: zelfs een kleine wijziging in de invoer (zoals één letter toevoegen) levert een drastisch andere hash op.

In de wereld van Bitcoin en veel andere cryptocurrencies wordt SHA-256 (Secure Hash Algorithm 256-bit) vaak gebruikt. Dit betekent dat wanneer data wordt gehasht, het resultaat een reeks van 64 tekens is die vrijwel onmogelijk om te keren is.
Hoe werkt een hash in Proof of Work?
Laten we nu inzoomen op de rol van hashes in Proof of Work. Het proces draait om het oplossen van een cryptografische puzzel, en de sleutel tot het oplossen van die puzzel is, je raadt het al, hashing. Zo werkt het in eenvoudige termen:
1. Het miningproces
- Wanneer een miner een nieuw blok met transacties aan de blockchain wil toevoegen, verzamelt hij eerst een lijst met transacties.
- Vervolgens moet hij een geldige hash voor dit nieuwe blok vinden. En dat is het lastige gedeelte.
- De miner begint met de transactiedata en voegt een getal toe dat bekendstaat als een nonce (een willekeurig getal dat bij elke poging verandert).
- De miner hasht de data van het blok (inclusief de nonce) en controleert of die voldoet aan de criteria die door het moeilijkheidsniveau van het netwerk zijn vastgesteld.
2. Een geldige hash vinden
Om de geldige hash te vinden, past de miner de nonce aan, hasht de data opnieuw en controleert of de hash aan de specifieke voorwaarde voldoet, meestal een bepaald aantal voorloopnullen. Dit proces van het proberen van verschillende nonces is rekenkundig duur, maar essentieel.
Laten we het opsplitsen:
- De hash moet lager zijn dan een bepaald doel dat wordt bepaald door de moeilijkheidsgraad van het netwerk.
- De moeilijkheidsgraad past zich aan om ervoor te zorgen dat blokken in een constant tempo worden toegevoegd (ongeveer elke 10 minuten voor Bitcoin).
3. Proof of Work
Zodra een miner een hash vindt die aan het doel voldoet, verspreidt hij die naar het netwerk. Andere deelnemers kunnen de hash eenvoudig verifiëren door te controleren of de gebruikte nonce de juiste hash oplevert. Dit is de Proof of Work: de miner heeft rekenkracht besteed om de puzzel op te lossen, wat bewijst dat hij de moeite heeft gedaan.

Waarom is hashing belangrijk voor blockchainbeveiliging?
Hier wordt het interessant. Hashing helpt miners niet alleen blokken toe te voegen. Het speelt een enorme rol in het beveiligen van het hele blockchainnetwerk. En wel hierom:
1. Onveranderlijkheid
Elk blok in de blockchain bevat de hash van het vorige blok. Zo ontstaat een keten van blokken, en elke poging om de data in een blok te wijzigen verandert de hash ervan. Omdat elk volgend blok aan het vorige is gekoppeld, zou het wijzigen van één blok betekenen dat alle volgende blokken opnieuw moeten worden berekend. Dit maakt knoeien met de blockchain ongelooflijk moeilijk en duur.
2. Detectie van manipulatie
- Als iemand de data in een blok probeert te wijzigen, verandert de hash van dat blok.
- Omdat het volgende blok afhankelijk is van de hash van het vorige, veroorzaakt het wijzigen van één blok een kettingreactie waarbij alle volgende hashes opnieuw berekend moeten worden.
- Dit maakt frauduleuze activiteit extreem opvallend en vrijwel onmogelijk om uit te voeren zonder dat het netwerk het merkt.
3. Hoge kosten voor aanvallers
Om een deel van de blockchain te wijzigen, zou een aanvaller meer dan 50% van de rekenkracht van het netwerk moeten beheersen. Dit heet een 51%-aanval, en die is kostbaar omdat de aanvaller een enorme hoeveelheid rekenkracht nodig zou hebben om de hashes te veranderen en de geschiedenis te herschrijven.
Een leuk weetje: het Bitcoin-netwerk draait op ruim 800 exahashes per seconde (EH/s) en blijft groeien. Om dat op te splitsen:
- 1 EH/s = 1 triljoen hashes per seconde.
- Dit netwerk overmeesteren zou vrijwel onmogelijk zijn zonder een bijna oneindige hoeveelheid middelen.
4. Decentralisatie
Omdat mining openstaat voor iedereen met de juiste hardware, en het miningproces berust op bewijs van rekenwerk, houdt PoW het netwerk gedecentraliseerd. Geen enkele entiteit beheerst het hele proces, en miners concurreren op gelijke voet om het netwerk te beveiligen.
De dynamische moeilijkheidsaanpassing
Naarmate de hash rate (of rekenkracht) van het netwerk toeneemt, past de moeilijkheid van het vinden van een geldige hash zich aan om de blokproductietijd constant te houden. Dit betekent dat:
- Hogere hash rate: het systeem verhoogt de moeilijkheid, waardoor het moeilijker wordt om een geldige hash te vinden.
- Lagere hash rate: het systeem verlaagt de moeilijkheid om consistente bloktijden te behouden.
Deze dynamische aanpassing zorgt ervoor dat het netwerk in balans blijft, zelfs als het aantal miners en de rekenkracht fluctueert.
Waarom zou je om hashing geven?
Hashes begrijpen helpt je de veiligheid en efficiëntie van blockchainnetwerken te waarderen. Dit is waarom hashing belangrijk is voor zowel miners als gebruikers:
- Veiligheid: hashing maakt het ongelooflijk moeilijk voor kwaadwillenden om met de blockchain te knoeien.
- Decentralisatie: door bewijs van rekenwerk te vereisen, kan geen enkele partij het netwerk beheersen.
- Onveranderlijkheid: zodra een blok is toegevoegd, is het vrijwel onmogelijk om het te wijzigen zonder detectie.
Korte samenvatting
- Een hash is de output van een cryptografische functie die data uniek identificeert.
- Bij Proof of Work moeten miners een hash vinden die aan bepaalde criteria voldoet om een blok aan de blockchain toe te voegen.
- Het gebruik van hashes zorgt voor veiligheid, onveranderlijkheid en decentralisatie.
- Wijzigingen in data (zelfs kleine) veranderen de hash drastisch, waardoor manipulatie eenvoudig te detecteren is.
Waarom hashes cruciaal zijn
Tot slot: hashes zijn niet zomaar een technisch detail van Proof of Work. Ze vormen de basis waarop de veiligheid, integriteit en trustless-werking van blockchainnetwerken rusten. Zonder hashes zou er geen manier zijn om te bewijzen dat er rekenwerk is verricht, geen manier om te garanderen dat data niet is gewijzigd, en geen manier om gedecentraliseerde netwerken soepel te laten draaien.
Dus de volgende keer dat je iemand over mining of Proof of Work hoort praten, begrijp je dat achter elk blok dat aan de blockchain wordt toegevoegd een hash zit, die ervoor zorgt dat het netwerk veilig en betrouwbaar blijft.
Door zich te richten op rekenwerk, netwerkmoeilijkheid en hashwaarden creëert PoW een robuust systeem dat miners beloont voor hun inspanning en tegelijk de blockchain bestand maakt tegen fraude en manipulatie. De schoonheid ervan zit in de eenvoud van de hash, een klein stukje data dat zoveel gewicht draagt in het beveiligen van een gedecentraliseerd, trustless systeem zoals Bitcoin.
Blijf voorop in crypto