Als je werkzaam bent in de ICT, dan heb je vast gehoord van het CAP-theorema: voor een gedistribueerd systeem is het onmogelijk om tegelijk te voldoen aan alle drie de aspecten Consistency, Availability en Partition Tolerance.
Voor blockchainsystemen geldt dit theorema uiteraard ook, maar blockchains hebben te maken met een lastigere eigenschap, het zogenaamde ‘Scalability Trilemma’, geīntroduceerd door Vitalik Buterin.
Scalability Trilemma
Distributed Ledger Technology (DLT), waar blockchaintechnologie onderdeel van uitmaakt, heeft drie eigenschappen: schaalbaarheid, veiligheid en decentralisatie. Het Scalability Trilemma luidt als volgt: het is onmogelijk om een blockchainoplossing te ontwikkelen die tegelijk aan alle drie de eigenschappen Schaalbaarheid, Veiligheid en Decentralisatie voldoet.
In 2008 publiceerde Satoshi Nakamoto een whitepaper waarmee Bitcoin (en daarmee de eerste blockchain) beschreven werd. Dit whitepaper beschrijft een innovatieve combinatie van bestaande technologieën:
- Peer-to-peer netwerken (als torrent): schaalbaarheid, decentralisatie
- Public-key cryptografie (als in SMTP): security
- Consensus over wereldwijd gedistribueerde systemen: decentralisatie
Deze blockchain en andere nieuwere generaties van DLT hebben echter allemaal te maken met het Scalability trilemma.
Het Scalability trilemma bestaat uit de volgende drie onderdelen.
Schaalbaarheid: de efficiëntie, de snelheid (in transacties per seconde) waarmee transacties uitgevoerd worden op de blockchain,
Veiligheid: de correctheid van de blockchain, de mogelijkheid om de integriteit van de blockchain te waarborgen, onder andere tegen kwaadaardige aanvallen,
Decentralisatie: het aantal participanten die met behulp van consensus de transacties valideren in de blockchain. In een volledig gedecentraliseerd systeem valideren alle participanten samen de transacties, in een gecentraliseerd systeem is er een kleine groep participanten die transacties valideren.
Als je kiest voor veiligheid en decentralisatie, dan moeten alle transacties nauwkeurig gevalideerd worden. Dat gaat ten koste van de snelheid van het netwerk, dus van de schaalbaarheid. Voorbeelden van dit type blockchain zijn Ethereum en Bitcoin.
Als je kiest voor schaalbaarheid en veiligheid, dus snelle en consistente transacties, dan moet je concessies doen met betrekking tot het consensusmechanisme van het netwerk. Je zult het aantal participanten die transacties valideren moeten beperken. Voorbeelden zijn Hyperledger en EOS.
Als je kiest voor schaalbaarheid en decentralisatie, dus iedereen valideert, maar wel snel, zoals in het IOTA-netwerk, dan gaat dat ten koste van de veiligheid van het netwerk.
Op dit moment worden er diverse oplossingen ontwikkeld om naast de keuze van twee aspecten, zoveel mogelijk van het derde aspect te krijgen. Voorbeelden zijn het Lighting Network van Bitcoin, Casper van Ethereum en Collaborative blockchains.
Tekortkoming?
Het Scalability trilemma is eigenlijk geen tekortkoming van blockchains, zoals de titel van dit artikel doet vermoeden. Evenmin is het CAP-theorema een tekortkoming van gedistribueerde systemen. Het trilemma is een eigenschap van blockchains waar we mee om moeten gaan, die ons helpt om keuzes te maken in een blockchaintraject. Op grond van de drie aspecten uit het trilemma zullen we er twee moeten kiezen die essentieel zijn voor de oplossing van ons probleem. Hier volgt als vanzelf een geschikt oplossingsspectrum uit. Als schaalbaarheid essentieel is, vallen blockchains als Ethereum en Bitcoin automatisch af. Als decentralisatie noodzakelijk is, dan moet je juist voor een unpermissioned blockchain kiezen.
Business2Business
In de Business-to-businessmarkt is het aspect van decentralisatie minder belangrijk. Ketenpartners kennen elkaar in de keten, dus een blockchainoplossing mag een centrale(re) aansturing hebben. Als een van de ketenpartners zich niet aan de afspraken houdt, kan hij daar namelijk direct op aangesproken worden. In het geval van een gesloten supply chain in een B2B-markt zou je dus zonder probleem een permissioned blockchain als Hyperledger Fabric kunnen gebruiken.
. . .
Bij SynTouch zijn we continu bezig met het onderzoeken van blockchaintechnologieën en we adviseren bedrijven over de mogelijkheden. We komen graag een keer langs om de mogelijkheden voor uw organisatie te bespreken. Neem hiervoor contact op met Sander van Laar, sander.van.laar@syntouch.nl. Voor meer blogs over blockchain, zie blockchain.