Эта статья предоставлена ​​сообществом. Автор — Кенни Ли, соучредитель Manta Network, программируемого протокола конфиденциальности уровня 1, основанного на технологии доказательства с нулевым разглашением.

Мнения в этой статье принадлежат автору/участнику и не обязательно отражают точку зрения Binance Academy.

ТЛ;ДР

  • Виртуальная машина Ethereum с нулевым разглашением (zkEVM) — это конечный автомат Ethereum, который может выполнять смарт-контракты способом, совместимым с технологией доказательства с нулевым разглашением (ZKP).

  • zkEVM расширяют возможности объединений с нулевым разглашением (zk-rollup) на Ethereum для поддержки децентрализованных приложений (DApps).

  • zkEVM упрощают развертывание как существующих, так и новых проектов Ethereum с использованием ZKP для улучшения экосистемы Ethereum.

Введение

Первоначальные разработчики Ethereum не рассматривали технологию ZKP, когда впервые предложили сеть в 2014 году. Однако в последние годы ZKP привлек к себе внимание и, как ожидается, будет играть гораздо более заметную роль в пространстве блокчейнов. Таким образом, усилия по объединению технологии ZKP и виртуальной машины Ethereum активизировались.

Чтобы понять, что такое zkEVM, давайте сначала кратко рассмотрим две ее основные концепции: zk-rollups и EVM.

Что такое Zk-роллапы?

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

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

Zk-rollup — это тип объединения, в котором используется технология ZKP, криптографическая технология, которая позволяет проверять достоверность части информации без раскрытия самой информации. zk-rollups не нужно публиковать все данные транзакций в основной сети Ethereum; им нужны только государственные различия (например, изменения в статусе учетной записи пользователя) и подтверждение действительности, что снижает плату за газ при этом.

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

Что такое ЭВМ?

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

Состояние — важная концепция в Ethereum. Это структура данных Merkle Patricia Trie, которая представляет текущее состояние Ethereum и позволяет любому отслеживать информацию о транзакциях от текущего блока вплоть до исходного блока.

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

Как работает ZkEVM?

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

zkEVM делает это путем репликации среды Ethereum в виде zk-rollup. Он принимает исходное состояние, вычисляет все транзакции, а затем выводит новое, обновленное состояние вместе с сопутствующим ZKP. Это доказательство передается в смарт-контракт верификатора, который проверяет правильность как исходного, так и нового вывода состояния без необходимости проверять все транзакции по отдельности.

Поскольку zkEVM основаны на EVM, разработчики могут легко переносить DApps Ethereum и смарт-контракты на zkEVM без необходимости заниматься разработкой ZKP. Другими словами, zkEVM позволяют zk-rollup выполнять смарт-контракты в дополнение к обмену токенами и платежам, которые ранее поддерживались без zkEVM.

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

Совместимость EVM и эквивалентность EVM

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

Фактически, разработчики Ethereum могут скопировать и вставить код существующих DApps из Ethereum и развернуть его в других EVM-совместимых цепочках с минимальными изменениями. Для пользователей любой адрес цепочки, совместимой с EVM, совпадает с их адресом Ethereum.

Это означает, что адреса совместимы с основными кошельками, такими как Metamask и Trust Wallet. В настоящее время к основным EVM-совместимым цепочкам относятся BNB Chain, Avalanche C-Chain и Polygon.

Совместимость EVM не следует путать с эквивалентностью EVM, что означает, что с точки зрения разработчика DApp накопительные пакеты уровня 2 почти идентичны Ethereum уровня 1.

Если использовать аналогию с операционной системой, эквивалентность EVM сродни восстановлению файлов и настроек через Apple Cloud, если предыдущий компьютер пользователя и новый компьютер работают под управлением операционной системы Apple.

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

Различные типы ZkEVM

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

Основатель Ethereum Виталик Бутерин разделил zkEVM на следующие четыре типа. Подобно трилемме блокчейна, каждый из них имеет разные компромиссы между эффективностью производительности ZKP и совместимостью EVM.

Тип 1: Эквивалентность на уровне консенсуса — zkEVM, полностью эквивалентный Ethereum.

На уровне консенсуса zkEVM типа 1, также известный как закрепленный накопительный пакет, эквивалентен Ethereum, а состояние и транзакции цепочки zkEVM идентичны таковым в Ethereum. Они могут взаимно проверять блоки и напрямую использоваться с клиентами исполнения Ethereum.

zkEVM типа 1 делают сам Ethereum более масштабируемым и могут быть непосредственно внедрены в основную сеть Ethereum. Недостатком является то, что эффективность ZKP чрезвычайно низка и требует большого объема вычислений для проверки. Решение состоит в том, чтобы в будущем использовать крупномасштабные параллельные валидаторы или специализированные интегральные схемы для zk-SNARK.

zkEVM типа 1 с высокой эффективностью ZK были бы наиболее идеальной формой zkEVM. В настоящее время существует множество проектов по созданию или исследованию zkEVM этого типа.

Тип 2: эквивалентность на уровне байт-кода — полностью эквивалентен EVM.

Тип 2 полностью эквивалентен EVM, но не Ethereum. Он отличается от Ethereum структурами данных (такими как структура блоков и дерево состояний) и удаляет некоторые операции стека, которые не поддерживают ZK.

Он полностью совместим с существующими DApps, инструментами отладки и инфраструктурой разработчиков Ethereum. Эквивалентность на уровне байт-кода может ускорить время проверки, хотя и незначительно. Явным недостатком Типа 2 является то, что он дорогой, не синергичен с ЗК, имеет низкую и дорогую эффективность.

Тип 2.5: аналогичен типу 2, но с изменениями в оплате за газ.

Тип 2.5 разделяет преимущества и недостатки типа 2, но имеет немного меньшую плату за газ.

Тип 3: эквивалентность на уровне байт-кода — почти эквивалентно EVM.

Основанный на типе 2, тип 3 дополнительно жертвует совместимостью ради повышения эффективности ZK. Он удаляет функции, которые сложно реализовать в zkEVM, например прекомпиляцию, поэтому некоторый код, используемый в DApps, требующий этой функции, необходимо переписать.

Тип 4: Эквивалентность уровня языка разработки — язык высокого уровня, эквивалентный EVM.

EVM типа 4 имеют самую высокую производительность ZK, но относительно низкую совместимость.

Заключительные мысли

Основная цель реализации zkEVM — расширить поддержку вычислений ZKP для выполнения смарт-контрактов и тем самым расширить DApps для всех протоколов, совместимых с EVM. Но на этом заявления ZKP не заканчиваются.

Технология ZKP потенциально может быть совместима со сценариями использования Web2. Объединение различных вариантов использования Web2 с ZKP может сделать приложения Web3 более плавными и удобными для пользователя. Это также предоставит пользователям, которые уже привыкли к традиционным интернет-браузерам, доступ к Web3 и, в свою очередь, будет способствовать внедрению Web3.

Дальнейшее чтение

  • Что такое доказательство с нулевым разглашением и как оно влияет на блокчейн?

  • Оптимистические и накопительные данные с нулевым разглашением: в чем разница?

  • Улучшение криптопрозрачности с помощью доказательства с нулевым разглашением


Disclaimer and Risk Warning: This content is presented to you on an “as is” basis for general information and educational purposes only, without representation or warranty of any kind. It should not be construed as financial, legal or other professional advice, nor is it intended to recommend the purchase of any specific product or service. You should seek your own advice from appropriate professional advisors. Where the article is contributed by a third party contributor, please note that those views expressed belong to the third party contributor, and do not necessarily reflect those of Binance Academy. Please read our full disclaimer here for further details. Digital asset prices can be volatile. The value of your investment may go down or up and you may not get back the amount invested. You are solely responsible for your investment decisions and Binance Academy is not liable for any losses you may incur. This material should not be construed as financial, legal or other professional advice. For more information, see our Terms of Use and Risk Warning.