Proof-of-Work is objectief, Proof-of-Stake niet

By Bitcoin Tijdschrift - 1 jaar geleden - Leestijd: 14 minuten

Proof-of-Work is objectief, Proof-of-Stake niet

Het proof-of-work consensusmechanisme dat wordt gebruikt in Bitcoin is een objectieve maatstaf voor de geschiedenis die niet kan worden veranderd door de grillen van validators.

Alan Szepieniec behaalde een doctoraat in post-kwantumcryptografie aan de KU Leuven. Zijn onderzoek richt zich op cryptografie, met name het soort cryptografie dat nuttig is voor: Bitcoin.

Proof-of-stake is een voorgesteld alternatief consensusmechanisme voor het proof-of-work dat: Bitcoin's consensusmechanisme gebruikt. In plaats van het verbruik van energie te vereisen, vereist proof-of-stake dat miners (meestal validators genoemd) digitale activa op het spel zetten om bij te dragen aan het blokproductieproces. Staking stimuleert hen om zich eerlijk te gedragen, om te voorkomen dat ze hun inzet verliezen. In theorie zal het netwerk, met alleen eerlijke validators, snel tot consensus komen over de volgorde van transacties en dus over welke transacties ongeldige dubbele uitgaven zijn.

Proof-of-stake is het onderwerp van veel discussie geweest. De meeste kritiek richt zich op beveiliging: verlaagt het de kosten van een aanval? Veel mensen verwoorden ook sociologische zorgen: centralisatie van macht, concentratie van rijkdom, plutocratie, enz.

In dit artikel formuleer ik een veel fundamentelere kritiek: Proof-of-stake is inherent subjectief. De juiste kijk op een proof-of-stake blockchain hangt af van wie je het vraagt. Als gevolg hiervan kunnen de kosten van een aanval niet worden berekend in interne eenheden van de blockchain, waardoor beveiligingsanalyses ongeldig worden; schulden kunnen niet worden vereffend tussen partijen die het nog niet eens zijn over welke derde partijen te vertrouwen zijn; en de uiteindelijke oplossing van geschillen moet van rechtbanken komen.

Proof-of-work daarentegen is een objectief consensusmechanisme waarbij een reeks verwante of niet-verbonden partijen het eens kan worden over welke staat van de blockchain juist is. Als gevolg hiervan kunnen twee economische actoren het eens worden over de vraag of een betaling is gedaan, onafhankelijk van rechtbanken of invloedrijke leden van de gemeenschap. Dit onderscheid maakt proof-of-work geschikt – en proof-of-stake ongeschikt – als consensusmechanisme voor digitale valuta.

Digitaal geld en consensus

Het probleem dat moet worden opgelost

Een van de meest elementaire bewerkingen die computers uitvoeren, is het kopiëren van informatie. Deze bewerking laat de originele kopie intact en produceert een exacte replica zonder dat er kosten aan verbonden zijn. Computers kunnen zo ongeveer alles kopiëren, zolang het maar digitaal is.

Er zijn echter enkele dingen die puur in het digitale rijk bestaan ​​en die niet kunnen worden gekopieerd. Dingen die zowel digitaal als schaars zijn. Deze beschrijving is van toepassing op: bitcoin bijvoorbeeld, evenals voor andere op blockchain gebaseerde digitale activa. Ze kunnen worden verzonden, maar na verzending is het originele exemplaar verdwenen. Men kan het oneens zijn met de reden waarom de markt deze activa eist, maar het feit dat deze vraag bestaat, betekent dat deze digitale activa nuttig zijn als tegenhanger om uitwisselingen in evenwicht te brengen. Samengevat tot een enkel woord: ze zijn geld.

Om digitale schaarste te bereiken, repliceert het blockchain-protocol een grootboek over een netwerk. Het grootboek kan worden bijgewerkt, maar alleen met transacties waar de eigenaren van het bestede geld mee instemmen; de netto som is nul; en de uitgangen zijn positief.

Elke ongeldige update wordt geweigerd. Zolang er consensus is over de staat van het grootboek bij alle deelnemers aan het protocol, is digitale schaarste gegarandeerd.

Het blijkt dat consensus bereiken een moeilijke opgave is. Onvolmaakte netwerkcondities genereren een duidelijk beeld van de geschiedenis. Pakketten worden in de verkeerde volgorde afgeleverd of afgeleverd. Onenigheid is endemisch voor netwerken.

De vorkkeuzeregel

Blockchains pakken dit probleem op twee manieren aan. Ten eerste dwingen ze een volledige volgorde af op alle transacties, wat een boom met alternatieve weergaven van de geschiedenis genereert. Ten tweede definiëren ze de canon voor geschiedenissen, samen met een vorkkeuzeregel die de canonieke tak uit de boom van geschiedenissen selecteert.

Het is gemakkelijk om canoniciteit af te leiden van vertrouwde autoriteiten of, volgens sommigen, van een digitaal stemsysteem dat wordt ondersteund door een burgeridentiteitsschema. Vertrouwde autoriteiten zijn echter: beveiligings gaten, en vertrouwen op de overheid om betrouwbare identificatiediensten te bieden, wordt een politiek instrument in plaats van een instrument dat er onafhankelijk van is. Bovendien gaan beide oplossingen uit van overeenstemming over de identiteit en de betrouwbaarheid van derden. We willen vertrouwensaannames verminderen; idealiter hebben we een oplossing die volledig uit de wiskunde is afgeleid.

Een oplossing voor het bepalen van canoniciteit die volledig uit de wiskunde voortkomt, genereert de opmerkelijke eigenschap dat het antwoord onafhankelijk is van degene die het berekent. Dit is de zin waarin een consensusmechanisme objectief kan zijn. Er is echter één belangrijk voorbehoud: men moet ervan uitgaan dat alle partijen het eens zijn over een enkelvoudig referentiepunt, zoals het genesisblok of de hash-digest. Een objectief consensusmechanisme is een mechanisme dat elke partij in staat stelt om de canonieke kijk op de geschiedenis vanuit dit referentiepunt te extrapoleren.

Welke tak van de boom als canoniek wordt gekozen, is niet belangrijk; belangrijk is dat alle deelnemers het eens kunnen zijn over deze keuze. Bovendien hoeft de hele boom niet expliciet op één computer te worden weergegeven. In plaats daarvan is het voldoende dat elk knooppunt slechts een handvol takken bevat. In dit geval test de vorkkeuzeregel altijd maar twee kandidaat-visies op de geschiedenis tegelijk. Strikt genomen is de uitdrukking de canonieke kijk op de geschiedenis misleidend: een kijk op de geschiedenis kan alleen min of meer canoniek zijn ten opzichte van een andere kijk. Knooppunten laten de tak vallen die minder canoniek is en verspreiden de tak die meer is. Telkens wanneer een weergave van de geschiedenis wordt uitgebreid met een reeks nieuwe transacties, is de nieuwe weergave meer canoniek dan de oude.

Om ervoor te zorgen dat het netwerk snel convergeert naar consensus over de canonieke kijk op de geschiedenis, moet de fork-choice-regel aan twee eigenschappen voldoen. Ten eerste moet het goed gedefinieerd en efficiënt evalueerbaar zijn voor de kijk op de geschiedenis van twee paren. Ten tweede moet het transitief zijn voor elke drievoudige visie op geschiedenis. Voor de wiskundigen: laat U,V,W drie willekeurige weergaven van de geschiedenis zijn, en laat het tussenvoegsel "<" de vorkkeuzeregel aangeven die de voorkeur geeft aan de rechterkant boven de linkerkant. 

Dan [houden twee voorwaarden]:

ofwel U
jij

Om het grootboek geschikt te maken voor updates, moeten weergaven van de geschiedenis uitbreidbaar zijn op een manier die compatibel is met de vorkkeuzeregel. Er zijn dus nog twee eigenschappen nodig. Ten eerste, wanneer geëvalueerd op twee weergaven waarbij de ene een verlengstuk is van de andere, moet de vorkkeuzeregel altijd de voorkeur geven aan de uitgebreide weergave. Ten tweede is de kans groter dat extensies van een (voorheen) canonieke weergave canoniek zijn dan extensies van niet-canonieke opvattingen. Symbolisch, laat "E" een extensie aanduiden en "‖" de bewerking die deze toepast. Dan:

U 0.5

De laatste eigenschap stimuleert eerlijke extenders om zich te concentreren op het uitbreiden van canonieke weergaven in tegenstelling tot opvattingen waarvan ze weten dat ze niet canoniek zijn. Als gevolg van deze stimulans verschillen verschillende visies op de geschiedenis die voortkomen uit eerlijke maar tegenstrijdige extensies tegelijkertijd alleen in hun tips, waar het recente gebeurtenissen betreft. Hoe verder terug een gebeurtenis wordt gelogd, hoe kleiner de kans dat deze wordt teruggedraaid door de reorganisatie die wordt opgelegd door een andere, meer canonieke kijk op de geschiedenis die op een eerder punt uiteenloopt. Vanuit dit perspectief is de canonieke kijk op geschiedenis goed gedefinieerd in termen van de grens van visies op geschiedenis waarnaar het netwerk convergeert.

De voor de hand liggende diskwalificatie in de vorige paragraaf is de noodzaak voor extenders om zich eerlijk te gedragen. Hoe zit het met oneerlijke extenders? Als de tegenstander de willekeurige variabele die impliciet in de kansuitdrukking zit, kan beheersen, kan hij deze in zijn voordeel ontwikkelen en diepgaande reorganisaties lanceren met een hoge kans op succes. Zelfs als hij de willekeurige variabele niet kan controleren, maar goedkope kandidaat-extensies kan produceren, kan hij de fork-choice-regel lokaal en voor onbepaalde tijd evalueren totdat hij een vroeg punt van divergentie vindt, samen met een extensie die toevallig een meer canonieke tak dan een die circuleert.

Het ontbrekende stukje van de puzzel is niet een mechanisme dat oneerlijke uitbreidingen voorkomt. In een omgeving met onvolmaakte netwerkomstandigheden is het onmogelijk om oneerlijk gedrag af te bakenen. Een aanvaller kan berichten die hem niet bevallen altijd negeren, of de verspreiding ervan vertragen en beweren dat de netwerkverbinding de schuldige is. In plaats daarvan is het ontbrekende stukje van de puzzel een mechanisme dat diepe reorganisaties duurder maakt dan oppervlakkige, en duurder naarmate ze dieper gaan.

Cumulatief bewijs van werk

Het consensusmechanisme van Satoshi Nakamoto bereikt precies dit. Om een ​​nieuwe batch transacties (blocks) voor te stellen en daarmee een tak uit te breiden, moeten potentiële extenders (miners) eerst een rekenpuzzel oplossen. Deze puzzel is duur om op te lossen, maar gemakkelijk te verifiëren, en wordt daarom toepasselijk proof-of-work genoemd. Alleen met de oplossing voor deze puzzel is de nieuwe batch transacties (en de geschiedenis waaraan het zich verbindt) een geldige mededinger voor canon. De puzzel wordt geleverd met een knop om de moeilijkheidsgraad aan te passen, die automatisch wordt gedraaid om de verwachte tijd te regulariseren voordat een nieuwe oplossing wordt gevonden, ongeacht het aantal deelnemers of de middelen die ze aan het probleem besteden. Deze knop heeft een secundaire functie als een onbevooroordeelde indicator voor het oplossen van puzzels in een eenheid die de moeilijkheidsgraad meet.

Het proces staat open voor ieders deelname. De beperkende factor is niet autoriteit of cryptografisch sleutelmateriaal of hardwarevereisten, maar de beperkende factor is de middelen die men bereid is te besteden om een ​​kans te hebben om een ​​geldig blok te vinden. De probabilistische en parallelle aard van de puzzel beloont de kosteneffectieve mijnwerker die het aantal berekeningen per joule, zelfs ten koste van een lager aantal berekeningen per seconde.

Gezien de moeilijkheidsparameter van het doel (de knop) voor elk blok, is het gemakkelijk om een ​​onbevooroordeelde schatting te maken van de totale hoeveelheid werk die een bepaalde tak van de geschiedenis vertegenwoordigt. De proof-of-work, fork-choice-regel is gunstig voor de branche waar dit aantal groter is.

Mijnwerkers racen tegen elkaar om het volgende blok te vinden. De eerste mijnwerker die het vindt en het met succes verspreidt, wint. Ervan uitgaande dat mijnwerkers niet op geldige maar niet-gepropageerde nieuwe blokken zitten, nemen ze, wanneer ze een nieuw blok ontvangen van concurrerende mijnwerkers, het aan als het nieuwe hoofd van de canonieke tak van de geschiedenis, omdat als ze dit niet doen, ze in het nadeel zijn. Bouwen op een blok waarvan bekend is dat het oud is, is irrationeel omdat de mijnwerker de rest van het netwerk moet inhalen en twee nieuwe blokken moet vinden om succesvol te zijn - een taak die gemiddeld twee keer zo moeilijk is als overstappen op de nieuwe, langere tak en die uitbreiden. In een proof-of-work blockchain worden reorganisaties vaak geïsoleerd tot aan het puntje van de geschiedenisboom, niet omdat miners eerlijk zijn, maar omdat de kosten van het genereren van reorganisaties toenemen met de diepte van de reorganisatie. Voorbeeld: volgens dit stack uitwisseling antwoord, exclusief vorken na software-updates, de langste vork op de Bitcoin blockchain had destijds lengte 4, ofwel 0.0023% van de blokhoogte.

Proof-of-Stake's "oplossing"

Proof-of-stake is een voorgesteld alternatief voor proof-of-work waarin de juiste kijk op de geschiedenis niet wordt gedefinieerd in termen van de grootste hoeveelheid werk die wordt besteed aan het oplossen van cryptografische puzzels, maar eerder gedefinieerd in termen van de openbare sleutels van speciale knooppunten die validators worden genoemd. Concreet ondertekenen validators nieuwe blokken. Een deelnemend knooppunt verifieert de juiste weergave van de geschiedenis door de handtekeningen op de samenstellende blokken te verifiëren.

Het knooppunt heeft niet de middelen om geldige weergaven van de geschiedenis te onderscheiden van ongeldige. Het punt is dat een concurrerend blok pas een serieuze kanshebber is voor het puntje van de juiste kijk op de geschiedenis als het een ondersteunende handtekening heeft (of veel ondersteunende handtekeningen). Het is onwaarschijnlijk dat de validators alternatieve blokken ondertekenen, omdat die handtekening hun kwaadaardig gedrag zou bewijzen en zou resulteren in het verlies van hun inzet.

Het proces is openbaar. Iedereen kan validator worden door een bepaalde hoeveelheid cryptocurrency op een speciale escrow-rekening te zetten. Dit geblokkeerde geld is de "inzet" die wordt verlaagd als de validator zich misdraagt. Knooppunten controleren of de handtekeningen op nieuwe blokken overeenkomen met de openbare sleutels die door validators worden verstrekt wanneer ze hun inzet in escrow plaatsen.

Formeel is in proof-of-stake blockchains de definitie van de juiste kijk op de geschiedenis volledig recursief. Nieuwe blokken zijn alleen geldig als ze de juiste handtekeningen bevatten. De handtekeningen zijn geldig met betrekking tot de openbare sleutels van de validators. Deze publieke sleutels worden bepaald door oude blokken. De fork-choice-regel is niet gedefinieerd voor concurrerende opvattingen over de geschiedenis, zolang beide opvattingen zelfconsistent zijn.

Daarentegen wordt de juiste kijk op de geschiedenis in proof-of-work blockchains ook recursief gedefinieerd, maar niet met uitsluiting van externe inputs. In het bijzonder is de fork-choice-regel in proof-of-work ook afhankelijk van willekeur waarvan de onpartijdigheid objectief verifieerbaar is.

Deze externe input is het belangrijkste verschil. In proof-of-work wordt de fork-choice-regel gedefinieerd voor elk paar verschillende concurrerende visies op de geschiedenis, daarom is het in de eerste plaats mogelijk om van canon te spreken. In proof-of-stake is het alleen mogelijk om correctheid te definiëren ten opzichte van een voorgeschiedenis.

Proof-of-Stake is ondermijnbaar

Maakt het echter uit? In theorie, om twee consistente maar onderling onverenigbare visies op de geschiedenis te produceren, moet iemand ergens oneerlijk zijn geweest, en als ze zich oneerlijk hebben gedragen, is het mogelijk om erachter te komen waar, het te bewijzen en hun inzet te verlagen. Aangezien de validator die op dat eerste punt van divergentie is ingesteld niet in het geding is, is het mogelijk om van daaruit te herstellen.

Het probleem met dit argument is dat het geen rekening houdt met tijd. Als een validator van tien jaar geleden onderling tegenstrijdige blokken dubbel ondertekent - dat wil zeggen, een nieuw ondertekende tegenstrijdige tegenhanger publiceert van het blok dat tien jaar geleden werd bevestigd - dan moet de geschiedenis vanaf dat moment worden herschreven. De inzet van de kwaadwillende validator wordt verlaagd. Transacties die de inzetbeloningen uitgeven, zijn nu ongeldig, evenals transacties stroomafwaarts vanaf daar. Als er genoeg tijd is, kunnen de beloningen van de validator doorsijpelen naar een groot deel van de blockchain-economie. Een ontvanger van munten kan er niet zeker van zijn dat alle afhankelijkheden in de toekomst geldig blijven. Er is geen finaliteit omdat het niet moeilijker of duurder is om het verre verleden te reorganiseren dan het nabije verleden.

Proof-of-Stake is subjectief

De enige manier om dit probleem op te lossen is om de diepgang waarin reorganisaties worden toegelaten te beperken. Tegenstrijdige visies op de geschiedenis waarvan het eerste punt van divergentie ouder is dan een bepaalde drempelleeftijd worden genegeerd. Knooppunten die een andere weergave krijgen waarvan het eerste punt van divergentie ouder is, wijzen deze zonder meer af zonder te testen wat correct is. Zolang sommige knooppunten op een bepaald moment live zijn, is continuïteit gegarandeerd. Er is maar één manier waarop de blockchain kan evolueren als te ingrijpende reorganisaties worden geblokkeerd.

Deze oplossing maakt proof-of-stake een subjectief consensusmechanisme. Het antwoord op de vraag “wat is de huidige staat van de blockchain?” ligt eraan aan wie je het vraagt. Het is niet objectief te verifiëren. Een aanvaller kan een alternatieve kijk op de geschiedenis produceren die net zo zelfconsistent is als de juiste. De enige manier waarop een node kan weten welke weergave correct is, is door een aantal peers te selecteren en hun woord te geloven.

Men zou kunnen stellen dat deze hypothetische aanval niet relevant is als de kosten van het produceren van deze alternatieve kijk op de geschiedenis te hoog zijn. Hoewel dat tegenargument waar kan zijn, zijn kosten een objectieve maatstaf en dus hangt de vraag of het waar is af van externe factoren die niet op de blockchain worden weergegeven. De aanvaller kan bijvoorbeeld al zijn belang bij één kijk op de geschiedenis verliezen, maar dat kan hem niet schelen omdat hij met juridische of sociale middelen kan garanderen dat de alternatieve kijk zal worden geaccepteerd. Elke beveiligingsanalyse of aanvalsberekening die zich richt op wat er gebeurt op "de" blockchain en geen rekening houdt met de objectieve wereld waarin deze leeft, is fundamenteel gebrekkig.

Intern aan een proof-of-stake cryptocurrency is dat niet alleen de kosten subjectief zijn, maar ook de beloning. Waarom zou een aanvaller zijn aanval inzetten als het eindresultaat geen uitbetaling is die mechanisch wordt bepaald door zijn vindingrijkheid, maar een uitzending van het officiële team van ontwikkelaars van de cryptocurrency waarin wordt uitgelegd waarom ze voor de andere tak hebben gekozen? Er kunnen externe uitbetalingen zijn - bijvoorbeeld van financiële opties die verwachten dat de prijs zal dalen of van pure vreugde om chaos te veroorzaken - maar het punt is dat de lage waarschijnlijkheid van interne uitbetalingen het argument ondermijnt dat de marktkapitalisatie van bestaande proof-of- inzet cryptocurrencies vormt een effectieve aanvalspremie.

Geld en objectiviteit

Geld is in wezen het object waarmee een schuld wordt vereffend. Het effectief afwikkelen van schulden vereist consensus tussen de partijen bij de uitwisseling - met name de valuta en de hoeveelheid geld. Een geschil zal leiden tot de bestendiging van openstaande vorderingen en een weigering om herhaalde zaken te doen op gelijke of vergelijkbare voorwaarden.

Effectieve schuldenregeling vereist niet dat de hele wereld het eens is over het specifieke type geld. Daarom kan een subjectief geld nuttig zijn in delen van de wereldeconomie waar er toevallig een consensus bestaat. Om de kloof te overbruggen tussen twee verschillende micro-economieën, of meer in het algemeen tussen twee personen in de wereld, is wereldwijde consensus vereist. Een objectief consensusmechanisme bereikt dat; een subjectieve niet.

Proof-of-stake cryptocurrencies kunnen geen nieuwe basis vormen voor de financiële ruggengraat van de wereld. De wereld bestaat uit staten die elkaars rechtbanken niet erkennen. Als er een geschil ontstaat over de juiste kijk op de geschiedenis, is oorlog de enige toevlucht.

Stichtingen die proof-of-stake blockchains ontwikkelen en ondersteunen, evenals freelance ontwikkelaars die voor hen werken - en zelfs influencers die geen code schrijven - stellen zichzelf bloot aan wettelijke aansprakelijkheid voor het willekeurig selecteren van een ongunstige kijk op de geschiedenis (tegen de eiser). Wat gebeurt er wanneer een cryptocurrency-uitwisseling een grote opname stroomafwaarts mogelijk maakt van een storting in een proof-of-stake cryptocurrency waarvan de transactie slechts in één tak van twee concurrerende weergaven van de geschiedenis voorkomt? De uitwisseling kan de weergave selecteren die hun bedrijfsresultaten ten goede komt, maar als de rest van de gemeenschap - ingegeven door de PGP-handtekeningen en -tweets en Medium-berichten van de stichtingen, ontwikkelaars en beïnvloeders - de alternatieve weergave kiest, dan is de uitwisseling linksvoetig de rekening. Ze hebben alle aanmoedigende en fiduciaire verantwoordelijkheid om hun verliezen te verhalen op de personen die voor hen verantwoordelijk zijn.

Uiteindelijk zal een rechtbank beslissen welke kijk op de geschiedenis de juiste is.

Conclusie

Voorstanders van proof-of-stake beweren dat het hetzelfde doel dient als proof-of-work, maar zonder alle energieverspilling. Maar al te vaak negeert hun steun de afwegingen die aanwezig zijn in elk technisch dilemma. Ja, proof-of-stake elimineert het energieverbruik, maar deze eliminatie offert de objectiviteit van het resulterende consensusmechanisme op. Dat is oké voor situaties waarin alleen lokale consensus volstaat, maar deze context roept de vraag op: wat heeft het voor zin om de vertrouwde autoriteit te elimineren? Voor een mondiale financiële ruggengraat is een objectief mechanisme nodig.

Het zelf-referentiële karakter van proof-of-stake maakt het inherent subjectief: welke kijk op de geschiedenis correct is, hangt af van wie je het vraagt. De vraag "is proof-of-stake veilig?" probeert de analyse terug te brengen tot een objectieve maatstaf voor de kosten die niet bestaat. Op korte termijn hangt de juiste vork af van welke vork populair is onder invloedrijke leden van de gemeenschap. Op de lange termijn zullen rechtbanken de macht overnemen om te beslissen welke vork correct is, en de zakken van lokale consensus zullen samenvallen met de grenzen die het einde van de jurisdictie van de ene rechtbank en het begin van de volgende markeren.

De energie die mijnwerkers in proof-of-work-blockchains besteden, wordt net zo min verspild als diesel wordt verspild aan het tanken van auto's. In plaats daarvan wordt het ingewisseld voor cryptografisch verifieerbare, onpartijdige willekeur. We weten niet hoe we een objectief consensusmechanisme kunnen genereren zonder dit belangrijke ingrediënt.

Dit is een gastpost van Alan Szepieniec. De geuite meningen zijn geheel van henzelf en komen niet noodzakelijk overeen met die van BTC Inc. of Bitcoin Magazine.

Originele bron: Bitcoin Magazine