# Большой, длинный, необрезанный гайд по дропу от zkSync

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

---

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

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

Встречайте обновленный гайд по движу в zkSync! В нем я собрал основные активности, за которые ранних юзеров могут наградить жирным дропчиком!

Гайд будет дополняться, так что заглядывайте сюда время от времени. Также не стесняйтесь делиться своими мыслями и дополнениями в нашем [чате](https://t.me/clear_investor_chat). Конструктивная критика приветствуется!

_\*Для прохождения гайда нам понадобится ETH в сети Ethereum Mainnet. Я рекомендую гонять сайз побольше, 500-1000 долларов в эфире будет норм. Но если вы лоубанк, сделайте активности хотя бы с 100$._

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

**zkSync** — это L2-решение поверх Ethereum. Проект собрал $458 млн и выйдет в майнет в 2023 году. Кто-то говорит, что делать для него активности поздно, и снепшот уже был, но официального подтверждения этому нет. Так что воркаем, чтобы потом не плакать. Я считаю, что до запуска токена у нас есть еще месяцев 6-7, так как пока экосистема сырая!

Сейчас у zkSync работают 2 сети: Lite и Era. Как я понимаю, команда будет постепенно отказываться от Lite и полностью переходить в Era. Но это не значит, что делать Lite не нужно! Делаем все, тем более затраты в Lite копеечные.

Наводим шум в zkSync Lite
-------------------------

### Используем нативный мост zkSync Lite

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

*   Идем на [сайт](https://lite.zksync.io/account/), коннектим кошелек и вводим ETH в сеть zkSync.
    
*   Для этого жмем `Top up` и выбираем среди `Bridge zkSynс`!
    
*   Вводим число ETH, которое хотим перевести, и не забываем оставить чутка ETH на комиссии!
    
*   Ждем пополнения.
    

### Торгуем на ZigZag

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

*   Идем на сайт [ZigZag](https://trade.zigzag.exchange) и подключаем кошелек.
    
*   Делаем несколько транзакций, например, продаем часть ETH и обратно покупаем.
    
*   Так делаем с несколькими парами по несколько транзакций, например, ETH/USDC и ETH/DAI, чтобы нагнать объем!
    
*   По итогу, оставляем на счету несколько DAI, остальное свапаем обратно в ETH.
    

### Создаем NFT на Pinata

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

*   Идем на сайт [Pinata](https://www.pinata.cloud) и регаемся как креатор.
    
*   Жмем кнопку `Upload+`, затем `File` и загружаем любую картинку с компа.
    
*   Копируем ее `CID` и возвращаемся в кошелек zkSync во вкладку NFT.
    

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

*   Жмем `Mint NFT`.
    
*   Активируем кошелек через подписание нескольких транзакций.
    
*   Вставляем `CID`, авторизуемся и минтим NFT.
    

### Донатим на Gitcoin

*   Идем на сайт [Gitcoin](https://bounties.gitcoin.co/grants) и регистрируемся через GitHub!
    

_\*Если GitHub у вас нет, нужно его завести и в идеале дать отлежаться недельку-две, так как GitHub не любит, когда через него верифицируются._

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

*   Потом кликаем на `Products` и выбираем `Grants`!
    
*   Жмем `View All Grants` и выбираем проект, в который хотим задонатить.
    

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

*   Жмем `Add to Card` и идем в корзину сверху!
    

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

*   Выбираем в `Amount/Currency` валюту DAI, которую мы купили на ZigZag ранее.
    
*   Пишем сумму доната (я напишу 1.8$) и кликаем `I’m Ready To Checkout`.
    
*   Обязательно выбираем `zkSync Checkout`. Подтверждаем все транзакции и совершаем донат!
    

### Активности на Crew3

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

*   Идем на [Crew3](https://zksync.crew3.xyz/invite/t6EUE9Af7pbBXE7Glu-Yc), верифицируем свой профиль и проходим простые социальные задания!
    
*   Также надо будет пройти квесты, за один из которых дадут роль в Discord.
    

**Ответы на первый тест**

1.  Baby Alpha
    
2.  To put the system through a series of real-money stress tests…
    
3.  Fair Onboarding Alpha
    
4.  Full Launch Alpha
    
5.  Around EOY 2022-Q1 2023, but we will put security first and consider…
    

**Ответы на второй тест**

1.  C
    
2.  B
    
3.  C
    
4.  spicy
    

**Ответы на третий тест (про безопасность)**

1.  No
    
2.  zkSync
    
3.  B
    
4.  C
    
5.  D
    
6.  D
    
7.  E
    
8.  D
    
9.  A
    

### Выводим ETH через Orbiter

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

*   Идем на [сайт Orbiter](https://www.orbiter.finance) и коннектим кошелек.
    
*   Выводим ETH из сети zkSync в сеть Ethereum!
    

_\*Оставляем немного на кошельке (10-15 долларов) для проявления активности в будущем._

На этом движняк в сети `Lite` закончен! Кстати, вот моя видеоинструкция по zkSync Lite со стрима. Он был до выхода сети Era!

[

\- YouTube
----------

Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.

https://www.youtube.com



](https://www.youtube.com/live/IFkxg-uVdjI?feature=share)

Залетаем в zkSync Era
---------------------

### Полезные советы

*   Перед тем, как с двух ног залетать в Era, добавьте в закладки [сайт с экосистемой](https://ecosystem.zksync.io/) zkSync, чтобы не нарваться на скам! Тут собраны все официальные партнерства и протоколы, которые строятся на zkSync.
    
*   Не пугайтесь дорогих транзакций в сети Era. Большую часть затрат на газ сейчас протоколы компенсируют (но не все). Итого получается, что цена газа сейчас в районе $0.25, что приемлемо.
    
*   Не нужно делать все активности в один день! Погоняли пару протоколов на этой неделе, через неделю прошлись еще по нескольким! Помним, что самое главное для нас – регулярность. Косим под реальных пользователей.
    

### Используем нативный мост zkSync Era

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

*   Идем на сайт [моста](https://bridge.zksync.io/), коннектим кошель и выбираем количество эфира, которое хотим забриджить.
    
*   Жмем `Deposit` и ждем несколько минут.
    
*   Идем на [Layer3](https://layer3.xyz/quests/welcome-to-a-new-era) и проходим квест. Заодно, так сказать.
    

### Mute

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

*   Идем на [сайт Mute](https://app.mute.io/swap) и коннектим кошелек!
    
*   Делаем свапы на сайте, нагоняем объем! Все по аналогии с ZigZag.
    
*   Добавляем ликвидность в пулы!
    
*   Идем на [Layer3](https://layer3.xyz/quests/mute-zksync) и проходим квест. Заодно, так сказать Х2.
    

### SyncSwap

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

*   Идем на [сайт SyncSwap](https://syncswap.xyz/swap) и коннектим кошелек!
    
*   Делаем свапы на сайте, нагоняем объем! Все по аналогии с Mute.
    
*   Добавляем ликвидность в пулы!
    
*   Идем на [Layer3](https://layer3.xyz/quests/syncswap-on-zksync) и проходим квест. Заодно, так сказать Х3.
    

### SpaceFi

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

*   Идем на [сайт SpaceFi](https://swap-zksync.spacefi.io/#/swap) и коннектим кошелек!
    
*   Делаем свапы на сайте, нагоняем объем! Все по аналогии с предыдущим DEX.
    
*   Добавляем ликвидность в пулы!
    
*   Идем на [Layer3](https://layer3.xyz/quests/spacefi-on-zksync) и проходим квест. Заодно, так сказать Х3.
    

### MintSquare

Наш друг из [гайда по StarkNet!](https://teletype.in/@crash_pal/retro-starknet) В сети Era делаем аналогичные движения!

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

*   Заходим на [сайт MintSquare](https://mintsquare.io/zksync) и коннектим кошелек.
    
*   Убеждаемся, что мы в сети zkSync Era.
    
*   Жмем Mint и приступаем к минту NFT.
    

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

*   Подгружаем с компа какую-нибудь картинку.
    
*   Даем имя нашей NFT.
    
*   Жмем на кнопку `Mint` и подтверждаем транзакцию.
    

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

*   Теперь будем торговать NFT. Переходим в `Explore`, жмем `NFTs` и фильтруем по стоимости от дешевых к дорогим.
    
*   Выбираем дешевые NFT и покупаем, чтобы набить транзакций!
    
*   Затем переходим в свой `Profile` и выставляем эти NFT на продажу.
    
*   Идем на [Layer3](https://layer3.xyz/quests/mute-zksync) и проходим квест. Заодно, так сказать Х4.
    

### Что еще можно потыкать?

Ниже список DeFi-протоколов, на которые я поленился писать инструкцию. Но если вы не первый день в крипте, думаю найдете куда клацать.

*   [UniDex](https://www.unidex.exchange/) — платформа для трейдинга.
    
*   [RhinoFi](https://rhino.fi/) — DEX с плюшками.
    
*   [Nexon Finance](https://www.nexon.finance/) — лендинговый протокол.
    
*   [Onchain Trade](https://onchain.trade/) — платформа для трейдинга.
    

На этом мы закончили взаимодействовать с zkSync Era! Переходим к самому сложному…

Деплой смарт-контракта на zkSync
================================

Такие смарт-контракты мы еще не деплоили. Надо будет немного заморочиться!

Я думаю, что смарт-контракт — не основная активность для дропа, но может выступить жирным мультипликатором, поэтому через силу, но лучше сделать.

Есть два способа деплоя: на арендованном серваке и на своем компе. Для расширения кругозора, сегодня мы будем разворачивать контракт на компе при помощи `Visual Studio Code`.

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

*   [Качаем](https://code.visualstudio.com/) и устанавливаем VSC.
    
*   [Качаем](https://nodejs.org/en) и устанавливаем Node.js (LTS)
    
*   Открываем VSC и готовим рабочее пространство.
    

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

*   Открываем папку с расширениями и скачиваем расширения, которые я выделил красным. Находим их через поиск.
    
*   Создаем на компе папку `zkSync` для удобства и открываем ее нашим VSC: Файл — Открыть папку — указываем путь до папки `zkSync`.
    

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

*   У нас должно открыться такое рабочее пространство. Если терминала нет, потяните за синюю полоску снизу.
    
*   Если что, делаем по офф гайду от команды zkSync с небольшими доработками, так как у них пример в тестнете. Мы же будем делать в майнете.
    

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

Начинаем вводить в терминал команды.

_\*Вставил строчку_ — _жмешь Enter_ — _ждешь завершения процесса._

*   Устанавливаем `Hardhat`**:**
    

    npm init --y
    

    npm add -D install --save-dev hardhat
    

*   Выбираем `Create a TypeScript project` и жмем `Enter`, затем несколько раз `Y` (типа Yes).
    
*   После чего продолжаем вводить команды:
    

    mkdir greeter
    

    cd greeter
    

    npm init -y
    

    sudo npm add -D typescript ts-node @types/node ethers@^5.7.2 zksync-web3 @ethersproject/hash @ethersproject/web hardhat @matterlabs/hardhat-zksync-solc @matterlabs/hardhat-zksync-deploy
    

*   Появляется надпись `Password` — Вводим пароль от учетки на компе и жмем `Enter`.
    

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

*   Создаем файл с названием `hardhat.config.ts` в папке `greeter` и вставляем этот код в пространство справа:
    

    import "@matterlabs/hardhat-zksync-deploy";
    import "@matterlabs/hardhat-zksync-solc";
    module.exports = {
      zksolc: {
        version: "1.3.7",
        compilerSource: "binary",
        settings: {},
      },
      defaultNetwork: "zkMainnet",
      networks: {
        zkMainnet: {
          url: "https://mainnet.era.zksync.io", 
          ethNetwork: "https://eth.llamarpc.com", 
          zksync: true,
        },
      },
      solidity: {
        version: "0.8.19",
      },
    };
    

*   Возвращаемся к терминалу и продолжаем вводить команды:
    

    mkdir contracts
    

    mkdir deploy
    

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

*   В папке `greeter` открываем папку `contracts`, создаем файл `Greeter.sol` и вставляем код:
    

    //SPDX-License-Identifier: Unlicensed
    pragma solidity ^0.8.0;
    
    contract Greeter {
        string private greeting;
    
        constructor(string memory _greeting) {
            greeting = _greeting;
        }
    
        function greet() public view returns (string memory) {
            return greeting;
        }
    
        function setGreeting(string memory _greeting) public {
            greeting = _greeting;
        }
    }
    

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

    npx hardhat compile
    

*   В папке `greeter` открываем папку `deploy`, создаем файл `deploy.ts` и вставляем в него код:
    

    import { utils, Wallet } from "zksync-web3";
    import * as ethers from "ethers";
    import { HardhatRuntimeEnvironment } from "hardhat/types";
    import { Deployer } from "@matterlabs/hardhat-zksync-deploy";
    
    // An example of a deploy script that will deploy and call a simple contract.
    export default async function (hre: HardhatRuntimeEnvironment) {
      console.log(`Running deploy script for the Greeter contract`);
    
      // Initialize the wallet.
      const wallet = new Wallet("ВСТАВЬ СЮДА ПРИВАТНИК");
    
      // Create deployer object and load the artifact of the contract we want to deploy.
      const deployer = new Deployer(hre, wallet);
      const artifact = await deployer.loadArtifact("Greeter");
    
      // Deploy this contract. The returned object will be of a `Contract` type, similarly to ones in `ethers`.
      // `greeting` is an argument for contract constructor.
      const greeting = "Hi there!";
      const greeterContract = await deployer.deploy(artifact, [greeting]);
      console.log(greeterContract.interface.encodeDeploy([greeting]));
    
      // Show the contract info.
      const contractAddress = greeterContract.address;
      console.log(`${artifact.contractName} was deployed to ${contractAddress}`);
    
      // Call the deployed contract.
      const greetingFromContract = await greeterContract.greet();
      if (greetingFromContract == greeting) {
        console.log(`Contract greets us with ${greeting}!`);
      } else {
        console.error(`Contract said something unexpected: ${greetingFromContract}`);
      }
    
      // Edit the greeting of the contract
      const newGreeting = "Hey guys";
      const setNewGreetingHandle = await greeterContract.setGreeting(newGreeting);
      await setNewGreetingHandle.wait();
    
      const newGreetingFromContract = await greeterContract.greet();
      if (newGreetingFromContract == newGreeting) {
        console.log(`Contract greets us with ${newGreeting}!`);
      } else {
        console.error(`Contract said something unexpected: ${newGreetingFromContract}`);
      }
    }
    

**ВНИМАНИЕ!** Нужно вставить приватный ключ от кошелька в строку кода, где я написал `ВСТАВЬ СЮДА ПРИВАТНИК`. Кавычки убирать не нужно!

> **_Помните, владелец приватного ключа владеет доступом к вашему кошельку, это почти то же самое что и сид-фраза. Я рекомендую создать под эту активность отдельный кошель, если сомневаетесь, и залить в него немного эфира в сети Era на газ. На мейн-кошельке делать не стоит, мало ли…_**

*   Чтобы достать приватный ключ: Открываем MetaMask — Жмем три точки — Реквизиты счета — Экспорт закрытого ключа — Вводим пароль — Копируем приватник.
    
*   Вставляем приватник в код и вводим команду в терминал:
    

    npx hardhat deploy-zksync
    

Должны появиться такие строчки!

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

Если появились, поздравляю, вы задеплоили контракт! Теперь его можно верифицировать!

> **_После верификации контракт будет доступен для каждого, что повышает риск взлома и кражи вашего приватного ключа. Делайте эту операцию только на тестовых кошельках!_**

*   Переходим в [эксплорер](https://explorer.zksync.io/) и введите адрес своего контракта. Выделил красным на скрине выше.
    
*   Жмем на вкладку `Contract` и кликаем на кнопку `Verify Smart Contract`
    

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

*   Заполняем все поля, как на скрине.
    
*   В поле `Enter the Solidy Contract Code` вставляем код из `Greeter.sol`
    
*   В поле `Constructor Arguments` вставляем длинную шнягу, которая появились в терминале после деплоя контракта. Она у всех одинаковая, насколько я понял.
    

*   После того, как заполнили все поля, нажимаете кнопку `Verify Smart Contract`
    
*   Ура, мы сделали это! Контракт верифицирован!
    

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

На этом все! Было потно, но мы победили zkSync! Поздравляю вас!

Не забывайте регулярно проявлять активность в этой сетке и слушаться маму!

Также не забудьте подписаться на мой [канал в телеграм!](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/zksync)*
