Een maximaal aantal transacties per seconde
Blockchains kunnen slechts een beperkt aantal transacties per seconde verwerken. Het bitcoin-netwerk bijvoorbeeld kan ongeveer zeven transacties per seconde verwerken. Wil blockchaintechnologie zich wereldwijd adopteren, dan moet het veel meer gegevens kunnen verwerken, en met hogere snelheden, zodat meer mensen het netwerk kunnen gebruiken zonder dat het te traag of te duur wordt om te gebruiken. Het fundamentele ontwerp van veel gedecentraliseerde netwerken betekent echter dat toenemende schaalbaarheid de neiging heeft de decentralisatie of veiligheid te verzwakken. Dit staat bekend als het blockchain-trilemma. Ontwikkelaars die dit probleem willen oplossen, experimenteren met verschillende consensusmechanismen en schaalbaarheidsoplossingen, zoals sharding en sidechains.
In basistermen is een blockchain een gedistribueerd digitaal grootboek. Blokken gegevens worden in chronologische volgorde opgeslagen. De blokken zijn met elkaar verbonden en beveiligd door cryptografische bewijzen. De toepassing van deze technologie in verschillende sectoren verandert nu al onze manier van werken en leven. De gedachte is dat gedecentraliseerde en veilige blockchains een wereld mogelijk maken waarin we niet afhankelijk zijn van derden om netwerken of markten te laten functioneren. Deskundigen zijn het er echter over eens dat er een kernprobleem moet worden opgelost, wil deze technologie op grotere schaal worden toegepast. Het probleem in kwestie staat bekend als het “blockchain-trillema”.
Deze term werd populair gemaakt door Ethereum medeoprichter Vitalik Buterin. Om het blockchain-trillema te begrijpen is het van belang bewust te zijn van drie verschillende elementen die wenselijk zijn in een blockchain: decentralisatie, veiligheid en schaalbaarheid. Het blockchain-trilemma verwijst naar het idee dat het moeilijk is voor blockchains om optimale niveaus van alle drie de eigenschappen tegelijk te bereiken. Verhoging van de ene leidt meestal tot verzwakking van de andere.
Wat is decentralisatie?
Bitcoin en soortgelijke blockchain-netwerken zijn door hun ontwerp gedecentraliseerd. De hele structuur is zodanig dat er niet één persoon of organisatie de leiding heeft. Het is eerder gedecentraliseerd. De netwerklaag staat open voor iedereen die wil deelnemen. Bijgevolg is dat de controle volledig gedistribueerd is en niet in handen van één enkele entiteit. Iedereen heeft toegang tot dezelfde gegevens. Als iemand probeert het systeem te bedriegen door de gegevens in zijn voordeel te veranderen, zal de rest van de deelnemers de foute gegevens verwerpen.
Dit kan behoorlijk technisch worden, maar laten we het bitcoin-netwerk als voorbeeld nemen. Er is geen derde partij die de controle heeft. Vergelijk dit met de noodzaak van banken in het financiële systeem. De banken zorgen voor vertrouwen tussen mensen die transacties doen, en zorgen ervoor dat alle gegevens correct worden bijgehouden. De bitcoin blockchain daarentegen deelt al die gegevens met iedereen op het netwerk, zodat ze gecontroleerd en bevestigd kunnen worden, voordat ze worden toegevoegd aan de digitale database. Het resultaat is een systeem dat kan bestaan zonder tussenkomst van derden.
Eén ding moet echter worden opgemerkt: door de manier waarop deze gedistribueerde systemen werken – waarbij een groot aantal deelnemers het eens moet zijn over de geldigheid van de gegevens – kunnen de transactietijden traag zijn door de manier waarop informatie moet worden gedeeld en verwerkt. En dus moeten blockchains worden opgeschaald, en zullen in staat moeten zijn om meer gegevens met een hogere snelheid te verwerken. Bovendien geldt de decentraliteit alleen als de onderliggende blockchains veilig zijn. Als een blockchain niet veilig is, kan een kwaadwillende de controle overnemen en de gegevens in zijn voordeel veranderen. Dit leidt tot het tweede deel van het trilemma: beveiliging.
Wat is blockchainbeveiliging?
Het maakt niet uit hoe gedecentraliseerd een blockchain is als het aan beveiliging ontbreekt. Een goed blockchainnetwerk moet bestand zijn tegen aanvallen van kwaadwillenden. Gecentraliseerde systemen ontlenen hun veiligheid aan het feit dat het systeem gesloten is. Wie de controle heeft, kan garanderen dat de gegevens vrij zijn van inmenging. Maar hoe wordt dit bereikt in een gedecentraliseerd systeem waaraan iedereen kan deelnemen?
Het is een ingewikkeld onderwerp, maar we kunnen terugkeren naar bitcoin als voorbeeld van gedecentraliseerde blockchainbeveiliging. De bitcoin-blockchain gebruikt een combinatie van cryptografie en een netwerkconsensusmechanisme dat Proof of Work (PoW) heet. In termen van cryptografie heeft elk blok een soort digitale handtekening. Elke poging om de gegevens te veranderen zou snel door de rest van het netwerk worden geïdentificeerd. Het Proof-of-Work consensusmechanisme is een ander deel van de puzzel. Het helpt het grootboek van de cryptocurrency te beveiligen. Kort gezegd, het doel van PoW is het valideren van nieuwe transacties en toevoegen aan het grootboek door middel van een activiteit die bekend staat als mining. Hierbij wordt rekenkracht gebruikt om een wiskundige puzzel op te lossen. Een deel van het proces vereist dat deze computers talrijke hashingfuncties uitvoeren. Dit speelt een rol bij de schaalbaarheid, want het PoW-mechanisme is veilig maar relatief traag.
Merk ook op dat hoe meer deelnemers (knooppunten) er in het netwerk zijn, hoe veiliger het is. Hoe groter het aantal partijen, hoe moeilijker het wordt voor één kwaadwillende om de controle over het systeem over te nemen. Kortom, beveiliging is een fundamentele voorwaarde voor het succes van een blockchain, want zonder beveiliging kunnen aanvallers de controle over de keten overnemen, waardoor deze onbruikbaar wordt.
Wat is schaalbaarheid?
Schaalbaarheid verwijst naar het doel om een blockchain te bouwen die steeds meer transacties per seconde kan ondersteunen. Schaalbaarheid is vereist als blockchaintechnologie de bredere samenleving en mogelijk miljarden gebruikers wil bedienen. Maar dit is waar veel blockchains nog mee worstelen. Dat komt omdat decentralisatie en veiligheid zo fundamenteel zijn voor blockchain dat men zich daar het eerst op richt. Decentralisatie staat zo centraal in het ethos en de doelstellingen van blockchain dat het de kern vormt van de meeste erkende blockchains. Veiligheid is, zoals we hebben besproken, een kernvereiste voor een succesvolle en nuttige blockchain. Door voorrang te geven aan decentralisatie en veiligheid wordt schaalbaarheid echter een uitdaging. Het aantal transacties dat een keten aankan kan sterk worden beperkt.
De basislaag van bitcoin is op dit moment niet in staat om meer dan zeven transacties per seconde te verwerken en Ethereum, het op één na populairste netwerk. Zoals gezegd zijn deze blockchain-transactiesnelheden beperkt door de manier waarop de informatie moet worden verwerkt door de verschillende deelnemers die het gedecentraliseerde netwerk vormen, en door de aard van het Proof-of-Work consensusmechanisme zelf. Als steeds meer mensen in de samenleving blockchaintechnologie gaan gebruiken, zullen de netwerken vastlopen door het beperkte aantal transacties dat zij aankunnen.
Waarom het blockchain-trilemma bestaat
De meest voor de hand liggende en fundamentele oplossing voor het hierboven geschetste probleem is een vermindering van het aantal deelnemers die de netwerkgegevens bevestigen en aanvullen in ruil voor een grotere schaal en snelheid. Maar dat zou leiden tot een verzwakking van de decentralisatie, waarbij de controle wordt overgedragen aan een kleiner aantal deelnemers. En het zou ook leiden tot een verzwakking van de veiligheid, want minder spelers betekent een grotere kans op aanvallen.
Hier ligt dus het trilemma: gezien het verband tussen de gewenste eigenschappen van decentralisatie en veiligheid, maakt het fundamentele ontwerp van hoe blockchain werkt het moeilijk om op te schalen. Vergroot het ene, en je verzwakt het andere. Hoe vergroot je de schaalbaarheid zonder de decentralisatie, de veiligheid of beide te schaden?
Oplossing van het blockchain-trilemma
Er is niet één gouden oplossing voor het blockchain-trilemma. Maar gezien het belang van de oplossing van dit probleem zijn er binnen de gemeenschap een aantal verschillende benaderingen met interessante resultaten. Onderstaand een kort overzicht van enkele van de populairste ontwikkelingen om u inzicht te geven hoe het blockchain-trillema opgelost probeert te worden.
Sharding
Dit is een methode om blockchains op te splitsen in kleinere, gepartitioneerde blockchains die specifieke datasegmenten beheren. Deze opzet ontlast een enkele keten die alle transacties en interacties op een netwerk beheert. Elke gepartitioneerde blockchain staat heeft zijn specifieke deel van een blockchain. Elk deel van de blockchain, ook wel shards genoemd kan dan hun eigen transacties verwerken, maar een hoofdketen beheert de interacties tussen deze delen (shards). Dit maakt sharding een netwerk schaalbaarheid upgrade omdat het een verandering is van het mainnet van een blockchain.
Verschillende consensusmechanismen
Een van de redenen waarom het trilemma in het bitcoin-netwerk bestaat, is de manier waarop Proof-of-Work de veiligheid garandeert. De noodzaak van miners, crypto-algoritmen en enorme hoeveelheden gedecentraliseerde rekenkracht leidt tot een veilig, maar traag systeem. Een andere manier vinden om consensus te beveiligen is één benadering om het trilemma op te lossen. Dit was een van de redenen waarom Ethereum overging van Proof-of-Work naar Proof-of-Stake. Bij PoS blockchains moeten deelnemers die betrokken zijn bij het valideren van transacties hun tokens vastzetten. Er is hierbij geen behoefte aan zeer gespecialiseerde mining machines. Meer validators toevoegen aan het netwerk is eenvoudiger en toegankelijker. PoS is slechts een van de vele verschillende benaderingen van consensusmechanismen met het oog op schaalbaarheid.
Layer-2 oplossingen
Zowel sharding als verschillende consensusmechanismen zijn zogenaamde Layer-1 oplossingen. Zij proberen het fundamentele ontwerp van het onderliggende netwerk te veranderen. Maar andere ontwikkelaars die het trilemma willen oplossen, werken aan oplossingen die voortbouwen op een bestaande netwerkstructuur. Met andere woorden, zij denken dat het antwoord in een tweede laag, of Layer 2, ligt.
Voorbeelden hiervan zijn sidechains. Een sidechain is eigenlijk een aparte blockchain die verbonden is met de hoofdketen. Hij is zo opgezet dat activa vrij tussen beide kunnen stromen. Belangrijk is dat de sidechain volgens andere regels kan werken, waardoor grotere snelheid en schaal mogelijk is.
Tot slot
Het blockchain-trilemma staat in de weg dat blockchain zijn potentieel als technologie volledig kan benutten. Als blockchain-netwerken slechts een klein aantal transacties per seconde kunnen verwerken om decentralisatie en veiligheid te handhaven, dan zal het moeilijk zijn om massale adoptie te bewerkstelligen. De oplossingen die momenteel worden aangedragen door ontwikkelaars die dit probleem willen oplossen, wijzen er echter op dat de technologische vooruitgang die blockchain al heeft geboekt, alleen maar verder zal gaan, en dat deze netwerken in de toekomst veel meer gegevens zullen kunnen verwerken.