New User
5 min readDec 23, 2021

--

Minęło ponad trzy miesiące od uruchomienia Moonriver na Kusamie, szybko stając się najbardziej aktywnym parachainem z największym ekosystemem integracji. Do tej pory ponad 13 mln transakcji zostało zrealizowanych w Moonriver, z około 1650 ERC-20 tokenami, portfelami 340 tys. i około 925k MOVR tokenami stakowanymi.

W celu poprawy bezpieczeństwa i stabilności sieci zespół Moonbeam wprowadzi zmiany w procesie stakingowym, które wejdą w życie w ramach aktualizacji Runtime 1001. Ten post przeprowadzi Cię przez zmiany w doświadczeniach stakingowych użytkowników:

Nomenklatura: Delegacje, a nie nominacje

Moonriver jest pierwszym parachainem, który wdroży w Kusamie niestandardowy protokół parachain staking konsensus, który opiera się na Delegated Proof of Stake (DPoS), gdzie posiadacze tokenów delegują (stake) swoje tokeny, aby wspierać określonych producentów bloków i kolatorów oraz zdobywać nagrody.

Początkowo wdrożenie systemu Moonbeam parachain stanowiło odzwierciedlenie nominowanej konwencji nazewniczej Polkadot, w której stakers MOVR nazywano nominatorami, którzy „nominowali” producentów bloków. To jednak stworzyło pewne zamieszanie, ponieważ parachain Moonbeam różni się od implementacji stosowanej w Polkadot/Kusama: Służy tylko do zachęcenia do produkcji bloków i nie ma wpływu na to, czy są one ważne (finality). Ostateczność bloku zapewnia Polkadot/Kusama.

Ponieważ model konsensusu parachain wdrożony w Moonriver najbardziej przypomina model Delegated Proof of Stake , działania związane z stakowaniem będą teraz określane jako „delegacje”. Odzwierciedla to ideę, że delegatorzy mogą bezpośrednio wybrać współprawodawców, których chcą cofnąć, a nie algorytm decydujący o nich. Ponadto nie istnieje pojęcie „ slashing”, w którym osoby nominowane tracą tokeny, jeśli wyznaczają podmiot zatwierdzający, który wykonuje bezprawne działania. Ponieważ Moonriver nadal znajduje się we wczesnym stadium, nie oczekuje się, że zmiana nazwy funkcji związanych ze stakowaniem spowoduje poważne zakłócenia.

Zwiększono opóźnienie wyjścia/rozłączenia

Wcześniej delegator miał dwie możliwości wyjścia z delegowania do kolatora:

  1. Odwołanie delegacji w całości, a środki będą dostępne w ciągu dwóch rund (opóźnienie wyjścia), które trwało około 2 godzin.
  2. Zmniejszenie kwoty stake do minimum 5 tokenów MOVR, odzyskując od razu część stake(choć nie celowo, tak było od momentu uruchomienia sieci) i otrzymując w ciągu dwóch rund pozostałe delegowane 5 MOVR.

W przypadku nowej aktualizacji każda runda zostaje zwiększona do 600 bloków (poprzednio 300 bloków), a opóźnienie wyjścia zostaje wydłużone do 24 rund (około 48 godzin) z dwóch rund (około 2 godzin) .

Wszystkie poniższe działania mają teraz opóźnienie wyjścia 48 godzin (w momencie pisania):

Delegatorzy:

  • Zmniejszenie delegowania w kierunku określonego kolatora (bez obligacji).
  • Całkowicie odwołać delegację.

Współlacze:

  • Zmniejszenie wartości self-bond.

Zostawić zestaw kandydatów do kolatorów.

Głównym powodem wydłużenia opóźnienia wyjścia jest zwiększenie stabilności mechanizmu konsensusu Delegated Proof of Stake. Wcześniej parachain, który stałby uczestnikiem, mógł szybko przenieść cały stake wokół kolatorów, a nawet z całego modułu staking parachain, co stwarza potencjalne niestabilności w aktywnym zestawie koltorów. W związku z tym niestabilny zestaw aktywnych kolatorów może prowadzić do problemów z produkcją i utrudniać wydajność sieci. Oczekujemy, że kwota stake będzie bardziej stabilna w trakcie rund z nową aktualizacją.

Należy pamiętać, że w Kusamie opóźnienie wyjścia (lub okres rozłączenia) wynosi 7 dni, podczas gdy w Polkadot wynosi 28 dni. Inną główną różnicą jest to, że na Polkadot/Kusama, nominatorzy nie zarabiają żadnych zastawionych nagród podczas odklejania funduszy. Delegatorzy w Moonriver zdobywają staking nagrody z wartości wydanej z delegacji.

Wyjścia ręczne

Kolejna znacząca zmiana staking interfejsu związana jest z tym, w jaki sposób delegatorzy/kolatorzy mogą całkowicie zmniejszyć lub opuścić swoje delegacje/obligacje.

Przed uaktualnieniem delegatorzy/kolatorzy wysyłają transakcję wyrażającą zamiar albo zmniejszenia ich obligacji (delegacja/self-bond), albo całkowitego zakończenia staked stanowiska (odwołania delegacji/opuszczenia zestawu kolatorów ). Po potwierdzeniu transakcji działanie zostanie automatycznie wykonane po dwóch rundach (około 2 godzin). To, co odkryliśmy w oparciu o prowadzenie Moonriver przez ponad trzy miesiące, jest to, że harmonogram tych automatycznych egzekucji doprowadziło do niektórych bloków nadwagi, które były zbyt duże, aby zostać zatwierdzone przez Kusama. Spowodowało to mniejsze przeciążenia sieci i ogólną niską wydajność sieci.

Dlatego wyjścia są teraz podzielone na dwa działania: Planowanie i wykonanie. Gdy delegator/kolektor chce albo zmniejszyć więź (delegowanie/self-bond), albo całkowicie zakończyć (odwołać/opuścić zestaw kolatorów), najpierw musiałby poprosić o to (schedule). Po upływie okresu opóźnienia wyjścia (2 dni w momencie pisania) delegator/kolektor musi wykonać żądanie wykonania. Mogą również anulować swoje działanie w dowolnym momencie, aby móc zaplanować inne.

Należy zwrócić uwagę na następujące kwestie:

Należy zwrócić uwagę na następujące kwestie:

  • Delegatorzy mogą zaplanować tylko jedno bond-less lub odwołać żądanie dla każdej delegacji, a nie oba.
  • Jeśli delegator chce zmienić swoje żądanie, musi anulować poprzednie zaplanowane żądanie.
  • Kolatorzy mogą zaplanować bond-less lub pozostawić kandydata kolatora ustawionego niezależnie.
  • Tylko kolator lub delegator może zaplanować/anulować swoje żądania, ale każdy może wykonywać żądania po ich przygotowaniu do wykonania.

Przypomina to model stakingowy Polkadot/Kusama, w którym nominowani muszą najpierw odłączyć swoje tokeny, a następnie je odblokować.

Zmiany przerwania aktualizacji czasu wykonywania

Twórcy DApp powinni rozważyć wdrożenie nowej terminografii i harmonogramu wykonania. Poniżej wymieniono główne działania, na które ma wpływ ta zmiana, podzielone na interfejsy API Substrate i Ethereum.

API Substrate
Elementy stanu łańcucha, które uległy zmianie

Należy pamiętać, że stare elementy stanu zostały nieaktualne (pamięć masowa została przeniesiona), ale nadal można do nich uzyskać dostęp za pośrednictwem kompilacji wstępnej staking:

Zmienione ekstrysy
Należy pamiętać, że stare ekstryniki zostały wydepretowane:

Zdarzenia, które uległy zmianie

EthereumAPI
Metody, które zmieniły się w kompilacji wstępnej staking

Należy pamiętać, że stare funkcje przestaną być obsługiwane w niedalekiej przyszłości.

--

--