We moeten beter leren begrijpen hoe we de met gedistribueerde transacties werkende blockchain-technologie kunnen gebruiken.
De Amerikaanse wiskundige en winnaar van de A.M. Turing-award Leslie Lamport behoort tot de grondleggers van distributed computing en distributed algorithms. In 1978 definieert hij distributed computing als volgt: “A distributed system consists of a collection of distinct processes which are spatially separated, and which communicate with each other by exchanging messages. A network of interconnected computers such as the ARPANET is a distributed system”1.
In een tijd waarin nog geen sprake was van het internet, het Internet of Things, of advanced manufacturing, werkte hij aan gedistribueerde algoritmes die deze ontwikkelingen mede mogelijk hebben gemaakt. De huidige hype rond blockchaintechnologie is zonder het werk van deze founding father van distributed computing absoluut ondenkbaar.
Belangrijk in de ontwikkeling van distributed computing is dat een geheel bestaande uit gedistribueerde systemen moet kunnen blijven functioneren, ook als een of meer onderdelen daarvan niet meer (betrouwbaar) bijdragen aan het functioneren van het systeem als geheel. Lamport is duidelijk in zijn stelling dat betrouwbaar functioneren van een gedistribueerd systeem slechts is te bereiken door tijd te gebruiken als fundamenteel onderdeel van deze betrouwbaarheid2.
Het systeem als geheel kan alleen blijvend betrouwbaar functioneren wanneer de afzonderlijke onderdelen van het systeem voortdurend in meerderheid overeenstemming bereiken over het functioneren van het systeem als geheel. Voor het functioneren van een gedistribueerd systeem is het daarom belangrijk dat alle betrokken onderdelen zelf in een ‘ledger’ bijhouden hoe en met wie zij transacties uitvoeren door het uitwisselen en delen van data en informatie. De transacties die zijn opgenomen in de gedistribueerde ledgers moeten voor alle onderdelen inzichtelijk zijn en blijven, en een overzicht bieden over het geheel aan goedgekeurde transacties. Overeenstemming verkrijgen tussen verschillende onderdelen in een systeem vormt in de tijd van Lamport een nieuw en ingewikkeld vraagstuk. In 1982 beschrijft hij dit consensusprobleem samen met Shostak en Pearce in een artikel en benoemt het daarin als het Byzantine Generals’ Problem3. Gezamenlijk werken zij een algoritme uit dat de basis legt voor een betrouwbare overeenstemming tussen in tijd en ruimte verspreide onderdelen van een systeem. Essentieel in de uitgewerkte oplossing is het idee dat voor het verkrijgen van overeenstemming een minimum van drie plus één onderdelen aanwezig moet zijn en onderling gekwalificeerde boodschappen worden uitgewisseld. In 1998 voegt Lamport aan dit consensusprincipe een protocol toe dat de wijze van stemmingen regelt die noodzakelijk zijn voor het bereiken van overeenstemming tussen de verschillende onderdelen binnen een systeem. Dit laatste protocol, ook wel bekend als het Paxos-algoritme4, gaat onder andere in op de vraag hoe de stemming tussen verschillende onderdelen moet worden uitgevoerd, hoe de resultaten van stemmingen tussen onderdelen kunnen worden vastgelegd in centrale en decentrale ledgers en hoe de consistentie van de vastgelegde informatie kan worden gewaarborgd.
Blockchaintechnologie
Zonder het baanbrekende werk van Lamport c.s. op het vlak van distributed computing en distributed algorithms zou er op dit moment geen discussie bestaan over de mogelijkheden van blockchaintechnologie. De bekendste toepassing die hier tot nu uit is ontstaan, wordt toegeschreven aan Satoshi Nakomoto5: de bitcoin. De stormachtige ontwikkeling van de blockchain als toepassingsmogelijkheid voor het bepalen van bijvoorbeeld waarde, currency, dataopslag in de cloud of contracten, heeft in de jaren daarna veel aandacht gekregen. Pas in de afgelopen twee jaar is een toenemende belangstelling merkbaar voor de mogelijkheden van blockchaintechnologie in ontwikkelingen als het Internet of Things, (mobile) healthcare en advanced manufacturing.
Een notitie van Deloitte6 omschrijft blockchaintechnologie als: “a new solution to a more challenging version of the Bynzantine Generals problem that includes the ability to add participants over time. A blockchain is a digital distributed transaction ledger, with identical copies maintained on multiple computer systems controlled by different entities”. Voor Melanie Swan7 vormt blockchaintechnologie een sleutelinnovatie in de ontwikkeling van nieuwe architecturen voor transacties tussen onderling verbonden en gedistribueerde systemen: “The blockchain allows the disintermediation and decentralization of all transactions of any type between all parties on a global basis”. Voor Swan bestaat de essentie van de blockchain uit gedecentraliseerde ledgers die een transparante structuur mogelijk maken van vastgestelde transacties: “the database that is shared by all network nodes, updated by miners, monitored by everyone and owned and controlled by no one”. Fysieke nodes in een netwerk, zoals computers, smartphones, sensoren en bijvoorbeeld apparaten als smart televisies, koelkasten en auto’s kunnen zo onderling worden verbonden door software en gedistribueerde algoritmes die zelf zorgdragen voor overeenstemming bij transacties tussen deze nodes. Voor Swan bestaan de blokken van de blockchain uit: “groups of transactions posted sequentially to the ledger – that is, added to the chain. Blockchain ledgers can be inspected publicly with block explorers, internet sites where you can see a transactions stream by entering a blockchain address (a user’s public-key adres)”.
Distributed Computing, Blockchain en IoT
Velen zijn het erover eens dat de bitcoin slechts een eerste stap is op weg naar meerdere toepassingen in een diversiteit aan sectoren. Een notitie van Goldman Sachs geciteerd door Williams-Grut8 stelt bijvoorbeeld: “While the Bitcoin hype cycle has gone quiet, Silicon valley and Wall Street are betting that the underlying technology behind it, the Blockchain can change well everything”. De rol van Silicon Valley bij het ontwikkelen en vormgeven van de blockchaintechnologie is groot. Onderwerpen als het Byzantine Generals’ Problem en het Paxos-algoritme hebben bijvoorbeeld een grote rol gespeeld in de ontwikkeling van bijvoorbeeld cloud computing en de opslag van data in de cloud. Het is daarom niet verbazingwekkend dat Google, Microsoft en Amazon een groot belang hebben bij de doorontwikkeling van het concept van distributed computing. Ook Philips Healthcare heeft onlangs aangekondigd onderzoek te gaan doen naar potentiële gebruiksmogelijkheden van blockchaintechnologie bij het uitwisselen en delen van data en informatie tussen medische toepassingen. IBM investeert veel tijd en geld in het mogelijk maken van een blockchain voor het Internet of Things en werkt daarin samen met onder andere Samsung. Voor IBM wordt de basis van huidige informatierevolutie gevormd door: “the very humble work of transaction processing. From phone calls to electricity metering to airline reservations, each is a transaction to be processed”9. De reeds bestaande groei van geautomatiseerde transacties zal volgens IBM exploderen door de ontwikkeling van het Internet of Things en advanced manufacturing. De exponentiële groei van het aantal objecten dat wordt verbonden met het internet en daarbinnen informatie uitwisselen, vraagt volgens IBM om nieuwe paradigma’s zoals de blockchain of distributed computing. In de verdere ontwikkeling van een gedecentraliseerd Internet of Things is de blockchain volgens IBM: “the framework facilitating transactions processing and coordination among interacting devices. Each manages its own roles and behavior, resulting in an Internet of Decentralized, autonomous things – and thus the democratizing of the digital process”.
Conclusie
Zoals Melanie Swan stelt: “Perhaps most centrally, the blockchain is an information technology”. De theoretische ontwikkeling van deze informatietechnologie kent al een ontwikkeling van decennia. Ondanks de fundamentele doorbraken die op dit vlak zijn gedaan en de eerste successen die zijn behaald kent het gebied van distributed computing en gedistribueerde algoritmes nog vele praktische en theoretische vraagstukken. Voordat deze vorm van informatietechnologie wereldwijd kan worden toegepast in ontwikkelingen als het Internet of Things, (mobile) healthcare en advanced manufacturing is het van belang dat we beter leren begrijpen hoe een dergelijk nieuwe en op technologie gebaseerde ecologie zich in de tijd kan ontwikkelen.
Noten:
1 Lamport L. (1978) Time, Clocks, and the ordering of events in a distributed system. Communications of the ACM. July 1978 Volume 21, number 7, pp. 558-565
2 Wensley J.H., Lamport L., Goldberg J., cs. (1978) SIFT: Design and analysis of a fault tolerant computer for aircraft control. Proceedings of the IEEE, vol. 66, no.10 October 1978, 1240-1255
3 Lamport L., Shostak R. and Pease M. (1982) The Byzantine Generals Problem
4 Lamport L. (1998) The Part-Time Parliament . This article appeared in ACM Transactions on Computer Systems 16, 2 May 1998), pp. 133-169. Minor corrections were made on 29 august 2000
5 Nakomoto S. (2008) Bitcoin: A Peer-to-Peer Electronic Cash System. https://bitcoin.org/bitcoin.pdf
6 Schatsky D. and Muraskin C. (2015) Beyond Bitcoin. Blockchain is coming to disrupt your industry. Deloitte University Press.
7 Swan M. (2015) Blockchain. Blueprint for a new economy. Sebastopol, CA, USA, O’Reilly Media ISBN 978141920497
8 Williams-Grut O. (2015) Goldman Sachs:‘The blockchain can change …. well everything’. Business Insider UK. December 2, 2015
9 IBM Institute for Business Value Executive Report(2015) Device Democracy. Saving the future of the Internet of Things