De basis van Web3- en DApp-ontwikkeling · Les

Blocks en chains

Hoe blocks aan elkaar worden gekoppeld

Les 1 van 413 stappen

Blocks en chains is een gratis De basis van Web3- en DApp-ontwikkeling-les op CoddyKit. Dit is les 1 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject De basis van Web3- en DApp-ontwikkeling. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus De basis van Web3- en DApp-ontwikkeling bevat in totaal 4 lessen.

Wat is een blok?

Een blok is de fundamentele container in een blockchain. Het bundelt een reeks gevalideerde transacties met metagegevens die het blok aan de rest van de keten koppelen.

Elk blok heeft twee hoofdonderdelen:

  • Kop — metagegevens (tijdstempel, hashes, nonce)
  • Inhoud — de lijst met transacties

Anatomie van een blokkop

De kop is klein maar krachtig. Een typische kop in Ethereum-stijl bevat:

  • previousHash — hash van het vorige blok
  • timestamp — wanneer het blok is gemaakt
  • merkleRoot — vingerafdruk van alle transacties
  • nonce — waarde die bij de consensus wordt gebruikt

De kop wordt gehasht om het blok te identificeren.

block Header {
    previousHash: 0x9f1c...a3
    timestamp:    1717000000
    merkleRoot:   0x4be2...07
    nonce:        42891
}

Hoe blokken aan elkaar worden gekoppeld

Elk blok slaat de hash van het vorige blok op. Dit ene veld verandert een verzameling blokken in een keten.

Omdat elk blok naar achteren verwijst, vormen de blokken een geordende reeks waaraan alleen kan worden toegevoegd, helemaal terug tot aan het allereerste blok.

Block 0 (Genesis)
   |  hash = 0xAAA
   v
Block 1  prevHash = 0xAAA  hash = 0xBBB
   |
   v
Block 2  prevHash = 0xBBB  hash = 0xCCC

Het genesisblok

Het genesisblok is het eerste blok in elke blockchain. Het is bijzonder omdat het geen ouder heeft — de waarde van previousHash bestaat meestal volledig uit nullen.

Elk ander blok kan worden teruggevolgd tot het genesisblok, dat fungeert als de gedeelde vertrouwensbasis voor het hele netwerk.

Genesis = {
    previousHash: 0x0000000000000000
    timestamp:    1438269973
    transactions: []
}

Waarom de terugverwijzing belangrijk is

De terugverwijzing maakt manipulatie duidelijk zichtbaar. Als iemand een transactie in een oud blok wijzigt, verandert de hash van dat blok.

Maar het volgende blok heeft de oude hash opgeslagen in zijn veld previousHash, waardoor de koppeling wordt verbroken. De afwijking is onmiddellijk detecteerbaar.

Aan ketens kan alleen worden toegevoegd

Blockchains zijn gegevensstructuren waaraan alleen kan worden toegevoegd. Je kunt nieuwe blokken aan het uiteinde toevoegen, maar je kunt geen blokken in het midden invoegen of verwijderen zonder elke daaropvolgende koppeling te verbreken.

Deze eigenschap vormt de basis van de onveranderlijkheid van blockchain.

Blokhoogte

De blokhoogte is het aantal blokken tussen een bepaald blok en het genesisblok. Het genesisblok heeft hoogte 0, het volgende blok hoogte 1, enzovoort.

De hoogte geeft elk blok een duidelijke positie en stelt het netwerk in staat overeenstemming te bereiken over welke keten het langst is.

height 0 -> Genesis
height 1 -> Block 1
height 2 -> Block 2
...
height N -> latest block

Transacties in een blok

De inhoud van een blok bevat een geordende lijst met transacties. De volgorde is belangrijk: die bepaalt de eindtoestand nadat het blok is toegepast.

Zodra een blok is afgerond, liggen de transacties die het bevat — en hun volgorde — voor altijd vast.

Block 12 body:
  tx[0]: Alice -> Bob   (5 ETH)
  tx[1]: Bob   -> Carol (2 ETH)
  tx[2]: Carol -> Dave  (1 ETH)

Blokgrootte en limieten

Blokken kunnen niet onbeperkt groeien. Elke keten stelt een limiet in — Bitcoin gebruikt een limiet in bytes, terwijl Ethereum een maximum stelt aan de totale hoeveelheid gas die een blok mag verbruiken.

Deze limieten houden blokken klein genoeg om ze snel door het netwerk te verspreiden.

Een blok identificeren aan de hand van zijn hash

De identiteit van een blok is zijn hash — de uitvoer van een cryptografische hashfunctie die op de kop wordt toegepast.

Wijzig een willekeurig veld in de kop en de hash verandert volledig. Daarom fungeren hashes als vingerafdrukken van blokken die manipulatie zichtbaar maken.

blockHash = sha256(
    previousHash + timestamp +
    merkleRoot + nonce
)

Alles samenbrengen

Een blockchain is eenvoudigweg een gekoppelde lijst van blokken, waarbij elke koppeling een cryptografische hash van het vorige blok is.

Deze combinatie van ordening, hashing en schrijfbewerkingen waaraan alleen kan worden toegevoegd, maakt de keten betrouwbaar zonder centrale autoriteit.

Korte controle

Test je begrip van de manier waarop blokken met elkaar zijn verbonden.

Samenvatting: blokken en ketens

Je hebt geleerd dat:

  • Een blok een kop (metagegevens) en inhoud (transacties) heeft
  • Blokken met elkaar worden verbonden doordat ze de previousHash opslaan
  • Het genesisblok de basis zonder ouder is
  • Aan ketens alleen kan worden toegevoegd, waardoor ze onveranderlijk zijn
  • De identiteit van een blok zijn hash is

Vervolgens bekijken we hoe Merkle-bomen alle transacties efficiënt samenvatten.

Gratis beginnen

Leer De basis van Web3- en DApp-ontwikkeling 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
29
Lessen
105

Veelgestelde vragen

Is de les “Blocks en chains” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad De basis van Web3- en DApp-ontwikkeling, waaronder “Blocks en chains”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus De basis van Web3- en DApp-ontwikkeling bevat in totaal 4 lessen.

Wat leer ik in “Blocks en chains”?

Hoe blocks aan elkaar worden gekoppeld Je oefent met De basis van Web3- en DApp-ontwikkeling 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 De basis van Web3- en DApp-ontwikkeling te beginnen?

Ervaring vooraf is niet nodig. De basis van Web3- en DApp-ontwikkeling 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 “Blocks en chains”?

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 De basis van Web3- en DApp-ontwikkeling?

Ja. Elke les over De basis van Web3- en DApp-ontwikkeling 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

  1. Blocks en chains
  2. Merkle-bomen
  3. Hashing in blockchain
  4. Gedecentraliseerde grootboeken
← Terug naar De basis van Web3- en DApp-ontwikkeling