Alles over cryptogeld, in gewone mensentaal.

Wat is Proof-of-Stake?

Bert

In een vorig artikel zagen we hoe Proof-of-Work de blockchain beschermt tegen een aanval door een kwaadwillende minderheid. We zagen ook de nadelen van deze methode, zoals het hoge stroomverbruik en de beperkte decentralisatie door miningpools en ASICs.

Een opkomend alternatief is Proof-of-Stake. Deze consensus-methode maakt ook gebruik van puzzels, maar zonder dat er veel rekenkracht nodig is.

Meer decentralisatie

Naast het argument van stroomgebruik bij het minen speelt ook nog een ander probleem. Een permissionless blockchain heeft decentralisatie nodig om de blockchain veilig en betrouwbaar te houden. Als iemand 51% van de rekenkracht beheerst, kan hij bepalen wat er in de blockchain geschreven wordt.

We zagen al dat ASICs voor minder decentralisatie zorgen omdat de investeringen hoog zijn en je er een geschikte ruimte voor moet heben. Niet elke consument zal zo'n apparaat in z'n huiskamer zetten.

Maar ook miningpools vormen een risico. De meeste miners werken samen met andere miners om blocks te vinden, omdat er dan een meer constante stroom van inkomsten ontstaat. Bij veel blockchains is een groot gedeelte van de rekenkracht zo in feite geconcentreerd in een klein aantal punten. Wie de mining pools beheerst, beheerst de blockchain.

Bij Proof-of-Stake is geen dure hardware nodig en zijn pools overbodig. Iedereen kan met z'n eigen wallet meedoen.

Geen hardware maar munten

Bij Proof-of-Work zet een miner zijn hardware en stroom in om daarmee te proberen om als eerste een puzzel op te lossen, namelijk het vinden van een hash die voldoet aan de difficulty. Hoe meer hardware (en stroom), hoe meer kans de miner maakt op de beloning die hoort bij het vinden van de oplossing.

Bij Proof-of-Stake moet de deelnemer ook iets inzetten, namelijk zijn geld. Het geld moet voldoen aan bepaalde eisen die verschillen per blockchain. Bijvoorbeeld dat je het minstens een bepaalde tijd moet hebben.

Het belang van iemand met veel munten is dat die munten hun waarde behouden. Iemand die veel inzet bij Proof-of-Stake heeft dus een goede reden om de boel niet te bedriegen. Dat zou z'n munten waardeloos kunnen maken.

Dat is anders bij Proof-of-Work. Iemand met veel rekenkracht heeft misschien nog helemaal geen munten, en kan er best belang bij hebben om die rekenkracht in te zetten voor een aanval.

Hoe maak je kans?

Munten die voldoen aan de eisen maken elke zoveel seconden kans om de puzzel op te lossen.

Het is in feite dezelfde puzzel als bij Proof-of-Work. De miner bouwt een nieuw block, met daarin transacties, de hash van het vorige block en een variabel deel. Het volgende block is acceptabel als de hash ervan voldoet aan bepaalde eisen, de difficulty.

Bij Proof-of-Work is dat variabele deel de nonce. De miner probeert de hash te vinden door de nonce steeds te variëren. Computers en specialistische hardware proberen voortdurend duizenden keren per seconde de hash te vinden. Vandaar het stroomgebruik.

Bij Proof-of-Stake willen we niet dat computers voortdurend aan het rekenen zijn. Dus kiezen we voor een andere inhoud van de nonce. Namelijk een combinatie van de timestamp (huidige tijd) en de transaction hash (van de munten die wordt ingezet).

Zo maakt elke ingezette munt elke zoveel seconden kans om een block te vinden dat voldoet.

Meer munten, meer kans

Bij Proof-of-Stake heeft het geen zin om keihard te rekenen. De blockchain heeft een bepaald ritme waarin de deelnemers een block proberen te maken. De timestamp in het block moet passen bij dat ritme, bijvoorbeeld elke 15 seconden.

Elke 15 seconden maakt elke node met een nieuwe nonce het volgende block, en als de hash van dat block voldoet aan de difficulty dan krijgt hij de beloning.

In veel blockchains is de formule iets ingewikkelder. Meer munten in een transaction betekent meer kans. Of munten die je al langer hebt maken meer kans.

Bij mining maak je meer kans als je meer rekenkracht hebt. Bij staking maak je meer kans als je meer munten inzet.

De eerste generatie

De hierboven beschreven vorm van Proof-of-Stake zou je kunnen zien als de eerste generatie. Er is een probleem mee, namelijk dat er geen straf is voor deelnemers die zich niet gedragen. In het volgende artikel bekijken we wat het probleem is, en wat de oplossingen zijn.

Reageer

Wil je naar aanleiding van dit bericht verder praten? Heb je een vraag, een aanvulling, of had je het zelf anders geschreven? Laat het ons weten, en praat mee in onze community. Veel directer, én een stuk gezelliger dan zo'n ouderwets reactieformulier. De groep is actief, behulpzaam, en voor iedereen toegankelijk.

Blijf op de hoogte

Wil je direct nieuwe blogposts lezen? Alle nieuwe publicaties plaatsen we op Twitter. Je kunt daar ook de belangrijkste ontwikkelingen volgen.