Moonbeam парачейн в сети Polkadot
Moonbeam - это блокчейн, ориентированный на разработчиков, которые стремятся обеспечить совместимость с существующим набором инструментов и с сетью разработчиков Ethereum, предоставляя полную реализацию EVM, API-интерфейса, совместимым с Web3, и мосты, которые соединяют Moonbeam с существующими сетями Ethereum
Moonbeam это парачейн в сети Polkadot. Polkadot - это целая экосистема, во многом непонятная для новичков. При первом знакомстве с Polkadot возникает много вопросов - среди которых часто встречаются следующие:
- что такое парачейны и мосты?
- в чем отличие валидаторов от коллаторов?
- почему существует тестовая сеть Kusama?
- зачем нужны парачейны?
- как стать коллатором и номинатором в сети Moonbeam?
Чтобы ответить на все эти и другие возможные вопросы необходимо разобраться в том, как именно работает Polkadot, какова структура сети и какие роли есть в данной экосистеме. Давайте начнем с самого начала!!!
Polkadot это децентрализованный блокчейн, созданный для подключения и защиты уникальных блокчейнов. Архитектура Polkadot делает возможным создание фундаментальной сети с повышенной гарантией безопасности для всех ее участников, тем самым упрощая разработку уникальных блокчейнов, облегчая интегрирование с существующими блокчейнами и открывая всем дорогу в Web3
Это живая сеть с основными принципами управления и возможностью обновления. Polkadot адаптируется к любым растущим потребностям рынка без риска сетевых форков
Безопастность сети достигается за счет сложной (на первый взгляд) структуры участников экосистемы, слаженного механизма взаимодействия между ними и выверенной модели экономического стимулирования, при которой добросовестные участники сети получают вознаграждение, а участники, нарушившие правила протокола, наоборот наказываются
Kusama является своего рода тестовой площадкой для сети Polkadot. Kusama функционирует как полноценный блокчейн и работает паралельно основной сети. Парачейны могут сначала запуститься (выиграть аукцион) на Kusama и протестировать все необходимые аспекты. Moonriver запущен на Kusama и является тестовой сетью Moonbeam
Структура сети
Главным блокчейном сети Polkadot является Relay Chain (релейная цепочка). Именно Relay Chain играет ключевую роль во всей экосистеме, при этом намеренно имеет ограниченную функциональность. Так в релейной цепочке не поддерживаются смарт-контракты и основная роль, которая отведена ей - это координация работы всей системы, включая Parachains. Relay Chain использует Substrate, что позволяет Parachains, построенным с таким же протоколом быстро подключаться к Relay Chain
Parachains (парачейны) это подключаемые к Relay Chain независимые блокчейны, которые могут иметь (но не обязательно) свои собственные монеты, экономику и возможность оптимизировать функционал под конкретные задачи и потребности проекта. Polkadot не устанавливает жестких правил для парачейнов в принятии решений о первоначальной действительности транзакций. Самое главное, что парачейны помимо всех преимуществ Polkadot могут взаимодействовать с другими блокчейнами в рамках общей сети. Именно парачейны позволяют улучшать масштабируемость и удобство использования сети Polkadot за счет распараллеливания транзакций и снижения нагрузки на Relay Chain
Количество мест под парачейны ограничено и в настоящее время их может быть около 100. Распределяются такие места с помощью аукционов и резервирования определенного количество DOT. Это является одним из важных моментов для безопасности всей сети Polkadot. В конце срока аренды монеты DOT возвращаются. Посмотреть завершенные и актуальные аукционы можно на сайте https://parachains.info/
Moonbeam занял второй слот парачейн акционов Polkadot и является абсолютным лидером среди всех парачейнов по количеству участников и собранным средствам. Так, было зарезервированно более 35 млн DOT от 200к+ участников crowdloan по всему миру
Парачейны, которые не получили новую аренду для продления своего слота, автоматически станут parathreads
Parathreads (парапотоки) это параллельные цепочки блоков, также подключенные к Relay Chain, но носящие временный характер. Они могут быть подключенны мгновенно и на короткое время в отличие от парачейнов, которые подключаются с минимальным сроком в 6 месяцев
Парапотоки не сильно отличаются от парачейнов - они способны отправлять сообщения другим парачейнам используя Cross-Consensus Message Format (XCM) и также защищены полной экономической безопасностью набора валидаторов Polkadot
Главное отличие паропотоков от парачейнов в экономической составляющей. Так парачейны должны занять слот с помощью предложения управления или используя аукцион слотов, а парапотоки могут использовать фиксированную плату за регистрацию. Данная плата может быть существенно ниже, чем стоимость приобретения слота через аукцион. Аналогично возвращению монет DOT в конце срока аренды слота у парачейнов, у парапотоков депозит также будет возвращен
Используя парапотоки, любая команда разработчиков может получить легкий доступ к Relay Chain и запустить свое приложение без существенных затрат
Bridges (мосты) - это подключаемые к Relay Chain особые парачейны, которые способны наладить мосты с другими сторонними блокчейнами. Благодаря мостам становится возможно передавать любые данные и токены между необходимыми блокчейнами (к примеру Ethereum или Solana)
Конструкции мостов могут быть разных типов - от централизованных и надежных до более децентрализованных и ненадежных
Построение максимально децентрализованного и надежного моста может быть выполнено любым из следующих методов:
- Bridge pallets - данный способ возможен для блокчейнов, которые обоюдно используют pallets (например
\<\>
, мост Kusama Polkadot) - Smart contracts - если сторонние блокчейны используют смарт-контракты (например Ethereum), для соединения будет использован смарт-контракт моста, который инициирует транзакции Eth на основе входящих сообщений XCMP
- Higher-order protocos - если сторонний блокчейн не поддерживает смарт-контракты (например Bitcoin), то в этом случае следует использовать XClaim или аналогичные протоколы для соединения
В Moonbeam одним из доступных решений является ChainBridge, модульный общенаправленный мост на blockchain, разработанный командой ChainSafe. Данная интеграция соединяет тестовую сеть Moonbeam — Moonbase и Rinkeby/Kovan тестовые сети эфира
Безопасность и участники сети
Как было сказано выше ключевым преимуществом Polkadot является безопасность всех участников экосистемы. Polkadot преодолевает проблемы масштабируемости и безопасности, поскольку привлекает все экономические стимулы и позволяет цепочкам использовать более надежные гарантии в genesis
Важно понимать, что общая безопасность не зависит от количества парачейнов, подключенных к Relay Chain, но напрямую зависит от количества валидаторов, так как большее число валидаторов даст сети большую децентрализацию
Однако самым большим показателем безопасности сети является количество DOT, зарезервированных в качестве залога (bonded). Чем больше DOT зарезервированно честными валидаторами и номинаторами, тем больше DOT потребуется злоумышленнику для получения слота валидатора
Для правильной работы сети Pokladot необходимо, чтобы все узлы пришли к консенсусу и могли синхронизироваться друг с другом. Без консенсуса невозможно гарантировать, что состояние, которое один узел считает истинным будет одобрено другими узлами
Polkadot использует разновидность алгоритма PoS – GRANDPA — гибридный механизм консенсуса. Подключаемые парачейны работают на основе PoW, точнее его разновидности – BABE
Данный алгоритм консенсуса вмещает в себя 4 ключевых понятия:
Валидаторы играют ключевую роль в добавлении новых блоков в Relay Chain, проверяя на корректность транзакции парачейнов. Они гаранты того, что каждый парачейн следует своим уникальным правилам и может обмениваться сообщениями между всеми сегментами сети
Для того, чтобы валидатор получил право осуществлять проверку транзакций в сети ему необходимо зарезервировать определенное количество DOT - после чего он начинает участвовать в консенсусе с другими валидаторами и защищать сеть. Количество необходимых монет DOT для резервации зависит от числа пользователей сети и оценки объемов сумм, зарезервированных участниками сети
С появлением парачейнов в сети валидаторы выбираются каждую эпоху, но валидаторы не могут самостоятельно выбирать себе парачейн на проверку - это генерируется случайным образом
Валидаторы выполняют две основные функции:
Проверка достоверности информации, содержащейся в назначенном наборе блоков
Участие в механизме консенсуса для создания блоков ретрансляционной цепочки на основе заявлений о достоверности от других валидаторов
Любые случаи несоблюдения алгоритмов консенсуса валидаторами приводят к наказанию путем удаления части или всех DOT, которые зарезервированны валидатором, тем самым отпугивая плохих игроков. Добропорядочные валидаторы наоборот будут вознаграждены
Коллаторы в отличие от валидаторов не защищают сеть, а только поддерживают парачейны, собирая транзакции от пользователей и подготавливая блоки для валидаторов. Это означает, что коллаторы сохраняют всю необходимую информацию, для того, чтобы иметь возможность создавать новые блоки и выполнять транзакции почти так же, как майнеры в текущих цепочках блоков PoW
Если блок парачейна недействителен, то он будет отклонен валидаторами. Поэтому предположение о том, что наличие большего количества коллаторов лучше или безопаснее, неверно. Напротив, слишком большое количество коллаторов может замедлить работу сети
Коллаторы могут быть стимулированы за счет инфляции собственного токена парачейна, но также могут быть и другие способы стимулирования, которые не предполагают создания своего собственного токена парачейна
Стать коллатором не так просто - для этого необходимо обладать определенными знаниями, опытом и первоклассным оборудованием
Так, для того чтобы стать коллатором в Moonbeam, нужно не просто запустить оборудование, а необходимо стать частью сообщества, следить за оборудованием и обновлениями, чтобы обеспечить бесперебойную работу своих узлов
На 10.02.2022 года общее число активных коллаторов в Moonbeam составляет 53. Со временем данное число может быть изменено
Основные требования для запуска коллатора в сети Moonbeam:
- Основной сервер минимум на Ryzen 9 5950x или Intel Xeon E-2386, 1 TB NVMe и 32 GB RAM
- Резервный сервер, расположенная на другом хостинге и в другой стране
- Обеспечение бесперебойной работы серверов
- Обязательная настройка мониторинга с помощью Grafana или аналогов и оповещений
- Создание и надежное хранение сессионных ключей
- Собственный минимальный стейк в 110 000 GLMR. 100 000 GLMR для присоединения к пулу коллаторов и 10 000 GLMR для связывания ключей
- Заполнение регистрационной формы
Подробнее о запуске коллатора можно почитать здесь
Номинаторы защищают Relay Chain, выбирая хороших валидаторов или коллаторов и делегируя в них свои монеты DOT или другие активы. Один номинатор может выбрать несколько валидаторов, что желательно и будет способствовать диверсификации рисков для номинатора (о правильном выборе валидатора / коллатора мы поговорим в следующей статье)
Необходимо тщательно подходить к выбору валидатора или коллатора, так как есть риск, что они выйдут из активного сета или будут сокращены
Но следует помнить, что для возврата потребуется время. Так на Kusama должно пройти 7 дней, на Polkadot 28 дней, а к примеру на Moonriver всего 2 дня
Для того, чтобы стать номинатором в сети Moonbeam необходимо:
- Иметь монеты GLMR на своем личном кошельке, который должен быть привязан к Metamask
- Присоединиться к официальному приложению https://apps.moonbeam.network/moonbeam с помощью Metamask. В Metamask должна быть настроена и выбрана сеть Moonbeam. Сеть можно добавить используя сайт https://chainlist.org/
- Нажать кнопку Manage Delegation - далее кнопку Select a collator - далее выбрать нужного коллатора, ввести необходимую сумму и наконец нажать кнопку Delegate - после чего появится запрос на подписание транзакции
Важно знать, что есть некоторые правила, которые необходимо знать номинатору в сети Moonbeam:
- Есть активный сет коллаторов, которые участвуют в производстве блоков и получают вознаграждение за это и не активный, где коллаторы находятся в режиме ожидания
- 50 GLMR является минимальной суммой, которую можно делегировать. Но у каждого коллатора имеется своя минимальная сумма, внеся которую номинатор будет получать вознаграждение (min bond)
- Только 300 лучших номинаторов (с большим делегированием) у каждого коллатора будут получать вознаграждение. Исходя из этого следует, что внесение минимальной суммы в 50 GLMR не будет гарантом того, что номинатор получит вознаграждение. Важно следить за параметром min bond - это переменная, которая постоянно меняется у каждого коллатора и для попадания в 300 лучших номинаторов необходимо отправить больший объем GLMR, чем указано в min bond
- В любое время номинатор может увеличить или уменьшить долю делегированных средств или забрать их обратно. Для увеличения делегации необходимо нажать (+). Для уменьшения делегации необходимо нажать (-). Для полного отзыва своих средств необходимо нажать (X)
- При отзыве средств номинатор не сразу получит их обратно. Должно будет пройти 28 раундов в Moonbeam, что составляет 7 дней - после чего необходимо будет повторно подтвердить свой запрос. В будущем данный временной промежуток может быть изменен
Номинатор не несет рисков потери своих средств при делегировании, но возможны случаи, когда он не будет получать вознаграждение:
- В первом случае это произойдет, если выбранный коллатор пропадет из активного сета. В этом случае можно либо ждать, когда коллатор вернется в активный сет, либо отозвать свои монеты и делегировать их в другого коллатора
- Во втором случае это произойдет, если у коллатора увеличится размер минимального делегирования (min bond) и номинатор перестанет входить в 300 лучших номинаторов. В этом случае можно просто увеличить долю делегированных монет GLMR
- Официальная инструкция - https://moonbeam.network/tutorial/stake-glmr/
- Официальное приложение - https://apps.moonbeam.network/moonbeam
- Subscan Moonbeam explorer - https://moonbeam.subscan.io/validator
- Сайт о коллаторах от участника сообщества - https://stakeglmr.com/
- Сайт о коллаторах от участника сообщества - https://moonbeam.brightlystake.com/moonbeam/Dashboard
Рыбаки должны являтся полными узлами парачейнов, также как и коллаторы, но должны выполнять совсем иную роль для сети Polkadot. Вместо создания новых блоков рыбаки выступают в роли судей, которые пытаются поймать нарушителей и не допустить неправильные переходы состояний в Polkadot
В настоящее время рыбаки недоступны на Polkadot и Kusama и не планируются к официальному внедрению, несмотря на предыдущие предложения в протоколе AnV