NPoS

Nominated Proof-Of-Stake

Bevezetés az NPoS-ba

Az inkluzivitást az esetlegességgel egyensúlyozva, a Nominated Proof-Of-Stake egy származtatott modellje a hagyományos POS (Proof-Of-Stake) konszenzus mechanizmusnak, optimalizálással a hálózati csomópont-függőségekben, súlypreferenciákkal a validátorok választásában, valamint a blokkok előállításának és véglegesítésének elválasztásával.

Az NPoS mögött álló alapelv az, hogy maximalizálja a befolyás egyenlő eloszlását a hálózaton. Egy ellenőrzési és egyensúlyozási rendszert használ (nominátorok és validátorok), hogy biztosítsa az operatív integritást, ösztönzi a nominációk irányítását az alacsonyabb tőkéjű validátorok felé, és elriasztja a tőke túlzott koncentrációját.

A hagyományos POS rendszerek izolálják a szerepeket és arra kényszerítik a felhasználókat, hogy teljes csomópontokká váljanak. Kezdetben ez volt a decentralizáció víziójának megvalósításának legtisztább módszere anélkül, hogy foglalkozni kellett volna a munkaigazolásos rendszerek finomságaival. Azonban, ahogy a sok mára megszűnt alternatív POS projekt empirikus adatai is mutatták, a tiszta POS nem fenntartható nagy léptékben. Ahogy a tétet birtokló csomópontok halmaza bővül, az üzenetek továbbításához szükséges kommunikációs terhelés (és ezzel együtt a számítási erőforrások) is növekszik. Tekintve, hogy minden új csatlakozó csomópontnak szinkronizálnia kell és kommunikálnia kell minden szomszédjával, a növekedési ráta exponenciálisan növeli a nehézséget. Minden csomópontszám-duplázódáskor a kapcsolatok száma négyszeresére nő.

Forgatókönyv Négy (4) gép egy hálózatban, A, B, C és D. Minden gép kapcsolódik a többihez, összesen 16 csatornát létrehozva. Ha egy új csomópont csatlakozik (4+1), a kapcsolatok száma 16-ról 25-re ugrik. Egy újabb géppel ez ismét 36-ra ugrik; mire 8 gép van, 84 kapcsolat lesz.

A kapcsolatok számának N=O² komplexitásnövekedése mellett, az üzenetküldés komplexitásában is meghatározhatatlan növekedés következik be.

Forgatókönyv Ha az A gép kap egy üzenetet, azonnal továbbítja a többi háromnak. Feltételezve, hogy D földrajzilag távol van, 700 milliszekundumot vesz igénybe, hogy megkapja az üzenetet A-tól; de a C közel van A-hoz és csak 200 milliszekundum alatt kapja meg ugyanazt az üzenetet. Ha C megkapja az üzenetet és észreveszi, hogy D még nem válaszolt, újra továbbítja azt az üzenetet D-nek. Mire D megkapja mindkét üzenetet, válaszolnia kell mindkét szervernek, ami egy extra kommunikációs kört vezet be. További feltételezés, hogy mivel B senkinek sem válaszolt, lehetséges, hogy a gép offline, ami arra készteti a többieket, hogy életjel-ellenőrzést küldjenek neki.

Ha 1 üzenetnek át kell mennie (# csomópontok száma * # kommunikációs csatornák * # üzenetkörök); akkor minden további csomópont egy teljesítmény/hatékonysági gátat jelent a hálózatban.

Az NPoS két módon kezeli a kommunikációs terhelés problémáját.

Elsőként megkülönbözteti a jelölt validátorokat és az aktív validátorokat; rendszeresen keveri a validátor készleteket és randomizálja a szerepkiosztást.

Másodszor, a teljes validátor készletre vonatkozó korlátokat kódolva, és a szavazati erőt nominátorokon keresztül szétosztva, az aktív gépek abszolút összege korlátozott, és a kommunikációs terhelés determinisztikusan meghatározott.


Szereplők

Ahhoz, hogy kulcsszereplővé váljanak a hálózatban és részt vegyenek a konszenzusban, a felhasználóknak zárolniuk/kötniük kell digitális eszközeiket ($ATLA) a protokollba. Ezzel jelzik elkötelezettségüket a hálózat érdekeinek védelme iránt. Hozzájárulásaik növelik a gazdasági biztonságot és pozitívan befolyásolják a kínálati dinamikákat, amiért cserébe két szerepkör egyikét kapják meg: nominátorként vagy validátorként tevékenykedhetnek.

A nominátorok passzív résztvevők, akik validátorokat választanak, és jutalmak egy részét kapják meg, amelyet a választott validátoraik realizálnak. Nominátorokról szóló bővebb információ itt található.

A validátorok tapasztalt üzemeltetők, akik jelentős mennyiségű $ATLA fedezetet biztosítanak, és dedikált gépeket üzemeltetnek, amelyeken speciális szoftverek futnak. A validátorok tranzakciókat gyűjtenek, csomagolják azokat blokkokba, újraellenőrzik ezeket a blokkokat, és hozzáadják őket a láncolathoz (frissítve ezzel a hálózat állapotát). Validátorokról szóló bővebb információ itt található.


Block Building elválasztás

Ami a blockchain növekedését illeti, szükség van egy blokképítő mechanizmusra a lánc bővítéséhez és frissítéséhez a legújabb állapotra. Ahogy röviden említettük a fentebbi "Szereplők" szekcióban, az NPoS a maximális decentralizáció felé való hajlamát fejezi ki a blokkgyártási szerepkört két részre osztva; Blokkgyártás és Blokkvéglegesítés. A blokkok létrehozásának és véglegesítésének szétválasztásával egy ellenőrző és egyensúlyozó rendszer biztosítja, hogy a validátorok magasabb szintű elszámoltathatósággal rendelkezzenek, tovább védve a rendszert a felborítástól.

A blokkgyártást a BABE protokoll kezeli.

A blokkvéglegesítést a GRANDPA protokoll kezeli.

Last updated