Distributed en permissionless: hoe zit een blockchain in elkaar?

Als niemand de baas is van Bitcoin, waar komen al die bitcoins dan vandaan? Ze worden door miners gevonden, hoor je vaak, maar wat betekent dat dan?

Deelnemers aan een crypto-netwerk mogen munten maken, als ze in ruil daarvoor de integriteit van het netwerk bewaken, en van alle transacties controleren of ze aan de regels voldoen. Dat is nodig, juist omdat niemand de baas is.

In ons dossier over consensus bekijken we hoe dit in verschillende blockchains werkt. In dit eerste artikel beginnen we met wat dieper onderzoeken hoe een blockchain in elkaar zit.

Distributed en permissionless: hoe zit een blockchain in elkaar?
0%
Bert Slagter
Door Bert Slagter

Blockchain

Een blockchain is een grootboek, een administratie van transacties. Aan het grootboek worden alleen maar transacties toegevoegd, er wordt niets gewijzigd of verwijderd.

Die transacties worden gegroepeerd in blocks, waarbij elk block verwijst naar het vorige block. Zo vormen ze een lange ketting van blocks, een blockchain.

Deze structuur bestaat al sinds de jaren '50 van de vorige eeuw. De uitvinding van de Bitcoin voegde er in 2008 twee dingen aan toe.

Distributed

Een grootboek ligt traditioneel bij een centrale partij die de baas is over dat grootboek en bepaalt wat erin staat. Denk aan een bank of een overheid. Dat is kwetsbaar. Als die centrale partij kwaad wil of verdwijnt, is het grootboek niet meer te vertrouwen of zelfs helemaal weg.

Bitcoin gaf elke deelnemer in het bitcoin-netwerk een volledig exemplaar van het grootboek, en gaf iedereen het recht om daar transacties aan toe te voegen. Niemand is de baas, iedereen weet en kan evenveel. Niet gecentraliseerd maar distributed.

Permissionless

Als elke deelnemer transacties mag toevoegen, moet elke deelnemer betrouwbaar zijn. Dat kun je natuurlijk bereiken door alleen betrouwbare deelnemers toe te staan. Zo'n blockchain is dan permissioned. Dat is kwetsbaar. Als er één foute deelnemer tussendoor glipt is je grootboek niet meer te vertrouwen.

Satoshi Nakamoto, de bedenker van Bitcoin, beschreef in 2008 hoe een munt dit probleem kan oplossen.

De munt dient als beloning voor het controleren of transacties en blocks aan alle regels voldoen. Zo moet de eigenaar van een rekening toestemming hebben gegeven voor de transactie, en het geld moet maar één keer kunnen worden uitgegeven.

Het is in ieders eigen belang om streng te controleren of anderen zich aan de regels houden, want de waarde van hun munten hangt af van de betrouwbaarheid van het grootboek.

Door dit mechanisme kan iedereen op eigen initiatief deelnemer worden aan het netwerk. Geen centrale toestemming maar permissionless.

Hoe krijg je die beloning?

Een nieuw block met transacties wordt gemaakt door één van de deelnemers in het netwerk. Om een block te mogen maken moet die deelnemer twee dingen doen.

  1. Eerst moet hij de nieuwe transacties die in het nieuwe block zullen komen controleren op geldigheid.
  2. Daarna moet hij met het block dat hij van plan is te maken een puzzel oplossen. Het oplossen van die puzzel moet iets kosten. In het geval van Bitcoin kost het veel rekenkracht en dus electriciteit. Later zullen we zien dat er ook alternatieve puzzels zijn.

De deelnemer die de puzzel oplost, maakt het volgende block en vertelt tegen de rest van het netwerk dat er een nieuw block is gemaakt. Meteen stopt iedereen met puzzelen en begint aan de puzzel voor het volgende block.

Bij het maken van het block mag de deelnemer een vooraf bepaald aantal munten laten ontstaan, en die aan zichzelf geven. Dit is de block reward, de beloning voor het werk.

Consensus

Het oplossen van de puzzel en de beloning ervoor vormen het mechanisme om de deelnemers samen consensus te laten bereiken over de inhoud van het grootboek.

Proof-of-work en proof-of-stake zijn twee soorten puzzels. We noemen ze daarom ook wel consensus-algoritmen of consensus-methoden.

In de komende artikelen zullen we deze mechanismen in meer detail bekijken. Maar voordat we dat doen moeten we eerst onderzoeken wat een hash is. Want die speelt een belangrijke rol in de puzzels die opgelost moeten worden.

Dit artikel heeft deze tags

Over de auteur

Bert Slagter

Bert Slagter

Medeoprichter van LekkerCryptisch. Achtergrond in informatica en natuurkunde. Bouwt mooie software, teams en bedrijven. Student van geopolitiek, macro-economie, complexe systemen en waarschijnlijkheid. Op zoek naar het signaal in de ruis.

Steun

LekkerCryptisch wordt gesteund door BLOX.

Altijd op de hoogte