Beslissingsmodel: Wanneer blockchain gebruiken?

Posted on: 11/01/2017 by: Kristof Verslype

Blockchain wordt gezien als een disruptieve technologie die de komende jaren een grote impact zal hebben, ook in overheidscontext. Veel bedrijven en overheden zullen dan ook geconfronteerd worden met de vraag of blockchain technologie een meerwaarde kan hebben bij de ontwikkeling van applicaties. Deze vraag wordt het best beken per applicatie, dus case per case. Dit is uiteraard niet evident zonder een grondige kennis van de mogelijkheden en uitdagingen van blockchain. Bovendien is hierbij doorgaans een grondige cryptografische expertise vereist. Om overheden hierbij te ondersteunen, stelt Smals Research in deze blogpost daarom een richtinggevend beslissingsmodel voor. Indien volgens dit model blockchain mogelijks een goede piste is, gaan we graag met u, als overheid, in gesprek om uw applicatie of idee meer in detail te bekijken en de haalbaarheid van een blockchain benadering na te gaan.

De blockchain technologie is nog jong en evolueert snel. Vandaar dat we openstaan om dit model op basis van uw feedback verder te verfijnen.

Een overzicht van het model wordt gegeven in onderstaande figuur. Er worden vijf vragen gesteld die we in de rest van deze tekst zullen bespreken.

 

1. Low performance write operations (in seconds, not milliseconds)?
Indien snelle schrijfoperaties nodig zijn, is het waarschijnlijk geen goed idee om een blockchain te gebruiken. Blockchain technologie is bijvoorbeeld niet geschikt voor high-frequency trading, wat toelaat om aandelen en ander financiële instrumenten aan zeer hoge snelheden te verhandelen. Bitcoin, de killer applicatie voor blockchain, creëert een nieuw blok met de meest recente transacties elke tien minuten en pas na een uur hebben we voldoende vertrouwen dat de transactie definitief in de Bitcoin blockchain opgenomen is. Er bestaan snellere blockchains, zoals Ethereum dat gemiddeld elke 10 seconden een nieuw blok creëert, maar dit is nog steeds veel te traag voor high-speed schrijfoperaties.

2. Should a traditional centralized approach, resulting in a trusted, all-knowing party, be avoided?
De tweede vraag gaat over het vertrouwensmodel. Misschien is er geen enkel bezwaar tegen een gecentraliseerde aanpak, waarbij de centrale partij absoluut vertrouwd wordt, alles kent en alles kan. Dan is er een goede kans dat een gecentraliseerde aanpak goedkoper en sneller zal zijn dan een blockchain benadering. Voor Bitcoin is onafhankelijkheid van banken d.m.v. decentralisatie cruciaal en een belangrijke reden van haar succes. Anderzijds is de meerwaarde van een blockchain voor een overheidstoepassing zoals student@work, die studenten informeert over onder meer het aantal dagen dat ze nog mogen werken, al twijfelachtiger [1].

Indien er op vraag 2 positief geantwoord is, komen we terecht in een benadering die niet gecentraliseerd is. Het traditionele alternatief op een gecentraliseerde aanpak is een gedecentraliseerde aanpak, waarbij meerdere, maar nog steeds een beperkt aantal systemen vetrouwd worden en met elkaar interageren om business goals te realiseren. Een voorbeeld hierbij is de verwerking van medische voorschriften. Het RIZIV is hierbij betrokken, de zeven mutualiteiten, een handvol tariferingsdiensten, ongeveer 5000 apothekers en meer dan 50.000 artsen.

In de context van een niet-gecentraliseerde aanpak volgen vragen 3.1, 3.2 en 3.3 die onafhankelijk van elkaar gesteld worden. Naarmate er op deze vragen meer en sterkere bevestigingen volgen, wordt het gebruik van blockchain technologie interessanter.

3.1. Are transparency, verifiability and/or auditability important?
In een gedistribueerd systeem is er nog steeds vertrouwen nodig in een aantal partijen. Elke van deze spelers kan bijvoorbeeld instaan voor een specifiek aspect van een business proces. Transparantie en verifieerbaarheid zorgen er in dit geval voor dat ook anderen kunnen verifiëren of deze spelers hun werk goed doen. De blockchain laat zo ook toe dat de verschillende vertrouwde partijen elkaar kunnen controleren. Deze controles kunnen in real-time of achteraf gebeuren. In het geval van medische voorschriften kunnen burgers nagaan of hun mutualiteit hun medische voorschriften correct verwerkt heeft. We kunnen ons ook inbeelden dat de data op de blockchain omwille van confidentialiteitsredenen geëncrypteerd zijn, waardoor het aspect van transparantie wegvalt. Eventueel kan dan een auditor leesrechten gegeven worden tot (een deel van) de gegevens.

3.2. Does a traditional decentralized approach result in data consistency issues and/or complex information flows?
Een gevaar bij een traditionele, gedecentraliseerde benadering is het ontstaan van complexe informatiestromen, wat in de praktijk omslachtig kan worden. Bovendien heeft in een dergelijke benadering typisch elke betrokken partij een eigen database die up-to-date gehouden moet worden, wat kan leiden tot consistentie issues. Verschillende partijen kunnen bijvoorbeeld business rules op een net iets andere manier implementeren. Een blockchain benadering vermijdt zowel complexe interacties als consistentie issues over verschillende databases heen. Iedereen met een lokale kopie van de blockchain heeft immers dezelfde data. Dit wordt gegarandeerd door het onderliggende blockchain consensus mechanisme.

3.3. Do we have relatively simple business rules between multiple parties?
Smart contracts laten m.b.v. een blockchain toe om regels tussen verschillende partijen af te dwingen zonder centrale partij. Helaas komt dit tegen een prijs. De variabelen die daarbij betrokken zijn moeten zich in een smart contract bevinden. Dit maakt het lastig om complexe regels, waarbij veel data of vaak veranderende data betrokken is, in smart contracten te steken. Bovendien zijn al deze contractvariabelen, alsook hun volledige historiek, leesbaar voor iedereen die toegang heeft tot de blockchain. Het afdwingen van regels in een smart contract, wordt dus een grotere uitdaging wanneer er ook confidentiële gegevens, zoals persoonsgegevens door het contract opgeslaan en verwerkt worden. Als alternatief kunnen de data geëncrypteerd naar de blockchain geschreven worden en kunnen de business rules lokaal toegepast worden, maar dat maakt het gebruik van een blockchain minder interessant.

In deze blogpost hebben we een eenvoudig model voorgesteld om overheden te helpen bij het antwoorden van de vraag wanneer blockchain technologie een meerwaarde kan hebben bij de ontwikkeling van applicaties. Voor een meer diepgaande analyse kunt u contact opnemen met Smals Research (kristof [punt] verslype [at] smals [punt] be).

[1] Het wordt al interessanter wanneer dit op een blockchain berekend wordt op basis van aangiften die door werknemers op een blockchain geplaatst worden.