December 4, 2022

Как установить ноду ALEO? (Разные способы)

Что за ALEO?

Aleo — это блокчейн, использующий технологию доказательства с нулевым разглашением. Применение этой технологии позволяет обеспечить высокий уровень конфиденциальности при работе с сетью — неразглашение кошелька отправителя и суммы транзакции.

Основная особенность блокчейна ALEO заключается в том, что он поддерживает работу смарт-контрактов, а как следствие, возможность создания на нём децентрализованных приложений. Специально для этого был разработан собственный язык разработки приложений и собственная среда разработки (IDE).

На венчурном раунде проект собрал 298М$ от таких фондов, как: a16z, Coinbase Ventures, Polychain, Slow Ventures и т. д.

Фазы

⠀На данном этапе известны следующие фазы:

  • 2 декабря 2022 г. 00:00 UTC — начало стимулирующей фазы тестнета;
  • 26 января 2023 г. 23:59 UTC — окончание стимулирующей фазы.

Награды

На текущую компанию выделено 25М токенов Aleo, из них 30% или 7.5М на награды проверяющим. Токены, полученные в период стимулирующего тестнета, будут по курсу 5 токенов из тестовой сети = 1 из основной сети. При этом, если сеть наберёт 7.5М токенов ранее 26 января, то стимулирующая фаза закончится досрочно.

Есть риск, что до KYC не будут допущены следующие регионы: Luhansk Regions of Ukraine, Cuba, Iran, North Korea, Russia, Syria, Crimea, Donetsk.

Рекомендуемые требования

CPU: 16 - 32-cores)

RAM: 16GB - 32GB

Disk: 128GB

Network: 10 Mbps

Установка ноды ALEO

Гайд был частично взят из открытых источников и дополнен командой из Telegram паблика I'm CRYPTO BRO 😉

Вы можете воспользоваться простой инструкцией от Nodes Guru тут или же установить ноду по гайду ниже от 1package

⠀Обновить пакеты

sudo apt update && sudo apt upgrade -y

⠀Установить необходимые пакеты

sudo apt install wget jq git build-essential pkg-config libssl-dev -y

⠀Установить Rust

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/installers/rust.sh)

⠀Версия Rust должна быть не младше 1.65.0

rustc --version

⠀Если нет, то удалить командой ниже и установить ещё раз

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/installers/rust.sh) \
-un

⠀Клонировать репозиторий с нодой

cd; git clone https://github.com/AleoHQ/snarkOS.git --depth 1

⠀Перейти в папку с snarkOS

cd snarkOS

⠀Собрать бинарный файл snarkOS

cargo build --release

⠀Скопировать бинарный файл в стандартное хранилище бинарных файлов

mv $HOME/snarkOS/target/release/snarkos /usr/bin

Уже есть кошелёк

⠀Поместить файл под названием aleo_account.txt, обязательно содержащий строку

      Private key  APrivateKey1___

⠀По пути (команда отображает путь)

echo $HOME/aleo_account.txt

Ещё нет кошелька

⠀Создать кошелёк

snarkos account new > $HOME/aleo_account.txt

Сделать резервную копию файла с данными кошелька, сохранив его в надёжном месте (команда отображает путь)

echo $HOME/aleo_account.txt

Никому не показывать приватный ключ

Продолжение

⠀Добавить адрес кошелька в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n aleo_wallet_address -v `grep -oPm1 "(?<=Address  )([^%]+)(?=$)" $HOME/aleo_account.txt`

⠀Добавить приватный ключ кошелька в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n aleo_private_key -v `grep -oPm1 "(?<=Private Key  )([^%]+)(?=$)" $HOME/aleo_account.txt`

⠀Проверить добавление переменных в систему

echo $aleo_wallet_address $aleo_private_key

⠀Если одна из них отсутствует, то вернутся к шагу с работой с кошельком.

⠀Открыть используемые порты

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/ports_opening.sh) 3033 4133

⠀Создать сервисный файл

printf "[Unit]
Description=Aleo Prover
After=network-online.target

[Service]
User=$USER
ExecStart=`which snarkos` start --nodisplay --prover $aleo_private_key
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target" > /etc/systemd/system/aleod.service

⠀Запустить сервисный файл

sudo systemctl daemon-reload
sudo systemctl enable aleod
sudo systemctl restart aleod

⠀Добавить команду для просмотра лога ноды в систему в виде переменной

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n aleo_log -v "sudo journalctl -fn 100 -u aleod" -a

⠀Удостовериться в запуске ноды

aleo_log

Обновление ноды ALEO

⠀Если не скачан GitHub репозиторий с нодой (папка snarkOS), то клонировать его

cd; git clone https://github.com/AleoHQ/snarkOS.git --depth 1

⠀Обновить бинарные файлы

cd $HOME/snarkOS && \
git stash; \
git pull; \
cargo clean; \
cargo build --release; \
mv $HOME/snarkOS/target/release/snarkos /usr/bin; \
cd

⠀Перезапустить сервисный файл

sudo systemctl restart aleod

Удаление ноды ALEO

⠀Остановить ноду

sudo systemctl stop aleod

⠀Удалить сервисный файл

sudo systemctl disable aleod
rm -rf /etc/systemd/system/aleod.service
sudo systemctl daemon-reload

⠀Удалить папку с проектом и бинарный файл

rm -rf $HOME/snarkOS /usr/bin/snarkos

Другие полезные команды ALEO

⠀Доступные переменные (при использовании убрать echo)

echo $aleo_wallet_address
echo $aleo_private_key

⠀Посмотреть лог

aleo_log
sudo journalctl -fn 100 -u aleod

⠀Перезапустить ноду

sudo systemctl restart aleod

Если Вы не хотите пропустить больше топовых активностей и важные новости в сфере крипты, обязательно подпишитесь на нашу группу в телеграмм. 😉