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

Что такое ZK?
«Нулевое разглашение» обычно относится к концепции в криптографии, известной как «доказательство с нулевым разглашением». Это метод, при котором одна сторона (д оказывающий) может доказать другой стороне (проверяющему), что она знает значение x, не передавая никакой информации, кроме факта, что она знает значение x.
Термин происходит от того факта, что проверяющий не получает никакой информации о деталях доказательства, кроме валидности утверждения. Например, если вы пытаетесь доказать, что знаете пароль к учетной записи, доказательство с нулевым разглашением может подтвердить, что вы знаете пароль, никогда не раскрывая, что это за пароль.
Идея доказательств с нулевым разглашением имеет большое значение в технологиях, повышающих конфиденциальность. Например, это фундаментальный компонент некоторых криптовалют и других систем, где крайне важно сбалансировать потребность в проверке и необходимость конфиденциальности.
Доказательство в ZK
В контексте информатики и криптографии доказательство — это процесс или метод, который подтверждает валидность утверждения, не раскрывая никакой дополнительной информации. Утверждение может быть таким простым, как доказательство того, что вы знаете пароль, не раскрывая, что это за пароль.
-
ZK-SNARK (Zero-Knowledge Succinct Non-interactive Argument of Knowledge — краткий неинтерактивный аргумент знания с нулевым разглашением): это форма доказательства с нулевым разглашением, которая особенно эффективна с точки зрения вычислений и объема данных, которые необходимо хранить или передавать. «Краткий» означает, что доказательства невелики и быстро проверяются, а «неинтерактивный» означает, что не требуется двусторонняя связь. ZK-SNARK используются в блокчейн-системах, сохраняющих конфиденциальность, таких как Zcash.
-
ZK-STARK (Zero-Knowledge Scalable Transparent Argument of Knowledge — масштабируемый прозрачный аргумент знания с нулевым разглашением): это еще одна форма доказательства с нулевым разглашением. Хотя они также обеспечивают эффективность, ZK-STARKs предлагают дополнительное преимущество, заключающееся в отсутствии необходимости в доверенной установке (отсюда «Прозрачный» в аббревиатуре). Однако ZK-STARKs более ресурсоемки в вычислениях и про изводят более крупные доказательства, чем ZK-SNARKs. ZK-STARK используется в Fractal, SuperSonic, StarkWare, Polygon Miden и т. д.
Зачем нам ZK в блокчейне?
По мере роста популярности блокчейн-сетей, таких как Bitcoin и Ethereum, количество транзакций, обрабатываемых в этих сетях, резко возросло. Это положительный признак принятия, но он также сопряжен с некоторыми проблемами. Блокчейны по своей конструкции не являются изначально масштабируемыми, что приводит к таким проблемам, как медленное время транзакций и высокие комиссии.
Почему масштабирование необходимо?
-
Ограниченная пропускная способность транзакций: Каждый блок в блокчейне имеет ограниченную емкость, и новый блок появляется каждые несколько минут (около 10 минут для Bitcoin и примерно 15 секунд для Ethereum по состоянию на мое последнее обновление в 2021 году). Это ограничивает количество транзакций, которые могут быть обработаны в секунду. Например, Bitcoin может обрабатывать окол о 3-7 транзакций в секунду (tps), а Ethereum — около 15 tps. Это намного меньше, чем могут обрабатывать традиционные системы, такие как Visa (тысячи tps).
-
Высокие комиссии: Когда сеть перегружена, пользователям часто приходится платить более высокие комиссии, чтобы их транзакции были приоритетными.
-
Медленные подтверждения: В периоды высокого спроса подтверждение транзакций может занимать много времени, потому что транзакций больше, чем сеть может обработать быстро.
Как масштабировать?
Обычно существует два подхода к масштабированию блокчейна — масштабирование Уровня 1 (внутрицепочечное) и масштабирование Уровня 2 (внецепочечное).
-
Масштабирование Уровня 1 включает изменения в самом протоколе блокчейна. Это может включать увеличение размера блока (позволяя каждому блоку содержать больше транзакций), уменьшение времени блока или реализацию шардинга (разделение сети на более мелкие части, или «шарды», каждая из которых способна обрабатывать свои собственные транзакции и смарт-контракты).
-
Масштабирование Уровня 2 включает создание вторичного уровня поверх сущест вующего блокчейна. Транзакции обрабатываются вне цепочки, а затем рассчитываются в цепочке. Примеры решений Уровня 2 включают каналы состояний, цепочки Plasma и роллапы (Оптимистические роллапы и ZK-роллапы). Эти решения по сути перемещают большинство транзакций из основной цепочки, уменьшая перегрузку.
Масштабирование блокчейна — это баланс между сохранением его децентрализованной природы (которая может быть скомпрометирована некоторыми решениями Уровня 1) и увеличением его способности быстро и дешево обрабатывать больше транзакций. Различные блокчейны могут выбирать различные решения для масштабирования в зависимости от их конкретных целей и ограничений.
Технология ZK применяется в решениях для масштабирования на основе роллапов.
Что такое роллап?
«Роллапы» — это решения Уровня 2, разработанные для увеличения пропускной способности блокчейна, такого как Ethereum, без необходимости изменения его базов ого протокола или «Уровня 1». Они направлены на решение проблем масштабируемости, с которыми сталкиваются многие блокчейны по мере роста их популярности.
Вот упрощенный способ понять, как они работают:
-
Агрегация вне цепочки: Транзакции собираются и обрабатываются вне основной цепочки в «сайдчейне» или «цепочке роллапов». Эта агрегация происходит вне цепочки, чтобы избежать перегрузки основной цепочки.
-
Вычисления и хранение: Данные, связанные с этими транзакциями, обрабатываются и хранятся вне цепочки. Это снижает вычислительную нагрузку на основную цепочку.
-
Отправка в основную цепочку: Как только роллап транзакций готов, доказательство агрегированных транзакций (это может быть криптографическое доказательство, такое как SNARK или STARK, или просто хеш данных) отправляется в основную цепочку. Это доказательство намного меньше по размеру, чем был бы полный список отдельных транзакций.
-
Верификация: Валидаторы в основной цепочке проверяют это доказательство. После его проверки сгруппированные транзакции считаются подтвержденными.
Существует два осн овных типа роллапов: Оптимистические роллапы и ZK-роллапы.
-
Оптимистические роллапы: Они полагаются на систему «доказательств мошенничества». По сути, они предполагают, что роллап транзакций верен, если только кто-то не докажет его мошеннический характер.
-
ZK-роллапы: Они используют доказательства с нулевым разглашением для проверки корректности каждого роллапа транзакций. ZK-роллапы имеют преимущество в том, что не требуют периода ожидания для подтверждения, поскольку они не полагаются на доказательства мошенничества.
Оба решения помогают увеличить количество транзакций, которые могут быть обработаны в секунду в блокчейне, что приводит к улучшению масштабируемости. Вот их различия:
| Оптимистический роллап | ZK-роллап | |
|---|---|---|
| Оценка пропускной способности | ~500 TPS | ✅ >2000 TPS |
| Период вывода средств | Недели | ✅ От минут до часов |
| Конфиденциальность | Дорого | ✅ Дешево |
| Совместимость с EVM | ✅ | ⚠️ требуется корректировка кода Solidity |
| Стоимость | ✅ низкая | ❌ высокая |
ZK-роллап против zkEVM
ZK-роллап и zkEVM — это оба решения для масштабирования Уровня 2, которые используют доказательства с нулевым разглашением для Ethereum, но они нацелены на разные уровни функциональности.
-
ZK-роллап: Это специфический тип решения Уровня 2, который объединяет или «сворачивает» множество транзакций в одну транзакцию, значительно увеличивая количество транзакций, которые могут быть обработаны в секунду. Каждый ZK-роллап содержит переход состояния и доказательство того, что переход верен. Однако традиционно ZK-роллапы были ограничены в сложности вычислений, которые они могли обрабатывать, в основном используясь для простых переводов.
-
zkEVM (zk Виртуальная машина Ethereum): Это более недавняя разработка, которая переносит мощь доказательств с нулевым разглашением в Виртуальную машину Ethereum (EVM). EVM — это среда, в которой выполняются все смарт-контракты в Ethereum. zkEVM позволяет объединять более сложные взаимодействия смарт-контрактов с использованием доказательств с нулевым разглашением, а не только простые переводы. Другими словами, zkEVM стремится сделать любое произвольное вычисление проверяемым с нулевым разглашением, эффективно позволяя масштабировать все возможности смарт-контрактов Ethereum с помощью ZK-роллапов.
zkEVM против EVM
EVM — это среда выполнения для смарт-контрактов в Ethereum. Это мощная система, которая позволяет разработчикам писать сложные скрипты в виде смарт-контрактов, которые затем выполняются по мере совершения транзакций в сети Ethereum. Совместимость с EVM, таким образом, означает, что решение Уровня 2 может выполнять те же смарт-контракты таким же образом, как и EVM.
Вот некоторые общие уровни совместимости:
-
EVM-эквивалентный: Это самый высокий уровень совместимости. EVM-эквивалентное решение может выполнять любой смарт-контракт, который может быть выполнен в основной цепочке Ethereum, без каких-либо изменений. Оно полностью воспроизводит возможности EVM. zkSync 2.0, например, заявляет о предоставлении EVM-эквивалентной функциональности в ZK-роллапе.
-
EVM-совместимый: EVM-совместимое решение может выполнять многие, но не обязательно все те же смарт-контракты, что и EVM. Могут потребоваться некоторые корректировки смарт-контрактов, чтобы они работали в рамках решения Уровня 2.
-
Несовместимый с EVM: Несовместимое с EVM решение предлагает функциональность, отличающуюся от той, что доступна в основной цепочке Ethereum. Например, оно может обрабатывать простые транзакции, но не сложные смарт-контракты.
Цель проектов zkEVM — разработать ZK-роллапы, которые предлагают полную или почти полную EVM-эквивалентную функциональность. Это позволяет разработчикам переносить свои децентрализованные приложения на эти решения Уровня 2 без существенных изменений, тем самым извлекая выгоду из улучшенной масштабируемости без ущерба для функциональности, предлагаемой EVM.
Решения zkEVM на рынке
Scroll
Команда Scroll, основанная в 2021 году, стремится разработать ZK-роллап, эквивалентный EVM (Виртуальной машине Ethereum), в рамках своих постоянных усилий по масштабированию Ethereum. В сотрудничестве с командой Privacy and Scaling Explorations и другими участниками с открытым исходным кодом Scroll посвятила последние два года публичному созданию байткод-совместимой zkEVM (Zero-Knowledge Ethereum Virtual Machine).
В конце февраля Scroll объявила, что ее тестовая сеть Alpha теперь запущена в сети Goerli. Тестовая сеть Alpha, открытая для всех пользователей для технического тестирования без разрешений, имеет среднее время блока в три секунды. На сегодняшний день она обработала более 20 миллионов транзакций, сгенерировала более 1,5 миллиона блоков и насчитывает более четырех миллионов интерактивных адресов. Кроме того, 11 апреля Scroll открыла интерфейс своей веб-экосистемы.
Недавние раскрытия информации показывают, что Scroll последовательно продвигается по пути эквивалентности EVM типа 2. Они успешно завершили ра зработку совместимости для всех операционных кодов EVM и в настоящее время проходят аудиторские проверки. Их следующая цель — обеспечить совместимость с транзакциями EIP2718.
С технической точки зрения архитектура Scroll относительно традиционна. Ее основной фокус — zkEVM, отвечающая за проверку корректности выполнения EVM на Уровне 2 (L2). Однако для преобразования zkEVM в полноценный ZK-роллап на Ethereum необходима полная архитектура L2. В частности, существующая тестовая сеть Scroll Alpha состоит из узла Scroll, контракта Bridge и контракта Rollup.
Узел Scroll состоит из Секвенсора, Релеера и Координатора. Секвенсор, известный как упорядочитель, предоставляет JSON-RPC пользователям и приложениям, считывает транзакции из пула транзакций и генерирует блоки L2 и корни состояний. В настоящее время узлы Секвенсора Scroll централизованы, с планами постепенной децентрализации в будущих обновлениях.

Координатор обрабатывает связь между Роллером и узлом Scroll, случайным образом выбирая Роллера из пула для генерации док азательства всякий раз, когда в Секвенсоре создается новый блок. Релеер отслеживает контракт Bridge и контракт Rollup как в цепочках Ethereum, так и в Scroll. Контракт Rollup гарантирует доступность данных L2 на уровне Уровня 1 (L1) и обеспечивает восстановление блоков L2 на уровне L1. Контракт Bridge отвечает за межцепочечную связь во время кросс-чейн операций, облегчая двунаправленную передачу сообщений и операции по обеспечению и извлечению активов.
Наконец, ключевую роль играет Сеть роллеров. Роллер, оснащенный zkEVM, действует как доказывающий в сети, генерируя доказательства валидности для ZK-роллапа. Роллер изначально преобразует трассировку выполнения, полученную от Координатора, в свидетельства схемы. Затем он генерирует доказательства для каждой схемы zkEVM, в конечном итоге агрегируя эти доказательства из нескольких ZK-схем.
Этот сложный архитектурный дизайн свидетельствует о непоколебимой приверженности Scroll повышению масштабируемости Ethereum с помощью zkEVM-роллапов. Благодаря своим публичным и прозрачным методам разработки они являются ярким примером возможностей, которые может принести сотрудничество в рам ках сообщества с открытым исходным кодом.
StarkWare
StarkWare расширяет границы блокчейн-технологий, предлагая решение для масштабирования на основе STARK, которое обеспечивает безопасность, скорость и бесперебойный пользовательский опыт на Уровне 2 (L2). Они поддерживают несколько режимов доступности данных, а их предложения включают StarkNet и StarkEx.
StarkNet — это их сеть L2, а StarkEx — это служба верификации роллапов, разработанная для корпоративных пользователей. DApps (децентрализованные приложения) могут быть построены поверх сервиса StarkEx. Однако в настоящее время сервис поддерживает только написание пользовательских схем для конкретных DApps, а не универсальный zkEVM-роллап. StarkEx также включает несколько готовых к использованию сервисов, таких как минтинг и торговля NFT, а также торговля деривативами. С точки зрения экосистемы, dYdX, децентрализованная платформа для торговли фьючерсными контрактами, является лояльным пользователем StarkWare.
Строго говоря, StarkNet можно описать как zkVM (виртуальную машину с нулевым разглашением). Она не использует ZK-схемы для опкодов Ethereum. Вместо этого она использует более ZK-дружественный язык ассемблера, AIR (Алгебраическое промежуточное представление), и высокоуровневый язык Cairo. Хотя сам StarkNet несовместим с EVM, совместимость с Ethereum может быть достигнута с помощью таких методов, как Kakarot, zkEVM, написанная на Cairo и являющаяся байткод-эквивалентной EVM. С точки зрения централизованных характеристик, StarkNet в некоторой степени централизован и не может обновлять свою безопасность в соответствии с Ethereum. Поэтому требуются сосредоточенные усилия разработчиков для усиления его функций безопасности и поддержания темпа с Ethereum в адаптации новых протоколов.
StarkNet использует STARK в качестве своей системы доказательств, что представляет собой больше инноваций по сравнению с SNARK. В отличие от SNARK, STARK не полагается на «доверенную установку». Более того, он предлагает более простые криптографические предположения, устраняя необходимость в эллиптических кривых, спариваниях и предположениях об экспоненциальном знании. Вместо этого он полагается исключительно на хеш-функции и теорию информации, что делает его более устойчивым к квантовым атакам. В целом, STARK безопаснее, чем SNARK. С точки зрения масштабируемости, STARK имеет существенные предельные эффекты: более крупные доказательства приводят к снижению общих затрат.
Однако существуют архитектурные проблемы. В настоящее время система имеет только один Секвенсор, контролируемый StarkWare, и один Прувер, отвечающий за генерацию ZK-доказательств. Этот Прувер генерирует доказательства не только для StarkNet, но и для всех других приложений, работающих на их собственном роллапе StarkEx. Эта концентрация контроля может представлять потенциальные риски в долгосрочной перспективе.
В заключение, StarkWare руководит разработкой решений L2 с их архитектурой масштабирования на основе STARK. Однако, как и в случае со всеми технологиями, ее будущий успех будет зависеть от того, насколько хорошо она решит проблемы централизации и сохранит баланс между безопасностью, скоростью и пользовательским опытом.
zkSync
Подобно StarkNet, zkSync неуклонно выбирает zkVM, эквивалентную высокоуровневому языку, привлекая много внимания, с заметно высокой активностью и заблокированной стоимостью. Запущенный в основной сети Ethereum 15 июня 2020 года, zkSync 1.0 (также известный как zkSync Lite) достиг пропускной способности транзакций около 300 TPS (транзакций в секунду), но не был совместим с EVM (Виртуальной машиной Ethereum). zkSync 2.0 (также называемый zkSync Era) был запущен 24 марта 2023 года.
Цель zkSync Era — генерировать доказательства быстрее за счет оптимизации их специально созданной VM, а не за счет достижения совместимости с EVM. Она поддерживает Solidity, Vyper, Yul и Zinc (внутренний язык программирования роллапа) через мощный компилятор LLVM, тем самым реализуя большинство функций см арт-контрактов. Поскольку она использует собственную VM, zkSync Era поддерживает нативную абстракцию аккаунта, позволяя любому аккаунту оплачивать комиссии с использованием любого токена.
Более того, применение протокола zkPorter, который сочетает ZK-роллапы и технологию шардинга, привело к экспоненциальному росту пропускной способности сети, достигнув более 20 000 TPS (аналогично переключению доступности данных Volitions).
В целом, zkSync представляет собой проект L2 с богатой экосистемой, привлекающий внимание как разработчиков, так и инвесторов. Хотя в последнее время были случаи полного провала проектов на zkSync, остается вопрос, смогут ли разработчики получить хороший опыт разработки и миграции на zkVM, эквивалентной высокоуровневому языку. В настоящее время отсутствуют окончательные отчеты об использовании от разработчиков. Если опыт разработчиков будет благоприятным, возникает вопрос о целесообразности других видов усилий по согласованию zkVM с EVM. Для ответа на эти вопросы требуется больше времени и наблюдений.
В заключение, zkSync, с его приверженностью zkVM, эквивалентной высокоуровневому языку, представл яет собой захватывающую эволюцию в мире решений для масштабирования Уровня 2 Ethereum. По мере того как проект будет продолжать развиваться, его влияние на развитие блокчейна и пользовательский опыт станет более ясным, способствуя нашему пониманию будущего технологии Уровня 2.
Polygon zkEVM
27 марта Polygon запустил бета-версию основной сети своего zkEVM-роллапа, виртуальной машины, эквивалентной Ethereum, и открыл исходный код всего своего zkEVM. Хотя заблокированная стоимость в zkEVM Polygon значительно ниже по сравнению с zkSync, она содержит множество интригующих и динамичных проектов в своей экосистеме.
Polygon отличается от Scroll в дизайне своего роллапа, поскольку он использует модель Доказательства эффективности (PoE) для стимулирования Секвенсоров и Агрегаторов, решая проблемы, связанные с децентрализацией и валидаторами без разрешений. В этой двухэтапной модели Секвенсор-Агрегатор без разрешений любой Секвенсор может предлагать приложения для пакетной упаковки, чтобы заработать комиссию за упаковку, но он должен оплачивать сборы за газ Уровня 1 (L1) и вносить определенное количество токенов. В то же время Агрегаторы должны устанавливать свои собственные цели для максимизации прибыли за генерацию доказательства. Кроме того, Polygon демонстрирует глубокую совместимость с Volition (смесь ZK-роллапа и Validium) в своей модели доступности данных, предлагая пользователям различные уровни обслуживания.
Polygon также вложил значительные усилия в свои ZK-протоколы, что принесло заметные результаты. Они суммировали свои технологические преимущества в своей документации, которые в основном включают:
-
Улучшенная совместимость: Polygon последовательно придерживается zkVM, эквивалентной EVM, стремясь снизить затраты для разработчиков, мигрирующих децентрализованные приложения (dApps). Несмотря на то, что Polygon Miden использует протокол ZK-STARK, он по-прежнему поддерживает выполнение контрактов Solidity.
-
Упрощенная верификация: ZK-роллап часто подвергается критике из-за требования дорогостоящего специализированного оборудования для генерации доказательств валидности. Эти затраты затем перекладываются на пользователей производителями, эксплуатирующими оборудование. Polygon ZK-роллап (например, Polygon Zero) стремится упростить схему доказательства, позволяя участвовать устройствам более низкого класса. Например, тест генерации доказательства Plonky2, выполненный на потребительском ПК.
-
Более быстрый процесс генерации и верификации доказательств: Polygon Zero может генерировать доказательство размером 45 КБ за 170 миллисекунд.
Подводя итог, запуск бета-версии основной сети zkEVM-роллапа Polygon означает важный шаг в эволюции технологии Уровня 2 Ethereum. Благодаря своей надежной экосистеме и постоянной приверженности повышению совместимости, упрощению верификации и ускорению генерации доказательств, Polygon создает убедительный нарратив в блокчейн-пространстве.
Резюме
Этот обзор был посвящен zk, роллапам и zkEVM, которые являются важными аспектами блокчейн-технологий. Мы также сравнили решения, предлагаемые Scroll, StarkWare, zkSync и Polygon и т. д.
Тем не менее, панацеи не существует. Основные проблемы, которые мы обсуждали в отношении zkEVM, включают централизацию, дороговизну и сложность.
-
Централизация в основном связана с контролем Секвенсоров и Пруверов, что потенциально ограничивает степень децентрализации.
-
Сложность — еще одна серьезная проблема, в значительной степени обусловленная сложными требованиями к кодированию и необходимостью специализированных знаний для генерации и проверки доказательств.
-
Дороговизна zkEVM возникает из-за значительных ресурсов, необходимых для генерации доказательств валидности, которые часто перекладываются на пользователей. Однако предпринимаются шаги по упрощению генерации доказательств и снижению затрат, что указывает на потенциальные решения этих проблем.