Blog

Blockchain: niet alleen een hype – deel 3 van 3

In de twee eerdere blogs uit deze serie over blockchain, ben ik ingegaan op wat het nu eigenlijk is, wat het bijzonder maakt en wanneer het gebruikt kan worden en wanneer juist niet. Dit laatste blog richt zich meer in detail op de toepassingen, transacties en platformen in relatie tot blockchain.

Toepassingen

Zoals eerder besproken is blockchain een beheer-instrument voor transacties. Bij transacties kun je denken aan eigenlijk aan alles wat overgedragen kan worden: geld, waardepapieren, intellectueel eigendom, transport-documenten etc. Denk bijvoorbeeld aan het verhandelen van aandelen, zonder centrale beurs. Of aan het vastleggen en beschikbaar stellen van intellectueel eigendom, zonder dat Buma Stemra erop hoeft toe te zien. Er kan veel papierwerk en geld bespaard worden in logistieke ketens door alle overdrachtsmomenten van goederen via een blockchain te doen. Door huiseigendom in een blockchain op te slaan kan het kadaster overbodig gemaakt worden. En derde partijen zijn niet nodig voor het vergaren en eventueel weer terugstorten van geld via crowd-funding.

Een heel andere toepassing is het beveiligen of beschikbaar stellen van data. Denk aan een elektronisch patiënt dossier waarvan de patiënt zelf de eigenaar en zelf kan bepalen wie toegang tot welke data heeft. Of Internet-of-Things (IoT), waar apparaten hun informatie delen via de blockchain.

De eigenaar van de data krijgt een unieke private key, die de sleutel tot de data vormt. Via crypto-technologieën kunnen op basis daarvan publieke sleutels worden verstrekt aan specifieke partijen, bijvoorbeeld de huisarts. Op basis daarvan krijgt deze toegang tot een specifiek deel van de data. De rest van de deelnemers zorgt via ‘hashes’ (zie ook het tweede blog uit deze serie “Wanneer pas je blockchain toe. En wanneer niet”) voor de controle dat de data niet ongewenst aangepast wordt, zonder zelf de data daarvoor te hoeven kennen.

Transacties

Transacties worden chronologisch vastgelegd. Bijvoorbeeld in het geval van het registreren van copyright is dit zeer relevant; bij een conflict over intellectueel eigendom is het essentieel te weten wie de eerste registratie deed. Als een transactie is uitgevoerd is deze onmogelijk meer terug te draaien. Dat is een van de basisprincipes van blockchain. Het is mogelijk om verschillende typen transacties binnen een enkele blockchain te beheren. Denk bijvoorbeeld aan transacties voor het registreren van nieuw intellectueel eigendom en aan transacties voor het gebruik ervan tegen betaling.

De blockchain valideert transacties alvorens ze uit te voeren tegen geprogrammeerde regels: een Bitcoin-deelnemer bijvoorbeeld kan natuurlijk niet meer Bitcoins overdragen dan dat deze in bezit heeft. Bij gebrek aan tussenpersoon worden deze validaties door de blockchain zelf uitgevoerd, en wel door specifieke blockchain-deelnemers zelf, de zogenaamde ‘miners’. Miners mogen natuurlijk geen partij zijn in de betreffende transactie, dat zou fraude in de hand werken.

Voor elk nieuwe block selecteert de blockchain de miners die de transacties mogen valideren. De keuze is semi-willekeurig. De kans van een deelnemer om gekozen te worden, wordt bepaald op grond van een algoritme. Voorbeelden van algoritmes zijn ‘Proof Of Work’ (PoW) en ‘Proof of Stake’ (PoS). PoW gaat uit van de hoeveelheid processing power die een miner heeft. Hoe meer power iemand kan bieden, hoe groter de kans verkozen te worden. PoS gaat uit van de betrokkenheid van de deelnemer en kijkt naar de hoeveelheid transacties waarbij deze in het verleden betrokken was.

De blockchain moet natuurlijk zorgen dat het risico op manipulatie minimaal is. Zo dienen miners niet te vaak aan de beurt te komen, waardoor ze te veel invloed kunnen uitoefenen.

Het valideren van transacties en het genereren van hashes en blocks kost veel processing power. En dus geld. Miners worden door veel blockchain-platforms beloond met een fee (ook wel ‘gas’ genoemd). Meestal is dat uitgedrukt in crypto-currency van die betreffende blockchain. Bitcoin creëert daarvoor elke keer nieuwe Bitcoins, die aan de miner worden uitgekeerd. Ander blockchains – zoals Etherium – rekenen bijvoorbeeld een vergoeding aan degene die een transactie definieert of initieert.

Blockchain platforms

Bitcoin is de oudst bekende blockchain applicatie. En omdat Bitcoin een opensource product is, ook het oudste blockchain-platform. Immers, een eigen blockchain toepassing maken is mogelijk door wijzigingen of extensies aan te brengen aan de open source code. Validatieregels staan hard in de code gecodeerd. Bitcoin is vanwege de PoW-gebaseerde arbeidsintensieve mining methode erg duur en traag. Bitcoin wordt gezien als een 1e generatie blockchain product.

2e generatie blockchain platforms proberen deze nadelen te omzeilen. De validaties op het PoS-principe maakt de transacties veelal goedkoper en sneller. Een ander belangrijk verschil is dat de nieuwe platforms gebruikers toe staan om zelf transactie-validatie-regels te schrijven en deze toe te voegen aan de blockchain. Zo kan een eigen toepassing worden gebouwd zonder de code van het platform zelf te wijzigen. Veel blockchains bieden daarnaast een programma interface (API) waarmee een gebruikersinterface ontwikkeld kan worden voor de deelnemers.

De transactie-validatie-regels worden geschreven in een script-taal. Dit kan een bestaande programmeertaal zijn, maar ook een speciaal ontworpen taal, ontdaan van alle overbodige franje.

De platforms bieden doorgaans faciliteiten om deze gebouwde scripts te kunnen testen. Je kunt je voorstellen dat dit geen overbodige luxe is wanneer je validatie-code door wellicht miljoenen transacties wordt aangeroepen. Je wilt niet dat daar iets fout gaat. Voorbeelden van nieuwere platforms zijn onder andere Hyperledger, Corda, OpenChain, Ethereum, NXT en MultiChain.

 

Eerder verschenen in deze serie:

Deel 1: Wat is een blockchain en wat maakt het bijzonder?

Deel 2: Wanneer pas je blockchain toe? (En wanneer niet?)

Harald van der WeelBlockchain: niet alleen een hype – deel 3 van 3

Related Posts