Column: ‘Mijn ultieme blockchain. Of is bitcoin voldoende?’

Column – We leven in een tijd waarin buzzwords te pas en te onpas worden gebruikt om een project op te hypen. Blockchain, DAG, Distributed Ledger Technology (DLT), Artificial Intelligence, Machine Learning of DeFi.

Het zijn allemaal termen die passen bij de vierde industriële revolutie die zich aan het voltrekken is.

Vorige week kon je lezen over het blockchain trilemma: een perfecte mix tussen schaalbaarheid, veiligheid en decentralisatie is erg moeilijk. In deze column deel ik mijn visie over dit probleem.

bitcoin meester

Blockchain

Veel bedrijven zien nu ook bij uitstek de mogelijkheid om product te ontwikkelen met zo veel mogelijk van deze buzzwords. Mede hierdoor zien we door de bomen het bos niet meer.

Men gebruikt de term blockchain ook te pas en te onpas. Er zijn inmiddels al wel honderden soorten blockchains ontwikkeld.

De protocollagen van bijvoorbeeld Bitcoin, Ethereum en Monero verschillen allemaal van elkaar.

Om nog maar niet over EOS, TRON of Cardano te praten. Maar waarom zijn er eigenlijk zo veel soorten blockchains?

Het begon allemaal met bitcoin. Maar voor veel mensen was dit niet genoeg: het was log en traag en dus moest er een ‘betere’ variant komen.

Of een variant met een net iets andere invulling of toepassing dat wat bitcoin kon leveren.

Verschillende soorten blockchains

Het gevolg hiervan is dat men de afgelopen jaren aan verschillende onderdelen van de blockchain heeft gesleuteld.

We zagen andere en nieuwe consensus mechanismen, de manier hoe transacties worden verwerkt is anders gemaakt (zk-SNARKS) of de blockgrootte is aangepast door een originele chain te forken.

Dit zijn zomaar drie voorbeelden van hoe blockchains onder handen zijn genomen. Maar wat is eigenlijk de beste universele blockchain? En bestaat deze (al) wel?

Om deze vraag te beantwoorden heb ik voor mezelf een aantal voorwaarden opgesteld waar deze blockchain aan moet voldoen:

  1. De blockchain moet duurzaam zijn
  2. De blockchain moet écht decentraal zijn
  3. De blockchain moet geschikt zijn voor alle soorten transacties
  4. De blockchain moet snel (en schaalbaar) zijn

Laten we elk aspect punt voor punt verder uitdiepen. Maar voordat ik dat doe, baken ik voor mijzelf af waarvoor de blockchain moet dienen.

Of de blockchain nu een DAG is, sharding gebruikt of inzet op een hybride consensus: in deze column hou ik het even lekker simpel bij de blockchain.

Bitcoin is decentraal geld. Punt uit. Maar er is in mijn ogen ook een blockchain nodig dat als decentraal protocol gaat gelden waarop (een groot deel van) de hele wereld gebouwd is.

De blockchain moet een pijpleiding zijn voor alle soorten transacties. Geld, informatie, contracten, documenten, signalen, IOT of bots: alles moet op één protocol gebouwd kunnen draaien.

Duurzame blockchain

Met al de ontelbare toepassingen is het belangrijk dat de blockchain niet uit zijn voegen gaat groeien. Daarmee bedoel ik: de blockchain mag over enkele decennia in omvang niet onnodig en overdreven groot zijn.

Op moment van schrijven staat de blockchain van bitcoin gelijk aan 226 GB. Simpel gezegd: hoe meer informatie wij in de blockchain pompen, hoe meer MB’s er in het grootboek komen te staan.

Een duurzame blockchain slaat de minst nodige informatie. Ik denk dan aan: ‘verificatie’ in plaats van het ‘uitvoeren’ van processen en transacties.

Door een blockchain (en de nodes) enkel te gebruiken als middel dat transacties verifieert, blijft alle data buiten de blockchain. Enkel de hash van deze verificatie komt dan in de blockchain terecht.

Dat is een reden waarom Virtual Machines (VM’s) zoals Ethereum, EOS en NEO voor mij niet duurzaam zijn. De blockchain raakt vol met allemaal ‘zooi’ waar niemand eigenlijk iets aan heeft.

Blocks zijn in dit geval ‘restafval’ van programmaatjes en dApps die er nooit meer uitgehaald kunnen worden.

Wat als je deze dApps nu op je lokale schijf kunt laten ‘uitvoeren’ en slechts laat ‘verifieren’ door de blockchain? In dat geval ‘werkt’ en dApp enkel als het geverifieerd is door de blockchain. Een decentraal vinkje is vereist.

De blockchain houdt enkel de status bij van de dApp, transacties of contracten. Het wordt pas ‘actief’ als er een waarde-verplaatsing nodig is. Of dit nu een token is of een document die je naar iemand verstuurt: de verificatie kost een split second en nauwelijks MB’s.

Decentrale blockchain

Een tweede essentieel punt is de decentralisatie. Ik ben van mening dat er maar 1 project is dat 100% decentraal is: dat is bitcoin. Er is geen kantoor, CEO of foundation die op de vingers kan worden getikt. Dit zien we nu bij Libra bijvoorbeeld al wel gebeuren.

Een open source project is niet per se decentraal. Een project dat geografisch gedistribueerde nodes heeft, is niet per se decentraal.

Een foundation die een groot deel van de tokens in bezit heeft in een dPoS protocol, werkt niet aan een decentraal project. Het zijn zomaar drie voorbeelden van de relativiteit van decentralisatie.

Gaan we ooit een ‘nieuw’ ultiem decentraal project zien? Een start zoals bitcoin die heeft gehad, krijgen we nooit meer. Achter nagenoeg elk protocol zit een ICO. Het zijn geldgedreven projecten met mensen aan het roer die bepaalde belangen hebben.

Satoshi heeft er goed aan gedaan zijn handen af te trekken van bitcoin. Daardoor is het ultiem decentraal.

Als je naar elke blockchain en zijn consensus mechanisme kijkt, kun je overal een kritische noot bij plaatsen. Zo zijn er mensen die de distributie van de miners van Bitcoin aanhalen als ‘onzeker’ punt.

De verdeling van de tokens op Ethereum is een issue als Ethereum 2.0 gaat komen: rijken worden als maar rijker (en dus machtiger). Is dat hoe ultieme decentralisatie moet zijn? Ik denk van niet.

Het is bijna onmogelijk om een ultiem decentrale blockchain te ontwikkelen in de fase waarin de cryptomarkt op dit moment zit. De markt is wat dat betreft al iets te volwassen. En een start zoals bitcoin die had, is nu ondenkbaar.

Geschikte blockchain

Het ultieme blockchainprotocol moet ook eenvoudig te implementeren zijn in alledaagse toepassingen. Een belangrijke eis is voor mij de codeertaal die hiervoor wordt gebruikt. Niet elke programmeertaal is even goed vertegenwoordigd onder de ontwikkelaars.

Voor een smart contract op Ethereum en Tron moet je Solidity onder de knie hebben. Dit is een aparte ‘taal’ die is geinspireerd op JavaScript, C++, Python en PowerShell. Voor dApps op EOS is kennis over C++ essentieel en voor een smart contract op Cardano moet je de nieuwe taal Plutus beheersen.

Ik bekijk het liever andersom: welke codeertalen zijn het meest bekend en gebruikt? Dan kom je terecht op het volgende rijtje:

Van de programmeer-, markup- en scriptingtalen zijn JavaScript, C en C++ essentieel. Aan de andere kant kan dit ook voor een probleem zorgen. Veel toepassingen uit de wereld om ons heen gebruiken een uniek stukje software. Denk aan de SWIFT betalingen die door een select groepje ontwikkelaars is bedacht.

Naast de codeer-geschiktheid, zie ik ook een andere belangrijke vereiste voor massa adoptie. Het is belangrijk dat de kosten van een transactie altijd duidelijk zijn. Als deze stabiel zijn (en bijvoorbeeld gepegged aan een fiat valuta), kunnen grote corporaties en overheden, die grote use cases implementeren, hier op in spelen.

Het ‘gas’ is dan niet meer een speculatieve asset, maar iets dat gewoon als normale kostenpost kan worden opgenomen. Als je een zakje tokens apart wilt zetten als brandstof voor jouw use cases, wil je als bedrijf de garantie hebben dat deze altijd evenveel transacties vertegenwoordigen.

De brandstof voor het ultieme protocol moet in mijn ogen geen speculatieve munt zijn.

Snelle blockchain

Door de ‘duurzaamheid’ van de blockchain op 1 te zetten, krijg je automatisch een snellere blockchain. De blockchain hoeft geen bulken aan data te verwerken die de chain in worden gestuurd. Het verifieert enkel de transacties die op dat moment om een verificatie vragen.

We zien dat het ‘groter’ maken van de blockchain het uitgangspunt is waar Bitcoin Cash zich mee bezig houdt. Grotere blocks maken de blockchain sneller. Bitcoin SV gaat nog een stapje verder: max 2GB per block.

In mijn ogen moeten we juist de andere kant op. De blockchain moet een zo minimalistisch framework zijn dat zo weinig mogelijk ‘uitvoert’ en dus enkel ‘verifieert’. Weinig data in de blockchain resulteert immers in een snellere verwerkingstijd.

Door enkel de hashes van een transactie te verwerken, kun je de blockchain relatief klein houden. Maar op het protocol van deze kleine snelle blockchain moet vervolgens wel heel veel gebouwd kunnen worden.

Thin protocol, fat client!

Mijn ultieme blockchain

Als ik mijn gedachten in deze blog zo uiteenzet, klinkt het allemaal heel eenvoudig. Ik ben geen ontwikkelaar en gebruik slechts mijn common sense om tot inzichten te komen.

Het bekende blockchaintrilemma bestaat al jaren en veel knappe koppen zijn bezig om oplossingen te bedenken. Na mij enkel jaren in het blockchain-wereldje te hebben verdiept, ben ik mijn ultieme blockchain nog niet tegengekomen.

Zolang de ‘ultieme blockchain’ nog niet is ontwikkeld, moeten we het in mijn ogen doen met sidechains op bijvoorbeeld bitcoin. Misschien gaat de ultieme blockchain er ook wel nooit komen. Of misschien wordt deze in de loop van de tijd ontwikkeld.

De eerste auto, de Ford Model T, heeft lang gefungeert als prima product, totdat er betere varianten op de markt komen.

Bitcoin is voor mij enkel bedoeld als valuta en decentraal geld. Het bitcoin netwerk dient in mijn ogen niet als decentraal protocol voor een nieuwe wereldeconomie.

Met het Lightning Network en bijvoorbeeld Liquid zijn er oplossingen ontwikkeld waardoor er op bitcoin gebouwd kan worden. Maar Electronic Cash, zoals het in de whitepaper staat, is wel heel wat anders dan een ‘mondiaal decentraal protocol’.

De IOT van slimme steden, de controle en verificatie van overheidsdocumenten en bijvoorbeeld de toekomstige digitale verkiezingen (e-voting) moeten allemaal op dit mondiale protocol gebaseerd gaan zijn. Maar op welke? Of gaat de interoperabiliteit toch winnen van de one-chain-takes-it-all?

Ik heb voor mijzelf een selectie gemaakt van interessante projecten. Voldoen ze 100% aan mijn ‘eisen’? Nee dat niet. Houdt het mij scherp om weg te blijven van ‘shitcoins’? Dat denk ik wel! Maar de ultieme blockchain is (vooralsnog) een utopie.

Het hebben van een utility token die bij deze ‘ultieme chain’ hoort, is overigens ook lang niet altijd een goede zet. Lees een eerdere column over de waarde, het nut en de toekomst van tokens.

Wat is jouw ultieme decentrale protocol? En bestaat deze volgens jou al wel? Laat het ons weten in de Telegram chat en deel jouw visie over het trilemma.

Mis niks meer!
Invalid email address