# Прыгаем в уходящий поезд или деплой контрактов на Aleo

By [Понятный инвестор](https://paragraph.com/@clearinvestor) · 2023-05-18

---

Автор: [https://t.me/clear\_investor](https://t.me/clear_investor) Дата обновления 19.05.2023

Предисловие
-----------

Первая фаза была заабужена софтерами и лезть в этот омут мне не хотелось. Сейчас же все довольно-таки цивильно, так как ребята из Aleo додумались усложнить получение тестовых токенов с крана.

А зачем им это делать? Им же пофиг на активность и наград за это давать никто не будет? Как говорится: No tokens, no airdrop. Да-да! Так я вам и поверил. Бабки на стол!

Для деплоя контракта нам понадобится удаленный сервер и сим-карты для отправки смс. На один смарт-контракт затраты = рублей 200, а вот награды… награды могут быть жирными, так как все сейчас дрюкают LayerZero, а про Aleo забыли. Так-то там и там бабок занесли одинаково, но кто из вас в последний раз хоть что-то слышал про Aleo? А выход уже вот-вот!

О проекте
---------

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

![](https://storage.googleapis.com/papyrus_images/cd07e2e5f61b8c4f690d6344865b119f062563a97e97c7db6a945146bf53c138.png)

Самое интересное для нас — команда собрала на $298 миллионов инвестиций от a16z, Coinbase Ventures и Polychain Capital.

Думаю, вы поняли, что делать нужно безоговорочно! Активность для супер-лоу-банков, епрст! Если вы и это скипните, я могу порекомендовать вам отписаться от меня, удалить телеграм, продать всю крипту и пойти работать кассиром в Магните.

Подготовка
----------

### Снимаем удаленный сервер

Я рекомендую использовать [VDSina](https://vdsina.ru/?partner=5yxxet7lfv). Цены тут приемлемые и нет проблем при оплате российскими картами.

*   Переходим на [сайт](https://vdsina.ru/?partner=5yxxet7lfv)
    
*   Проходим регистрацию
    
*   Пополняем баланс
    
*   Жмем кнопку `Создать сервер`
    
*   Выбираем сервер со следующими настройками
    

![Ubuntu 20.04 | Эпичные серверы | Процессор — 16 ядер | Память — 16 ГБ | Хранилище — 130 ГБ | Локация сервера — Амстердам | Автоматическая резервная копия — отключить](https://storage.googleapis.com/papyrus_images/475b2c22ac90e60cc566933d2500c81699955de361ccf468c24878f8dee9d984.png)

Ubuntu 20.04 | Эпичные серверы | Процессор — 16 ядер | Память — 16 ГБ | Хранилище — 130 ГБ | Локация сервера — Амстердам | Автоматическая резервная копия — отключить

*   Нажимаем `Создать`
    
*   Ждем, пока сервер создастся
    

![](https://storage.googleapis.com/papyrus_images/e19efe224c44b3c560776a08b9e2a9e37963acb20655bd8e71e97da2974ec6bc.png)

*   После нажимаем на появившийся сервер
    

![](https://storage.googleapis.com/papyrus_images/89afa89bcd048ce13ee31a7b97c0159d1fbb8e03ebe4d56a6891f370fd194b29.png)

*   Жмем `Доступ` и копируем куда-нибудь номер IP и пароль от сервака
    

### Создаем кошелек Aleo

![](https://storage.googleapis.com/papyrus_images/e542be7ab5881258b1120759c792fabd229f9ae2ee8b4247dee38e8e9c84ce5f.png)

*   Переходим на [сайт](https://aleo.tools/) и жмем `Generate`
    
*   Копируем куда-нибудь Private Key, View Key и Address
    

### Запрашиваем тестовые токены

![](https://storage.googleapis.com/papyrus_images/99e2e04065438d1b402294b3ea716a0fe84792a8480a2ac7160c7628a939d8e7.jpg)

*   Отправляем смс на номер `+1-867-888-5688` с адресом кошелька в таком формате:
    

    Send 50 credits to *ваш address из пункта выше*
    

_\*На_ [_этом сайте_](https://faucet.aleo.org) _будет отображаться статус отправки токенов. Пока токены не отправились, статус будет_ `Pending`_. После отправки токенов с крана появится_ `Transaction ID`_. Ждем его, копируем куда-нибудь и приступаем к следующему шагу._

_\*\*На получение тестовых токенов может уйти несколько часов._

Деплоим смарт-контракт
----------------------

Сейчас будем работать с терминалом, не надо пугаться, ссаться под себя и звать мамочку, все очень просто!

### Открываем терминал

На Mac OS он так и называется — `Терминал`. На Windows — `Командная строка`. Я работаю на Mac, поэтому скрины будут из терминала. ПК-бояре выполняют те же команды, так что без паники.

Разминаем пальчики и начинаем вводить команды! После каждой команды жмякаем `Enter`.

### Подключаемся к серверу

Вводим команду

    ssh root@ip_вашего_сервака
    

    yes
    

Все, мы подключились к серверу, который сняли!

_\*Код, который будет далее, я подрезал у ребят с канала_ [_Testnet Pride_](https://t.me/TestnetPride)_, крутые чуваки! Рекомендую ^\_^_

### Качаем пакеты для работы и открываем отдельное окно

Вводим команду

    sudo apt update && \
    sudo apt install make clang pkg-config libssl-dev build-essential gcc xz-utils git curl vim tmux ntp jq llvm ufw -y && \
    tmux new -s deploy
    

### Добавляем свой кошелек и закрытый ключ в качестве переменных

Вводим команду, а затем данные нашего кошелька

    echo Enter your Private Key: && read PK && \
    echo Enter your View Key: && read VK && \
    echo Enter your Address: && read ADDRESS
    

### Проверяем, что данные верны

Вводим команду

    echo Private Key: $PK && \
    echo View Key: $VK && \
    echo Address: $ADDRESS
    

### Добавляем Transaction ID в качестве переменной

Вводим команду, а затем Transaction ID

    echo Enter your Transaction ID: && read TI
    

А затем еще одну команду

    CIPHERTEXT=$(curl -s https://vm.aleo.org/api/testnet3/transaction/$TI | jq -r '.execution.transitions[0].outputs[0].value')
    

### Ставим snarkOS

Вводим команду и ждем завершения установки

    cd $HOME
    git clone https://github.com/AleoHQ/snarkOS.git --depth 1
    cd snarkOS
    bash ./build_ubuntu.sh
    source $HOME/.bashrc
    source $HOME/.cargo/env
    

### Ставим Leo

Вводим команду и ждем завершения установки

    cd $HOME
    git clone https://github.com/AleoHQ/leo.git
    cd leo
    cargo install --path .
    

Затем жмем Enter и ждем еще.

### Деплоим контракт

Вводим это

    NAME=helloworld_"${ADDRESS:4:6}"
    mkdir $HOME/leo_deploy
    cd $HOME/leo_deploy
    leo new $NAME
    

Потом вводим это

    RECORD=$(snarkos developer decrypt --ciphertext $CIPHERTEXT --view-key $VK)
    

Потом вводим это и ждем завершения развертывания контракта

    snarkos developer deploy "$NAME.aleo" \
    --private-key "$PK" \
    --query "https://vm.aleo.org/api" \
    --path "$HOME/leo_deploy/$NAME/build/" \
    --broadcast "https://vm.aleo.org/api/testnet3/transaction/broadcast" \
    --fee 4000000 \
    --record "$RECORD"
    

![](https://storage.googleapis.com/papyrus_images/dc544325545071d18b5f724fbb95a5063c4cc4802459922c84c072c04c3cdb20.png)

Должно получиться вот так. Сохраняем хэш контракта и идем в [explorer](https://explorer.hamp.app/) его чекать.

### Взаимодействуем с контрактом

Вводим команду, а затем вводим хэш нашего контракта

    echo Enter your Deploy hash: && read DH
    

Затем вводим эту команду

    CIPHERTEXT=$(curl -s https://vm.aleo.org/api/testnet3/transaction/$DH | jq -r '.fee.transition.outputs[].value')
    

Затем эту

    RECORD=$(snarkos developer decrypt --ciphertext $CIPHERTEXT --view-key $VK)
    

Затем эту и ждем выполнения транзакции

    snarkos developer execute "$NAME.aleo" "hello" "1u32" "2u32" \
    --private-key $PK \
    --query "https://vm.aleo.org/api" \
    --broadcast "https://vm.aleo.org/api/testnet3/transaction/broadcast" \
    --fee 1000000 \
    --record "$RECORD"
    

![](https://storage.googleapis.com/papyrus_images/80d5cda8b0252aa3fe47d1785dfb6c795d50e26a18d4d6a886405661e8e9a315.png)

Должно получиться вот так. Сохраняем хэш транзакции и идем в [explorer](https://explorer.hamp.app/) ее чекать.

![](https://storage.googleapis.com/papyrus_images/8200111922c423eb9cc9a13c61ea3c441a204893f1d1a74163e1e0e80285d527.png)

На этом все, поздравляю! Вы задеплоили контракт на Aleo!

*   Не забудьте удалить сервак на VDSina, чтобы он не сожрал все ваши накопления с завтраков.
    
*   Также не забудьте подписаться на мой [канал в телеграм!](https://t.me/clear_investor)
    
*   А еще можете сминтить эту статью, нажав на кнопочку `Collect Entry` ниже!
    

> **_Тем самым вы сделаете мне приятно, а еще повысите свой шанс на следующий ретродроп от Optimism и Mirror ^\_^_**

Жду вас тут | [Telegram](https://t.me/clear_investor) | [Chat](https://t.me/clear_investor_chat) | [YouTube](https://www.youtube.com/c/clearinvestor) | [Twitter](https://twitter.com/BertFedotov)

---

*Originally published on [Понятный инвестор](https://paragraph.com/@clearinvestor/aleo)*
