In 2008 werd Bitcoin door Satoshi Nakamoto gepresenteerd als een vorm van peer-to-peer digitaal geld. Met Bitcoin zouden we niet langer afhankelijk zijn van tussenpersonen voor het overmaken van geld. Het einde van het bankwezen werd voorspeld en binnenkort zou iedereen zelfs zijn dagelijkse kop koffie betalen met bitcoins. Een dikke tien jaar later zijn deze voorspellingen nog geen realiteit en is de Bitcoin blockchain slechts in staat tot het verwerken van 7 transacties per seconde. Ter vergelijking, het Amerikaanse Visa verwerkt dagelijks 150 miljoen transacties, wat neerkomt op een gemiddelde van 1700 transacties per seconde. Om daadwerkelijk het betalingsprotocol van de toekomst te worden moet het schaalprobleem opgelost worden.
Het Lightning Network begint zich steeds prominenter aan te dienen als dé oplossing voor dit probleem. Dit artikel is het begin van een serie artikelen waarin we stapsgewijs de werking van het Lightning Network gaan bespreken. De kern van het Lightning Network is dat kleine alledaagse betalingen niet direct via de Bitcoin blockchain hoeven te lopen. Het is een off-chain approach om het schaalprobleem op te lossen.
Neem bijvoorbeeld het kopen van een kop koffie. Zou je die betalen via de Bitcoin blockchain dan nemen de transactiekosten een groot deel van het te betalen bedrag in. Met het Lightning Network hoeven niet meer al je transacties op de blockchain gepubliceerd te worden door het opzetten van een payment channel. Dat scheelt ruimte op de blockchain en maakt het doen van transacties goedkoper.
Ga je iedere dag naar de Starbucks? Dan kun je met hen een payment channel openen. Dit komt er op neer dat je samen een wallet opent op de Bitcoin blockchain waar je vervolgens een klein bedrag in bitcoins naartoe stuurt. Deze wallet vormt een soort kluis op de blockchain die alleen geopend kan worden met jouw handtekening én die van de Starbucks. Bij het openen van het kanaal wordt ook een bonnetje gemaakt waarop staat hoe de bitcoins zijn verdeeld over de deelnemers. Je kunt dit vergelijken met het populaire WieBetaaltWat, je houdt samen met de Starbucks bij hoeveel kopjes koffie je hebt gedronken en wat je aan ze verschuldigd bent.
Voordat je een kop koffie hebt gekocht is dit: Alice krijgt 0.05 BTC; Starbucks krijgt 0 BTC. Koop je bijvoorbeeld een kop koffie voor 0.005 BTC dan verandert de verdeling. Alice krijgt 0.045 BTC; Starbucks krijgt 0.005 BTC. Vervolgens ondertekenen zowel Alice als de Starbucks de nieuwe balans met hun handtekening (private key) en houden ze allebei een kopie van de nieuwe verdeling.
De nieuwe verdeling hoeft pas te worden gepubliceerd op de Bitcoin blockchain als één van de partijen definitief uitbetaald wil worden. Alice kan dus koffie blijven kopen zo lang ze genoeg BTC in het kanaal heeft om er voor te kunnen betalen. Beide partijen kunnen er op ieder moment voor kiezen om de meest recente verdeling te publiceren op de Bitcoin blockchain en de daarmee het betalingskanaal te sluiten.
Het protocol zorgt ervoor dat alleen de verdeling die als laatste is ondertekend kan worden gepubliceerd op de Bitcoin blockchain. Je kunt je voorstellen dat het problematisch is als Alice besluit om een verdeling te publiceren waarin slechts de aankoop van één kop koffie is verwerkt, terwijl ze al tien koffietjes heeft gekocht. Hoe dit precies werkt gaan we behandelen in onze volgende blog over het Lightning Network!
Wat het Lightning Network nog interessanter maakt is dat je met behulp van jouw kanaal naar Starbucks, ook betalingen kan doen naar anderen die een kanaal naar Starbucks hebben (misschien wel degene die op dat moment naast jou haar koffie aan het drinken is). Als zij dan weer een kanaal naar een andere winkel/node heeft, kan je zelfs daarnaartoe overmaken. Er zit geen limiet aan het aantal stappen dat een betaling kan nemen. Deze verbondenheid zorgt voor een groot netwerkeffect.
Voor nu is het belangrijk dat je begrijpt hoe een payment channel werkt en dat er binnen een betalingskanaal duizenden transacties kunnen worden verricht zonder een beroep te hoeven doen op de Bitcoin blockchain. Met het Lightning Network wordt de Bitcoin blockchain ontlast en alleen gebruikt om een betalingskanaal te openen en te sluiten.