September 16, 2023

Как вкатиться в смарт контракты? V2.0

Итак, вы решили разобраться, что же происходит у нас в крипте. Откуда такие баунти, что изучать и как разговаривать на одном языке с EVM Blockchain Senior DeFi Smart-Contract Demolisher.

Шаг 1

Для начала надо понимать, что такое вообще криптовалюта. Почему она так называется, причем тут криптография и все остальное. Читаем книжку Mastering Blockchain (пер. Блокчейн: Архитектура криптовалюты) от автора Imran Bashir. Тут есть пара нюансов. Во-первых в свободном доступе просто так не скачаешь. Во-вторых последние издание вышло в этом году и перевода на русский язык ещё нет, издание на русском вышло в 2018 году и вся часть про Ethereum там безбожно устарела. В любом случае существуют каналы типа "Библиотека программиста" где выкладывают подобные книги, найти в телеге её не сложно.

Шаг 2

Отлично, теперь когда мы понимаем основы (и может даже больше), можно начинать разбираться в Ethereum. Скачиваем книжку Mastering Ethereum от создателей языка Solidity. Она так же есть и в русском переводе. Параллельно с этим начинаем знакомиться с самим языком разработки смарт-контрактов. Лучше всего для этого подходит CryptoZombies, так же можно подглядывать в Soldity by Example.

Шаг 3

Когда мы прошли зомбаков и прочитали всю 9 главу книги Mastering Ethereum посвященную уязвимостям смарт-контрактов можно закреплять материал на практике. Идем и проходим CTF от компании OpenZeppelin под названием Ethernaut. Как начать решать задачи у меня уже была статья на канале. Параллельно активно курим официальную документацию Solidity, это достаточное и необходимое условие для успешного прохождения этого CTF, там всего 26 задачек, так что времени это может занять достаточно.

Шаг 4

Поздравляю! Теперь вы можете считать себя человеком, который хорошо разбирается в смарт-контрактах. Дальше нужно оттачивать скилы и углубляться. Что нужно конкретно: понимание низкоуровневого слоя исполнения смартов (EVM puzzles), знание как работают и что из себя представляют основные DeFi протоколы (Uniswap, Compound, Aave и тд), паттерны разработки. Также нужно понять как происходили известные хаки смарт-контрактов, удобнее всего изучать это на Rekt. Подебажить самому можно на Phalcon. Ethernaut не единственный CTF, можно ещё прорешать DamnVulnerableDeFi и Paradigm. Для PoC могут понадобится тесты, их делают с помощью Hardhat и Foundry.

Шаг 5

Можно приступать к аудиту и разработке! Конкурсные аудиты можно найти на Immunefi, Code4Arena, Codehawks, Sherlock.