Эфириум и его виртуальная машина во многом определили развитие блокчейн-технологий. Однако рост популярности экосистемы оказался связан с проблемой масштабируемости — то есть доступности как можно более широкому кругу людей. Одним из решений проблемы служит zkEVM.

Что такое zkEVM

Появление Эфириума считается знаковым этапом развития блокчейн-технологий. Если исторически первая криптовалюта Биткоин является распределенным реестром транзакций, то Эфириум, благодаря EVM превратил блокчейн в своего рода децентрализованный компьютер. EVM (Ethereum Virtual Machine, «виртуальная машина Эфириума») — это вычислительная среда, которая исполняет смарт-контракты и определяет правила работы приложений в экосистеме. 

Во многом благодаря такому решению вокруг Эфириума и сформировалась уйма сервисов, решений второго уровня и DeFi-протоколов. Совместимость EVM со временем стала стандартом для множества блокчейнов.

Однако, по мере увеличения числа пользователей и приложений, Эфириум столкнулся с проблемой масштабируемости: пропускная способность сети оказалась ограниченной, а рост нагрузки привел к увеличению комиссий и снижению скорости обработки транзакций. Для решения проблемы разработчики стали предлагать различные архитектуры масштабирования. Например, ZK-Rollups (ZK-роллапы), основанные на Zero-Knowledge Proof — доказательстве с нулевым разглашением.

ZK-роллапы являются решениями второго уровня (Layer 2), которые обрабатывают транзакции вне основной сети, объединяют в один пакет, а затем отправляют в базовый блокчейн лишь итоговое состояние и криптографическое доказательство корректности вычислений. Такой подход позволяет снизить нагрузку на основную сеть и уменьшить стоимость транзакций без отказа от безопасности базового блокчейна. Однако для того, чтобы ZK-роллапы были совместимы со средой исполнения смарт-контракта, дополнительно нужно решение в виде zkEVM.

zkEVM (zero-knowledge Ethereum Virtual Machine или «виртуальная машина Эфириума с нулевым разглашением») — это виртуальная машина, совместимая с EVM и адаптированная для работы с ZK-архитектурой. zkEVM может использоваться в решениях на базе ZK-роллапов, сохраняя согласованность с существующей EVM-инфраструктурой.

Виды zkEVM

Существует несколько типов zkEVM, различающихся уровнем совместимости с экосистемой Эфириума. Одну из наиболее известных классификаций предложил создатель второй по капитализации криптовалюты криптовалюты Виталик Бутерин. В основе его классификации лежит компромисс между совместимостью и производительностью: чем ближе zkEVM к оригинальной EVM, тем сложнее генерация криптографических доказательств. В рамках этого подхода можно выделить несколько типов:

  • Тип 1 — полностью эквивалентные Эфириуму (Fully Ethereum-equivalent). Такие zkEVM практически полностью повторяют архитектуру системы и обеспечивают максимальную совместимость с существующими приложениями и инструментами. Однако генерация доказательств в них требует значительных вычислительных ресурсов.

  • Тип 2 — полностью эквивалентные EVM (Fully EVM-equivalent). zkEVM этого типа сохраняют совместимость с EVM, но допускают отдельные изменения во внутренней архитектуре, например в структурах данных или хеш-функциях. Это позволяет ускорить генерацию доказательств без серьезной потери совместимости.

  • Тип 2.5 — эквивалентные EVM за исключением стоимости газа (EVM-equivalent except for gas costs). Этот промежуточный тип дополнительно изменяет стоимость отдельных операций внутри виртуальной машины ради снижения нагрузки на систему доказательств. Такой подход хотя и повышает производительность, но может вызывать проблемы с совместимостью с некоторыми приложениями.

  • Тип 3 — почти эквивалентные EVM (Almost EVM-equivalent). Эти zkEVM жертвуют частью совместимости ради более высокой производительности и упрощения реализации. Они могут исключать отдельные функции EVM, которые особенно сложно адаптировать для доказательств с нулевым разглашением, например некоторые precompile-компоненты. Кроме того, zkEVM третьего типа иногда отличаются особенностями обработки памяти, стека или кода, из-за чего часть приложений и смарт-контрактов может требовать адаптации.

  • Тип 4 — эквивалентные высокоуровневым языкам (High-level-language equivalent). Эти zkEVM работают не с EVM-байткодом напрямую, а с высокоуровневыми языками программирования, например Solidity или Vyper. Это значительно ускоряет генерацию доказательств, однако снижает совместимость с оригинальной инфраструктурой.

Таким образом, разные типы zkEVM представляют собой различные варианты компромисса между скоростью, сложностью реализации и совместимостью с экосистемой Эфириума.

Вывод

Технология zkEVM представляет собой важную надстройку, объединяющую совместимость экосистемы Эфириума с возможностями ZK-архитектуры. Благодаря zkEVM разработчики способны использовать существующие EVM-инструменты и смарт-контракты в решениях на базе доказательства с нулевым разглашением без полного отказа от уже сложившейся инфраструктуры. При этом различные реализации zkEVM предполагают свои компромиссы между производительностью, скоростью генерации доказательств и уровнем совместимости с оригинальной архитектурой криптовалюты.