Техническа актуализация на Moonriver: Промени в стейкинга — като част от актуализациите на Upgrade 1001

KeithbmBG
5 min readDec 9, 2021

--

Изминаха повече от три месеца, откакто мрежата Moonriver стартира в Kusama и бързо се превърна в най-активния парачейн с най-голямата екосистема от интеграции. Над 13 милиона транзакции са обработени в Moonriver до момента, с около 1650 ERC-20 токена, 340k+ портфейла и приблизително 925k MOVR токена (~$260 милиона USD).

За да се подобри сигурността и стабилността на мрежата, екипът на Moonbeam направи промени в процеса на staking, които ще влязат в сила чрез ъпгрейда Runtime 1001. Тази публикация ще ви покаже промените в staking.

Номенклатура: Делегации, а не номинации

Moonriver е първият парачейн, който внедрява персонализиран парачейн протокол за staking consensus на в Kusama, основан върху делегирано доказателство за staking (DPoS), където притежателите на токени делегират (залагат) своите токени, за да подкрепят конкретни производители на блокове -колатори — и да печелят награди.

Първоначално внедряването на парачейн staking на Moonbeam отразява конвенцията за наименование на Nominated Proof of Stake на Polkadot, в която участниците при в MOVR бяха наричани номинатори, които “номинираха” производители на блокове. Това обаче създаде известно объркване, тъй като реализацията на парачейн staking в Moonbeam се различава от тази, използвана в Polkadot/Kusama: тя се използва само за стимулиране на производството на блокове и не оказва влияние върху валидността им (окончателна). Завършването на блока се осигурява от Polkadot/Kusama.

Тъй като моделът на консенсус на парачейна, внедрен в Moonriver, най-много наподобява модел на Delegated Proof of Stake, действията, свързани със staking, вече ще се наричат ​​„делегации“. Това отразява идеята, че делегаторите могат директно да избират колаторите, които искат да подкрепят, а не алгоритъм, който решава вместо тях. Освен това няма концепция за „нарязване“, при което номинаторите губят токени, ако номинират валидатор, който извършва незаконни действия. Тъй като Moonriver все още е в ранен етап, не се очаква това преименуване на функции, свързани със staking, да причини големи смущения в мрежата.

Увеличаване закъснението за излизане/Ънбондинг

Преди делегаторът имаше две опции да излезе от делегирането си към колатор:
1.Оттегляне изцяло на делегацията — средствата ще бъдат налични след това в рамките на двата раунда(закъснение за излизане), което приблизително беше 2 часа.
2.Намаляване сумата при стейкинг до минимум 5 MOVR токена, незабавно възстановяване на частичният stake (макар и не умишлено, процедираше се по този начин от стартирането на мрежата) и последващо получаване на останалите 5 MOVR в рамките на два раунда.

С новият ъпгрейд всеки рунд се увеличава до 600 блока (преди 300 блока), а закъснението за излизане се удължава до 24 рунда (приблизително 48 часа) от двата раунда (приблизително 2 часа) .

Всички от следните действия вече имат закъснение за излизане от 48 часа (към момента на писане):

-Делегатори:
Намаляване на делегирането към конкретен колатор (без облигации).
Изцяло оттегляне на делегирането.

-Колатори:
Намаляване самообвързаността.
Напускане на колаторския списък за кандидатстване.

Основната причина за удължаване на закъснението за излизане е да се увеличи стабилността на консенсусния механизъм за Delegated Proof of Stake. Преди участниците в парачейн staking можеха бързо да преместват целия си stake около колатори или дори изобщо да излизат от модула за staking на парачейн, което създава потенциална нестабилност в активния набор от колатори. Следователно, нестабилният активен набор от колатор може да доведе до проблеми с производството на блокове и да попречи на производителността на мрежата. Очакваме стейкинга да бъде по-стабилен през рундовете с новия ъпгрейд.

Имайте предвид, че в Kusama забавянето на излизане (или ънбондинг) е 7 дни, докато на Polkadot е 28 дни. Друга основна разлика е, че в Polkadot/Kusama, номинаторите не печелят никакви награди за staking, докато освобождават/ънбондват средствата си. В Moonriver делегатите ще спечелят награди за staking даже от стойността, която се извежда от делегирането.

Manual Exits/ Ръчно излизане

Друга смислена промяна в интерфейса за staking е свързана с това как делегаторите/колаторите могат да намалят или да излязат изцяло от своите делегации/”бондинг”.

Преди ъпгрейда, делегаторите/колаторите ще изпратят транзакция, изразяваща намерението си или да намалят своята облигация (делегиране / self-bond) или да излязат изцяло от заeтата позиция (отменят делегирането/ излизат от списъка за набор в колатори). След като транзакцията бъде потвърдена, действието ще се изпълни автоматично след два рунда (около 2 часа). Това, което открихме въз основа на работа на Moonriver в продължение на повече от три месеца, е, че планирането на тези автоматични изпълнения доведе до някои блокове, които бяха твърде големи, за да бъдат валидирани от Kusama. Това доведе до незначителни спирания на мрежата и ниска производителност в мрежата.

Следователно изходите вече са разделени на две действия: планиране и изпълнение. Когато делегатор/колатор иска или да намали своят bond (делегиране/self-bond), или да излезе изцяло (оттегля делегирането/ излиза от списъка за набор в колатори), първо ще трябва да поиска да направи това (да го планира). След като периодът на закъснение за излизане изтече (2 дни към момента на подаване), делегаторът/колаторът трябва да изпълни искането си, за да бъде принудително изпълнен. Те също могат да отменят действието си по всяко време, за да могат да планират друго.

Обърнете внимание на следното:
-Делегаторите могат да планират само една заявка без бондинг или заявка за оттегляне на делегиране, а не и двете.
-Ако делегатор иска да промени своята заявка, той трябва да анулира насрочената предишна заявка.
-Колаторите могат да планират bond-less или да напуснат списъка с набор за кандидати в колатори самостоятелно.
-Само колаторът или делегаторът може да планира/отменя своите заявки, но всеки може да изпълнява заявки, след като са готови да бъдат изпълнени.

Това наподобява стейкинг модела в Polkadot/Kusama, при който номинаторите трябва първо да освободят/ ънбонднат своите токени и след това да ги разблокират.

Промени в ъпгрейда по време на изпълнение

Разработчиците на DApp трябва да обмислят прилагането на новата терминология и потока за изпълнение на график. Основните действия, които са засегнати от тази промяна, са изброени по-долу, разделени на API-интерфейси за Substrate и Ethereum.

Substrate API

Променени елементи в състоянието на веригата:

Обърнете внимание, че старите елементи на състоянието са отхвърлени (местоположението на съхранението им е променени), но те все още могат да бъдат достъпни чрез предварителна компилация за staking:

Външни промени

Внимание, старите външни елементи са отхвърлени

Събития, които се промениха

Ethereum API

Методите, които се промениха в прекомпилацията на стейкинга.

Внимание, предишните функции ще са смятат за отхвърлени в близко бъдеще.

Оригинал на статията: линк

--

--

KeithbmBG
KeithbmBG

Written by KeithbmBG

Bulgarian crypto enthusiast — разберете първи и участвайте заедно с мен! Twitter:KeithbmBG

No responses yet