криптовалюта, defi, dao, НФТ, bitcoin, биткоин
March 15, 2023

Проходим активности в тестовой сети Zksync Era

Данная статья подготовлена командой DAO Crypto. Мы есть в Youtube и Telegram

Все наши уроки и статьи тут

Содержание

zkSync - проект, суть которого заключается в переносе вычислений из Ethereum в свою сеть, обеспечивая масштабируемость Ethereum и низкую стоимость транзакций при работе с нативным токеном ETH. Проект основан на применении технологии zk-Rollup.

Текущая версия zkSync Era удовлетворяет потребности большинства приложений на Ethereum. Обмен сообщениями смарт-контрактов L1 → L2: позволяет разработчикам передавать данные из Ethereum в смарт-контракты на zkSync, предоставляя необходимую информацию для запуска различных смарт-контрактов. Мы будем разворачивать смарт-контракт на ZkSync Era с помощью плагина Hardhat на Ubuntu 20.04.

Арендуем сервер

Для разворачивания смарт-контракта нужен сервер с минимальными техническими характеристиками (например: Процессор: 1 core Память: 1 ГБ Хранилище: 30 ГБ Трафик: 32 ТБ). Такой сервер можно арендовать на Vdsina

Заходим на сайт и нажимаем на кнопку "Создать сервер".

Задаем параметры сервера: выбираем операционную систему Ubuntu - Версия 20.04 - тип Стандартные серверы - Стоимость аренды минимальная - Локация Амстердам - Отключаем ползунок Автоматическая резервная копия - включаем Дополнительные настройки, там вводим название и выбираем SSH-ключ - жмем кнопку "Создать"

Сервер создан. Копируем его IP-адрес.

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

Для того, чтобы подключиться к серверу на Windows, потребуется программа MobaXterm.

Открываем MobaXterm, через вкладку Session добавляем сервер. В поле "Remote Host" вставляем IP-адрес арендованного сервера, в разделе "Advanced SSH settings" ставим галочку в поле "Use private key" и выбираем файл с приватным ключом.

Сервер запущен:

Разворачиваем смарт-контракт

После этого начинаем запускать команды. Последовательно вводим следующие команды в окне MobaXterm, после каждой строчки нажимаем Enter и ждем выполнения:

Обновляем систему

sudo apt update
sudo apt upgrade

При установке нажимаем y

Устанавливаем загрузчик curl

sudo apt install -y curl

После обновления нашей системы и проверки зависимостей запустим скрипт установки для Node.js 18 (LTS)

curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -

После завершения работы скрипта устанавливаем Node.js 18

sudo apt install -y nodejs

Далее выполняем команды по очереди

mkdir greeter-example
cd greeter-example
apt install cmdtest

Нажимаем y

Добавляем сеть Zksync Era в метамаск на сайте

Для этого присоединяем кошелек метамаск и добавляем в него сеть.

Запрашиваем тестовые токены на сайте goerlifaucet. А затем пересылаем их через мост из сети Goerli в сеть ZkSync Era на сайте.

Переходим на сайт, подключаем свой кошелек. Проверяем, чтобы внизу справа была выбрана сеть zkSync Era Goerli, после чего переводим небольшое количество токенов через мост из сети Goerli в сеть ZkSync Era.

Дожидаемся выполнения транзакции.

Также можно запросить тестовые токены в кране zkSync Era Faucet.

Далее продолжаем набирать команды на сервере

npm init --y
npm install --save-dev hardhat
npm install -g [email protected]
npx hardhat

Выбираем Create a TypeScript project, затем Enter и несколько раз y

В процессе могут быть ошибки, не обращаем на них внимания

Продолжаем набирать дальше команды

mkdir greeter
cd greeter
npm init -y
npm add -D typescript ts-node @types/node ethers@^5.7.2 zksync-web3@^0.14.3 @ethersproject/hash @ethersproject/web hardhat @matterlabs/hardhat-zksync-solc @matterlabs/hardhat-zksync-deploy
vim hardhat.config.ts

Откроется страница, на которой нужно нажать английскую i для редактирования

Копируем текст по этой ссылке и вставляем в окно. Далее нажимаем Esc, после этого вводим с клавиатуры символы :wq и нажимаем Enter

Продолжаем набирать команды

mkdir contracts
mkdir deploy
vim contracts/Greeter.sol

Снова откроется страница для редактирования. Нажимаем снова i и вставляем текст из этой ссылки. Далее нажимаем Esc, после этого вводим с клавиатуры символы :wq и нажимаем Enter

Продолжаем набирать команды

npx hardhat compile
vim deploy/deploy.ts

Снова откроется страница для редактирования. Нажимаем снова i и вставляем текст из этой ссылки под пунктом 6, только в строчке const wallet = new Wallet("<WALLET-PRIVATE-KEY>"); меняем <WALLET-PRIVATE-KEY> на свой приватный ключ метамаска. Чтобы выглядело вот так: const wallet = new Wallet("12345678910");

Для удобства копируем код в документ, вставляем в нужном месте приватный ключ метамаска, затем снова копируем получившийся код и идем в терминал.

Далее нажимаем Esc, после этого вводим с клавиатуры символы :wq и нажимаем Enter

Далее вводим последнюю команду для деплоя контракта

npx hardhat deploy-zksync

Ждем деплоя контракта, на это нужно около 10-15 минут. Деплой может получиться не сразу, если возникает подобная ошибка, то просто повторяем последнюю команду и снова ждем выполнения.

После успешного деплоя контракта появится сообщение:

После этого переходим в эксплорер, вводим в строке поиска номер своего метамаска и видим три транзакции, т.к. после команды деплоя сразу происходит еще и взаимодействие с контрактом.

Поздравляем, смарт-контракт развернут!

Если хотите выполнить тестнет еще с нескольких аккаунтов, то сервер можно не удалять, а выполнять на уже созданном. Для этого в терминале нужно снова набрать команду:

vim deploy/deploy.ts

После этого вставить код с приватным ключом уже от другого кошелька метамаск, как в этом пункте.

Затем снова задеплоить контракт командой

npx hardhat deploy-zksync

После деплоя контракта проходим остальные активности в тестовой сети zkSync ERA.

Минтим NFT в тестовой сети zkSync ERA

Далее минтим NFT в тестовой сети zkSync ERA по этой ссылке

Подключаем кошелек, после чего нажимаем кнопку MINT

Используем Faucet

Используем Faucet по этой ссылке. Вводим свой адрес кошелька метамаск, проходим капчу и нажимаем кнопку Start Mining

Когда намайнится достаточное количество ETH, нажимаем Stop Mining и забираем токены.

Продаем и покупаем тестовый ETH

Для продажи и покупки тестовых ETH переходим по этой ссылке. Сначала подключаем кошелек метамаск и переводим немного тестового ETH во вкладке Deposit/Withdraw

Затем выставляем ордер и подписываем транзакцию в метамаске.

Взаимодействие с другими приложениями в сети

Также можно перейти по ссылке, где мы увидим приложения других участников, загруженные в сеть. Можно повзаимодействовать с этими приложениями, чтобы показать бОльшую активность на своем кошельке.

Данная статья подготовлена командой DAO Crypto. Мы есть в Youtube и Telegram

Все наши уроки и статьи тут