Bitcoinerin opas panoksen todistamiseen PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Bitcoinerin opas panoksen todistamiseen

Tämä on mielipidetoimitus Scott Sullivan.

Yleensä Bitcoinerit eivät välitä liikaa siitä, mitä Shitcoin-maassa tapahtuu, mutta nyt kun Ethereum on sulautunut proof-of-osuuden (PoS), Bitcoin Twitterissä on ollut melkoista vilinää. Tietenkin Bitcoin-verkko itsessään pysyy ennallaan, mutta mielestäni tämä "päivitys" on silti huomioimisen arvoinen. Nyt kun Ethereum on puhdistunut työntodistukseen (PoW) liittyvistä "likaisista" ja "tuhakkaisista" ulkoisista vaikutuksista, voimme odottaa käsineiden irtoavan narratiivisodassa, ja mielestäni Bitcoinereiden pitäisi olla valmiita vastustamaan. .

PoS:n toiminnan oppiminen on todella hyvä tapa sisäistää PoW:n ja PoS:n väliset erot ja kompromissit. Vaikka olin aiemmin nähnyt kaikki korkean tason argumentit PoS:a vastaan ​​- että PoS on enemmän sallittua, keskittämistä ja oligarkkista - myönnän, että ilman yksityiskohtien tarkastelua se kaikki tuntui tavallaan aaltoilevalta. Sukeltamalla itse PoS-algoritmiin voimme alkaa nähdä, kuinka kaikki nämä ominaisuudet ilmenevät luonnollisesti ensimmäisistä periaatteista. Joten jos olet utelias siitä, miten PoS-algoritmi toimii ja miksi se johtaa tällaisiin ominaisuuksiin, lue eteenpäin!

Tuplakulutusongelman ratkaiseminen

Aloitetaan nopealla yhteenvedolla ongelmasta, jota yritämme ratkaista. Oletetaan, että meillä on suuri joukko osallistujia kryptovaluuttaverkostossa, joka yrittää ylläpitää hajautettua kirjanpitoa. Tässä on ongelma: Kuinka uusia tapahtumia voidaan lisätä kaikkien pääkirjaan siten, että kaikki ovat yhtä mieltä siitä, mitkä uudet tapahtumat ovat "oikeita"? PoW ratkaisee tämän ongelman varsin tyylikkäästi: Tapahtumat ryhmitellään lohkoiksi, jolloin jokaisen lohkon tuottaminen vaatii paljon laskennallista työtä. Tarvittava työmäärä voi liikkua ylös- tai alaspäin varmistaakseen, että lohkoja tuotetaan keskimäärin kymmenen minuutin välein, mikä antaa jokaiselle uudelle lohkolle runsaasti aikaa levitä verkossa ennen seuraavan luomista. Kaikki epäselvyydet ratkaistaan ​​valitsemalla eniten työtä tekevä ketju, ja tuplakulutus estetään, koska kaksinkertaisen kulutuksen lohko vaatii vähintään 51 % globaalista hashpowerista.

Mutta oletetaanpa, että haluamme nyt heittää pois Satoshi Nakamoton keskeisen näkemyksen, joka teki kaiken tämän alun perin mahdolliseksi. Loppujen lopuksi nuo ärsyttävät ASIC-koneet ovat äänekkäitä ja ärsyttäviä, ja ne kuluttavat enemmän energiaa kuin kaikki George Sorosin, Bill Gatesin ja Hillary Clintonin yksityiset suihkukoneet yhteensä. Voimmeko jollakin tavalla sopia yksiselitteisesti siitä, mitkä liiketoimet ovat totta, vain puhumalla niistä?

Ethereumin proof-of-stake ehdottaa tämän ongelman ratkaisemista käyttämällä kahta keskeistä ainesosaa. Ensimmäinen on tehdä silloin tällöin erityisiä "tarkistuspistelohkoja", joiden tarkoituksena on antaa kaikille verkon jäsenille varmuus järjestelmän "totuudesta" eri aikoina. Tarkastuspisteen luominen vaatii kahden kolmasosan enemmistön vaakalaudalla, joten on jonkin verran varmuutta siitä, että validaattoreiden enemmistö oli samaa mieltä siitä, mikä totuus todellisuudessa oli tuolloin. Toinen ainesosa on rangaista käyttäjiä epäselvyyden lisäämisestä verkkoon, prosessi, joka tunnetaan nimellä "leikkaus". Jos validaattori esimerkiksi luoisi haarukan tai äänestäisi vanhemmasta sivuketjusta (samanlainen kuin 51 %:n hyökkäys), hänen panoksensa leikattaisiin. Validaattoreita voidaan myös leikata passiivisuuden vuoksi, mutta ei niin paljon.

Tämä johtaa meidät ensimmäiseen PoS-periaatteeseen, joka on, että PoS perustuu negatiiviseen (rangaistuspohjaiseen) kannustinjärjestelmään.

Tämä on vahva ristiriidassa Bitcoinin ja proof-of-workin kanssa, jotka ovat positiivinen (palkkioon perustuva) kannustinjärjestelmä. Bitcoinissa kaivostyöntekijät voivat yrittää rikkoa sääntöjä – huonosti muotoiltuja lohkoja, virheellisiä tapahtumia ja niin edelleen – mutta täydet solmut jättävät nämä lohkot huomiotta. Pahin skenaario on vähän hukattua energiaa. Kaivostyöntekijät voivat myös vapaasti rakentaa vanhemmille lohkoille, mutta ilman 51 %:a hashpowerista nämä ketjut eivät koskaan pääse kiinni, taas vain tuhlaavat energiaa. Kenenkään kaivostyöntekijän, joka osallistuu näihin toimiin, joko tarkoituksella tai ei, ei tarvitse huolehtia kertyneen bitcoinin tai kaivoskoneensa menettämisestä, mutta he eivät saa uusia palkintoja. Sen sijaan, että eläisivät pelossa, bitcoin-kaivostyöntekijät voivat erehtyä ryhtyessään toimiin ja riskeeraamaan.

Maailma on hyvin erilainen paikka Ethereumin maassa asuville validaattoreille. Sen sijaan, että he tekisivät lujasti töitä ja palkitsisivat verkon turvallisuuden lisäämisestä, validaattorit eivät tee varsinaista työtä, mutta heidän on oltava varovaisia, ettei heidän solmunsa koskaan toimi väärin, jotteivät he katso säästönsä syttyvän liekkeihin. Jos verkostoon tehtäisiin ehdotettuja muutoksia, validaattorin ensimmäinen vaisto olisi noudattaa sitä, mitä kaikki muut tekivät, tai muuten riski joutua leikatuksi. Validaattorina oleminen on kuin kulkisi munankuorilla joka päivä.

(lähde)

Ethereum-verkoston perustajan Vitalik Buterinin mukaan eläminen negatiivisen kannustinjärjestelmän alaisuudessa on yksi panoksen todistamisen "etuista". FAQ:

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Joten miten leikkaus käytännössä toimisi teknisellä tasolla? Eikö meidän tarvitsisi ensin luoda luettelo kaikista validaattoreista, jotta saisimme jotain leikattavaa? Vastaus on kyllä. Ethereumin validoijaksi päästäkseen ETH on ensin siirrettävä erityiseen "panostus"-osoitteeseen. Tätä listaa ei tarvita vain leikkaamiseen, vaan myös äänestämiseen, koska tarkastuspisteiden lohkoihin tarvitaan kahden kolmasosan enemmistö.

Kaikkien validaattoreiden luettelon ylläpitämisellä on joitain mielenkiintoisia seurauksia. Kuinka vaikeaa on liittyä? Kuinka vaikeaa on lähteä? Saavatko validaattorit äänestää muiden validaattoreiden asemasta?

Tämä vie meidät toiseen PoS-periaatteeseen, joka on, että PoS on sallittu järjestelmä.

Ensimmäinen askel validoijaksi tulemisessa on tallettaa ETH:ta erityiseen panostusosoitteeseen. Paljonko ETH? Vähimmäisvaatimus on 32 ETH tai noin 50,000 9 dollaria tätä kirjoitettaessa. Asiayhteydessä kunnollinen bitcoin-kaivoskoneisto maksaa tyypillisesti yksinumeroisia tuhansia dollareita, ja kotilouhinta voi aloittaa yhdellä SXNUMX:llä muutamalla sadalla taalalla. Ollakseni rehellinen, ETH:n korkeassa osallistumismaksussa on a tekninen perustelu, koska suurempi panos tarkoittaa vähemmän validaattoreita, mikä pienentää kaistanleveyttä.

Joten talletusmaksu on korkea, mutta ainakin jokainen, joka omistaa 32 ETH:n, voi vapaasti liittyä tai poistua milloin tahansa, eikö niin? Ei aivan. Siellä on turvallisuusriskit jos suuret validoijien koalitiot saapuisivat sisään tai poistuisivat samaan aikaan. Jos esimerkiksi suurin osa verkosta lähtisi kerralla, he voivat kaksinkertaisesti kuluttaa viimeistellyn lohkon toistamalla haarukan, josta he eivät koskaan lähteneet, ilman, että he joutuisivat leikatuksi kumpaankaan ketjuun. Tämän riskin vähentämiseksi on- ja off-rampeilla on sisäänrakennettu suoritusrajoitus. Tällä hetkellä tämä rajoittaa on asetettu arvoon max(4,|V|/65536) validators per aikakausi (6.4 minuutin välein), ja se on sama sekä sisään- että poistumiselle. Tämä tarkoittaa noin yhtä täydellistä validaattorisarjaa kymmenen kuukauden välein.

Muuten, vaikka validaattoreiden on tällä hetkellä mahdollista julkaista "exit"-tapahtuma ja lopettaa validointi, koodia varsinaisten varojen nostamiseksi ei ole vielä edes kirjoitettu. Kuulostaa vähän "Hotel Californialta"…

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Viimeinen kohta on uusien validaattoreiden hyväksymisen takana olevista kannustimista. Oletetaan, että olet osakkeenomistaja suuressa ja vakaassa yrityksessä, joka maksaa säännöllisesti osinkoja joka vuosineljännes. Olisiko järkevää antaa uusia osakkeita ilmaiseksi? Ei tietenkään, koska se laimentaisi kaikkien olemassa olevien osakkeenomistajien osinkoja. Samanlainen kannustinrakenne on olemassa PoSissa, koska jokainen uusi validaattori laimentaa kaikkien olemassa olevien validaattorien tuloja.

Teoriassa validaattorit voisivat yksinkertaisesti sensuroida jokaisen yksittäisen tapahtuman, joka lisää uuden validaattorin; Käytännössä kuitenkin pidän tällaista tylyä lähestymistapaa epätodennäköisenä. Tämä olisi hyvin havaittavissa ja tuhoaisi Ethereumin kuvan "hajauttamisesta" yhdessä yössä, mikä saattaa kaataa hinnan. Mielestäni sen sijaan käytettäisiin hienovaraisempaa lähestymistapaa. Säännöt voivat esimerkiksi muuttua hitaasti ajan mittaan, mikä vaikeuttaa validoijaksi ryhtymistä, ja tekosyitä tarjotaan, kuten "turvallisuus" tai "tehokkuus". Kaikilla politiikoilla, jotka rikastuttavat olemassa olevia validaattoreita uusien validaattoreiden kustannuksella, olisi taloudellisia vastatuulia, puhutaanpa niistä ääneen tai ei. Voimme alkaa nähdä, miksi PoS pyrkii kohti oligarkiaa.

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Yleiskatsaus Casper-algoritmiin

Nyt kun tiedämme PoS:n takana olevan korkean tason strategian, miten algoritmi itse asiassa toimii? Tärkeimmät ideat tarkistuspisteiden ja leikkausten takana esitettiin algoritmissa nimeltä Casper, joten aloitamme siitä. Casper itse ei itse asiassa määrittele mitään lohkojen tuottamisesta, vaan tarjoaa pikemminkin kehyksen sille, kuinka tarkistuspiste-/leikkausstrategia voidaan asettaa jo olemassa olevan lohkoketjupuun päälle.

Ensinnäkin jokin mielivaltainen vakio (C) valitaan "tarkistuspistevälin" numeroksi, joka määrittää kuinka monta lohkoa tarkistuspisteiden välillä on; esimerkiksi jos C=100, tarkistuspisteitä esiintyisi lohkoissa 0, 100, 200 ja niin edelleen. Sitten kaikki solmut äänestävät siitä, mikä tarkistuspistelohko on seuraava "oikeutettu" tarkistuspiste. Sen sijaan, että äänestäisivät yksittäisistä lohkoista erikseen, validaattorit äänestävät (s,t) tarkistuspistepareista, jotka yhdistävät jotkin aiemmin perustellut tarkastuspisteiden lähteet "s" johonkin uuteen kohdetarkastuspisteeseen "t". Kun tarkastuspistelinkki (s,t) saa kahden kolmasosan enemmistön vaakalaudalla, "t":stä tulee uusi perusteltu tarkistuspiste. Alla oleva kaavio näyttää esimerkkipuun tarkistuspisteistä:

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Tässä kaaviossa h(b)-funktio viittaa "tarkistuspisteen korkeuteen", esim. lohkon 100:n kerrannaiseen. Olet ehkä huomannut, että joka sadas lohko ei välttämättä ole perusteltu, mikä voi tapahtua, jos äänestys epäonnistuu tietyllä korkeus. Oletetaan esimerkiksi, että korkeudella 200 kaksi erillistä tarkastuspistettä sai kukin 50 % äänistä. Koska äänestäminen kahdesti on leikattava rikos, järjestelmä "jumiutuisi", elleivät jotkut validoijat mielellään leikkaa omaa panostaan ​​saavuttaakseen kahden kolmasosan äänistä. Ratkaisu olisi, että kaikki "ohittavat" tarkistuspisteen 200 ja "yrittäisivät uudelleen" lohkossa 300.

Se, että tarkistuspiste on perusteltu, ei tarkoita, että se on viimeistelty. Jotta tarkistuspiste lasketaan viimeisteltyksi, sen jälkeen on välittömästi seurattava toinen perusteltu tarkistuspiste seuraavalla mahdollisella korkeudella. Jos esimerkiksi tarkistuspisteet 0, 200, 400, 500 ja 700 olisivat kaikki perusteltuja ja yhdistetty toisiinsa, vain tarkistuspiste 400 laskettaisiin "viimeistetyksi", koska se on ainoa, jota seuraa välittömästi toinen perusteltu tarkistuspiste.

Koska terminologia on erittäin tarkka, tehdään yhteenveto kolmesta kategoriastamme. "Tarkistuspiste" on mikä tahansa lohko, joka esiintyy korkeudella C*n, joten jos C=100, jokainen lohko, jonka korkeus on 0, 100, 200, 300 ja niin edelleen, olisi kaikki tarkistuspisteitä. Vaikka useita lohkoja luotaisiin korkeudelle 200, ne molemmat olisivat "tarkistuspisteitä". Tarkistuspiste on sitten "oikeutettu", jos se on joko juurilohko korkeudella 0 tai jos kaksi kolmasosaa valittajista äänesti linkin luomisen jonkin aiemmin perustellun tarkistuspisteen ja nykyisen tarkistuspisteen välille. Perusteltu tarkistuspiste "viimeistetään", jos se sitten liittyy toiseen perusteltuun tarkistuspisteeseen seuraavalla mahdollisella korkeudella. Kaikista tarkistuspisteistä ei välttämättä tule oikeutettua eikä jokaista perusteltua tarkistuspistettä välttämättä viimeistellään edes viimeisessä ketjussa.

Casperin leikkaussäännöt

Casperin leikkaussäännöt on suunniteltu siten, että on mahdotonta, että kaksi viimeisteltyä tarkastuspistettä olisi kahdessa erillisessä haarukassa, ellei vähintään kolmasosa validaattoreista riko leikkaussääntöjä.

Toisin sanoen vain viimeistellyt tarkastuspisteet tulisi koskaan laskea yksiselitteisiksi "totuuslohkoiksi". On jopa mahdollista, että haarukan molemmilla puolilla tapahtuu kaksi perusteltua tarkistuspistettä, ei vain kahta viimeisteltyä tarkistuspistettä. Ei myöskään ole takeita siitä, milloin tai missä seuraava viimeistelty tarkistuspiste tapahtuu, vain, että jos ketju katkeaa, sinun tulee istua alas ja odottaa, kunnes lopullinen lohko ilmestyy jonnekin, ja kun se tapahtuu, tiedät, että se on " oikea" ketju.

Casperissa on kaksi leikkaussääntöä, jotka pakottavat tämän ominaisuuden:

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Ensimmäinen sääntö kieltää ketään kaksoisäänestämästä tarkastuspisteissä, joilla on sama tavoitekorkeus, joten jos validoija äänestäisi kahdesta eri tarkastuspisteestä, joiden tavoitekorkeus on 200, se olisi rikos. Tämän säännön tarkoituksena on estää ketjun jakautuminen kahdeksi erilaiseksi perustelluksi tarkastuspisteeksi, joilla on sama korkeus, koska tämä vaatisi 2/3 + 2/3 = 4/3 valittajien kaikista äänistä, mikä tarkoittaa, että vähintään kolmasosa validaattoreista rikkoi leikkaussääntöjä. Kuitenkin, kuten näimme aiemmin, on mahdollista, että perusteltuja tarkistuspisteitä "ohitetaan" tietyt lohkokorkeudet. Mikä estää ketjua halkeamasta eri kohdekorkeuksille? Eikö esimerkiksi tarkistuspiste 200 voisi haarautua perusteltuihin tarkastuspisteisiin kohdissa 300 ja 400 ilman, että ketään leikataan?

Siellä astuu voimaan toinen sääntö, joka pohjimmiltaan estää validaattoreita "kerrostamasta" ääniä muiden äänten sisään. Esimerkiksi, jos validoija äänestää sekä 300→500 että 200→700 puolesta, se olisi rikos, jota voidaan leikata. Ketjun jakautumisen tapauksessa, kun yksi haara näkee lopullisen tarkistuspisteen, toisen haaran on mahdotonta nähdä perusteltu tarkistuspiste jälkeenpäin, ellei vähintään kolmasosa validoijista rikkonut sääntöä #2.

Nähdäksesi miksi, oletetaan, että lohkoketju haarautui perusteltuihin tarkistuspisteisiin 500 → 800 ja 500 → 900, sitten jossain vaiheessa ensimmäinen ketju sahasi valmiin tarkistuspisteen linkillä 1700 → 1800. Koska sekä 1700 että 1800 voidaan tasata vain haarukassa #1 (olettaen, että kukaan ei rikkonut ensimmäistä viiloitussääntöä), ainoa tapa, jolla haarukka #2 näki perustellun tarkistuspisteen vuoden 1800 jälkeen on, jos korkeuksien H1800 välillä olisi jokin äänestetty linkki. Mutta koska tämä äänestys "voittaisi" 1700→1800 -linkin ja vaatisi kahden kolmasosan äänistä, ja 1700→1800 on jo hyväksytty kahdella kolmasosalla, vähintään kolmanneksen valittajista olisi rikottava sääntöä # 2. Casper-paperissa on hieno kaavio, joka osoittaa tämän ominaisuuden:

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Ja siinä kaikki, noudata vain Casperin sääntöjä ja olet hyvä!

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Näyttää aika yksinkertaiselta, eikö? Olen varma, että PoS käyttäisi leikkausta vain ehdottomana viimeisenä keinona ylläpitää konsensusta, eikä kiristysmekanismina painostaakseen validaattoreita käyttäytymään tietyllä tavalla… eikö niin?

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Tämä vie meidät kolmanteen PoS-periaatteeseen: Sääntöjä ei ole. "Säännöt" ovat mitä kaikki muut sanovat olevansa.

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Yhtenä päivänä solmusi saattoi noudattaa teknisesti jokaista Casperin käskyä kirjaimellisesti, ja seuraavana päivänä säästöjäsi voidaan leikata, koska teit jotain, josta muut eivät pitäneet. Hyväksyitkö "joukkueen punaisen" tapahtuman tuon kerran? Huomenna "joukkueen sininen" enemmistö saattaa leikata sinut. Tai ehkä teit päinvastoin ja jätit pois liian monta "joukkueen punaista" -tapahtumaa? Huomenna "joukkueen punainen" enemmistö saattaa lyödä sinut sensuuriin. Mahdollisuus leikata ylittää paljon OFAC:n (Office of Foreign Assets Control) -sensuurin rajat. PoS on kuin jatkuva meksikolainen vastakohta, jossa implisiittisen leikkaamisen uhka on aina läsnä koko ajan.

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

En olisi yllättynyt, jos kiistanalaisessa hard forkissa molemmat osapuolet koodaisivat toisen haarukan validointisäännöt siltä varalta, että he haluaisivat rangaista ketään, joka liittyi "väärään" puolelle. Tietenkin tämä olisi ydinasevaihtoehto, ja kuten ydinaseet, kumpikin osapuoli voisi vain valita iskun kostoksi. Arvelisin, että useimmat yksittäiset validoijat ovat neutraaleja siinä mielessä, että he asettaisivat taloudellisen itsensä säilyttämisen etusijalle poliittisen itsensä uhraamisen sijaan, mutta saattavat ulkoisesti ottaa puolensa, jos he aistiisivat, että se oli oikea toimenpide välttääkseen leikkausta.

Paljonko kello on?

Nyt kun tiedämme tarkistuspisteiden ja viiltojen perusteet, voimme siirtyä varsinaiseen Ethereumissa käytettävään algoritmiin, nimeltään Gasper. Tämä on Casperin portmanteau, jonka olemme jo käsitelleet, ja GHOSTia, strategiaa "paras" lohkojen ketjun valitsemiseksi tarkistuspisteiden väliltä.

Ensimmäinen asia, joka on ymmärrettävä Gasperista, on, että aika itse on tärkein riippumaton muuttuja. Reaaliaika on jaettu kahdentoista sekunnin yksiköihin, joita kutsutaan "slotteiksi", joissa jokainen paikka sisältää enintään yhden lohkon. Nämä aikavälit muodostavat sitten suurempia ryhmiä, joita kutsutaan "aikakausiksi", joissa jokainen aikakausi viittaa yhteen tarkistuspisteeseen. Jokainen aikakausi sisältää 32 paikkaa, joten niiden pituus on 6.4 minuuttia.

On syytä huomata, että tämä paradigma kääntää ajan ja lohkotuotannon välisen syy-suhteen verrattuna PoW:hen. PoW:ssa lohkot tuotetaan, koska kelvollinen hash on löydetty, ei siksi, että aikaa on kulunut tarpeeksi. Mutta Gasperissa lohkoja tuotetaan, koska on kulunut tarpeeksi reaalimaailman aikaa päästäksesi seuraavaan paikkaan. Voin vain kuvitella hankalia ajoitusvirheitä, joita tällainen järjestelmä voi kohdata, varsinkin kun kyseessä ei ole vain yksi ohjelma, joka on käynnissä yhdessä tietokoneessa, vaan kymmenet tuhannet tietokoneet, jotka yrittävät toimia synkronoituna kaikkialla maailmassa. Toivottavasti Ethereumin kehittäjät tuntevat sen valheet, jotka ohjelmoijat uskovat ajasta.

Oletetaan nyt, että käynnistät validointisolmun ja synkronoit lohkoketjun ensimmäistä kertaa. Vain koska huomasit, että tietyt lohkot viittaavat tiettyihin aikaleimoihin, kuinka voit olla varma, että nuo lohkot todella tuotettiin tuohon aikaan? Koska lohkotuotanto ei vaadi mitään työtä, eikö ilkeä validaattoriryhmä voisi simuloida täysin väärennettyä lohkoketjua alusta alkaen? Ja jos näet kaksi kilpailevaa lohkoketjua, mistä tietäisit, mikä on totta?

Tämä vie meidät neljänteen PoS-periaatteeseen, joka on, että PoS perustuu subjektiiviseen totuuteen.

Ei yksinkertaisesti ole objektiivista tapaa valita kahden kilpailevan lohkoketjun välillä, ja verkon uusien solmujen on viime kädessä luotettava johonkin olemassa olevaan totuuden lähteeseen ratkaistakseen epäselvyydet. Tämä eroaa merkittävästi Bitcoinista, jossa "todellinen" ketju on aina se, jolla on eniten työtä. Sillä ei ole väliä, jos tuhat solmua kertovat sinulle ketjun X, jos yksi solmu lähettää ketjun Y ja se sisältää enemmän työtä, niin Y on oikea lohkoketju. Lohkon otsikko voi todistaa oman arvonsa, mikä poistaa kokonaan luottamuksen tarpeen.

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Luottamalla subjektiiviseen totuuteen PoS tuo uudelleen luottamuksen tarpeen. Nyt myönnän, että olen ehkä hieman puolueellinen, joten jos haluat lukea toista puolta, Buterin kirjoitti esseen, joka sisälsi hänen näkemyksensä. tätä. Myönnän, että käytännössä ketjun jakautuminen ei vaikuta kovin todennäköiseltä Casperin sääntöjen perusteella, mutta siitä huolimatta saan jonkin verran mielenrauhaa tietäen, että tämä ei ole edes mahdollista Bitcoinissa.

Estä tuotanto ja äänestys

Nyt kun olemme tunteneet slotit ja aikakaudet, miten yksittäisiä lohkoja tuotetaan ja niistä äänestetään? Jokaisen aikakauden alussa koko validaattorisarja jaetaan "satunnaisesti" 32 ryhmään, yksi kutakin paikkaa kohti. Jokaisen aikavälin aikana yksi validoija valitaan "satunnaisesti" lohkon tuottajaksi, kun taas muut valitaan äänestäjiksi (tai "todistajiksi"). Laitan "satunnaisesti" lainausmerkkeihin, koska prosessin on oltava deterministinen, koska kaikkien on oltava yksiselitteisesti samaa mieltä samoista validaattorijoukoista. Tämän prosessin on kuitenkin myös oltava ei-hyödynnettävä, koska lohkotuottajana oleminen on erittäin etuoikeutettu asema johtuen ylimääräisistä palkkioista, jotka ovat saatavilla kaivosteollisuuden louhintaarvosta (MEV) tai, kuten sitä nimetään uudelleen, "maksimi louhittava arvo". "Ethereum on pimeä metsä” on hienoa luettavaa tästä.

Kun lohko on tuotettu, miten muut validaattorit äänestävät tai "todistavat" sen? Lohkoehdotuksen oletetaan tapahtuvan kauden ensimmäisen puoliskon (kuusi sekuntia) aikana ja todentamisen toisella puoliskolla, joten teoriassa pitäisi olla riittävästi aikaa, jotta todistajat voivat äänestää paikkansa lohkosta. Mutta mitä tapahtuu, jos lohkon ehdottaja on offline-tilassa tai ei pysty kommunikoimaan tai rakentaa huonolle lohkolle? Todistajan tehtävänä ei ole välttämättä äänestää kyseisen slotin lohkosta, vaan pikemminkin siitä, mikä lohko "näyttää parhaalta" hänen näkökulmastaan ​​sillä hetkellä. Normaaleissa olosuhteissa tämä on yleensä lohko kyseisestä paikasta, mutta se voi olla myös vanhempi lohko, jos jokin meni pieleen. Mutta mitä "näyttää parhaalta" teknisesti tarkoittaa? Tässä tulee esiin GHOST-algoritmi.

GHOST tarkoittaa "Greediest Heaviest Observed SubTree" ja on ahne rekursiivinen algoritmi löytää lohko, jossa on "viimeisin toiminta". Periaatteessa tämä algoritmi tarkastelee kaikkia viimeaikaisia ​​lohkoja puun muodossa ja kävelee alas puuta ahneesti valitsemalla oksan, jolla on eniten kumulatiivisia todistuksia koko alahaaralla. Vain kunkin validaattorin viimeisin todistus lasketaan tähän summaan, ja lopulta tämä prosessi osuu johonkin lehtilohkoon.

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Todistukset eivät ole vain ääniä nykyiselle parhaalle lohkolle, vaan myös viimeisimmän tarkistuspisteen ääniä, jotka johtavat kyseiseen lohkoon. On syytä huomata Gasperissa, että tarkistuspisteet perustuvat aikakausiin eikä lohkon korkeuksiin. Jokainen aikakausi viittaa täsmälleen yhteen tarkistuspisteen lohkoon, joka on joko kyseisen aikakauden ensimmäisen aikavälin lohko, tai jos tämä aikaväli ohitettiin, viimeisin lohko ennen kyseistä aikaväliä. Sama lohko voi teoriassa olla tarkistuspiste kahdessa eri aikakaudessa, jos aikakausi jotenkin ohitti jokaisen yksittäisen aikavälin, joten tarkistuspisteet esitetään (epookki, lohko) pareilla. Alla olevassa kaaviossa EBB tarkoittaa "aikakauden rajalohkoa" ja edustaa tietyn aikakauden tarkistuspistettä, kun taas "LEBB" tarkoittaa "viimeistä aikakauden rajalohkoa" ja edustaa viimeisintä tarkistuspistettä kokonaisuudessaan.

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Casperin tapaan tarkistuspisteestä tulee oikeutettu, kun todistusten kokonaismäärä ylittää kahden kolmasosan kynnyksen, ja lopullinen, jos sitä seuraa välittömästi toinen perusteltu tarkistuspiste seuraavassa jaksossa. Alla on esimerkki siitä, kuinka tämä äänestys toimii:

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Gasperissa on kaksi leikkausehtoa, jotka vastaavat Casperin leikkaussääntöjä:

  1. Ei äänestä kahdesti saman aikakauden aikana.
  2. Mikään ääni ei voi sisältää aikakauden tarkistuspisteitä, jotka "voilevat" toisen äänen aikakauden tarkistuspisteitä.

Vaikka Casper-säännöt perustuvat aikakausiin lohkon korkeuksien sijaan, ne varmistavat silti, ettei kahta viimeisteltyä tarkistuspistettä voi esiintyä eri ketjuissa, ellei kolmasosaa validaattoreista voida leikata.

On myös syytä huomata, että todistukset sisältyvät itse lohkoihin. Samalla tavalla kuin PoW:n lohko perustelee itsensä käyttämällä hash-yhteyttä, myös PoS:n viimeistelty tarkistuspiste oikeuttaa itsensä käyttämällä kaikkia aiempia todistuksiaan. Kun joku rikkoo leikkaussääntöjä, ne huonot todistukset sisällytetään lohkoon, joka todistaa rikkomuksen. Mukana on myös pieni palkkio lohkotuottajalle, joka syyllistyi rikkomiseen, jotta se kannustaa rankaisemaan sääntöjen rikkojia.

haarukat

On mielenkiintoista pohtia, mitä tapahtuisi haarukan tapauksessa. Lyhyesti sanottuna haarukka viittaa konsensussääntöjen muutokseen, ja niitä on kahta lajiketta: kovat haarukat ja pehmeät haarukat. Kovassa haarassa uudet säännöt eivät ole taaksepäin yhteensopivia, mikä voi johtaa kahteen kilpailevaan lohkoketjuun, jos kaikki eivät vaihda. Soft forkissa uudet säännöt ovat rajoittavampia kuin vanhat säännöt, mutta ne pitävät ne taaksepäin yhteensopivina. Kun yli 50 % kaivostyöläisistä tai validoijista alkaa noudattaa uusia sääntöjä, konsensusmekanismi vaihtuu ketjua katkaisematta. Pehmeät haarukat yhdistetään yleensä päivityksiin ja uusiin tapahtumatyyppeihin, mutta ne sisältävät myös teknisesti kaiken tyyppisen sensuurin, joka on pakotettu 51 prosentin enemmistöllä. PoS:ssa on myös kolmas tyyppi "haarukka", jota ei ole PoW:ssa: ketjun jako ilman muutoksia sääntöihin. Mutta koska olemme jo käsitelleet tämän, keskitymme koviin ja pehmeisiin haarukoihin.

Aloitetaan yksinkertaisimmasta tapauksesta: itsenäisestä kiistanalaista kovahaarukkaa. Kiistanalaisella tarkoitan sääntömuutosta, joka jakaa käyttäjät poliittisesti. Virheenkorjaus tai pieni tekninen muutos ei todennäköisesti olisi kiistanalainen, mutta validointipalkkion muuttaminen luultavasti olisi. Jos kova haarukka oli tarpeeksi kiistanalainen, se voisi johtaa ketjun katkeamiseen ja ratkeaa taloudellisesti siten, että käyttäjät myyvät yhden ketjun ja ostavat toisen. Tämä olisi samanlainen kuin Bitcoin Cash -jako vuonna 2017, jolla näyttää olevan selvä voittaja:

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Oletetaan nyt, että validaattorit istuivat eräänä päivänä ja päättivät, että he eivät saa tarpeeksi palkkaa, ja päättivät nostaa palkkionsa 5 prosentista 10 prosenttiin vuodessa. Tämä olisi selvä kompromissi validaattoreiden hyväksi niiden ei-validaattorien kustannuksella, jotka nyt laimentuvat. Mikä ketju voittaisi ketjun katketessa?

Tämä johtaa viidenteen PoS-periaatteeseen, joka on, että raha on valtaa.

Olemassa olevasta 120 miljoonasta ETH:sta yli 10 % on tällä hetkellä panostettuna, kuten alla olevasta kaaviosta näkyy:

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Jos validaattoreiden ja ei-validaattorien välillä on kiistanalainen ketju, olettaen, että kaikki ei-validaattorit myivät uuden ketjun ja kaikki validaattorit myivät vanhan ketjun, niin teoriassa vanha ketju voittaisi, koska suurin osa ETH olisi edelleen ei-validaattorien hallussa (90 % vs. 10 %). Mutta on vielä muutama huomioitavaa. Ensinnäkin, minkä tahansa ketjun jakamisen jälkeen validaattorit olisivat edelleen molempien lohkoketjujen "hallinnassa". Jos validaattorit kykenisivät vaikuttamaan toiseen ketjuun, heitä saatetaan kannustaa epäonnistumaan. Toiseksi on olemassa myös aiemmin keskusteltu ydinvoimavaihtoehto, jolloin uusi ketju saattaa leikata ketään, joka vielä vahvistaa vanhaa ketjua painostaakseen heitä liittymään. Lopuksi validaattoreilla olisi todennäköisesti merkittävä sosiaalinen ja poliittinen vaikutus kaikkiin muihin verkoston jäseniin. Jos Buterin, Ethereum-säätiö ja pörssit päättivät yhdessä nostaa panospalkkiota, minun on vaikea uskoa, että tavalliset Ethereumin käyttäjät ja validaattorit voisivat pitää vanhan haarukan käynnissä ja samalla tehdä siitä arvokkaamman ostopaineen avulla.

Mitä tapahtuu kiistanalaisessa pehmeässä haarukassa, kuten OFAC-sensuurissa? Validaattorit ovat melko keskitettyjä, kuten alla olevasta kaaviosta näkyy:

Tekninen ja syvällinen analyysi kompromisseista, joita Ethereumin konsensusmekanismi tekee siirryttäessä panostodistukseen, ja siitä, miten todisteiden osoittaminen eroaa.

(lähde)

Toisin kuin PoW, jossa kaivostyöläiset voivat vaihtaa uima-altaita napin painalluksella Ethereumin validaattorit lukitaan panososoitteeseen, kunnes ne käsittelevät poistumistapahtuman. Jos Lido ja huippupörssit saataisiin sensuroimaan tietyt tapahtumat, ne voisivat helposti läpäistä tarkistuspisteiden päättämiseen tarvittavan kahden kolmasosan enemmistön. Aiemmin näimme kuinka Buterin ja muut ETH-validaattorit saattoivat yrittää vastustaa sensuurin pehmeää haarukkaa omalla sensuurin vastahaarukalla ja samalla leikata sensoreita. Vaikka he onnistuisivatkin luomaan haarukan, niin paljon arvoa tuhoutuisi prosessissa, sekä leikkaamisen että luottamuksen menettämisen vuoksi.

Sulkeminen Ajatuksia

Tässä esseessä tarkastelimme, kuinka PoS ratkaisee kaksinkertaisen kulutuksen ongelman Gasperilla, joka on yhdistelmä Casper-nimistä tarkistuspiste-/leikkaussääntöjä ja GHOST-niminen "paras lohko" -äänestyssääntö. Yhteenvetona Gasper jakaa ajan yksiköihin, joita kutsutaan aikaväleiksi, joissa kussakin aikavälissä voi olla enintään yksi lohko, ja aikavälit on ryhmitelty aikakausiksi, joissa jokainen aikakausi viittaa yhteen tarkistuspisteeseen. Jos kahden kolmasosan enemmistö äänestää tarkastuspisteestä, se tulee oikeutetuksi, ja jos kaksi perusteltua tarkistuspistettä esiintyy peräkkäin, ensimmäinen näistä kahdesta tarkastuspisteestä viimeistellään. Kun tarkistuspiste on viimeistelty, rinnakkaisen ketjun viimeistely on mahdotonta, ellei kolmasosaa validoijista saattaisi leikata.

Tässä prosessissa paljastimme viisi PoS:n periaatetta:

  1. PoS käyttää negatiivista (rangaistuspohjaista) kannustinrakennetta.
  2. PoS on sallittu järjestelmä.
  3. PoS:lla ei ole sääntöjä.
  4. PoS luottaa subjektiiviseen totuuteen.
  5. PoS:ssa raha on valtaa.

Jokaisella näistä periaatteista on päinvastainen käyttäytyminen PoW:ssa:

  1. PoW käyttää positiivista (palkkioon perustuvaa) kannustinjärjestelmää.
  2. PoW on luvaton järjestelmä (kuka tahansa voi aloittaa tai lopettaa louhinnan milloin tahansa).
  3. PoW:ssa sääntöjä muuttavat haarukat jätetään huomiotta.
  4. PoW luottaa objektiiviseen totuuteen.
  5. PoW:ssa kaivostyöläiset palvelevat käyttäjiä ja heillä itsellään on vähän tehoa.

Uskon, että jokaisen tulisi pyrkiä luomaan sellainen maailma, jossa he haluavat elää. Jos haluat minun tavoin elää luvattomassa maailmassa, jossa voit hallita rahojasi, jossa kova työ palkitaan ja passiivinen omistaminen on vastuuta ja missä rahasi varastoivat arvonsa pitkälle tulevaisuuteen ilman, että se muuttuu mielijohteesta, niin sinun kannattaa harkita huolellisesti PoW:n ja PoS:n välisiä kompromisseja ja taistella niiden periaatteiden puolesta, joiden mukaan haluat elää.

Tämä on Scott Sullivanin vieraspostaus. Esitetyt mielipiteet ovat täysin heidän omiaan eivätkä välttämättä vastaa BTC Inc:n tai Bitcoin Magazinen mielipiteitä.

Aikaleima:

Lisää aiheesta Bitcoin Magazine