Перейти к содержимому

Что такое виртуальная машина Ethereum?

EVM — программное обеспечение, которое запускает каждый узел Ethereum для выполнения смарт-контрактов. Узнайте, как это работает, для чего нужен газ и почему один 0x-адрес работает во всех EVM-совместимых сетях.

Что такое виртуальная машина Ethereum?

Виртуальная машина Ethereum (Ethereum Virtual Machine, EVM) — это вычислительная среда, в которой Ethereum выполняет код смарт-контрактов. Каждый узел Ethereum запускает собственную копию EVM, и все узлы обрабатывают одни и те же транзакции одинаково, поэтому сеть приходит к единому общему состоянию: балансам всех аккаунтов и данным, хранящимся в каждом контракте.

Отказ от ответственности: это руководство предназначено только для образовательных целей. Оно не является финансовой рекомендацией или предложением и не предназначено для аудитории из Великобритании. Ethereum, EVM-совместимые сети и приложения, созданные на их основе, сопряжены с рисками и подходят не всем пользователям.

Что делает виртуальная машина Ethereum

Базовая сеть Ethereum отслеживает цифровые активы — ether и другие, — которыми владеет каждый адрес в сети. Она также отслеживает программы, называемые смарт-контрактами, и их данные. EVM — это часть Ethereum, которая запускает эти программы.

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

EVM часто называют «мировым компьютером», но на самом деле это скорее медленный общий компьютер, где каждый шаг стоит gas, а результат может проверить любой желающий. Архитектура Ethereum жертвует скоростью ради гарантии того, что ни одна сторона не контролирует результат.

Как EVM выполняет код

Разработчики пишут смарт-контракты на языках программирования, чаще всего на Solidity или Vyper. Перед развёртыванием компилятор превращает этот код в байткод — компактный список базовых инструкций, которые понимает EVM.

Каждая инструкция — это опкод, например ADD для сложения, SSTORE для сохранения значения в хранилище или CALL для вызова другого контракта. EVM обрабатывает опкоды по одному, используя:

  • Стек для временных значений во время вычислений.

  • Память (memory) для данных, которые нужны только во время текущего вызова и очищаются по его завершении.

  • Хранилище (storage) для данных, которые сохраняются в блокчейне между транзакциями, например балансов токенов.

  • Calldata для входных данных, отправляемых вместе с транзакцией.

Хранилище — самый дорогой ресурс, потому что каждый узел должен хранить эти данные бессрочно.

Зачем EVM нужен gas, он же комиссия сети

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

У каждого опкода есть стоимость в gas. Одни значения фиксированы, например 3 gas за ADD, другие зависят от объёма работы, например первая запись в хранилище стоит 20 000 gas или больше. Отправитель задаёт лимит gas для каждой транзакции, обычно через свой кошелёк; с обновления Fusaka в декабре 2025 года он ограничен 16 777 216 gas на транзакцию. Если лимит исчерпан, EVM останавливает выполнение и отменяет все изменения, а отправитель всё равно оплачивает израсходованный gas.

У каждого блока также есть общий лимит gas, который ограничивает объём вычислений, обрабатываемых сетью в одном блоке. В основной сети Ethereum этот лимит с декабря 2025 года составляет 60 миллионов gas — против 30 миллионов в начале 2025 года.

Gas измеряет объём работы. Рынок комиссий Ethereum определяет, сколько пользователи платят за эту работу. О том, как формируются комиссии, читайте в статье «Комиссии gas в Ethereum: простое объяснение».

Что такое совместимость с EVM

EVM-совместимая блокчейн-сеть использует тот же набор инструкций, что и Ethereum, поэтому контракты, написанные для Ethereum, можно развернуть в ней с минимальными изменениями или вовсе без них. Кошельки, инструменты разработчика и адреса Ethereum тоже работают так же. Один и тот же адрес 0x, управляемый одним и тем же приватным ключом, работает во всех сетях EVM — поэтому MetaMask показывает один адрес во всех поддерживаемых EVM-сетях.

Именно этот общий стандарт объясняет, почему такая большая часть крипто работает на EVM-чейнах:

  • Сети второго уровня Ethereum (layer 2), такие как Arbitrum, OP Mainnet, Base, Linea и ZKsync, используют EVM-совместимые среды и фиксируют итоговое состояние в Ethereum.

  • Сети вроде BNB Smart Chain, Avalanche C-Chain, Polygon PoS, Sei и Monad используют собственных валидаторов и консенсус, но применяют EVM для исполнения.

Одни сети в точности повторяют поведение Ethereum («EVM equivalent»), другие поддерживают большинство контрактов, но отличаются по некоторым опкодам, стоимости gas или прекомпайлам. Разработчикам, переносящим контракт между EVM-чейнами, всё равно нужно тестировать его в каждой сети.

Блокчейны, которые не используют EVM

Не каждая платформа смарт-контрактов использует EVM. Например, Solana запускает программы, написанные в основном на Rust, в собственной среде выполнения, рассчитанной на параллельную обработку множества транзакций. Другие сети, включая Sui, Aptos и Cardano, используют собственные виртуальные машины и языки. Приложения, созданные для этих сетей, не работают в EVM-чейнах, а для перемещения токенов между ними пользователям нужны мосты.

Как EVM меняется в 2026 году

Основные разработчики Ethereum изменяют EVM с помощью обновлений сети. Недавние и запланированные изменения направлены на увеличение объёма вычислений в каждом блоке:

  • Увеличение лимита gas. В течение 2025 года валидаторы повысили лимит gas на блок с 30 до 60 миллионов, что позволило вместить в каждый блок больше транзакций. Glamsterdam добавляет запланированный путь для дальнейшего увеличения; тестовая сеть Sepolia уже работает с лимитом 200 миллионов.

  • Glamsterdam. Следующее обновление включает списки доступа для каждого блока (EIP-7928), которые заранее сообщают узлам, к каким аккаунтам и данным хранилища обращается блок, чтобы транзакции можно было обрабатывать параллельно, а также пересмотр стоимости gas. По состоянию на 29 октября 2026 года обновление запущено в тестовой сети Sepolia. Как сообщил Ethereum Foundation, основные разработчики Ethereum отложили активацию в тестовой сети Hoodi, запланированную на 26 октября, чтобы изучить одно из изменений в ценообразовании gas, а дата запуска в основной сети пока не назначена.

Как кошельки работают в разных EVM-сетях

Self-custodial кошелёк, созданный для Ethereum, может использовать один и тот же аккаунт — с тем же адресом 0x и Private Key — в Ethereum, его сетях второго уровня (layer 2) и EVM-совместимых сетях первого уровня (layer 1), не создавая отдельный аккаунт для каждой из них. Это возможно, потому что все EVM-совместимые сети используют единый формат аккаунта. Чтобы переключаться между сетями, кошельку нужны только данные для подключения к каждой из них: идентификатор сети (chain ID) и RPC endpoint — адрес ноды, к которой подключается кошелёк. Многие self-custodial кошельки, включая MetaMask, также поддерживают сети за пределами EVM, такие как Bitcoin и Solana, в одном приложении, управляя отдельным адресом в формате каждой сети.

Часто задаваемые вопросы о сетях EVM

Переведено ИИ. Может содержать ошибки. Пожалуйста, всегда проверяйте информацию.

Оцените перевод

Автор статьи:

  • MetaMask

    MetaMask, ранее известная как Consensys Software Inc, — крупнейшая в мире самостоятельная финансовая платформа, предоставляющая людям единое место для хранения, расходования, накопления и приумножения средств как в криптовалюте, так и в традиционных активах. Компания создаёт потребительскую платформу, объединяющую платежи, сбережения, инвестиции и цифровые активы в едином бесшовном опыте. Вырастая из самого широко используемого в мире self-custodial кошелька, MetaMask предоставляет пользователям прямой контроль над их деньгами и активами, охватывая около 190 стран. MetaMask сыграл основополагающую роль в развитии Ethereum с 2016 года. Сегодня MetaMask занимает центральное место в экономике блокчейна, создавая операционную систему для Open Money и предоставляя людям полный контроль над их финансовой жизнью.

    Читать все статьи