Leased Proof of Stake Consensus uitgelegd

Delen
Copied to clipboard!
Leased Proof of Stake Consensus uitgelegd
Luister naar het artikel
00:00 / 00:00

Het Leased Proof of Stake consensusalgorithm en het Waves-NG protocol 

Auteur: Guy Brandon, Waves-bijdrager.

Het Waves-netwerk werkt op basis van een Leased Proof of Stake (LPoS) consensusalgoritme in combinatie met het Waves-NG protocol, wat een hoge mate van schaalbaarheid en transactiedoorvoer mogelijk maakt.


Introductie

Het Waves-netwerk werd gelanceerd in 2016 na een ICO die 30.000 BTC opbracht - ongeveer 16 miljoen dollar op dat moment. Het project ontwikkelt een uitgebreid blockchain-ecosysteem voor gebruik in bedrijfsprocessen, met een uitgebreide toolkit voor uiteenlopende toepassingen, waaronder het eenvoudig creëren van nieuwe cryptocoins, eenvoudige smart contracts, peer-to-peer handel op een gedecentraliseerde beurzen (DEX) en een veilige en handige manier van interactie met dApps en webservices via de Waves Keeper-browser plug-in.


Schaalbaarheid

Vanaf het begin erkende Waves dat schaalbaarheid vereist zou zijn voor een massale toepassing van blockchains en gaf het prioriteit aan de ontwikkeling van technologie om de beperkingen van bestaande oplossingen aan te pakken. Bitcoin is bijvoorbeeld zeer veilig, maar relatief traag met ondersteuning voor maar ongeveer 7 transacties per seconde (TPS). Als zodanig is Bitcoin niet efficiënt genoeg om wereldwijd als dagelijks betaalmiddel te worden gebruikt. Secundaire oplossingen zoals het Lightning Network zijn nodig om Bitcoin in staat te stellen dit doel te bereiken. Waves heeft voor een andere aanpak gekozen, waarbij in eerste instantie de nadruk ligt op een hoge on-chain schaalbaarheid en daarna pas op verdere toepassingen.


Balance leasing

Het oorspronkelijke consensusalgoritme van Waves was een eenvoudige Proof of Stake-implementatie. Alle 100 miljoen WAVES tokens werden na de ICO verdeeld; het totaal aantal tokens staat vast en er is geen inflatie, zoals bij PoW-coins. Daarom ontvangen de block validators van Waves (forgers, hoewel ze binnen het ecosysteem van Waves meestal ook gewoon 'miners' worden genoemd) transactiekosten van de blocks die ze verwerken, maar geen block rewards. 

Het Leased Proof of Stake (LPoS)-systeem kwam online in mei 2017, waardoor gebruikers van de Waves Lite client draaiden - geen volledige node - hun WAVES tokens konden verhuren aan miners. Gehuurde WAVES staan vergrendeld in de rekening van de gebruiker en kunnen niet worden overgedragen of verhandeld. De tokens blijven onder de volledige controle van de rekeninghouder en een lease kan op elk moment worden geannuleerd. Gezien de technische overhead die verbonden is aan het runnen van een mining node en de noodzaak om 24/7 online te zijn, draait slechts een relatief klein deel van de Waves-gemeenschap nodes (een lijst van block generators is te vinden op http://dev.pywaves.org/generators/). 

WAVES tokens die worden verhuurd aan een mining node worden gebruikt om het belang van de miner te verhogen, wat op zijn beurt de kans vergroot dat de miner het volgende block vindt. Het Leased Proof of Stake-systeem verbetert de netwerkbeveiliging op ten minste twee manieren. Ten eerste: hoe meer WAVES er gebruikt worden om het netwerk beter te beveiligen, hoe moeilijker het voor een aanvaller wordt om de coins te verzamelen die nodig zijn om een 51% aanval uit te voeren. Ten tweede: WAVES tokens kunnen worden verhuurd aan een node vanaf het cold storage-adres van een gebruiker, maar de node zelf - die online blijft - heeft slechts een minimale balans. Dit vermindert het risico dat WAVES tokens worden gehackt vanaf computers die online zijn, omdat het verhuurde geld niet direct naar de miner wordt overgemaakt.


Een nieuwe benadering van consensus: Waves-NG

Een verdere upgrade van het netwerk vond plaats in december 2017 met de lancering van Waves-NG. Dit was een nieuw protocol gebaseerd op het Bitcoin-NG voorstel van Cornell IT professor Emin Gün Sirer.

Het oorspronkelijke Bitcoin-protocol kiest elke miner met terugwerkende kracht. Nadat een block aan de blockchain is toegevoegd, concurreren de miners om een geldige hash voor het volgende block op basis van de huidige staat van de blockchain. Ondertussen gaan nieuw gegenereerde transacties naar de memory pool (mempool), waar ze wachten tot een miner ze uiteindelijk verzamelt en valideert. 

Hoewel zowel de Bitcoin-NG als de Bitcoin-NG protocollen worden beschouwd als Byzantijnse fouttolerante (BFT) systemen, werd deze laatste in 2015 voorgesteld als een schaalbaar alternatief gebaseerd op een ander werkend mechanisme. Op een Bitcoin-NG systeem wordt vooraf de volgende miner gekozen. Deze miner creëert een leeg 'sleutelblok' - het block dat uiteindelijk aan de blockchain zal worden toegevoegd. Kleine blocks, 'microblocks' genaamd (bestaande uit enkele transacties per stuk), worden in bijna realtime aan dit sleutelblok toegevoegd. Om een alledaagse analogie te gebruiken: het is net als het toevoegen van een aantal tassen met boodschappen (microblocks) aan een winkelwagen (sleutelblok) voordat de volledige winkelwagen uiteindelijk naar de kassa wordt gereden (toegevoegd aan de blockchain). Dit betekent dat transacties in slechts enkele seconden aan de blockchain kunnen worden toegevoegd, met als enige echte vertraging de latency van het netwerk. Waves heeft dit idee opgenomen in een Proof of Stake-netwerk door het Waves-NG protocol te creëren - de eerste implementatie van Bitcoin-NG voor een open, publieke blockchain.

Een andere toevoeging aan het ecosysteem zijn MassTransfers. Deze maken het mogelijk om tot 100 transacties te verpakken in één enkele block tegen lagere kosten. De limiet van 100 transactie per MassTransfer is gekozen als compromis tussen het toevoegen van aanzienlijke capaciteit en gemak enerzijds en het beperken van de mogelijkheid om zeer grote partijen goedkope transacties in één keer te versturen anderzijds. Als er meer transacties nodig zijn, kunnen meerdere MassTransfers achter elkaar worden ingediend. 

Met andere woorden, gebruikers kunnen eenvoudigweg kiezen voor een MassTransfer als een ander soort 'transactie versturen', waardoor ze tot 100 ontvangers in één enkele transactie kunnen opnemen. Bovendien kunnen de adressen van de ontvangers worden verstrekt via JSON of worden geüpload vanuit een CSV-bestand, waardoor het eenvoudig en efficiënt is om grote airdrops of wekelijkse uitbetalingen uit te voeren aan mensen die hun WAVES verhuren aan mining nodes. In combinatie met Waves-NG maakt de MassTransfer-functie een zeer hoge doorvoersnelheid op het netwerk mogelijk.

Een aantal stresstests zijn uitgevoerd op het netwerk van Waves om de schaalbaarheid van het nieuwe protocol te meten. In oktober 2018 is een grote stresstest uitgevoerd op het mainnet. Dit toonde aan dat het openbare, open blockchainprotocol (niet alleen een beperkt en gecontroleerd testnet) meer dan 6,1 miljoen transacties binnen een periode van 24 uur kon ondersteunen - een gemiddelde van 4.200 transacties per minuut of 71 transacties per seconde, met een piekdoorvoer van honderden transacties per seconde.


Tot slot

Het Leased Proof of Stake-systeem stelt normale gebruikers zonder technische expertise in staat om het Waves-netwerk te beveiligen en hun WAVES te verhuren aan volledige nodes zonder de controle over hun tokens te verliezen. Ondertussen heeft Waves-NG een doorvoersnelheid tot 100 transacties per seconde mogelijk gemaakt, wat een orde van grootte meer is dan de meeste andere blockchains. De kosten zijn laag omdat er geen noodzaak is om miners met block rewards te betalen om hen te compenseren voor hoge elektriciteitskosten en dure hardware.

Schaalbaarheid in de blockchain was een prioriteit voor Waves, maar er zijn grenzen aan de mate waarin een blockchain op deze manier kan worden vergroot als gevolg van de benodigde opslag en bandbreedte. De ontwikkelaars van Waves zijn van mening dat de huidige aanpak kan worden geoptimaliseerd om tot 1.000 transacties per seconde te ondersteunen voordat verdere schaalbaarheidsoplossingen nodig zijn. Waves onderzoekt op dit moment de mogelijkheden voor een tweedelaags schaaloplossing met sidechains, waardoor een groot aantal transacties in een parallelle keten kan worden verwerkt, maar uiteindelijk kan worden beveiligd op de belangrijkste Waves-blockchain.

Loading