Als ik bij onze klanten op bezoek kom om het over blockchainimplementatie te hebben, stellen zij dikwijls de volgende vraag: ‘Maar hoe zit het dan met de hoge energieconsumptie?’. Dit is een veelvoorkomende misvatting, want slechts sommige blockchainimplementaties zijn energieslurpers. In dit blog leg ik uit hoe dat komt.
Blockchaintechnologie is een facilitator voor vertrouwen in gedistribueerde systemen. Hoe dat vertrouwen wordt opgebouwd, bepaalt of er grote hoeveelheden energie voor nodig zijn. De grootste uitdaging van blockchain is namelijk het consistent houden van de datasets in het netwerk, zodat iedereen een identieke en onweerlegbare versie van de waarheid heeft.
Een kernconcept in het begrijpen van de energieconsumptie van blockchain is het consensus algoritme. Deze algoritmes hebben een fundering in cryptografie om ervoor te zorgen dat er overeenstemming is over de gedistribueerde data. Elk consensus algoritme is een stemproces waarin iedere processor een stem vertegenwoordigt. Om de veiligheid te bewaken, wordt er gerekend op een meerderheidsbelang, geëffectueerd via gedistribueerde programmatuur.
Schaalbaarheid versus prestatie
De allereerste blockchainnetwerken (bijvoorbeeld Bitcoin en Ethereum) zijn permissionless. Dit betekent dat iedereen kan deelnemen aan het consensus algoritme. Het grootste voordeel van zo’n publieke inrichting is dat het erg veilig is. Hoewel een hoger aantal mensen bij een verkiezing de uitkomst sterker maakt, zorgt dit er ook voor dat de telling complexer wordt en langer zal duren. Dit resulteert erin dat deze netwerken veel trager zijn dan gecentraliseerde oplossingen. Dit tekent de belangrijkste trade-off bij blockchainimplementatie: schaalbaarheid versus prestatie.
Permissioned netwerken draaien echter deze trade-off om, door hoge prestaties te leveren, maar zijn slecht schaalbaar op het gebied van consensus. Om die reden worden deze netwerken enkel ingezet door consortia waarbij de deelnemers van te voren bekend zijn en begrensd worden door het systeem.
Of een netwerk permissionless of permissioned is, hangt in grote mate af van het consensus algoritme. Er zijn veel verschillende consensus algoritmes, elk met hun eigen impact op energieconsumptie. Hieronder bespreek ik de belangrijkste vier: Proof of work, Proof of stake, Practical Byzantine fault tolerance en Directed acyclic graph.
1. Proof of work
Proof of work (PoW) is het allereerste en nog steeds meest gebruikte consensus algoritme. Zoals de naam doet vermoeden, maakt PoW gebruik van arbeid om het meerderheidsbelang te verzekeren. Vaak berust PoW op het oplossen van een lastige, wiskundige puzzel, met een statistische kans op succes evenredig aan de hoeveelheid rekenkracht. Zodra iemand, ook wel een miner genoemd, het juiste antwoord vindt, heeft deze persoon recht op een beloning voor het verzekeren van het gedistribueerde vertrouwen. Dit type blockchainnetwerken is het meest geschikt voor netwerken met een grote geografische spreiding, waar uitwisseling geschiedt tussen individuen die elkaar niet kennen. FinTech is een voornaam voorbeeld hierin.
Terwijl een miner op de lange termijn geen negatieve effecten ondervindt bij het toevoegen van rekenkracht, vergroot het wel de kans op het oplossen van de puzzel op de korte termijn. Met een beloning als gevolg. Omdat rekenkracht afhankelijk is van energie, groeit de energieconsumptie evenredig. En dat is precies wat er bijvoorbeeld bij Bitcoin is gebeurd, resulterend in een energieconsumptie gelijk aan een middelgroot Europees land.
2. Proof of stake
De belangrijkste concurrent voor PoW is proof of stake (PoS). PoS belooft ook een beloning voor het verzekeren van het vertrouwen. De kans op het oplossen van de puzzel is echter omgekeerd verbonden aan een hoeveelheid ingezette waarde. Op deze manier groeit de beloning veel harder met het inzetten van waarde dan met het inzetten van additionele rekenkracht. Als gevolg blijft de energieconsumptie veel lager dan bij PoS. PoS wordt gezien als de opvolger van PoW en focust op dezelfde use cases, al is een veel bredere toepassing niet ondenkbaar.
3. Practical Byzantine fault tolerance
Byzantine fault tolerance (BFT) is een bekende theorie uit de ICT die vaak wordt genoemd in de context van het ‘Byzantijnse generaalsprobleem’. In deze probleemstelling moeten generaals tot een gezamenlijke strategie komen, op basis van informatie van onderofficieren met een onbekend aantal verraders in de gelederen. Practical BFT – bedacht om BFT te bereiken in gedistribueerde netwerken – is een cryptografisch-veilig stemproces dat werkt met een tweederdemeerderheidsbelang. pBFT is kwetsbaar voor een Sybil aanval, waarbij een aanvaller een groot aantal accounts aan kan maken en de stemming zo naar zijn/haar hand kan zetten. Daarom zijn consensus algoritmes afgeleid van pBFT enkel geschikt voor permissioned netwerken, waarbij consortia vooraf afgebakend worden. Deze netwerken vind je bijvoorbeeld in utiliteitsmarkten, logistiek/supply chains en eHealth.
4. Directed acyclic graph (DAG)
Een van de nieuwste consensus algoritmes maakt gebruik van directed acyclic graph (DAG), of, zoals voorgesteld door het IOTA netwerk, the Tangle. DAG maakt van elke deelnemer in het netwerk een ‘miner’ door transacties afhankelijk te maken van twee eerdere transacties. De eerdere transacties worden gekoppeld door een minuscule hoeveelheid PoW, zodat de energieconsumptie laag blijft. De veiligheid wordt geborgd door het grote aantal ‘kiesgerechtigden’ in het stemproces en de voor-wat-hoort-wat cultuur. In dit soort netwerken zijn het niet de blocks, maar de transacties die de keten vormen. DAG-netwerken zijn dus geen blockchains, maar vallen wel onder de distributed ledger technologieën (DLT’s).
Het voornaamste probleem met DAG-oplossingen is het voorkomen dat bepaalde transacties steeds opnieuw worden gebruikt als referentie. Omdat DAG oneindig schaalbaar én transactiekostenloos beloofd te zijn, wordt het vaak in machine-tot-machine scenario’s besproken. Denk hierbij aan autonoom vervoer, slimme infrastructuur, huishoudapparatuur en The Internet of Things.
Geen generieke oplossing voor elke use case
Kortom, blockchain/DLT komt in vele soorten en smaken, met elk hun eigen karakteristieken, voordelen en nadelen. Sommige use cases vereisen lage energieconsumptie, terwijl andere gigantische netwerken omvatten. Tot op heden is er nog geen generieke oplossing voor elke case. Mocht een platform dus niet aansluiten bij uw use case, dan is de kans groot dat een andere dat wel doet, nu of in de toekomst.
Net als het internet kunnen we blockchain niet in een dag perfectioneren. Terwijl de techniek groeit, is een zoektocht gaande naar een oplossing voor het schaalbaarheid-prestatieprobleem. Tot die tijd zijn we afhankelijk van gedegen onderzoek en bewuste platformselectie voor optimale blockchaindesigns.
Deze blog is ook veschenen op Binnenlands Bestuur.