Hashketens en blockkoppeling
Bouw een minimale blockchain met hash pointers om onveranderlijkheid te begrijpen.
Hashketens en blockkoppeling is een gratis Cryptology Academy-les op CoddyKit. Dit is les 1 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Cryptology Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Cryptology Academy bevat in totaal 4 lessen.
Wat is een hashketen?
Een hashketen koppelt gegevensblokken aan elkaar, zodat elk blok de hash van het vorige blok bevat. Als je een blok wijzigt, verandert de hash ervan, waardoor alle volgende blokken ongeldig worden. Zo ontstaat een grootboek waarin manipulatie detecteerbaar is en waaraan alleen kan worden toegevoegd.
Blokstructuur
Elk blok bevat: (1) gegevensinhoud (transacties), (2) hash van het vorige blok (verwijzing naar het voorafgaande blok), (3) tijdstempel, (4) nonce (voor PoW), (5) Merkle-wortel van de transacties. Het eerste blok (genesisblok) heeft previous_hash = "0"*64.
Minimale blockchain in Python
import hashlib, json class Block: def __init__(self, data, prev_hash): self.data = data self.prev_hash = prev_hash self.hash = hashlib.sha256( json.dumps({'data':data,'prev':prev_hash}).encode() ).hexdigest()
Waarom hashverwijzingen integriteit waarborgen
Als een aanvaller de gegevens van blok 3 wijzigt, verandert de hash van blok 3. Blok 4 verwijst naar de oude hash van blok 3 — de keten wordt bij blok 4 verbroken. De aanvaller moet de hashes voor blokken 3, 4, 5, ... helemaal tot aan het uiteinde opnieuw berekenen. Met PoW is dit rekenkundig onhaalbaar.
Onveranderlijkheid tegenover aantoonbaarheid van manipulatie
Hashketens tonen manipulatie aan, maar zijn op zichzelf niet onveranderlijk. Zonder aanvullende mechanismen (PoW, digitale handtekeningen, distributie) kan een aanvaller die de keten beheert deze herschrijven. Gedistribueerde consensus maakt blockchain in de praktijk bestand tegen manipulatie.
Regel van de langste keten
De regel van de langste keten van Bitcoin: de geldige keten met het meeste opgebouwde bewijs van werk is de canonieke keten. Als een aanvaller de keten splitst, breiden eerlijke miners de eerlijke keten sneller uit (aanname van 51%). De fork van de aanvaller is korter en wordt verworpen.
Blokheader versus volledig blok
De SPV-clients (eenvoudige betalingsverificatie) van Bitcoin downloaden alleen blokheaders van 80 bytes (met de vorige hash, Merkle-wortel, nonce, tijdstempel en bits). Volledige knooppunten slaan alle transacties op. SPV-clients verifiëren een transactie met een Merkle-bewijs tegen de Merkle-wortel in de header.
Genesisblok
Het genesisblok van Bitcoin (blok 0, 3 januari 2009) heeft prev_hash = 0x000...0. Satoshi verwerkte de kop "The Times 03/Jan/2009 Minister van Financiën op de rand van een tweede reddingsoperatie voor banken" in de coinbase-transactie als bewijs van de tijdstempel.
Bewaringsketen
Hashketens bestonden al vóór blockchain. Toepassingen: certificaatintrekkingslijsten (gekoppeld via hashes), integriteit van logboeken (hash van het vorige logboekitem), DNSSEC-vertrouwensketen. Het concept generaliseert: elke structuur waaraan alleen kan worden toegevoegd en waarin elke invoer alle eerdere invoeren vastlegt.
Controlepunten
Om de eerste synchronisatie te versnellen, hardcodeert Bitcoin Core controlepunten: hashes van bekende geldige blokken op bepaalde hoogten. Een client die met synchroniseren begint, kan de PoW-verificatie overslaan voor blokken vóór het controlepunt en de hardgecodeerde hash vertrouwen. Afweging: dit vermindert de vertrouwensminimalisatie.
Adressering op basis van inhoud
Git gebruikt hetzelfde principe: elke commit wordt geïdentificeerd door de SHA-1/SHA-256 van de inhoud plus de hash van de bovenliggende commit. Als je een specifieke commit-hash uitcheckt, krijg je exact die toestand. De volledige geschiedenis van Git is een hashgekoppelde boom van objecten.
Snelle controle
Waarom moet een aanvaller alle hashes van de volgende blokken opnieuw berekenen nadat die één blok heeft gewijzigd?
Samenvatting
Hashketens koppelen blokken via cryptografische verwijzingen. Een wijziging werkt door naar alle volgende blokken. In combinatie met PoW en gedistribueerde consensus maakt dit blockchain in de praktijk onveranderlijk. Volgende onderwerp: Merkle-bomen voor efficiënte integriteit van transacties.
Leer Cryptology Academy met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 67
- Lessen
- 261
Veelgestelde vragen
Is de les “Hashketens en blockkoppeling” gratis?
Ja — de volledige tekst van “Hashketens en blockkoppeling” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Cryptology Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Cryptology Academy bevat in totaal 4 lessen.
Wat leer ik in “Hashketens en blockkoppeling”?
Bouw een minimale blockchain met hash pointers om onveranderlijkheid te begrijpen. Je oefent met Cryptology Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Cryptology Academy te beginnen?
Ervaring vooraf is niet nodig. Cryptology Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.
Hoe lang duurt de les “Hashketens en blockkoppeling”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Cryptology Academy?
Ja. Elke les over Cryptology Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Hashketens en blockkoppeling
- Merkle-bomen: transactie-integriteit op schaal
- Proof of Work: mining en moeilijkheidsaanpassing
- Bitcoin Script en UTXO-handtekeningverificatie