Definitie
Sharding splitst een blockchain in kleinere stukken (shards) die parallel werken, zodat het netwerk meer transacties tegelijk verwerkt.
Samengevat in 10 seconden
Sharding is het opdelen van een blockchain in kleinere, parallel werkende deelnetwerken (shards), zodat het geheel meer transacties tegelijk kan verwerken. Elke shard houdt maar een deel van de gegevens bij en verwerkt maar een deel van de transacties. Het doel is schaalbaarheid: meer capaciteit zonder dat elke node alles hoeft te doen.
Sharding samengevat
- Sharding verdeelt het werk van een blockchain over meerdere shards die naast elkaar draaien
- Een node hoeft daardoor niet langer de volledige keten te verwerken of op te slaan
- Het is een antwoord op het schaalbaarheidsprobleem van veel blockchains
- De winst in snelheid kost iets aan complexiteit en aan veiligheid per shard
- De term komt oorspronkelijk uit het opdelen van grote databases
Wat sharding doet met een blockchain
Bij een klassieke blockchain verwerkt en bewaart elke node dezelfde volledige reeks transacties. Dat is veilig en transparant, maar traag: de keten kan niet sneller dan de traagste deelnemer die alles moet bijhouden. Naarmate het gebruik groeit, lopen de wachttijden en de kosten op.
Sharding doorbreekt die rem. Het netwerk wordt in stukken geknipt — shards — en elk stuk behandelt zijn eigen set transacties en zijn eigen deel van de gegevens. Twee shards kunnen op hetzelfde moment werk verzetten zonder op elkaar te wachten. Het totale aantal transacties dat per seconde door het netwerk kan, neemt zo toe naarmate je meer shards toevoegt.
Het woord komt uit de databasewereld, waar een "shard" een scherf of stukje van een grote database is. Een bedrijf dat een tabel met miljarden regels opsplitst over meerdere servers doet precies hetzelfde: het werk verdelen om sneller te zijn.
Hoe een netwerk in shards wordt opgedeeld
De deelnemers — de nodes of validators — worden over de shards verdeeld. Niet iedereen bewaakt meer de hele keten; een groep bewaakt shard A, een andere groep shard B, enzovoort. Binnen elke shard geldt nog steeds het reguliere proces van transacties controleren en in blokken vastleggen.
De moeilijkheid zit in het verkeer tússen shards. Wil iemand op shard A geld sturen naar een adres dat op shard B leeft, dan moeten beide shards informatie uitwisselen. Die cross-shard-communicatie verloopt meestal via een overkoepelende laag of hoofdketen die de shards aan elkaar knoopt en de losse stukken weer tot één geheel maakt.
Om manipulatie te voorkomen worden deelnemers vaak willekeurig en regelmatig over de shards herverdeeld. Zou je zelf mogen kiezen welke shard je bewaakt, dan kon een kwaadwillende partij zich op één shard concentreren en daar de overhand krijgen. Door de toewijzing te laten rouleren wordt dat lastiger.
Waarom blockchains naar sharding grijpen
De achterliggende reden is het zogenoemde schaalbaarheidsvraagstuk. Een blockchain probeert drie dingen tegelijk hoog te houden: decentralisatie, veiligheid en snelheid. In de praktijk gaat het verbeteren van één eigenschap vaak ten koste van een andere. Een keten waarin elke node alles verwerkt is decentraal en veilig, maar traag.
Sharding mikt op snelheid zonder de decentralisatie helemaal op te geven, doordat de eis "elke node verwerkt alles" verdwijnt. Een node hoeft alleen zijn eigen shard te draaien, wat de drempel om deel te nemen lager houdt dan bij een keten die steeds zwaardere hardware vraagt.
Sharding is niet de enige route naar meer capaciteit. Hieronder staat het naast twee verwante benaderingen, zodat duidelijk wordt waar het verschilt.
| Aanpak | Wat het doet | Waar het werk gebeurt |
|---|---|---|
| Sharding | Splitst de keten in parallelle shards | Verdeeld over de basislaag zelf |
| Layer 2 | Bundelt transacties buiten de hoofdketen en zet het resultaat erop | Boven op de basislaag |
| Grotere blokken | Vergroot de hoeveelheid transacties per blok | Op de bestaande, niet-gesplitste keten |
Welke vormen van sharding er zijn
Sharding is geen enkel vast recept; het wordt in lagen toegepast. Vaak worden drie niveaus onderscheiden, die elkaar kunnen aanvullen.
Bij netwerk-sharding worden de nodes zelf in groepen verdeeld, elk verantwoordelijk voor een shard. Bij transactie-sharding wordt bepaald welke transacties in welke shard terechtkomen, zodat ze elkaar niet in de weg zitten. De zwaarste variant is state-sharding: dan wordt ook de opgeslagen toestand van de keten — alle saldi en gegevens — over de shards verdeeld. Een node bewaart dan echt nog maar een fractie van de totale gegevens. Die laatste vorm levert de grootste besparing op, maar is technisch het lastigst, omdat de stukjes gegevens samen toch een kloppend geheel moeten blijven vormen.
Risico's van sharding
De snelheidswinst heeft een keerzijde in de veiligheid. Doordat het werk verdeeld is, hoeft een aanvaller niet de meerderheid van het hele netwerk in handen te krijgen, maar alleen de meerderheid binnen één shard. Dat staat bekend als een single-shard-aanval: een shard met relatief weinig bewakers is kwetsbaarder dan de volledige keten zou zijn. Willekeurige herverdeling van deelnemers moet dit risico beperken.
Daarnaast neemt de complexiteit toe. Cross-shard-transacties verlopen trager en met meer stappen dan transacties binnen één shard, en een fout in de coördinatie tussen shards kan gevolgen hebben voor de hele keten. Sharding is bovendien zwaar om in te bouwen in een bestaand, draaiend netwerk; het wordt doorgaans in fasen uitgerold.
Tot slot is sharding een technische eigenschap van een netwerk, geen waardeoordeel over een munt of token. Crypto-activa vallen in de EU onder de MiCA-verordening, en in België schrijft de FSMA een verplichte risicowaarschuwing voor bij reclame voor virtuele munten; in Nederland houdt de AFM toezicht. Deze uitleg is educatief en is geen beleggingsadvies.
Veelgestelde vragen over sharding
In opzet wel, omdat meer shards meer transacties tegelijk verwerken. In de praktijk hangt de winst af van hoeveel verkeer tussen shards loopt: veel cross-shard-transacties remmen het voordeel af.
Nee. Sharding splitst de basislaag zelf in stukken, terwijl een Layer 2 bovenóp de hoofdketen draait en het resultaat daar later vastlegt. Beide mikken op meer capaciteit, maar op een ander niveau.
Een shard is oorspronkelijk een stuk van een grote database; bedrijven verdelen zo enorme tabellen over meerdere servers. Blockchains hebben het idee overgenomen om het verwerken van transacties te verdelen.
Dat is het kernrisico: een aanvaller hoeft maar binnen één shard de overhand te krijgen, niet over het hele netwerk. Willekeurige en regelmatige herverdeling van deelnemers moet dat moeilijker maken.
Kennischeck
Test je kennis
Beantwoord 5 korte vragen om deze les af te ronden.
Je hebt minstens 4 goede antwoorden nodig.
Bronnen
- www.afm.nl/nl-nl/consumenten — **AFM — consumenteninformatie over beleggen**