Ноды
August 1, 2023

Развертывание ноды для Starknet. 

Привет ретрохантер! Хотел бы рассказать тебе о уникальных и дополнительных активностях в Starknet. На связи retrodrop.tools.Мы взлетаем!

Почему надо развертывать Ноды для проектов?

Доминирующей активностью на крипторынке в 2022-2023-м стал дропхантинг, но это не единственный способ взаимодействия с проектами и получения дохода в крипте. Еще одной перспективной нишей на рынке является нодраннинг. Ноды могут предложить как начинающим так и опытным криптанам сразу несколько инструментов для заработка и предоставить опыт, несравнимый с транзакциями в часто тормозящих тестнетах. Как вы знаете децентрализация обеспечивается за счет создания многочисленных копий базы данных, которые физически хранятся на разных устройствах и в разных географических регионах, но при этом синхронизированы и совместно добавляют в базу новую информацию. Этим блокчейн принципиально отличается от централизованных сетей, работающих по принципу клиент-сервер. В нашем случае нодами называют те самые устройства, на которых хранятся копии данных блокчейна и которые добавляют в цепочку блоки с новыми транзакциями на основе механизма консенсуса.

Технически ноды состоят из:

  • Харда: виртуальный или физический сервер + оборудование для майнинга.
  • Софта: который позволяет ноде взаимодействовать с другими узлами сети и правильно выполнять возложенные на нее функции.

Разновидности нод

Кроме перечисленных выше основных функций на ноды могут возлагаться дополнительные задачи, для которых требуется специальная конфигурация или софт, поэтому архитектура блокчейна по факту представляет собой сеть взаимосвязанных нод с различными функциями:

В зависимости от выполняемых задач и конфигурации ноды делятся на несколько категорий:

  • Легкие ноды: хранят только частичные данные о транзакциях, поэтому не могут проверять блок самостоятельно и при синхронизации базы данных вынуждены полагаться на full nodes. Из перечисленных выше базовых функций полноценно могут обеспечить только доступ к блокчейну, поэтому часто устанавливаются пользователями, не желающими полагаться на стороннюю инфраструктуру при взаимодействии с сетью. Главное преимущество в низких технических требованиях и простом запуске. Легкие узлы, поддерживаются практически всеми блокчейнами.
  • Полные ноды (full nodes): в отличие от легких нод, хранят всю историю транзакций, что расширяет возможности для взаимодействия с блокчейном. Полные ноды в свою очередь делятся еще на несколько подкатегорий:
    • Урезанные полные ноды: также хранят историю, но только частично, например, последние 20 GB. Могут использоваться в качестве компромисса пользователями, которым мало легкой ноды, но слишком дорого хранить полную базу данных. Full nodes с функцией pruned (обрезки) поддерживает Bitcoin, Ethereum и многие другие сети.
    • Архивные полные ноды: эти узлы хранят полную историю транзакций за все время существования сети. Наличие доступа к полной базе данных позволяет возложить на архивные полные ноды дополнительные функции, поэтому на их основе могут быть запущены:
      • Майнинг ноды: отвечают за обработку транзакций и формирование блоков в сетях, работающих на алгоритме консенсуса PoW. Майнинг ноды кроме стандартной конфигурации полного узла также имеют вычислительные мощности, необходимые для обработки и хеширования транзакций, например, ASIC. Самыми популярными сетями для запуска майнинг нод остаются Bitcoin (высокий входной порог), Dogecoin или Litecoin (входной порог ниже).
      • Стейкинг ноды: выполняют ту же функцию, что и майнинг ноды, но в сетях с алгоритмом консенсуса PoS. Технические требования для стейкинг нод могут быть выше, чем для базовых полных, но основное отличие в том, что для их запуска требуется застейкать определенную сумму в нативных токенах сети. Так, любой желающий может запустить стейкинг ноду в сети Ethereum, если заблокирует 32 ETH.
      • Authority ноды: это аналог валидаторов для сетей с концепцией PoA (VeChain) или PoSA (Binance Smart Chain). Такие ноды допускаются к обработке транзакций только на основе репутации. То есть, недостаточно просто купить оборудование, как в Bitcoin или внести залог, как в Ethereum, нужно получить одобрение сообщества, например, в форме голосования.
      • Мастерноды: в отличие от приведенных выше примеров, они не формируют блоки, но могут выполнять другие задачи. Конкретные права и конфигурация мастернод отличается от блокчейна к блокчейну, например, в сети Dash только мастерноды могут проводить Instant и Private транзакции. Требования для развертывания мастернод, как правило, выше чем к полным и также могут включать стейкинг определенной суммы.

Также выделяют 2 категории нод, не входящих в общую иерархию:

  • Суперноды: в разных источниках классифицируется как разновидность полных нод или мастернод с дополнительным функционалом. Суперноды могут быть мощнее обычных full nodes, что позволяет, обеспечить более высокую пропускную способность или возложить на них специальные функции. Эти узлы используются в основном малоизвестными блокчейнами, как Graft и не получили широкого распространения поскольку снижают децентрализацию сети.
  • Lightning ноды: специальные узлы, используемыми в решении Lightning Network для Bitcoin. Lightning ноды нужны для запуска и поддержки прямого платежного канала между несколькими адресами поверх основной сети Bitcoin.

Стоит учитывать, что не все ноды доступны для свободного развертывания. Если полную или стейкинг/майнинг ноду можно развернуть без разрешения, то для запуска мастер- или authority ноды требуется соответствовать дополнительным требованиям и пройти процедуру одобрения.

Как поднять ноду для Starknet?

После теории мы подошли к основному действию в нашем представлении - к поднятию своей ноды. Для нее нужно

  • Купить или поднять сервер, который соответствует хар-кам указаным на node-guru или другом источнике. Я поднимал ubuntu server 22 lts.
  • Уставновить наш shell скрипт - ссылка.
  • Зарегестрироваться в Alchemy и получить API ключ.
  • Далее открывает ваш сервер и вписываем:
  • YOUR_ALCHEMY_HTTP_ADDRESS - http адресс из алчеми, берем на сайте. Майннет или тестнет на ваш выбор.
sudo apt update
sudo apt full-upgrade -y
ALCHEMY=YOUR_ALCHEMY_HTTP_ADDRESS 
echo 'export ALCHEMY='$ALCHEMY >> $HOME/.bash_profile

Далее вам надо скачать наш скрипт с GitHub. Не бойтесь это просто автоматические команды линукса, код открытый можете проверить сами.

git clone https://github.com/SYBIL-MAFIA/starknet-node.git
chmod +x starknet.sh
./starknet.sh

После будет довольно долгая загрузка. Если вы все сделали правильно то увидите следующую картину.

Вот и все! Молодцы что поставили и не забывайте подключить кошелек в Alchemy!

Если вы хотите ее обновить - используйте

chmod +x starknet_u.sh && ./starknet_u.sh
Наши ссылки — https://t.me/retrodropTools.
Github — https://github.com/SYBIL-MAFIA