Heet van de naald: De omstreden hardfork in Bitcoin medio november 2017 gaat niet door. Dat is goed nieuws omdat veel verwarring wordt voorkomen. Maar de schaalbaarheid van Bitcoin is nog steeds een serieus probleem. Een van de oplossingen is het “Lightning network”, een extra laag op Bitcoin. Daar gaat dit artikel over.

Schaalbaarheidsprobleem

Het grootste probleem van Bitcoin op dit moment is dat het maar een beperkt aantal transacties kan afhandelen in een bepaalde tijd. Dit is al 3 jaar onderwerp van discussie. De grenzen aan de capaciteit zijn bereikt waardoor de transactiekosten (fees) inmiddels onwerkbaar hoog zijn.

Het vergroten van de blokken is een mogelijke oplossing, maar dan wordt de blockchain al snel te groot. Er ontstaat dan centralisatie omdat het bijhouden van een kopie van de blockchain een specialistische aangelegenheid wordt. En eigenlijk hoeven transacties voor simpele kopjes koffie niet allemaal op de blockchain voor altijd en eeuwig vastgelegd te worden.

NB. Die laatste drie zinnen vertegenwoordigen een mening. Er zijn ook mensen die vinden dat grotere blokken geen enkel probleem zijn en dat je rustig alle transacties vast kan leggen, “on-chain”. Miners bijvoorbeeld, die verdienen daar geld aan. En zij willen best een grotere harde schijf kopen om een “vette” blockchain te bewaren voor ons, de gebruikers.

Een andere oplossing die is aangedragen heet Lightning network. Het plan werd begin 2015 voorgestelden is op dit moment in ontwikkeling.

Lightning network

Het Lightning network is een gedecentraliseerd netwerk dat snelle eigendomsoverdracht van Bitcoin náást de blockchain mogelijk maakt.

  • Net als bij eigendomsoverdracht óp de blockchain is er geen intermediair, zoals een bank, nodig.
  • Om er gebruik van te maken is er ook geen vertrouwen nodig in een deelnemer o.i.d. De gebruikers vertrouwen op het netwerk, het systeem, de open source software.
  • Het is geen soft of hard-fork. Er is ook geen consensus voor nodig om te implementeren. Het is een extra laag, die zweeft boven de blockchain.

Payment channels

Het werkt met zgn. “Bidirectional Payment Channels”. Twee partijen kunnen zo’n kanaal openen. Als het kanaal eenmaal open is, kunnen ze in het kanaal onderling, onmiddellijk en betrouwbaar Bitcoin verzenden, maar zonder dat het op de blockchain wordt vastgelegd. Dat maakt het snel en houdt de omvang van de blockchain in de hand. Als er nieuwe transacties volgen tussen de twee partijen, dan strepen ze de vorige weg tegen de nieuwe. De twee partijen slaan alles lokaal op, zolang het kanaal open is. En hier begint het voordeel. Twee partijen kunnen een paar honderd transacties doen, en hoeven deze niet op de blockchain op te slaan. Op een gegeven moment willen ze de zekerheid die de blockchain biedt en sluiten ze het kanaal. Een kanaal is voor een bepaalde tijd open, maar kan ook eerder worden gesloten door een van de twee partijen, zonder nadelige effecten voor wie dan ook.

Om een payment channel te openen is één transactie óp de blockchain nodig, en om het kanaal te sluiten ook weer één. De Bitcoin wordt opgesloten in een multisignature adres en de twee partijen gaan voor een bepaalde tijd onderling transacties aan. De Bitcoin verlaat de blockchain dus niet. Maar ondanks dat ie ‘vastzit’, ervaar je het als het tegenovergestelde. Omdat je off-chain onderling niet hoeft te wachten op blok-bevestigingen voelt het sneller. Ook betaal je geen of praktisch geen fee, dus het voelt ook vrijer. Onmiddellijke transacties, met een bijna ongelimiteerde capaciteit.

De blockchain kan je zien als een veiligheids-vangnet onder de payment-kanalen. Gaat er in de onderlinge transacties in jouw payment channel iets mis, dan kan je altijd de laatste status uitzenden naar de blockchain. Deze wordt dan gemined en je coins zijn veilig.

Niet uitsluitend tussen twee partijen

Je hoeft niet perse een kanaal te openen met iedere partij waar je een transactie mee wil doen. Daar is een truc voor. Stel, je wilt betrouwbaar én bliksemsnel Bitcoin naar Bob sturen, maar je hebt al een kanaal open met Alice. Als Alice een kanaal heeft met Bob, kan het geld via Alice stromen.

Je zou Alice een “hub” kunnen noemen. Via één of meer hubs kan je altijd bij iedereen komen die de Lightning software gebruikt. Al die kanalen en hubs vormen samen het Lightning network.

Zo’n hub moet wel het een en ander aan infrastructuur opzetten om met duizenden mensen (en machines) kanalen te onderhouden. Dat is waar een fee voor gevraagd zou kunnen worden. Marktwerking zal deze fee bepalen en het is te verwachten dat deze laag zal zijn. (Critici geven wel aan dat deze hubs een geur van centralisatie om zich hebben hangen. Ik geef ze geen ongelijk maar ik verwacht wel dat dat zichzelf oplost).

En zie hier, een veelbelovende oplossing voor de schaalbaarheid van Bitcoin.

Streaming money

Het gaat nog verder. Want als je weet dat het mogelijk wordt om elkaar met een extreem lage fee geld te kunnen sturen, dan worden de zogenaamde “microtransacties” mogelijk. Het netwerk kan dan de betaling van bijvoorbeeld een halve eurocent in Bitcoin betaalbaar faciliteren. Tja, en dan kan je je af gaan vragen waarom je eigenlijk je salaris per máánd betaald krijgt. Waarom niet per dag, per uur, per minuut, of per seconde? Zo ontstaat “Streaming money”. Net zoals we nu al streaming video kennen. Alleen kan je dan ook streaming betalen voor elke seconde die je kijkt.

De toekomst gaat het uitwijzen…

Status

De noodzakelijke upgrade naar Segwit vond in augustus plaats en er wordt nu getest in beta. Ook hierwordt over de stand van zaken geschreven.

Balancerende krachten

In de onderstaande video gaat Andreas Antonopoulos in op de vraag of er wel of geen centraliserende kracht ontstaat wanneer veel kanalen via weinig hups (of nodes) verlopen: