Wat is blockchain?
Blockchain wordt in de media nog weleens ‘de grootste innovatie sinds het internet’ genoemd. Maar wat is blockchain nou precies?

Om op deze vraag een antwoord te vinden, moeten we de term eerst opdelen in twee delen: block en chain. Het laatste deel is in deze context het meest eenvoudig: een chain is een keten van schakels. Een block chain is dus een keten van blocks. Maar wat is een block? Om dat te begrijpen, is het handig eerst te weten wat een database is, dus we parkeren de uitleg van block even na de uitleg van database.
Database
Een database is een verzameling van gegevens, ingericht om deze gegevens flexibel te doorzoeken en gebruiken. Deze inrichting wordt gekenmerkt door het gebruik van zogenaamde records en columns. Vergelijk die voor het gemak met rijen en kolommen in Excel (trouwens geen database, maar een rekenprogramma).
Stel je bij een record nu een horizontale rij voor van meerdere aaneengesloten cellen, waarin je per cel iets kunt vastleggen. Als zo’n record bijvoorbeeld mij als persoon beschrijft, dan zie je in de eerste cel mijn naam, in de tweede cel (die ernaast staat) mijn leeftijd, in de derde cel die daar weer naast staat mijn BSN et cetera. Als je meerdere personen op die manier beschrijft, ontstaan naast records ook columns. In de eerste column staan dan alle namen, in de tweede de leeftijden en in de derde de BSN-nummers.
Een groep meerdere, gelijksoortige records en columns onder elkaar heet een dataset, database of datafile. Daarin kan van alles worden beschreven: personen (zoals in het voorbeeld), objecten, maar ook transacties of procesgegevens.
Insights-update
Ontvang nieuwe Insights maandelijks in je inbox.
Block
En een block dan? Een block is ook zo’n dataset, database of datafile, maar dan met enkele bijzondere extra kenmerken, waaronder een hash. Een hash is de uitkomst van een wiskundige functie die de concrete inhoud(!) van alle records in een dataset, database of datafile bij elkaar heeft omgerekend naar één aaneengesloten code - de hash dus - met een vast aantal karakters, letters en/of cijfers.
Dit zou een hash kunnen zijn, bijvoorbeeld: 5a3243e20e2c6c58e885a65393e85c64f2e34223c813f9f954246d8ec244c54d
Over hashes
Meer informatie over een hash
Als je van wiskunde houdt, is het aardige van zo’n hash dat het maar één richting op werkt: je kunt via die wiskundige functie van elke willekeurige combinatie van inhoud een hash laten uitrekenen, die bij diezelfde inhoud dus ook altijd hetzelfde is, maar je kunt nooit achterhalen welke inhoud dat was als je alleen die hash kent.
De hash weerspiegelt nu de gehele inhoud van alle records in een block. En als ik nu ook maar één stukje inhoud uit één cel uit één van die records verander, dan verandert de hash dus ook. Daarom is het bij een block eenvoudig via de hash vast te stellen of de inhoud ervan in de tijd gewijzigd is. Dat maakt blocks van nature geschikt voor datasets, databases of datafiles die we liever intact en voor altijd onveranderd willen houden.
Inhoud die je wilt bewaren en beschermen kun je voor extra veiligheid ook nog versleutelen (encrypten). Dat werkt dan trouwens wel twee kanten op. Wie de juiste sleutel heeft, kan de gegevens ook weer teruglezen. Hashes zijn er dus om er zeker van te zijn dat niemand de gegevens eenvoudig wijzigt en encryptie wordt gebruikt om gegevens alleen toegankelijk te maken voor hen die er de sleutel toe hebben.
Keten van blocks
Een blockchain is dus een keten van meerdere blocks. Als we die blocks (met elk een eigen hash) aan elkaar verbinden, dan gebeurt dit via deze hashes. Dit werkt als volgt.
Het eerste block heeft één eigen hash. Het tweede blok dat eraan gekoppeld wordt, heeft twee hashes: de eerste is een kopie van de hash uit het eerste blok en de tweede is de eigen hash van het tweede block. Voor het derde block in de chain werkt dat ook weer hetzelfde: de eerste hash van het derde block is een kopie van de eigen hash van het tweede block en de tweede is de eigen hash van het derde blok.
Confused? Hieronder een sterk versimpeld voorbeeld:
Versimpeld voorbeeld keten van blocks in Blockchain
En zo ziet een blockchain er dan feitelijk uit: een keten van blocks, die via hashes met elkaar verbonden zijn, waarbij de oude hash van de vorige bij de inhoud van de volgende hoort
Dus als ik iets in een van de blocks zou veranderen, dan veranderen alle hashes die erna komen ook en wordt deze inconsistentie over de gehele chain na het gewijzigde block zichtbaar. Op deze manier vormt een blockchain een min of meer samengestelde dataset, database of datafile, van een niet-muteerbare soort (ook wel een grootboek of ledger genoemd). Niet-muteerbaar, omdat wijzigingen bij voorkeur alleen plaatsvinden als dit de toevoeging van een nieuw block betreft en geen veranderingen in wat er al was.
Wantrouwen
Een blockchain blijft daarbij, hoe gek dit ook klinkt, het veiligst of het meest consistent als belanghebbenden met een tegengesteld belang er gebruik van maken. Ofwel, het wantrouwen in elkaar zorgt er van nature voor dat men er het grootst mogelijke vertrouwen in moet hebben dat de inhoud in de chained blocks kloppen en blijven kloppen. Dat maakt blockchain ook zo aantrekkelijk voor toepassingen waarin vertrouwen (of eigenlijk wantrouwen) een cruciale rol speelt: crypto currency met een bepaalde waarde, contracten met bepaalde kenmerken, transacties met een bepaalde inhoud, of bindende eenheden als stemmen bij een referendum.
Related articles
-

De blockchain: waar blijft Europa?
-

Blockchain basistoepassingen: cryptocurrency
Blockchain is voor decentrale toepassingen, waarin vertrouwen (of eigenlijk wantrouwen naar elkaar) een cruciale rol speelt. Decentrale vastlegging van geldstromen - dus zonder tussenkomst van een bank - is dan een goede eerste mogelijkheid, omdat niemand elkaar daarin blindelings vertrouwt.
-

Blockchaintransparatie kans voor overheid?
In 2020 publiceerde accountants- en adviesorganisatie BDO een onderzoeksrapport (uitgevoerd door Publicum) met gegevens over de stand van zaken wereldwijd rond de blockchain in de publieke sector. Dit rapport geeft een goed inzicht in hoe dit onderwerp weliswaar bovenaan de agenda staat, maar nog geen echte opgang maakt. De helft van de ondervraagde organisaties heeft stappen gezet, maar slechts 6% steekt ook daadwerkelijk geld in projecten. Opmerkelijk is dan ook dat BDO Nederland naar aanleiding van deze publicatie meldt dat volgens de VNG (Vereniging van Nederlandse gemeenten) 100 gemeenten pilots doen met blockchain.