Перейти к основному содержанию

zkEVM для верификации блоков L1

zkEVM — это технология, которая использует доказательства 0-знания для верификации исполнения блоков Ethereum. Вместо того чтобы требовать от каждого повторного исполнения всех транзакций в блоке, один специализированный участник (называемый «прувером» или доказывающим) исполняет блок и генерирует криптографическое доказательство того, что исполнение было правильным. Затем любой узел может верифицировать это доказательство — процесс, который на порядки дешевле, чем повторное исполнение всех транзакций.

Проблема повторного исполнения

Сегодня Ethereum использует модель верификации «N-из-N»: каждый валидатор должен независимо повторно исполнить каждую транзакцию в каждом блоке, чтобы убедиться, что предложенные изменения стейта верны. Хотя этот подход максимально не требует доверия, он создает фундаментальное узкое место.

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

zkEVM предлагает выход из этого компромисса. Перейдя от модели «каждый исполняет повторно» к модели «один доказывает, все верифицируют», Ethereum может безопасно увеличить лимит газа без повышения требований к оборудованию валидаторов.

Как работает верификация zkEVM L1

Верификация zkEVM преобразует валидацию блоков в модель «1-из-N»:

  1. Исполнение: Прувер исполняет все транзакции в блоке, отслеживая каждое изменение стейта
  2. Доказательство: Прувер генерирует криптографическое доказательство (SNARK или STARK), которое подтверждает правильность исполнения
  3. Верификация: Валидаторы верифицируют доказательство вместо повторного исполнения транзакций — это значительно дешевле, чем полное повторное исполнение

Гарантия безопасности остается прежней: если исполнение было неверным, невозможно сгенерировать действительное доказательство. Но теперь, вместо того чтобы каждый узел выполнял дорогостоящие вычисления, это делает только прувер, а верификация достаточно дешева, чтобы не ограничивать лимит газа.

zkEVM типа 1

zkEVM классифицируются по типам в зависимости от их совместимости с Ethereum:

  • Тип 1: Полностью эквивалентны Ethereum. Никаких модификаций EVM, поэтому любой блок Ethereum может быть доказан точно в таком виде, в каком он есть
  • Типы 2-4: Идут на различные компромиссы, модифицируя поведение EVM для упрощения доказательства

Для верификации L1 тип 1 имеет решающее значение. zkEVM должен быть способен доказать любой действительный блок Ethereum, включая крайние случаи и исторические блоки. Любое отклонение от точного поведения Ethereum создало бы проблемы с консенсусом.

Исследования zkEVM, проводимые Ethereum Foundation, сосредоточены на реализациях типа 1, которые полностью совместимы с существующим исполнением Ethereum.

Преимущества для Ethereum

Более высокая пропускная способность

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

Более сильная децентрализация

С верификацией zkEVM валидаторам нужно только верифицировать доказательства, а не исполнять транзакции. Это значительно снижает требования к оборудованию для запуска валидатора, позволяя большему числу людей участвовать в обеспечении безопасности сети. Большее разнообразие валидаторов усиливает устойчивость Ethereum к цензуре и его надежность.

Обратите внимание, что само доказательство требует значительных вычислительных ресурсов, превышающих возможности текущего оборудования валидаторов. Однако, в отличие от валидации, доказательство не обязательно должно быть децентрализовано таким же образом: для каждого блока требуется только одно правильное доказательство, и любой может быстро его верифицировать. Исследования рынков пруверов, агрегации доказательств и аппаратного ускорения направлены на то, чтобы доказательство оставалось конкурентоспособным и доступным, а не концентрировалось среди нескольких крупных операторов.

Предсказуемая завершённость

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

Проблемы доказательства в реальном времени

Главной проблемой для верификации zkEVM L1 является скорость. Блоки Ethereum создаются каждые 12 секунд, что означает, что доказательства должны генерироваться в аналогичные сроки, чтобы быть полезными для консенсуса.

Текущим реализациям zkEVM могут потребоваться от нескольких минут до нескольких часов для доказательства одного блока. Исследования сосредоточены на устранении этого разрыва с помощью:

  • Параллелизации: Распределение работы по доказательству между несколькими машинами
  • Специализированного оборудования: Разработка схем и оборудования, оптимизированных для доказательств 0-знания
  • Алгоритмических улучшений: Более эффективные системы доказательств и дизайн схем
  • Инкрементального доказательства: Генерация доказательств по мере исполнения транзакций, а не после

Текущие исследования и реализации

Ethereum Foundation финансирует исследования zkEVM через команду Privacy Stewards of Ethereum (PSE) (opens in a new tab). Ключевые направления исследований включают:

  • Доказательство в реальном времени: Генерация полных доказательств блока в течение 12-секундных слотов
  • Интеграция клиентов: Стандартизация интерфейсов между исполнительными клиентами и пруверами
  • Экономические стимулы: Разработка устойчивых рынков пруверов и структур комиссий

Статус реализаций

Несколько реализаций zkVM разрабатываются и тестируются для доказательства блоков Ethereum:

Они используют виртуальные машины на базе RISC-V для исполнения байт-кода EVM, а затем генерируют доказательства 0-знания правильного исполнения. Актуальные результаты тестов и прогресс отслеживаются в трекере zkVM от Ethereum Foundation (opens in a new tab).

Верификация zkEVM L1 связана с несколькими другими пунктами дорожной карты Ethereum:

  • Деревья Веркла: Обеспечивают меньшие размеры свидетелей для верификации без сохранения стейта, уменьшая объем данных, с которыми нужно работать пруверам
  • Отсутствие стейта (Statelessness): zkEVM является ключевым фактором — с доказательствами 0-знания исполнения узлам не нужен полный стейт для верификации блоков
  • PBS: Сборщики блоков потенциально могли бы интегрировать генерацию доказательств, или мог бы появиться отдельный рынок пруверов
  • Завершённость одного слота: Более быстрая генерация доказательств могла бы обеспечить завершённость одного слота с криптографическими гарантиями

Дополнительная литература

Была ли эта статья полезной?