In potentie heeft blockchain de capaciteit in zich om de wereld te veranderen op een schaal die te vergelijken is met de komst van internet. Geen wonder dat iedereen wil weten wat blockchain is. Vorige week legde ik de principes en werking van blockchain uit aan verzekeraars. Eerder mocht ik spreken voor accountants, bankiers, IT-auditors, fiscalisten en zo verder.

Logischerwijs zijn de meeste toehoorders vooral benieuwd naar mogelijkheden van blockchain. Maar om die te kunnen overzien, moet je wel eerst weten wat blockchain precies behelst. En voor wie een broertje dood heeft aan simplificaties is het begrijpen ervan best ingewikkeld.

Blockchain valt het beste uit te leggen aan de hand van de eerste en bekendste toepassing ervan:  Bitcoin. Eigenlijk is Bitcoin niets anders dan een digitale munt (de bitcoin) met een digitaal grootboek waarin de transacties van de bitcoins staan. Het grootboek, of liever gezegd het logboek met alle transacties, is de blockchain.

Wat is Bitcoin?

Bijzonder aan Bitcoin is dat iedereen die deelneemt een kopie van het grootboek op zijn computer heeft staan (een distributed ledger). Dit betekent dat iedereen elkaars overboekingen  kan zien. Bij elke overboeking worden alle grootboeken op alle deelnemende computers geactualiseerd en voor iedereen zichtbaar. Dat is dus anders dan bij een bank, waar alleen de bank zelf rekeningen en transacties kan zien.

Bitcoin is zo ontworpen dat er geen vertrouwen nodig is.

Nu vertrouwen mensen hun geld en de overboekingen toe aan banken omdat ze erop vertrouwen dat die ervoor zorgt dat er ook echt wordt betaald. Maar hoe zorg je er in een openbaar netwerk als Bitcoin voor dat het betalingssysteem te vertrouwen is? Met andere woorden: hoe zorg je ervoor dat rekeninghouders ook echt over het geld beschikken dat ze overmaken? Het antwoord is: niet. Bitcoin is zo ontworpen dat er geen vertrouwen nodig is.

Dat werkt zo: wie wil betalen in bitcoins, moet een Bitcoin-portemonnee (een programma) installeren op zijn of haar computer en krijgt van de portemonnee een geheime, persoonlijke code (de zogeheten private key). Met de private key voorzie je transacties van een handtekening. Elke transactie krijgt een eigen, unieke, handtekening. Bitcoin is openbaar dus alle computers in het netwerk controleren vervolgens of de transactie echt is door de bijbehorende private key te toetsen.  Zo is zeker dat de betaler ook echt de betaler is.

Maar dat is niet genoeg. De computers in het netwerk moeten ook controleren of de betaler wel genoeg geld heeft om te betalen. Bij banken gebeurt dit door te kijken naar het saldo. Maar het Bitcoin-netwerk gaat veel verder. Het controleert wat alle betalers ooit ontvangen en betaald hebben door alle transacties na te lopen, helemaal terug tot de eerste transactie in 2009. Zo berekent het netwerk of de betaler genoeg ontvangen heeft en niet teveel heeft gespendeerd om nu nog voor iets te kunnen betalen.

Wat is blockchain?

Wanneer identiteit en vermogen van de betaler zijn geverifieerd, is zeker dat de transactie deugt. Maar er schuilt nog een laatste adder onder het gras, en daarin zit hem de essentie van blockchain: de volgorde van de transacties. De transacties reizen niet allemaal even snel langs alle computers. Hoe voorkom je dan dat iemand dezelfde bitcoin (BTC) twee keer uitgeeft?

Voorbeeld:
Persoon A heeft 5 BTC en koopt een product voor 5 BTC bij persoon B en een ander product voor dezelfde 5 BTC bij persoon C. B en C verzenden het product voordat de transactie is geverifieerd. Maar de transactie van C wordt eerder geverifieerd dan die van B. Dan keuren de computers de transactie voor B  af omdat het geld al is uitgegeven. B is zijn product kwijt en kreeg geen geld. Om dit te voorkomen moeten computers in het netwerk in dezelfde volgorde transacties verifiëren.

De oplossing zit hem in het samenvoegen van de transacties in blokken. Het transactielogboek bestaat dus eigenlijk uit blokken die samen een ketting van blokken, de blockchain, vormen. Hoe weten de computers nu welk blok als eerste aan de beurt is? Welnu, elk blok is voorzien van een cryptografische puzzel. Die puzzel, de cryptographic hash, moet door software worden opgelost middels een complex algoritme voordat de transacties rondgaan voor verificatie. Vergelijk het met een kluis die moet worden geopend met een code.

De oplossing van de puzzel berekenen is onmogelijk. Het antwoord moet de software vinden door het te raden.

De oplossing van de puzzel berekenen is onmogelijk. Het antwoord moet de software vinden door het te raden. Een enkele computer moet daartoe jarenlang raden, maar een netwerk van computers met Bitcoinsoftware doet er gemiddeld tien minuten over. Wanneer een puzzel is opgelost, krijgen alle computers in het Bitcoinnetwerk een seintje dat het gekraakte transactieblok door mag, waarna ze aan de puzzel voor het volgende blok beginnen. Overigens is het kraken van de puzzels ook de manier waarop nieuwe bitcoins op de markt komen; netwerkjes van computers lossen de puzzels op en de zogeheten miners, de eigenaren van de computers, krijgen bitcoins als zij de puzzelrace winnen.

Voordat verkopers B en C hun product verzenden, doen zij er dus goed aan om te wachten tot het blok met hun transacties is geverifieerd. De volgorde manipuleren is praktisch onmogelijk doordat de code van het opgeloste blok wordt opgenomen in het eerstvolgende blok, zoals deze animatie toont. Je zou er voor moeten zorgen dat je de puzzels telkens als eerste oplost. Maar dat vereist meer rekenkracht dan de helft van alle computers in het netwerk en dan nog heb je slechts 50 procent kans.

Waarom is blockchain zo interessant?

Bitcoin draait dus niet om vertrouwen, maar om de zekerheid dat het systeem veilig is. De transacties zijn beschermd door cryptografie. De volgorde is beschermd door blockchain-technologie. En het geheel is veilig doordat alles openbaar is en dus iedereen, of liever eenieders computer, meehelpt met controleren. Dat dit werkt bewijst het feit dat sinds de lancering in 2009 geen transactie is gemanipuleerd of verloren gegaan. En hackers? Ook die zijn er al die tijd niet in geslaagd om het openbaar geprogrammeerde systeem te kraken (zie ook het kader Open source werkt).

Open source werkt

Vijf personen op de hele wereld – onder wie de Nederlander Wladimir van der Laan – kunnen het openbaar geprogrammeerde Bitcoinprotocol aanpassen om de veiligheid te verbeteren. De essentie van open source is dat iedereen kan controleren hoe iets is geprogrammeerd en de zwakke plekken kan uitbuiten of suggesties voor verbetering kan doen. In het geval van Bitcoin doen enkele honderden suggesties voor verbetering. Waarom? Zij hebben bijvoorbeeld zelf bitcoins en een belang bij het instandhouden van Bitcoin.

En toch denk ik niet dat bitcoins de toekomst hebben. Munten, ook bitcoins, zijn alleen iets waard doordat we geloven dat ze iets waard zijn. En het aantal gelovigen is met circa vijf miljoen gedownloade Bitcoinportemonnees op wereldschaal verwaarloosbaar. Bovendien zijn ‘we’ het ook niet eens over de waarde getuige de hevige schommelingen in de koers. Maar de toekomst van blockchain is een ander verhaal.

Munten, ook bitcoins, zijn alleen iets waard doordat we geloven dat ze iets waard zijn.

In de blockchaintechnologie schuilt een enorme belofte. Zoals internet de overdracht van informatie veranderde, zo kan blockchain de overdracht van waarde betalingen veranderen. In het archaïsche bankenstelsel kost het overmaken van bedragen, zeker naar het buitenland, dagen de tijd en moet er een flinke vergoeding worden betaald. Daar komt bij dat banken gemiddeld te maken hebben met tweehonderd storingen per jaar. Met blockchaintechnologie hebben betalingen meteen plaats tegen zeer lage transactiekosten en dat zonder kans op fouten of storingen.

Daarbij blijft het niet. Hypotheken afsluiten, testamenten registreren, een verzekering nemen; dergelijke handelingen zouden door blockchain allemaal zonder professionele dienstverleners kunnen worden geregeld. Checks en balances zijn per slot van rekening te vervangen door blockchaintechnologie, maar daarover in andere blogs meer. Dit blog is mijn eerste van vele over blockchain. Waar het nu om gaat: blockchain heeft zich bewezen, maar staat nog in de kinderschoenen. Vergelijk het maar met internet in 1995.