Перейти к основному контенту
Tech Path Finder
КурсыИнтервьюКод-ревьюБлог
Tech Path Finder

Персонализированный путеводитель в IT. Квизы, мок-интервью, код ревью и аналитика прогресса.

@potapov_me

Платформа

  • Курсы
  • Прогресс
  • Мок-интервью
  • Код ревью
  • Живое ревью с ИИ
  • Тренажёр переговоров
  • Закладки

Контент

  • Блог
  • Главная
  • Обратная связь

Компания

  • О проекте
  • Тарифы
  • Условия использования
  • Конфиденциальность
  • Согласие на обработку данных
  • Cookie
  • Реквизиты

Аккаунт

  • Войти
  • Зарегистрироваться
  • Профиль

© 2026 Tech Path Finder. Все права защищены.

·ИП Потапов К.С.·Политика конфиденциальности·
Сделано с ❤️ в России
  1. Основы блокчейна и Ethereum
blockchain_basics

Основы блокчейна и Ethereum

Как работает блокчейн, EVM, типы аккаунтов, транзакции и газ — фундамент для понимания смарт-контрактов

Основы блокчейна и Ethereum

Прежде чем писать смарт-контракты, нужно понять среду, в которой они живут

#Что такое блокчейн

Блокчейн — это распределённая база данных, которая хранит записи в виде цепочки блоков. Ключевые свойства: децентрализация (нет единого владельца), неизменяемость (записанное нельзя удалить) и прозрачность (любой может проверить историю).

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

Ethereum пошёл дальше Bitcoin: к транзакциям добавили программируемость. Теперь блокчейн может хранить не только записи о переводах, но и код, который выполняется автоматически при выполнении условий. Этот код называют смарт-контрактами.

#Ethereum Virtual Machine (EVM)

EVM — это виртуальный процессор, который выполняет байткод смарт-контрактов. Важное свойство: EVM детерминирована — один и тот же код при одних и тех же входных данных всегда даёт одинаковый результат на любом узле сети.

Когда вы пишете на Solidity, компилятор превращает его в байткод EVM — набор низкоуровневых инструкций (опкодов). Каждый опкод стоит определённое количество газа — единицы измерения вычислительной работы.

#Аккаунты в Ethereum

В Ethereum существует два типа аккаунтов.

EOA (Externally Owned Account) — обычный кошелёк, которым управляет человек через приватный ключ. У EOA есть баланс ETH, но нет кода. Только EOA может инициировать транзакции.

Контрактный аккаунт — аккаунт, который создаётся при деплое смарт-контракта. У него тоже есть баланс ETH, но главное — у него есть код и хранилище (storage). Контракт не может сам инициировать транзакцию — он реагирует на вызовы.

Каждый аккаунт в Ethereum имеет 4 поля: nonce, balance, codeHash и storageRoot. У EOA codeHash — это хэш пустой строки.

#Транзакции и газ

Транзакция — это подписанное сообщение от EOA, которое изменяет состояние блокчейна. Транзакция может:

  • Перевести ETH на другой аккаунт
  • Вызвать функцию смарт-контракта
  • Задеплоить новый смарт-контракт (если to пустое)

Структура транзакции включает: отправителя (подпись), получателя (to), сумму (value), данные (data), gasLimit и gasPrice (или maxFeePerGas в EIP-1559).

Газ — это плата за вычислительные ресурсы. Каждый опкод EVM стоит определённое число единиц газа. Итоговая стоимость транзакции в ETH вычисляется как gasUsed × gasPrice.

gasLimit — максимальное количество газа, которое вы разрешаете потратить на транзакцию. Если газ закончился раньше завершения операции, транзакция откатывается, но потраченный газ не возвращается — вы заплатили за работу, которую узлы уже проделали.

Nonce — счётчик транзакций аккаунта, начинается с 0. Каждая новая транзакция должна иметь nonce на 1 больше предыдущей. Это защищает от replay-атак: нельзя отправить одну и ту же транзакцию дважды.

#Почему смарт-контракты меняют правила игры

Традиционный финансовый контракт требует посредников — банков, юристов, регуляторов. Смарт-контракт исполняется автоматически, когда выполняются прописанные условия, без возможности вмешательства третьей стороны.

Примеры применения:

  • Токены — программируемые активы (ERC-20, ERC-721)
  • DEX — децентрализованные биржи без книги ордеров (Uniswap, Curve)
  • Lending — займы под залог без KYC (Aave, Compound)
  • DAO — управление протоколом через голосование токенами

Ключевое ограничение: смарт-контракт не может сам получать данные из внешнего мира (цены акций, погода, результаты матчей). Для этого используют оракулы — Chainlink, Pyth. Об этом подробнее в теме про DeFi-паттерны.

#Консенсус: как блоки добавляются в цепочку

После перехода на Proof of Stake в сентябре 2022 (The Merge) Ethereum выбирает валидаторов случайным образом для предложения следующего блока. Валидатор должен иметь минимум 32 ETH в стейке. Комитет других валидаторов аттестует блок. Финальность транзакции (когда её уже нельзя отменить) наступает примерно через 2 эпохи (~13 минут).

Блоки в Ethereum появляются каждые ~12 секунд (slot time), что важно учитывать при разработке — block.timestamp меняется дискретно, а не плавно.

Далее: Введение в Solidity