Jobban gazdagodnak-e a gazdag ethereum bányászok?


Hozzáadva: 2021. Augusztus 14. Megtekintve: 297

A PoW alapú kriptovaluták bányászata rettenetes mennyiségű elektromos energiát fogyaszt és ezt a problémát megtámadva fejlesztették ki a PoS (proof-of-stake) hitelesítést, amelyet az ethereum 2.0 hálózata alkalmaz. A kriptovaluta közösségeket azonban a PoS erősen megosztja. Sokak szerint a PoS jobban kedvez a gazdagoknak. Nézzük miért!


Első sorban két definícióval kell megismerkednünk. Az egyik a várható igazságosság (expectational fairness) a másik pedig a robosztus igazságosság (robust fairness).


A várható igazságosság azt hivatott reprezentálni, hogy a kriptovaluta bányász várható hozama egyenes arányban áll a befektetett pénzével, így tehát a befektetés hozama konstans.


A kriptovaluta bányászat azonban a szerencse által erősen befolyásolt. A robosztus igazságosság arról árulkodik, hogy a hozam várhatóan egy konstans körül fog-e majd mozogni ahogyan halad előre az idő.


A Szingapúri Nemzeti Egyetem és a Hong Kongi Baptista Egyetem munkatársai a Do the Rich Get Richer? Fairness Analysis for Blockchain Incentives bebizonyították, hogy a PoW alapú kriptovaluta hálózatok mind a két fajta igazságossággal rendelkeznek, feltéve hogy a bányászatot hosszú ideig végezzük. Kiderül továbbá, a jelenlegi PoS blokkláncok különböző anyagi ösztönző modelleket alkalmaznak és ezek közül most 3-ról lesz szó. Ezek az ML-PoS, az SL-PoS és a C-PoS.


Az ML-PoS (például Qtum és Blackcoin esetében) beszélhetünk várható igazságosság, de bizonyos esetekben a robosztus igazságosság nincs jelen.


Az SL-PoS (például NXT) rendszerekben nincs igazságosság és a C-PoS (mint például ethereum 2.0) alapú blokkláncok jobban működnek, mint az ML-PoS blokkláncok ha a robosztus igazságosság szempontjából vizsgáljuk őket és a várható igazságosság tulajdonságukat sem vesztik el.


Háttér


2008 óta a blokklánc alapú technológiák egyre jobban érdeklik az embereket. Legyenek azok az üzleti világ tagjai vagy akár akadémikusok. A blokklánc egy elosztott főkönyv és ebben tárolják egy adott rendszer összes múltbéli állapotát. Egy jól nevelt blokkláncnak nincs szüksége harmadik személy közbenjárására és emiatt számos valóélet-beli alkalmazása van. Használják kriptovaluta hálózatokban, okos szerződések megvalósítására és szavazó, valamint licitáló rendszerek létrehozására.


A bitcoin volt az első és ezáltal ő lett a legnépszerűbb blokklánc technológiát alkalmazó, engedélyt nem igénylő (permissionless) kriptovaluta. A bitcoin blokkláncban a felhasználók között zajló tranzakciók adatait tárolják, egymás után fűzött blokkokban.


Az új tranzakciókat, megerősítésük után blokkokba csoportosítják és ezt a folyamatot hívjuk tulajdonképp kriptovaluta bányászatnak. Az olyan hálózati csomópontokat, amelyek potenciálisan új blokkokat hozhatnak létre bányászoknak hívjuk. Az új blokkok létrehozásához a bányászoknak egy kriptográfiai feladványt kell megoldaniuk. Ez a feladvány általában a PoW volt. A hálózat stabilitásának fenntartása érdekében a bányászoknak kriptovalutát ad a rendszer jutalmul. Ebből következően a bányászok egymással versengve minél több számítástechnikai feladatot elvégző eszközt próbálnak meg maguknál felhalmozni. Az ilyen jellegű versengés mellett sajnos irtózatos mennyiségű energia fogyasztás is felmerül.


Jelenleg a bitcoin bányászok által fogyasztott elektromos áram összértéke 74 Twh körül mozog. Ez meghaladja Austria, Svájc és Szingapúr energiafelvételét is. Ezen probléma orvoslására javasolják a fejlesztők a PoS algoritmust. A PoS alapú hálózatok résztvevői a számítási teljesítmény helyett befagyasztott kriptovaluta mennyiséggel vesznek részt a hitelesítési eljárásban.


A PoS hitelesítés így szinte nullára csökkenti a hálózat hitelesítéshez felhasznált energia mennyiségét, viszont a kriptovaluta közösségek gyakran szigorú bírálattal illetik a PoS módszert. Szerintük a PoS alapú kriptovaluta bányászat (ethereum 2.0) a több pénzzel rendelkező résztvevők több bányászati jutalomra tudnak szert tenni és ezzel még több pénzt tudnak befagyaszatani. Ez pedig egy pozitív visszacsatolású folyamatot eredményez.


A gazdagok jobban gazdagodnak (rich-get-richer) jelenséget a közgazdaságtan Máté hatásnak (Matthew effect) nevezi el. Erről kevés bányász tud és a hatás nem tesz jót a PoS hálózatok decentralizáltságának sem, mivel a befagyasztott összegek jelentős hányadát csupán néhány résztvevő birtokolja.


A sok szavazati joggal (értsd: nagy stake) rendelkező bányászok megjelenése növeli az adatok manipulálhatóságának kockázatát. Itt merül fel a dupla költekezés veszélye is, amelynek során egy felhasználó kétszer elkölti a pénzét. Erre akkor nyílik lehetőség ha a kriptovaluta válózat megszűnik decentralizált lenni. A blokklánc technológiáról nem mondhatjuk, hogy túl régi lenne, ennek ellenére centralizációs problémákat kihasználó támadások számtalanszor megtörténtek már a blokkláncok néhány éves történelmében.


Jó példa a 2020 augusztusában, az Ethereum Classic hálózatát ért támadás. Egy 51%-os támadás miatt vissza kellett vonni egy tranzakciót és ez 1.68 millió dollárnyi veszteséget okozott.


A gazdagok jobban gazdagodnak probléma a PoS protokolok esetében nem annyira került még nagyító alá, azonban az kriptovalutás közösségek aktívan tárgyalják a tökéletlenséget.


Nézzük akkor most a igazságosság (fairness) szemszögéből a kérdéskört. Ez elengedhetetlen a felelősségteljes adat tudomány (data science) műveléséhez.


A PoS és PoW hitelesítési eljárásokat érdemes megvizsgálni a igazságosság szemszögéből, mert így találhatjuk meg a választ arra a kérdésre, hogy a gazdagok valóban jobban gazdagodnak-e ha PoS vagy PoW alapú kriptovaluta bányászati tevékenységbe kezdenek.


A várható igazságosság tehát a bányász által birtokolt informatikai erőforrások és a várható bevételek kapcsolatáról árulkodik. Ettől függetlenül nem minden esetben ad jó képet a helyzetről, mert a bányászati jutalmak kiszámíthatatlanságáról nem árulkodik.


Vegyünk két egyszerű esetet!


A bányász a befagyasztott pénzek 20%-át birtokolja. Elképzelhető egy olyan felállás, amelyben a bányász minden jutalom osztási körben megkapja a teljes jutalmak 20%-át és egy olyan is, amelyben a bányász minden jutalom osztási körben 20%-os valószínűséggel megkapja a teljes jutalmat és 80%-os valószínűséggel nem kap semmit.


Nyilván mindkét leosztás várható jutalma egyenlő, azoban a második esetben a bányás bevétele kilengéseket mutat, nagy benne a kockázat. Bizonyos körökben kap jutalmat, bizonyosokban nem.


A jutalmak kiszámíthatatlanságának mérésére érdemes bevezetni a robosztus igazságosság fogalmát. Ez a bányász által megszerzett jutalmakat írja le, amelyek véletlenszerű folyamatok eredményei. Ezek a sztochasztikus folyamatok a kezdeti befektetett tőké mennyiségével együtt árulkodnak a valóságos hozamról.


A PoS és PoW hitelesítési eljárásokat meg lehet vizsgálni mind a két nézőpontból. A PoW módszer esetében a egy adott blokk hitelesítésére való alkalmasság valószínűsége egyenesen arányos a bányász által beszolgáltatott hash teljesítménnyel és egyáltalán nem függ az előző számítások kimenetelétől (értsd: mindegy ki hitelesítette az előző blokkot). A bányász tehát a hash teljesítményével egyenes arányban képes blokkot hitelesíteni és ez a módszer mind a két igazságossági elvet teljesíti. A Geth ethereum kliens alkalmazással lehet olyan szimulációkat végezni, amely ezen állítás helyességét alátámasztja.


A PoS algoritmus esetében a sikeres blokk hitelesítés valószínűsége a felhasználó befagyasztott pénzének (stake) mennyiségétől függ. Ez pedig folyamatosan nő, tehát az előző blokk hitelesítés kimenetele befolyásolja a következő blokk hitelesítésének valószínűségét.


Továbbá a különböző PoS implementációk különböző pénzügyi ösztönzőket eredményeznek.


A nevesebb PoS implementációk a következők:


-- multi-lottery PoS (ML-PoS) (például Qtum és Blackcoin)


-- single-lottery PoS (SL-PoS) (például NXT)


-- compound PoS (C-PoS) (például ethereum 2.0)


. Az ML-PoS esetében a a blokk hitelesítési valószínűség egyenesen arányos a bányász által kihelyezett pénzösszeggel (stake). Ebből fakadóan a várható igazságosságot teljesíti. A bányász hozama ezen protocolban viszont nem konvergál egy konstans értékhez, mert a Markov lánc hatásai összeadódnak.


A gyakorlati szimulációkból viszont kiderül, hogy a nagyobb mennyiségű stake allokáció és a blokk jutalmak csökkentése segíthet a robosztus igazságosság elérésében.


Az SL-PoS egy egyszeres lottó húzási stratégiát alkalmaz és így bízza rá minden egyes körben a blokkok hitelesítésének feladatát a bányászokra. A SL-PoS módszer így nem képes egyik igazságossági kritériumot sem teljesíteni, mert minél gazdagabb egy bányász annál magasabb lesz a hozama. Vagyis a bányászat során szert tett előnyökkel a rendszer egy tökéletes monopóliumhoz konvergáltatja a tehetős bányászokat. Ez pedig a Máté hatás (Matthew effect).


A C-PoS módszert nemrégiben inflációs jutalommal egészítették ki. Az inflációs jutalmakat a befagyasztott pénz mennyiségének arányában osztják szét. Ez a megoldás megőrzi a várható igazságosság tulajdonságát és mivel csökkenti a bányászati jutalmak szórását, segít a robosztus igazságosság elérésében is.


Ösztönzők blokklánc rendszerekben


A bányászok egy blokk hitelesítéséért jutalmat kapnak, így versenyeznek egymással. A bányászati versenyből nyertesként való kijövetel valószínűsége egyenes arányban áll a bányász által birtokolt erőforrások mennyiségével. Ez lehet befagyasztott tőke és számítási kapacitás is. A hitelesítési módszerek közül a két legismertebb a PoW és a PoS. Ezeket fogjuk most áttekinteni.


PoW ösztönző


A PoW alapú hálózatokban az új blokk akkor kerül elfogadásra ha egy bányásznak bizonyos feltételeket kielégítő hash függvény értéket sikerült kiszámolnia. Konkrétan a PoW feladvány megfejtése egy olyan nonce érték, amelyet a tranzakciós adatokhoz keverve, majd annak hash értékét kiszámolva az eredmény a bányászati nehézségnél alacsonyabb értéket ad. A hash függvény tehát a 0 és 2^256-1 intervallumra egész értékekre képezi le a nonce-ot. Az esemény mely szerint a hash érték a bányászati nehézség alá esik be tehát Bernoulli eloszlást mutat és a siker valószínűsége D/(2^256). A D-t általában 2^256-nál jóval kisebbre választják, de ettől függetlenül helyes megoldást szinte lehetetlen pusztán egy kísérlettel előállítani. A helyes megoldással való előállás valószínűsége attól függ tehát, hogy a bányász hány nonce értéken tud végigiterálni egy másodperc alatt.


Szóval például ha van két bányász, mondjuk A és B, akik egy nap alatt “Ha” és “Hb” darab hasht tudnak egy nap alatt kiszámolni, akkor az egy bányász által megtalált hiteles blokkok száma egy nap alatt jól modellezhető egy Poisson eloszlást követő valószínűségi változóval, amelynek átlaga D*Ha/(2^256). Ekkor annak a valószínűsége, hogy A hitelesíti a következő blokkot kiszámolható a következő módon.


A blokkok beérkezési ideje negatív exponenciális eloszlást követ, amelyek valószínűségi sűrűség függvényének ráta paramétere az előbb ismertetett átlag (D*Ha/(2^256)). A verseny során A-nak gyorsabban kell megtalálnia a blokkot mint B-nek és a sikeres blokk hitelesítés eseményének valószínűsége A és B valószínűségi sűrűség függvényeinek szorzatának integrálja lesz. Az integrál kiszámítása után a valószínűségre PoW esetben, mint várnánk Ha/(Ha+Hb) adódik.


Multi-Lottery PoS ösztönzők


A PoW egy népszerű megoldás a kriptovaluta hálózatokban, azonban tény hogy nagyon sok energiát fogyaszt. Ezen probléma orvoslására találták ki a PoS hitelesítési eljárást. A PoS hálózatokban a bányászok közötti verseny az alapján dől el, hogy kinek épp mennyi pénze van befagyasztva a rendszerbe. Vizsgáljuk most meg a Multi-Lottery PoS (ML-PoS) módszert hasonló módon!


Az ML-PoS módszer esetében a résztvevők akkor tudják hitelesíteni az adott blokkot, ha a hash érték a nehézség és a és a befagyasztott pénzösszeg szorzata alá esik. A hash függvény argumentumában a tranzakciós blokkra utaló adatokon kívül még egy időbélyeg szerepel.


Hasonló módon a hash a 0 és 2^256-1 intervallumra egész értékekre képez le, így a sikeres blokkhitelesítés valószínűsége D*stake/(2^256) lesz. Magyarul ha valaki több pénzt fagyaszt be, nagyobb valószínűséggel fog tudni blokkokat hitelesíteni.


Továbbá fontos még az is, hogy a bányászok különböző időbélyegekkel próbálkoznak addig, amíg meg nem találják a hiteles hash argumentumot. A próbák függetlenek egymástól és Bernoulli eloszlást követnek.


Ebben az esetben a valószínűségi változó, amely az időbélyeg-próbák számát reprezentálja geometriai eloszlást követ. Az eloszlás valószínűségi paramétere pa = D*Sa/(2^256) az A bányászra, ahol “Sa” a stake mennyiségét jelöli.


Ebben az esetben a két valószínűségi sűrűségfüggvény szorzatának integrálja helyett összegét kell venni és bele kell még venni azt az esetet is, amikor A és B egyszerre találnák meg a helyes megoldást. Ekkor 50% valószínűséggel kapja vagy az egyik vagy a másik a jutalmat. Ebből következően annak a valószínűsége, hogy A hamarabb találja meg a blokkot, mint B a következő: (pa - pa*pb/2)/(pa+pb-pa*pb).


pa általában kicsi és emiatt a pa*pb szorzat elhanyagolhatóan pici, ebből következően a valószínűsége annak, hogy A találja meg a blokkot és nem B a következő: Sa/(Sa+Sb), vagyis ahogyan elvárnánk.


A hash függvény argumentumában ebben az esetben nem a nonce érték szerepel, hanem az időbélyeg. Ebből következően a siker csupán a stakelt pénzösszegtől függ, a számítási kapacitástól nem. Így a módszer jelentősen eltér a PoW módszertől.


Single-Lottery PoS ösztönzők


A PoS egy további változatára Single-Lottery PoS-ként hivatkoznak. Ezt egyszeres lottó húzásos PoS algoritmusnak lehet felfogni. Hasonló az előbb ismertetett Multi-Lottery PoS ösztönzőhöz, azonban itt a bányászoknak nincs lehetőségük több időbélyeggel való próbálkozásra, hanem minden körben csak is egyszer próbálhatnak meg hitelesíteni egy blokkot. Ezt a következő módon oldják meg.


Minden egyes körben a bányászok kapnak egy lottószelvényt, amelyet a bányász publikus kulcsa, egy időbélyeg, egy hash függvény és a stake definiál. A protokoll ezek után a következő módon működik:


-- az időbélyeg határozza meg, hogy a blokk mikor kerül hitelesítésre


-- a legalacsonyabb idő értékkel rendelkező megoldást fogadja el a blokklánc


-- a magasabb értékű eredményeket produkáló bányászok eredményeit elvetik


Mivel a stake értéke a nevezőben szerepel, a több staket befagyasztó bányászok nagyobb valószínűséggel tudnak alacsonyabb értéket létrehozni, avagy blokkot hitelesíteni.


Ha feltesszük, hogy két bányász verseng a blokkok hitelesítéséért, mondjuk “A” és “B” és A stakeje kevesebb, mint B-jé, akkor annak a valószínűsége, hogy A hamarabb tud blokkot hitelesíteni, mint B közelíthető a következő törttel: Sa/(2*Sb), ahol “S” a bányászok stakejét jelöli.


A hitelesítésért kapott várható jutalmak értéke kapcsolatban áll a sikeres hitelesítés valószínűségével, azonban SL-PoS esetben azt látjuk, hogy ezen valószínűség nincs lineáris kapcsolatban a stake mennyiségével, mert Sa/(2*Sb) kisebb mint Sa/(Sa+Sb) ha Sa kisebb mint Sb. és a valószínűség a fele lesz ha Sa jóval kisebb mint Sb.


Compound (Összetett) PoS ösztönzők


Az ethereum 2.0 nemrégiben vezette be rendszerébe a C-PoS ösztönzőt. Az ethereum 2.0 rendszerében a bányászok két módon szerezhetnek jutalmat. Elsősorban ha új blokkot javasolnak és másodsorban ha hitelesítik a mások által benyújtott blokkokat.


Minden egyes bányász 32 ethereum befagyasztása után jogosult a hitelesítésre és 32 ethereumonként kap szavazati jogot. Ezeket a koinokat egy okos szerződés címére kell elküldeni. A tranzakciókat 32-essével felosztott darabokban véletlenszerűen hitelesítik az ethereum 2.0 bányászok. Továbbá, minden egyes fordulóban véletlenszerűen választanak egy felhasználót, aki jogosultságot kap az új blokk beterjesztésére. Minden egyes forduló során az ethereum 2.0 bányász 3 * base * vote jutalmat kaphat, minden egyes 32 ethereum befagyasztása után. A “base” egy a protokolban definiált konstans, a “vote” pedig azt a hányadot jelenti, amelyben a bányász online tartózkodik. Ez általában közel mozog a 100%-hoz. Továbbá, 18 * base * N jutalom is kiosztásra kerül a blokkok beterjesztőinek. Itt az N azt a szorzót jelöli, ahányszor 32 ethereumot befagyasztott a bányász.


Ekkor ha veszünk két bányászt, “A”-t és “B”-t, akik “Sa” és “Sb” stakel rendelkeznek és “v”-vel jelöljük a hitelesítésére, “w”-vel pedig a benyújtóknek kiosztott jutalmak teljes összegét, valamint feltételezzük, hogy “P” darabra lehet felosztani a teljes staket, akkor az “A” bányász v*Sa/(Sa+Sb) jutalomra tesz szert mint hitelesítő és w*(X/P) jutalomra tesz szert mint blokk benyújtó. Itt X az A bányász által benyújtott blokkok számát jelenti és P és Sa/Sa+Sb paraméterű binomiális eloszlást követ. Ebből következik, hogy a teljes jutalom mennyisége v*Sa/(Sa+Sb) + w*(X/P) ahol X binomiális eloszlást követ.


Az ethereum 2.0 protokoll annak érdekében, hogy a kiosztott jutalmak mértéke ne változzon, amint új felhasználók lépnek a rendszerbe, csökkenti a “base” változó értékét. Az ethereum 2.0 esetében a ”w” és ”v” változók összege 1 körül mozog és a ”v” általában 20-szor akkora mint a ”w”.


Elvárható igazságosság


A igazságosság az egyik legfontosabb tulajdonság, amiről az ösztönző mechanizmusok esetében beszélhetünk. Joggal várjuk el azt, hogy egy blokklánc rendszer több jutalmat osszon ki annak, akinek többe került felépíteni a kriptovaluta bányáját. Vagy PoS mechanizmus esetében több pénzt stakelt be. Más szóval azt is mondhatjuk, hogy a kriptovaluta bányászat hozama minden felhasználónak jó ha azonos. Nézzük most tehát, hogy mit jelent a várható igazságosság fogalma és hogyan lehet ezt alkalmazni az előbb bemutatott blokklánc hitelesítési algoritmusokra.


Feltételezések és definíciók


1) Az engedélyt nem igénylő blokkláncok esetében a következő feltételezéseket kell most megtenni:


2) Csak két bányász verseng a blokkokért, legyenek ők most A és B


3) A "a" mennyiségű erőforrást, B "b" mennyiségű erőforrást birtokol és "a" és "b" összege normált, avagy "a" + "b" = 1


4) Minden körben azonos mennyiségű jutalom kerül kiosztásra, "w"-t kapnak a blokk benyújtásáért és "v"-t kapnak a hitelesítésért (inflációs jutalom)


5) A és B nem csinál semmi mást az első kör megkezdése után


Nem veszt általánosságából a tárgyalásmód ha most csak A jutalmaira koncentrálunk. A csak két bányászt vizsgáló modell kiterjeszthető több bányászra is. PoW esetben számítási kapacitásról beszélünk, PoS esetben pedig stake mennyiségről. A harmadik feltételezés ugyan konstansnak veszi a jutalmaka minden körben, de tudjuk hogy sok kriptovaluta hálózat bizonyos időközönként felezi a bányászati jutalmakat. A bitcoin esetében ez minden 210.000. Blokknál történik. A felezés megközelítőleg 4 évente történik, így nem követünk el nagy hibát ha most konstansnak tekintjük a bányászati jutalmakat. Az utolsó feltételezés pedig azt mondja ki, hogy a bányászat közben a bányászok nem módosítják mesterségesen stake-jeik mértékét, azaz nem veszik ki pénzüket és nem is töltik tovább egyenlegeiket.



Definíció 3.1: Egy ösztönző mechanizmus megőrzi a várható igazságosságot akkor, ha a bányász által várható jutalom aránya megegyezik a bányász által birtokolt kapacitás arányával.


Várható igazságosság PoW esetben


Vegyük A bányászt, aki a teljes számítási kapacitás “a” hányadát birtokolja. A protokoll szerint, ha egy bányász sikeresen nyújt be blokkot, akkor “w” jutalmat kap. Az A bányász által benyújtott sikeres blokkok binomiális eloszlást követnek és n darab blokk benyújtása után az A bányász várható jutalma n*w*a lesz, így tehát a neki kiosztott jutalom aránya mindig egyenlő lesz “a”-val. Ebből következően a PoW alapú blokkláncok mindig elérik a várható igazságosságot, szóval a bányász várható jutalma mindig arányos lesz a kezdeti számítási kapacitással.


Elmélet 3.2. A PoW mindig eléri a várható igazságosságot.


Az ML-PoS algoritmus várható igazságossága


A bányászat kezdetén “A” bányásznál tételezzük fel, hogy “a” stake van és “B” bányász birtokolja a maradékot. Minden sikeres blokkhitelesítés “w” jutalmat hoz magával. A PoW esettől eltérően “A” blokkhitelesítésének valószínűsége nem csak a kezdeti stake mennyiségétől függ, hanem függ még az előző hitelesítések sikerétől is. Vagyis “A” bányászati kapacitása függ a kezdeti staketől és a bányászat során bezsebelt jutalmaktól is. Szóval ha mondjuk egy bányász a bányászat elején szerencsés volt és sikerült hitelesítenie néhány blokkot, a többi bányászt megelőzvén, akkor a további blokkhitelesítések sikerének valószínűsége is megemelkedik. Ettől függetlenül az ML-PoS módszer bizonyítható, hogy megőrzi a várható igazságosság tulajdonságát.


Elmélet 3.3: Az ML-PoS módszer eléri a várható igazságosságot.


Ez az elmélet intuitív módon belátható a következő módon. Az ML-PoS módszer esetében az egy adott bányász által létrehozott blokk benyújthatóságának valószínűsége egyenesen arányos a stake mennyiségével. Ebből következően a várható feltételes jutalmak mennyisége egyenesen arányos az adott pillanatban vett stake egyenleggel. A birtokban lévő stake véletlenszerűségéből várható értéket véve azt kapjuk, hogy “A” várható jutalmának értéke egyenesen arányos a várható stake mennyiségével. Ez pedig bizonyítja a 3.3.-as elméletet. A matematikai bizonyítás most kihagyásra kerül.


Az SL-PoS algoritmus várható igazságossága


Ahogyan már az előbb kiderült, ha “A” kevesebb stake-el rendelkezik, mint “B”, akkor blokkhitelesítésének valószínűsége a/2b, ami jóval alacsonyabb, mint “a”. Ha tehát “a” nem egyenlő “b”-vel, akkor “A” várható keresete nem lesz arányos a kezdetben allokált erőforrással. Az SL-PoS algoritmus tehát nem őrzi meg a várható igazságosság tulajdonságot.


Elmélet 3.4: Az SL-PoS algoritmus akkor sem őrzi meg a várható igazságosság tulajdonságát ha végtelen mennyiségű blokk lett benyújtva.


Az C-PoS algoritmus várható igazságossága


C-PoS esetben két féle jutalomról beszélhetünk és mind a két jutalom egyenesen arányos a stake-elt kriptovaluta mennyiségével. Ebből következően, ha az ML-PoS tárgyalást vesszük alapul, ugyan a bizonyítás valamivel nehezebb, de kiderül, hogy az ML-PoS is megtartja a várható igazságosság tulajdonságát.


Elmélet 3.5: A C-PoS eléri a várható igazságosságot.


Robosztus igazságosság


Eddig a PoS algoritmusokat várható igazságosság szempontjából vizsgáltuk, azonban az embereket inkább érdekli a különböző kimenetek várható hozama, mintsem a teljes várható hozam. Az ilyen jellegű vizsgálódás céljából vezetik be a robosztus igazságosság fogalmát.


A robosztus igazságosság arról árulkodik, hogy egy kriptovaluta bányász hozamának véletlenszerű kimenetele nagy valószínűséggel a kezdeti befektetés közvetlen közelébe koncentrálódik. A robosztus igazságosság definíciójához két változót kell bevezetni. Az egyik változó, “e” arról árulkodik, hogy a várható hozam milyen messze esik a teljes allokált erőforrásmennyiségtől, “d” pedig ennek a valószínűségét adja meg. Fontos még az is, hogy a robosztus igazságosság egyszerű definíciója nem tartalmazza azt, hogy épp hányadik blokknál tartunk. A teljes jutalom egy adott bányászra eső hányadát reprezentáló változó növekvő blokkszámmal egy konstans értékhez konvergál, így érdemes a blokkszámmal tartani a végtelenbe és úgy analizálni a különböző PoS algoritmusokat. Egy PoS algoritmusról akkor mondhatjuk, hogy megfelelően igazságosan jutalmazza bányászait, ha két feltétel teljesül. Nagy valószínűséggel, a kezdetben allokált erőforrás teljes hálózati erőforráshoz viszonyított hányada meglehetősen közel esik a bányász által begyűjtött jutalom-hányadhoz. Tehát például ha egy bányász a teljes hálózati kapacitás 1%-t birtokolja és az adott PoS algoritmus a teljes kiosztott jutalmak 0.98%-t adja neki, akkor a algoritmus igazságosabb, mint egy másik algoritmus, amely csak a jutalmak 0.97%-t adja neki. És itt természetesen nem szabad megfeledkezni még a második paraméterről sem, amely arról árulkodik, hogy ez milyen valószínűséggel történik meg. Az ideális protokoll 100% valószínűséggel “a” hányadát osztja ki az “A” bányásznak, aki a hálózati kapacitás “a” hányadát birtokolja.


Robosztus igazságosság PoW esetben


A PoW hitelesítés esetében a blokkot hitelesítő nonce megtalálása nagyon hasonlít egy érme feldobásához. “p” valószínűséggel fej jön ki, “1-p” valószínűséggel írás. Jelen esetben is “p” valószínűséggel hitelesíti a bányász a blokkot, “1-p” valószínűséggel pedig a többiek. Ha azt szeretnénk megtudni, hogy hány blokkal kell próbálkozni ahhoz hogy a várható hozam “a” “e” sugarú környezetébe essen, akkor a Hoeffding egyenlőtlenséget kell használni, amely elmondja hogy mi a felső korlátja annak, hogy korlátos független valószínűségi változók összege eltér a várható értéktől. Ha “e” sugarú környezetet akarunk definiálni és azt “1-d” valószínűségi szinten szeretnénk produkálni, akkor az egyenlőség alapján azt mondhatjuk, hogy minimum ln(2/d)/(2*a^2*e^2) blokkal kell próbálkoznunk. Ha tehát a bányász nagy hash kapacitással rendelkezik (vagyis “a” nagy), vagy több blokkal próbálkozik, akkor igazságosabbnak fogja tapasztalni a PoW protokollt. Látszik továbbá az is, hogy ha a próbálkozások számával a végtelenbe tartunk, akkor az intervallum szélessége nullára csökken és a valószínűség pedig 1-hez tart, ebből következően a várható bezsebelt jutalmi hányad a bányászati tevékenység folytatásával konvergál a birtokolt számítási kapacitás hányadához. Magyarul a PoW hitelesítési módszer teljesen igazságos.


Robosztus igazságosság ML-PoS esetben


Az ML-PoS esetben a bányászati folyamat egy klasszikus Pólya Urnával modellezhető. Az urnák, a világhírű magyar matematikusról, Pólya György-ről kapták nevüket. Az “A” bányász által benyújtott blokkok töredéke végül béta eloszláshoz ( Beta(a/w,b/w) ) fog konvergálni. A PoW esetben a bányászat kimenetelei függetlenek és valószínűségi változók egyenletesen vannak elosztva, az ML-PoS esetében Markov lánc jellegű folyamatról beszélhetünk. A robosztus igazságosság eléréséhez szükséges feltételt a martingálokra alkalmazott Azuma egyenlőtlenségből lehet megkapni. Ennek használatával azt kapjuk, hogy az ML-PoS módszer is eléri a robosztus igazságosságot, akkor ha “1/n + w” kisebb egyenlő mint (2*a^2*epszilon^2) / ln(2/szigma). Itt “n” a blokkok számát, “w” a blokk jutalmat (block reward), “a” a stake kapacitást, epszilon az előbb említett intervallumot, szigma pedig a valószínűséget jelenti. Ha egy bányász tehát több stake-el rendelkezik és több blokkot próbál hitelesít, akkor jobban teljesül a robosztus igazságosság feltétele. Mivel a képletben szerepel “w”, a igazságosság érzékeny a blokk jutalomra.


Robosztus igazságosság SL-PoS esetben


Az előzőekben kiderült, hogy SL-PoS esetben a blokkhitelesítés valószínűsége nem egyenesen arányos a stake mértékével. Itt a bányászok befektetésének hozama nő a befektetett összeggel, magyarul a gazdagok jobban gazdagodnak. Nézzük akkor részletesen az SL-PoS rendszerben a jutalmak szétosztásának módját.


A jutalmak alakulását SL-PoS esetben jól lehet modellezni Sztochasztikus Közelítéssel. A sztochasztikus közelítés célfüggvénye ebben az esetben az adott bányász stakeének mennyisége “n” blokkhitelesítés után. Kezdetben az “A” bányász “a” stake-el rendelkezik. A célfüggvényt mindig aszerint frissíthetjük, hogy milyen valószínűséggel nyeri meg az adott blokkot a bányász. Továbbá, a célfüggvény frissítési értéke relatíve egyre kisebb lesz, mert a stake mennyisége folyamatosan nő, a blokkjutalom pedig konstans. A célfüggvény viselkedésének megértéséhez az előbb említett Sztochasztikus Közelítés algoritmust lehet alkalmazni. Ennek eredményéből kiderül, hogy a célfüggvény minden esetben vagy 0-hoz vagy 1-hez konvergál. Ebből következzően tehát az SL-Pos sosem képes elérni a robosztus igazságosságot.


Elmélet 4.9: A jutalomarány SL-PoS esetben ha a blokkok száma tart végtelenbe vagy 0-hoz vagy 1-hez konvergál, függetlenül attól hogy mekkor a bányász kezdeti stake. Az SL-Pos sosem képes elérni a robosztus igazságosságot.


Magyarul ha “n” tart végtelenbe, akkor egy monopól bányász fog rendelkezni a stakeelési kapacitás 100 százalékával. Például ha a bányász célfüggvényének értéke 0.3, akkor a bányász sikeres blokkhitelesítésének valószínűsége kevesebb mint 30%, ebből következően a várható stakearány folyamatosan csökken a blokkok számának növekedésével. A célfüggvény végül 0-hoz tart. Hasonló módon, ha a bányász stakearánya 0.7, akkor több mint 70% valószínűséggel képes hitelesíteni blokkokat és így a stakearány tart az 1-hez. Ha pedig a kezdeti stakearány 0.5, akkor az a blokkok hitelesítése során fokozatosan eltávolodik a 0.5-től és vagy növekvő vagy csökkenő irányba indul meg, 50%-os valószínűséggel.


Robosztus igazságosság C-PoS esetben


C-PoS esetben inflációs és benyújtó (proposer) jutalomról is beszélhetünk. A bevételek fluktuációja a benyújtó jutalmak bizonytalanságából ered és ez van kompenzálva az inflációs jutalommal. Az inflációs jutalmat a stake mennyiségének arányában osztja szét a rendszer a bányászok között. Az C-PoS hatékonyabb a robosztus igazságosság tekintetében, mint a ML-PoS.


Elmélet 4.10: A C-PoS módszer megőrzi az (e,s) igazságosságot abban az esetben, ha “A” bányász “a” stake-el rendelkezik, és a blokkok száma (n), a shard mérete (P) (hány 32-es blokk alakítható ki pl. Ethereum 2.0 esetben), a benyújtó jutalom (w) és az inflációs jutalom (v) kielégíti a következő egyenlőtlenséget: [w^2+(1/n+v+w)]/(w+v)^2*P kisebb egyenlő mint (2*a^2*e^2)/ln(2/s).


Ha ezt összehasonlítjuk az ML-PoS esetében kapott egyenlőtlenséggel, akkor kiderül hogy a C-PoS hatékonyabban éri el a robosztus igazságosság tartományát mert a nevezőben megjelenik az inflációs jutalom és a shard méret, így sokkal kisebb törtet kapunk a bal oldalon C-PoS esetben.


A C-PoS algoritmus megvalósítása során ha tehát a robosztus igazságosság tulajdonságának elérésére törekszünk, akkor növelni lehet az inflációs jutalmat (v) és a shard méretet (P) miközben csökkentjük a benyújtó jutalmakat (w).


Szimulációs eredmények


A fentiekben bemutatott 4 algoritmus futási eredményei szimulálhatók és egy bizonyos paramétertérben ha lefuttatjuk az algoritmusokat, akkor a következő négy ábrát kapjuk:






Ezekben az esetekben az x tengelyen a blokkok száma szerepel, azaz ez a blokklánc evolúcióját jelenti, az y tengelyen pedig a jutalomarány van ábrázolva. Kezdetben minden esetben a bányász a teljes hálózati bányászati kapacitás 20 százalékát birtokolja. ML-PoS és SL-PoS esetekben a benyújtó jutalom (w) normalizált értéke 0.01. C-PoS esetben w = 0.01 és az inflációs jutalom (v) pedig 0.1. Az inflációs jutalom tehát a benyújtó jutalom 10-szerese, pontosan ahogyan az az ethereum 2.0 protokoll implementációjában szerepel.


A szaggatott vonal minden ábrán a igazságossági tartomány határát jelöli. Jelen felállásban e = 0.1 és d = 10%, magyarul egy bányász befektetési hozama 90%-os valószínűséggel a kezdeti tőkebefektetés 0.1 sugarú környezetébe esik.


Az ábrákok a narancssárga vonal a szimulált eredmények átlagát jelenti. A várható igazságosság akkor teljesül tehát ha a narancssárga vonal az ábra 0.2 szintjén található, robosztus igazságosságról pedig akkor beszélhetünk ha a kék terület a szaggatott vonalak által kijelölt tartományba esik.


PoW esetben a kísérleti és a szimulációs átlagok nagyon közel esnek a 0.2-es szinthez, ebből kiderül tehát hogy a PoW eléri a várható igazságosságot, ahogyan az a 3.2-es elméletben szerepel is. Látható továbbá az is, hogy a kék terület konvergál a szaggatott vonalak által kijelölt terület közé és ebből arra következtethetünk hogy a robosztus igazságosság feltételei is teljesülnek. Ha a bányász még kevés blokkot hitelesített (pl. “n” < 100), akkor még jelentős kék terület esik a nem igazságos tartományba, azonban ha már sok blokkot hitelesített, mondjuk n > 1000, akkor szinte minden kimenet az igazságos tartományba fog esni. Az ethereum protokoll esetében a blokkok megközelítőleg 15 másodperces frekvenciával érkeznek, így egy ethereum 1.0 bányásznak nagyjából 4.1 órát kell várnia ahhoz, hogy a kifizetett jutalmai jó nagy valószínűséggel a számára igazságosnak érzett tartományba kerüljenek.


Fentebb látszik az ML-PoS algoritmus eredménye is. Kiderül, hogy a várható hozam gyorsan konvergál a 0.2-höz közeli tartományhoz. Ebből is látszik, hogy az ML-PoS teljesíti az elvárható igazságosság kritériumát. Ennek ellenére, az eredmények kicsit eltérnek a PoW szimuláció eredményeitől mert még sok blokk beérkezése után is (mondjuk n = 5000) még viszonylag sok kimenet található a nem igazságos tartományban. Tehát ha a blokkjutalomat valamilyen értékre beállítjuk és úgy indítjuk el az ML-PoS rendszert, akkor mindig lesznek olyan bányászok akik nem fogják igazságosnak érezni a jutalmak kiosztását. Az igazságosság teljesüléséhez a fent bemutatott egyenlőtlenségnek kell teljesülnie és így kell beállítani a blokkjutalom értékét.


Az utolsó előtti ábrán pedig szerepel az SL-PoS szimuláció eredménye. Ebből kiderül, hogy a blokklánc evolúciója során a várható hozam folyamatosan csökken. A szimuláció során 10000 blokk beérkezése után a várható hozam 2%-ra csökkent le. Az a gyakorlatban, mondjuk az NXT rendszerében 92 napot vesz igénybe. Ebből tehát az következik, hogy a szerencsétlen bányász a blokklánc evolúciója során teljesen elveszti a befektetését, egy másik szerencsés bányász pedig monopol helyzetet tud kialakítani magának. A protokoll tehát nem igazságos.


Az utolsó ábrán pedig a C-PoS algoritmus eredményei P=32-es beállítás mellett láthatók. A várható hozam átlagos értéke nagyon közel van 0.2-höz, és a kék tartomány sokkal szűkebb ha összevetjük az ML-PoS eredményekkel. A C-PoS algoritmus tehát a shard-oknak és a inflációs jutalmaknak köszönhetően sokkal egyenletesebben osztja szét a bányászoknak a jutalmakat, így igazságosság terén sokkal jobban teljesít mint az ML-PoS algoritmus.


A következő ábrákon SL-PoS futási eredmények láthatók.




Az első ábrából kiderül, hogy mindegy hogy egy bányász mekkora stake-el rendelkezik a bányászat elején, a stake folyamatosan fogy és végül teljesen elfogy ahogyan telik az idő. A második abrán a blokkjutalomtól való függés van ábrázolva. Az ábráról leolvasható hogy ha nagyobb a blokkjutalom, akkor jobban csökken a bányász stake-je.


Robosztus igazságosság szimulációk


A következő ábrákon megtekinthetjük a robosztus igazságosság metrikájával kapcsolatos szimulációs eredményeket. Itt kiderül, hogy egy adott algoritmus milyen valószínűséggel adja az elvárható hozamot a kezdeti bányászati kapacitás függvényében. A kezdeti normált bányászati kapacitást 0.1, 0.2, 0.3 és 0.4 értékekben változtatva a következő négy ábrát lehet kapni:






Az ábrák Y tengelyén az igazságtalanság valószínűsége szerepel, magyarul az eredmények minél lejjebb találhatók az ábrán, annál igazságosabb egy protokoll. Az X tengelyen pedig a beérkező blokkok száma látható.


PoW esetben ha nagyobb a bányászati kapacitás, akkor az eredmények gyorsabban konvergálnak az igazságos tartomány felé. Egy közepes bányászati kapacitással rendelkező bányász (0.3) 800 blokk beérkezése után már nagy valószínűséggel igazságosnak fogja érezni a protokollt, viszont egy kevés bányászati kapacitással rendelkező (0.1) bányásznak akár 2000 blokkot is kell várni ahhoz hogy igazságosnak érezze a protokollt. A PoW alapú kriptovaluták esetében a bányászok általában relatíve kevés bányászati kapacitással rendelkeznek és emiatt viszonylag sokat kell várniuk ahhoz, hogy igazságosnak érezzék a protokollt.


Az ML-PoS eredményekből kiderül, hogy az igazságtalanság valószínűsége eleinte csökken a blokkok beérkezésével, azonban a robosztus igazságosság tartományba nem képesek bekonvergálni az eredmények még sok blokk beérkezése után sem így az ML-PoS nem teljesíti a robosztus igazságosság kritériumát. Ettől függetlenül, ha egy bányász nagyobb stake-el rendelkezik akkor igazságosabbnak fogja érezni a protokollt.


SL-PoS esetben az igazságtalanság valószínűsége végül 100%-hoz konvergál, de a gazdagabb bányászok esetében a konvergencia lassabban megy végbe mint a szegény bányászok esetében.


A C-PoS algoritmus nagyon hasonló eredményeket produkál, mint az ML-PoS, de gyorsabb konvergenciával. Bizonyos stake mennyiségekre ML-PoS esetben nem elégülnek ki a robosztus igazságosság feltételei, míg C-PoS esetben kielégülnek.


A blokkjutalom hatása


Hasonló módon meg lehet vizsgálni hogyan befolyásolja a blokkjutalom és az inflációs jutalom változtatása az igazságosság teljesülését C-PoS, ML-PoS és SL-PoS esetben. Ekkor a következő ábrákat lehet kapni:






ML-PoS esetben ha relatíve nagy a blokkjutalom akkor az első néhány blokk beérkezése után viszonylag nagy mennyiségű jutalom áramlik bizonyos bányászokhoz és emiatt a bányászok között zajló verseny kiegyensúlyozatlan lesz. Az igazságtalanság valószínűsége meglehetősen nagy, 85% körül mozog. Ha viszont csökkentjük a blokkjutalom méretét, akkor a robosztus igazságosság feltételét ki lehet elégíteni ML-PoS esetben is. Ez annak tudható be, hogy a viszonylag kicsi blokkjutalom nem képes eltolni bizonyos bányászok stake-elési kapacitását, így a blokkok hitelesítése során minden bányász megközelítőleg azonos valószínűséggel képes blokkokat hitelesíteni és a bányászok között zajló verseny igazságos lesz. ML-PoS esetben tehát érdemes kezdetben viszonylag nagy stake-et választani és a blokkjutalmat alacsonyra állítani.


Az SL-PoS algoritmus a blokkjutalom összegétől szinte függetlenül mindig a 100%-os igazságtalansághoz konvergál, bizonyos esetekben kicsit gyorsabban mint más esetekben.


A C-PoS algoritmus pedig minden blokkjutalom összegnél jobban teljesít mint az ML-PoS algoritmus és ez az ábrákról leolvasható. Az utolsó ábrán szerepel az inflációs jutalomtól való függés. Kiderül, hogy minél nagyobb az inflációs jutalom, annál igazságosabbnak fogják érezni a bányászok a jutalmak széétosztását. Ez azért van, mert az inflációs jutalom valamilyen szinten képes kiegyenlíteni a benyújtó jutalom által okozott fluktuációt.


Kiterjesztés több bányászra


Eddig mindig algoritmus esetében csupán két bányászról volt szó, a valóságban azonban egy kriptovaluta hálózathoz nagyon sok bányász csatlakozik egyszerre. Most meg fogjuk nézni hogyan lehet a diszkussziót kiterjeszteni több bányász esetére is.


Ha kicsit átgondoljuk a dolgot, kiderül hogy a PoW, ML-PoS és a C-PoS algoritmusok nem függenek attól hogy hogyan van szétosztva a bányászati kapacitás a bányászok között. Magyarul ha többen is csatlakoznak a hálózathoz, mindig ki lehet alakítani két halmazt. Az egyikbe egy, a vizsgálandó bányászt tesszük, a másikba pedig a maradék bányászokat. Ekkor ugyan ott vagyunk mintha két bányász esetét vizsgálnánk és a fentiekben bemutatott szabályok hasonló módon teljesülnek. A lényeg tehát abban rejlik, hogy egy bányász sikeres blokkhitelesítésének valószínűsége nem függ a bányászati kapacitás eloszlásától.


SL-PoS esetben viszont kicsit más a helyzet. Az előbb említett felosztás csak akkor tehető meg ha minden bányász azonos méretű bányászati kapacitással rendelkezik.


A következő táblázat tartalmazza a több bányásszal elvégzett szimuláció eredményeit:


A táblázatban szerepel a várható hozam értéke és az igazságtalanság valószínűsége. Az utolsó sorokban pedig látható a konvergenciához szükséges blokkszám. A szimuláció során az “A” bányász a bányászati kapacitás 20%-t birtokolja, a többi bányász pedig a 80%-on osztozik. A blokkjutalom 0.01, az inflációs jutalom pedig 0.1.


Látszik, hogy PoW, ML-PoS és C-PoS esetekben az eredmények 2 bányászra ugyan azok, mint több bányászra. SL-PoS esetben viszont eltérnek. Szóval SL-PoS esetben nem mindegy hogyan van a bányászati kapacitás elosztva a bányászok között. A legnagyobb bányász monopol helyzetbe fog kerülni a szerencsétlen bányászok pedig teljesen elvesztik befektetéseiket.


Az SL-PoS algoritmus javítása


Az SL-PoS algoritmus esetében lehetőség van megváltoztatni az idő függvényt, úgy hogy az olyan blokkhitelesítési valószínűséget adjon, amely aszimptotikusan arányos a stake-elési kapacitással. A következő módosítással élve:


az NXT hálózatán szimulálva a következő eredményeket lehet kapni:


Ezt az új algoritmust FSL-PoS (fair-single-lottery PoS)-nek nevezik el. Ezzel a módosítással a várható hozam 0.2 körül lesz, amivel tehát kielégül a várható igazságosság feltétele. Mivel viszont a kék terület sokszor nem az igazságos tartományban mozog, arra következtethetünk hogy az algoritmus még nem robosztusan igazságos. Ennek javítására a következő javaslatokat lehet tenni.


Jutalmak visszatartása. A problémát potenciálisan meg lehet oldani azzal ha nem azonnal osztja ki a protokoll a jutalmakat hanem csak bizonyos blokkok beérkezése után. A nagy számok törvénye miatt a várható jutalom ekkor az elméleti értékhez fog közelíteni két kifizetési időpont között. Ez látható a fenti ábrán a jobb oldalon.


Kevesebb blokkjutalom. Az ML-PoS eredményekből kiderül, hogy az alacsonyabb blokkjutalom szint javít az igazságosságon. Ettől függetlenül, a túl kicsi blokkjutalom elveheti a bányászok kedvét a hálózathoz való csatlakozástól. Másfelől viszont a magas kezdeti stake szint is emelheti az igazságosság mértékét. A kezdeti stake szintet az ICO (initial coin offering) során tudják beállítani, illetve az airdrop is egy módszer még a kezdeti stake szint szabályozására.


Az ICO-k során a kriptovaluta projekt szereplői befektetőknek adják el kezdeti valutáikat, még mielőtt a bányászat elkezdődne. Az airdrop segítségével pedig közösségi felhasználóknak adnak ki valutákat ingyen még a projekt indulási fázisában.


További protokollok igazságossága


Most nézzünk még 6 kriptovaluta rendszert, amelyeket meg lehet vizsgálni az igazságosság szemszögéből.


NEO és NEO Gas. A Neo egy olyan PoS blokklánc alapú kriptovaluta, amely engedéllyel rendelkező staketulajdonosokat alkalmaz egy decentralizált bizánci hiba toleráns konszenzus algoritmus futtatása során. A staketulajdonosok versenyeznek és a képességeiket az alap NEO tokenben mérik. A többi PoS protokolltól eltérő módon itt a győztes egy másik vagyontárgyat kap, ez a NEO gas. A NEO gas egyenleg nincs befolyással a további blokkhitelesítési valószínűségre. Ebből következően a NEO megoldása nagyon hasonlít a PoW algoritmushoz és hosszútávon teljesíti mindkét igazságossági metrikát.


Algorand. Az algorand egy olyan kriptovaluta, amely skálázható blokkláncot valósít meg ellenőrizhető random függvények és bizánci egyezség (Byzantine agreement) segítségével. Az algorand pénztárcák tulajdonosainak a rendszer inflációs jutalmakat oszt szét és a rendszerben nincs benyújtó jutalom (proposer reward). Ebből fakadóan a bányászok mindig igazságos módon kapnak jutalmakat. A megoldás ugyan igazságos jutalom szétosztást eredményez, viszont az algorand megoldását gyakran bírálják mert sokak szerint a résztvevők nem eléggé motiváltak az elosztott adatbázis integritásának megőrzésében.


EOS. Az EOS delegált PoS protokollt és praktikus bizánci hibatűrést (practical Byzantine fault tolerance) alkalmaz. A hálózat a konszenzust 21 választott szereplő segítségével éri el. Ők nyújtják be az új tranzakciós blokkokat. Az aktív résztvevők minden körben blokkokat terjesztenek be. A hálózat résztvevői számára motiváció a benyújtó jutalom és az inflációs jutalom. Ezek mértéke nem függ az adott bányász stakejének mértékétől. Ebből következően az EOS sem a várható sem a robosztus igazságosság metrikáját nem teljesíti.


Wave és Vixify. Begicheva and Kofman javaslata alapján született meg a Fair Proof of Stake algoritmus. Ez a módszer a fentiekhez hasonló módon javítani próbál az SL-PoS algoritmus hibáin az idő függvény megváltoztatásával. Orlicki munkássága alapján született meg a Vixify valuta. Ez a megoldás imitálja a Nakamoto konszezust és ellenőrizhető random függvényeket valamint ellenőrizhető késleltetés függvényeket alkalmaz. Ez a két protokoll megvalósítja azt a tulajdonságot, amely elegendő ahhoz hogy a résztvevők a stake-jeikkel arányos valószínűséggel legyenek képesek blokkokat beterjeszteni és csak benyújtó jutalmakat oszt szét, amelyek a későbbi körökben mint bányászati kapacitás jelennek meg. A Wave és a Vixify, hasonlóan az ML-PoS vagy FSL-PoS algoritmusokhoz képes elérni a várható igazságosságot, a robosztus igazságosságot azonban nem.


Filecoin. A Filecoin olyan megvalósítás hoz, amely lehetővé teszi a felhasználóknak hogy decentralizált módon töltsék fel a rendszerbe adataikat, majd hasonló módon töltsék le onnan azokat. A rendszer a Proof-of-Storage-and-Time algoritmust alkalmazza és ez biztosítja a fájlok letölthetőségét. A rendszerben a bányászati kapacitást a tárhely és a stake mennyisége adja.


Adatintegritás és megbízhatóság


Az előzetes engedélyeztetést nem igénylő blokkláncok esetében nagyon fontos az adatok integritása. Ebből fakadóan az, hogy egy adott protokoll mennyire igazságos kulcskérdés lehet. Főleg azért mert, ha a bányászok igazságtalanságot tapasztalnak a jutalmak kiosztása során, akkor motivációjuk csökkenhet és a teljes hálózat biztonsága meginoghat. Ha létrejöhetnek bányász konglomerátumok az olyan bányászokból, akiknek jobban kedvez a protokoll, akkor sérül a decentralizáció elve is és az 51%-os támadások kivitelezése is egyszerűbbé válik. Nemrég, az Ethereum Classic hálózatában 1.68 millió dollár tűnt el ilyen jellegű probléma miatt.


A bányász poolokat a jutalmakban kiosztásában tapasztalt fluktuáció csökkentésére hozzák létre. Ha egy bányász egyedül bányászik és aránylag kicsi kapacitással rendelkezik, akkor ha az adott protokoll rosszul teljesíti a robosztus igazságosság feltételeit, a bányász egy idő után pool-hoz fog csatlakozni. A poolok viszont csökkentik a kriptovaluta hálózatok centralizált jellegét, emiatt is fontos lehet a robosztus igazságosság kérdésével foglalkozni.


Az önző bányászat, a blokkvisszatartásos támadás és a kenőpénzekkel kivitelezett támadások is hasonló okok miatt jöhetnek létre.


Motiválókat és az igazságosságot tárgyaló más munkák


Az engedélyeztetést nem igénylő blokkláncok esetében az adatok integritása és a biztonság fenntartása érdekében igazságos protokollokra van szükség. Giulia Fanti és társai munkájukban bevezették a “equitability" fogalmát, amelyet a jutalmak szórása és a kezdeti befektetés szórásának hányadosaként definiálnak. Fahad Saleh és Ioanid Rosu az ML-PoS algoritmust vizsgálták és megnézték hogy a gazdagok jobban gazdagodhatnak-e ezen protokoll segítségével. Ehhez martingálokat és Dirichlet eloszlást használtak. Ők is arra jutottak, hogy az ML-PoS algoritmus képes teljesíteni a várható igazságosság metrikáját. Az előbb említett munkákban szerepel a klasszikus ML-PoS algoritmusok viselkedésének vizsgálata régebbi rendszerekben, mint például a Qtum és a Blackcoin. Rafael Pass és Elaine Shi Nakamoto PoW ötlete alapján igazságos protokollt terveztek.


A blokkláncok motivációs mechanizmusa viszonylag sok szakember fantáziáját felcsigázza. Meg lehet itt még említeni a blokkláncok ellen intézett támadások területét is. Yujin Kwon, Hyoungshick Kim, Jinwoo Shin és Yongdae Kim munkájukban a Bitcoin és a Bitcoin Cash szimbiózisát vizsgálta bányászati szempontból. Fő problémaként a koreaiak azt emelték ki, hogy a bányászok egy gomb megnyomásával át tudják állítani gépeiket a másik kriptovaluta bányászatára és ez stabilitási galibákat okozhat.


Tranzakciók feldolgozása


A gyors elosztott adatfeldolgozás és a magas szintű biztonság megőrzése (Reasoning about the Future in Blockchain Databases) egy olyan terület, amelyet szintén aktívan kutatnak az informatikai tudományokkal foglalkozó szakemberek. Victor Zakhary, Divyakant Agrawal és Amr El Abbadi engedélyeztetést nem igénylő blokkláncokkal foglalkoztak és atomi láncok közötti elköteleződést megvalósító protokollt javasolt. Maurice Herlihy, Barbara Liskov és Liuba Shrira ezt az atomi tulajdonságot gondolták tovább és rámutattak, hogy a láncok közötti megállapodást rosszindulatú kereskedelemre is lehet használni. P. McCorry, A. Hicks és S. Meiklejohn hibavédett replikációs mechanizmust implemetált az atomi elköteleződésekbe (atomic commitment) és ezt javasolja cloud alapú adatmenedzselés megvalósítására. Yuechen Tao, Bo Li, Jingjie Jiang, Hok Chu Ng, Cong Wang és Baochun Li dinamikus shard algoritmust tervezetek okosszerződésekkel és ezzel szeretnék az üres blokkok és az energiapazarlás problémáját megoldani. Mohammad Javad Amiri, Divyakant Agrawal és Amr El Abbadi engedélyeztetést nem igénylők blokkláncok számára terveztek irányított aciklikus gráfokon alapuló algoritmust és ezzel bizalmas tranzakciók és alkalmazások közötti tranzakciókat hivatottak megvalósítani. Tien Tuan Anh Dinh, Rui Liu, Meihui Zhang, Gang Chen, Beng Chin Ooi és Ji Wang benchmark számításokat végeztek tranzakciós áteresztőképességgel és hálózati késleltetéseket vizsgálva. (BLOCKBENCH: A Framework for Analyzing Private Blockchains). Cong Yue, Zhongle Xie, Meihui Zhang, Gang Chen, Beng Chin Ooi, Sheng Wang és Xiaokui Xiao a blokkláncok index struktúrájának teljesítményét vizsgálta, Zonghao Feng és Qiong Luo pedig három processzoron vizsgálta a PoW algoritmus futási jellegzetességeit.


A blokklánc mint adatbázis


A blokkláncot egyre gyakrabban használják elosztott adatbázisok megvalósítására. Az adatbázis lekérések integritásának megőrzésére például a vChain és a GEM^2 ad megoldást ilyen téren. Ezek engedélyeztetett blokklánc adatstruktúrákat használnak. Ce Zhang, Cheng Xu, Haixin Wang, Jianliang Xu és Byron Choi az Authenticated Keyword Search in Scalable Hybrid-Storage Blockchains című munkában kaméleon elköteleződéssel (chameleon commitment) és kriptográfiai bizonyítások segítségével csökkentik a hibrid-tárolós blokkláncok fenntartásának költségeit. A ResilientDB a hálózati decentralizációt előtérbe helyezve kommunikációs késleltetést csökkent hálózati felderítő algoritmus segítségével. A FalconDB egy olyan adatbázis szervert megvalósító megoldás, amely a felhasználók számára autentikációs felületet nyújt és a kulcsokat blokkláncon tárolja, ezzel hatékony együttműködést biztosít. Yehonatan Buchnik és Roy Friedman a FireLedger megtervezésével alacsony adatkommunikációs engedélyeztetést igénylő blokklánc protokollt javasoltak az áteresztőképesség növelése érddekében. Az AnyLog: a grand unification of the Internet of things munkában IoT adatok megosztására elosztott adatmegosztó platformot terveztek. A Fine-grained, secure and efficient data provenance on blockchain systems munkában okosszerződés alapú rendszerre fejlesztettek interface-t. A BFT-Store: Storage Partition for Permissioned Blockchain via Erasure Coding tudományos cikk a blokklánc alapú rendszerek skálázhatóságát javítják hibajavító küdok bevezetésével. Pingcheng Ruan, Dumitrel Loghin, Quang-Trung Ta, Meihui Zhang, Gang Chen és Beng Chin Ooi az A Transactional Perspective on Execute-order-validate Blockchains című tudományos munkában modern adatbázisokban optimista konkurencia szabályozást valósítottak meg az execute-order-validate jellegű architektúrák javítására. A Blockplane egy olyan middleware, amely adatközpontok számára valósítja meg a bizánci hibatűrést (byzantine fault-tolerance). Az A Fault-Tolerant Protocol for Hybrid Cloud Environments című munka felhő alapú környezetekben hibrid állapotú protokollt valósít meg és ezzel hivatott elkerülni a leállásokat valamint káros üzemzavarokat.


A Pólya-féle urnamodell


A fentiekben szó volt az Azuma egyenlőtlenségről, maringálokról és sztochasztikus közelítésekről is. Itt a Doob martingálok és az Azuma egyenlőtlenség lett felhasználva a koncentráció valószínűségének levezetésére. Továbbá a bányászati folyamat nemlineáris általánosított Pólya-féle urnamodellel jellemezhető, amelyről a következő művekben lehet olvasni:


Non-Linear Urn Processes: Asymptotic Behavior and Applications


On a preferential attachment and generalized Pólya’s urn model


Nonlinear randomized urn models: a stochastic approximation viewpoint


Generalized Polya urns via stochastic approximation


Az ML-PoS algoritmus bányászati folyamatát például klasszikus Pólya-féle urnamodellel lehet jellemezni és erről a következő könyvben lehet részletesen olvasni: Polya Urn Models. Itt az “A" bányász által beterjesztett blokkok aránya minden bizonnyal a béta eloszláshoz fog konvergálni. Továbbá az általánosított Pólya-féle urnák aszimptotikus konvergenciájának megoldására több módszert is javasoltak már. Ilyenek a következők:


Sztochasztikus közelítések: Non-standard limit theorems for urn models and stochastic approximation procedures


Brown mozgás beillesztés: On a preferential attachment and generalized Pólya’s urn model


Exponenciális beillesztés: Balls and bins models with feedback, A Scaling Result for Explosive Processes.



Szerző: LB



Figyelem: A bejegyzésben található információk tartalmazhatnak hibát. A szerző az abból eredő károkért nem vállal felelősséget!



Hozzászólások (0)


További hírek