Как переход от zkEVM к zkVM улучшил масштабируемость блокчейна

Стадия 2 бета-версии Polygon zkEVM ускорит рост DApp и активность DeFi
Технология блокчейн прошла долгий путь с момента создания Биткоина более десятилетия назад. Хотя первоначальные сети блокчейна были новаторскими в своем децентрализованном подходе, они сталкивались со значительными проблемами, особенно в плане масштабируемости. По мере расширения приложений и вариантов использования блокчейна поиск решений проблем масштабируемости стал приоритетной задачей.
Одним из многообещающих достижений в этой области является переход от zkEVM (Zero-Knowledge Ethereum Virtual Machine) к zkVM (Zero-Knowledge Virtual Machine), который имеет потенциал для радикального улучшения масштабируемости блокчейна. В этой статье мы погрузимся в мир zkEVM, исследуем его ограничения и поймем, как эволюция к zkVM предназначена для внесения существенных улучшений в масштабируемость блокчейна.
Восхождение доказательств с нулевым разглашением (ZKP)
Доказательства с нулевым разглашением играют ключевую роль в защите конфиденциальности пользователей в интернете, особенно по мере того, как мы стремимся к широкому внедрению в блокчейне. Они также обещают решить вычислительные проблемы. В настоящее время есть два основных пути для достижения этого: zkEVM и zkVM. В этом исследовании мы погрузимся в оба подхода, взвешивая их преимущества и недостатки. Однако, прежде чем углубляться в этот анализ, важно понять, что мы оптимизируем и почему конфиденциальность имеет такое значение.
В области криптографической эволюции, подобно биологическому аналогу, развитие характеристик направлено на оптимизацию для конкретных результатов. Биткоин, например, приоритизировал безопасность превыше всего, признавая, что децентрализованная цифровая валюта должна быть unequivocally безопасной, прежде чем она сможет получить признание и широкое внедрение. Эфириум последовал аналогичному пути, подчеркивая безопасность, добавляя дополнительный слой: программируемость, обеспечиваемая смарт-контрактами.
Эти итерации в криптографической эволюции, как правило, строятся на основе друг друга, каждая привнося свой уникальный набор компромиссов. В случае Эфириума каждый узел должен повторно выполнять каждую транзакцию, представляя formidable вычислительные проблемы, которые приводят к высоким комиссиям за газ и медленной скорости транзакций. Решение выполнять вычисления непосредственно в блокчейне было принято для повышения безопасности и прозрачности. Однако это происходит ценой: компромисс производительности и конфиденциальности.
Rollups возникли как решение для улучшения масштабируемости за счет снижения вычислительных нагрузок, связанных с Эфириумом. Хотя они начинают решать проблему производительности, они не учитывают вопросы конфиденциальности. Это важно, потому что конфиденциальность превратилась в обязательное требование для приложений, стремящихся расширить свою пользовательскую базу. Пользователи все чаще требуют большего контроля над своими данными и становятся осторожными в отношении организаций, стремящихся к неограниченному доступу к их информации.
Разработчики приложений признали эту растущую тенденцию к конфиденциальности и ее необходимость. Следовательно, они активно исследуют методы защиты конфиденциальности с использованием доказательств с нулевым разглашением (ZKP). Эти криптографические протоколы позволяют пользователям или приложениям проверять истинность утверждения, не раскрывая никакой дополнительной информации. Например, ZKP могут подтвердить, что пользователю больше 18 лет, не раскрывая его точный возраст или дату рождения.
Как отмечено в отчете a16z «Состояние криптографии 2023», внедрение технологии ZK-proof разработчиками, вероятно, будет дальше расти. Эта тенденция обусловлена всплеском академических публикаций и растущим количеством ежедневных транзакций, которые включают проверку ZK-доказательств в сети Эфириум. Динамика вокруг ZKP демонстрирует их растущую важность в стремлении сбалансировать конфиденциальность, безопасность и масштабируемость в пространстве блокчейна.
Понимание zkVM
Первый аспект, который необходимо определить: что такое виртуальная машина (VM)? Вкратце, VM — это программное обеспечение, способное выполнять другие программы, обычно функционирующее как итеративный цикл, который выполняет заданный набор инструкций — эти инструкции представляют собой «другую программу».
Виртуальная машина Эфириума (EVM), в частности, служит VM, ответственной за выполнение смарт-контрактов Эфириума. Оригинальный компиляция поддерживаемых инструкций и их соответствующего поведения была изложена в 2014 году в основополагающей желтой книге — отличительной не только своей важностью, но и своим характерным желтым цветом — авторства Гэвина Вуда. Книга находится в состоянии непрерывных обновлений, стремясь отразить текущий массив поддерживаемых инструкций.
Виртуальная машина с нулевым разглашением (zk VM), с другой стороны, по сути, является VM, реализованной как схема в системе доказательств с нулевым разглашением (zkp). Это отличает ее от обычных систем zkp, которые в основном сосредоточены на доказательстве выполнения программы. В zkVM акцент смещается на проверку выполнения самой виртуальной машины. Следовательно, некоторые люди проводят различие, классифицируя non-VM zkps как часть подхода FPGA (Field-Programmable Gate Array), в то время как рассматривают zkVM как составные части подхода CPU (Central Processing Unit).
Внутри систем zkp программы или схемы являются неизменяемыми сущностями, подобно бинарным файлам, скомпилированным из конкретных программ. Следовательно, схема zkVM фактически воплощает заранее определенное количество итераций цикла, что можно сравнить с развертыванием цикла. По сути, zkVM — это схема, предназначенная для выполнения виртуальной машины. Инструкции фактической программы могут быть введены как публичный вход в эту схему, обеспечивая полную прозрачность относительно проверяемой программы. (Существуют различные методы передачи инструкций программы VM, если вы хотите изучить дополнительные альтернативы.)
Появилось несколько проектов zkVM, по крайней мере, три заслуживающих внимания предприятия:
- Cairo: Используемый Starknet, этот проект примечателен своим тщательным документом, который считается произведением искусства. Экспериментальная реализация под названием «turshi» также представлена в фреймворке Kimchi.
- Miden: Проект в рамках экосистемы Polygon, Miden в настоящее время находится в стадии разработки.
- Risczero: Еще один проект в стадии разработки, Risczero нацелен на поддержку набора инструкций RISC-V, широко признанного стандарта, выходящего за рамки блокчейн-домена.
Каждый из этих проектов поддерживает различные наборы инструкций, что делает их несовместимыми друг с другом.
Типы zkVM
Область zk VM можно разделить на два различных типа:
- zk-оптимизированные VM: К известным примерам относятся Cairo и Miden. Эти виртуальные машины тщательно спроектированы с упором на эффективность, что делает их значительно быстрее. Их основная цель — обеспечить бесшовную интеграцию с системами доказательств с нулевым разглашением (zkp), упрощая процесс верификации.
- Виртуальные машины реального мира: В эту категорию входят VM, такие как RiscZero, поддерживающая набор инструкций RISC-V, и различные zkEVM, адаптированные для Ethereum Virtual Machine (EVM). Виртуальные машины реального мира предназначены для обеспечения совместимости с устоявшимися наборами инструкций и экосистемами за пределами сферы доказательств с нулевым разглашением.
Мотивация поддержки EVM обусловлена несколькими вескими причинами. Во-первых, для самой Ethereum это позволяет создавать доказательства, охватывающие весь переход состояния — от начального состояния до текущего состояния Ethereum. Эта возможность демонстрируется такими проектами, как Mina.
Во-вторых, для проектов, не связанных с Ethereum, внедрение совместимости с EVM дает преимущество бесшовного включения проектов и приложений из экосистемы Ethereum, таких как Uniswap. Это не только способствует интероперабельности, но и предоставляет возможность привлечь разработчиков из сообщества Ethereum к новым проектам.
Механизм работы zkVM
ZkVM, основанный на нашей предыдущей работе над TxVM и вдохновленный дизайном Bitcoin и Ethereum, вводит новый формат транзакции. В ZkVM транзакция представляется как программа, которая напрямую управляет потоком активов как объектами первого класса, обновляя состояние блокчейна через журнал транзакций. Разделение применения журнала транзакций и его валидации позволяет реализовать высоко масштабируемый дизайн, обеспечивая при этом надежную среду для пользовательских контрактов.
Для повышения масштабируемости блокчейна и обеспечения конфиденциальных переводов стоимости ZkVM использует модель UTXO (непотраченный выход транзакции) для представления балансов. Все балансы выражаются как наборы непотраченных выходов (UTXO), которые могут создаваться, уничтожаться и изменяться в рамках транзакций. Эти UTXO эффективно хранятся в виде корней Меркла с использованием схемы Utreexo, что значительно снижает требования к хранилищу и облегчает развертывание полностью валидирующих узлов.
В ZkVM каждый выход представляет собой контракт, хранящийся в состоянии блокчейна, содержащий несколько элементов, защищенных предикатом — условием, которое должно быть выполнено для разблокировки этих элементов. ZkVM использует дизайн на основе Taproot, позволяющий разблокировать контракты либо с помощью криптографических подписей, либо путем выполнения встроенной подпрограммы, проверяющей пользовательские условия.
Контракты в ZkVM служат универсальными строительными блоками для протоколов более высокого уровня, таких как учетные записи, книги ордеров и платежные каналы. Эта гибкость позволяет таким платформам, как Stellar, переносить выбор дизайна протокола с уровня, критичного для консенсуса, что способствует экспериментам с широким спектром децентрализованных приложений.
Что касается конфиденциальности, ZkVM использует схему Taproot в предикатах для достижения баланса. Логика контракта не обязательно должна раскрываться, если все стороны сотрудничают, но безопасность сохраняется, если они этого не делают. Даже когда логика контракта должна быть раскрыта, такие данные, как балансы и параметры контракта, остаются конфиденциальными благодаря системе ограничений, верифицируемой с использованием доказательств с нулевым разглашением.
ZkVM использует систему доказательств с нулевым разглашением Bulletproofs, по умолчанию шифруя значения и данные как обязательства Педерсена. Пользователи могут задавать арифметические и логические выражения над секретными значениями, которые автоматически преобразуются в систему ограничений Bulletproofs. Транзакции компактны и эффективны: размер небольших транзакций составляет от 1 до 1,5 КБ, а агрегированные платежи обходятся всего в 200 байт на пару вход-выход. Верификация высоко параллелизуема и занимает около 1 миллисекунды на выход. Эта эффективность позволяет ZkVM приоритизировать безопасность без ущерба для шифрования данных, гарантируя, что данные раскрываются только уполномоченным сторонам по принципу «нужно знать». Кроме того, фреймворк Bulletproofs устраняет необходимость в доверенной настройке, позволяя создавать новые протоколы поверх ZkVM без необходимости глобальных обновлений сети для каждой новой функции.
Необходимость перехода от zkEVM к zkVM
Ограничения zkEVM
Хотя zkEVM внес значительные улучшения, у него все еще были некоторые ограничения, которые препятствовали реализации его потенциала масштабируемости:
- Ограниченная совместимость: zkEVM был в первую очередь разработан для сети Ethereum. Это означало, что другие блокчейн-платформы не могли легко внедрить эту технологию, что ограничивало ее более широкое влияние на экосистему блокчейна.
- Сложность: Внедрение zkEVM требовало глубокого понимания доказательств с нулевым разглашением и криптографии. Эта сложность делала трудным для разработчиков интеграцию zkEVM в свои проекты, что дополнительно ограничивало его внедрение.
- Проблемы хранения и данных: zkEVM не решал эффективно проблему хранения данных в блокчейне. Высокие требования к хранилищу больших данных оставались узким местом для масштабируемости.
Переход к zkVM: прорыв в масштабируемости
Осознав ограничения zkEVM, блокчейн-сообщество отправилось в путь по разработке более универсального и масштабируемого решения, что привело к появлению zkVM (Zero-Knowledge Virtual Machine).
zkVM строится на фундаментальных принципах zkEVM, устраняя его недостатки. Давайте рассмотрим, как zkVM готов революционизировать масштабируемость блокчейна:
- Кроссплатформенная совместимость: В отличие от zkEVM, zkVM разработан как блокчейн-агностический. Это означает, что он может быть интегрирован в различные блокчейн-сети, не ограничиваясь Ethereum. Эта более широкая совместимость открывает двери для более значительного влияния zkVM на всю экосистему блокчейна.
- Улучшенный пользовательский опыт: zkVM стремится упростить процесс внедрения для разработчиков. Предлагая удобные инструменты и интерфейсы, zkVM облегчает разработчикам использование силы доказательств с нулевым разглашением, снижая порог входа.
- Улучшенное управление данными: zkVM более эффективно решает проблему хранения данных. Он внедряет инновационные методы сжатия и хранения данных, снижая требования к хранилищу в блокчейне. Эта оптимизация оказывает прямое положительное влияние на масштабируемость за счет уменьшения размера данных блокчейна.
- Более быстрая обработка транзакций: Благодаря возможностям внецепочечных вычислений zkVM, вычислительная нагрузка на сеть блокчейна дополнительно снижается. Это приводит к более быстрому времени обработки транзакций, более низким комиссиям и улучшению общей производительности.
Для чего мы оптимизируем?
Lockheed Martin взялась на амбициозную задачу создания F-35, envisioning его как универсальный истребитель, способный заменить специализированные воздушные истребители воздушного и наземного назначения. Однако это предприятие столкнулось со значительными неудачами, отставая на десятилетие от запланированного графика и получив репутацию одного из самых неудачных истребителей, когда-либо созданных.
Ключевой вывод из этого опыта заключается в том, что когда система спроектирована с конкретной целью, она часто превосходит в выполнении этой конкретной роли по сравнению с решением, пытающимся оптимизировать несколько целей одновременно.
Проводя параллель с областью блокчейна, Ethereum изначально задумывался как полностью публичная и прозрачная платформа. Если попытаться внедрить функции конфиденциальности в такой блокчейн, маловероятно, что он достигнет того же уровня производительности, что и система, спроектированная с конфиденциальностью как основным принципом с самого начала. Это создает инженерные проблемы, так как разработчикам приходится адаптировать программы, которые изначально не предназначались для работы в этом контексте, что приводит к созданию сложных и громоздких схем.
Однако альтернативный подход включает разработку прикладного уровня, специально созданного для конфиденциальности. Этот подход позволяет оптимизировать функции, связанные с конфиденциальностью, одновременно получая преимущества, предлагаемые доказательствами с нулевым разглашением, о чем мы поговорим в следующем разделе.
Реальные приложения zkVM и zkEVM
Как zkEVM, так и zkVM находят применение в различных областях, обещая изменить отрасли и сценарии использования блокчейна:
- Революция DeFi: Платформы децентрализованных финансов (DeFi) могут использовать zkVM и zkEVM для повышения скорости транзакций, снижения комиссий и защиты конфиденциальных финансовых данных.
- Трансформация цепочек поставок: Улучшенная прозрачность и отслеживаемость в цепочках поставок возможны с помощью zkVM и zkEVM, что снижает мошенничество и повышает эффективность.
- Безопасность данных в здравоохранении: zkEVM и zkVM могут обеспечить конфиденциальность и безопасность медицинских данных, позволяя безопасный обмен информацией среди уполномоченных лиц.
- Игры и NFT: Игровая индустрия и рынки невзаимозаменяемых токенов (NFT) могут извлечь выгоду из более быстрых транзакций и безопасной обработки данных, предоставляемых zkVM и zkEVM.
Будущее zkVM и масштабируемости блокчейна
По мере того как zkVM набирает популярность в пространстве блокчейна, он обладает потенциалом решить давние проблемы масштабируемости, которые ограничивали внедрение и рост блокчейна. Однако, как и любая новая технология, есть проблемы, которые необходимо преодолеть, и соображения, которые следует учитывать:
- Препятствия для внедрения: Хотя совместимость zkVM с различными блокчейнами является значительным преимуществом, широкое внедрение все равно будет зависеть от готовности блокчейн-проектов интегрировать эту технологию в свои сети.
- Вопросы безопасности: Доказательства с нулевым разглашением вводят сложные криптографические техники, и любые уязвимости могут представлять значительные риски для безопасности. Непрерывный аудит и улучшение реализаций zkVM имеют решающее значение для поддержания доверия пользователей.
- Регуляторная среда: По мере развития технологии блокчейна она будет продолжать сталкиваться с регуляторным надзором. Остается неясным, как регулирующие органы будут относиться к доказательствам с нулевым разглашением и их приложениям, что может повлиять на будущее внедрение zkVM.
Заключение
Путь от zkEVM к zkVM представляет собой значительный шаг вперед в решении проблем масштабируемости блокчейна. Хотя zkEVM заложил основу, zkVM предлагает более универсальное и масштабируемое решение, которое имеет потенциал революционизировать использование технологии блокчейна в различных отраслях.
Переход к zkVM не лишен своих сложностей, но преимущества, которые он приносит в плане кроссплатформенной совместимости, удобства использования, управления данными и скорости обработки транзакций, делают его убедительным достижением в пространстве блокчейна. По мере того как zkVM продолжает развиваться и находить свое место в экосистемах блокчейна, мы можем ожидать появления более масштабируемых и эффективных блокчейн-приложений, которые имеют потенциал трансформировать отрасли и улучшить жизнь людей по всему миру.
Часто задаваемые вопросы
Что такое zkEVM и почему его возможностей оказалось недостаточно для масштабируемости блокчейна?
zkEVM (Zero-Knowledge Ethereum Virtual Machine) ограничена в масштабируемости, поскольку в первую очередь ориентирована на Ethereum, не поддерживает кросс-чейн совместимость, а также не решает эффективно задачи хранения данных и обеспечения удобства использования.
Что такое zkVM и чем он отличается от zkEVM?
zkVM (Zero-Knowledge Virtual Machine) — это более универсальное решение с поддержкой кросс-чейн совместимости, которое развивается на базе zkEVM. По сравнению с zkEVM он упрощает разработку, улучшает управление данными и обеспечивает более быструю обработку транзакций.
Как zkVM улучшает пользовательский опыт для разработчиков блокчейнов?
zkVM упрощает разработку за счёт предоставления удобных инструментов и интерфейсов, снижает сложность внедрения доказательств с нулевым разглашением и позволяет разработчикам легче использовать эту технологию.
Каковы реальные области применения zkVM и zkEVM в экосистемах блокчейна?
Обе технологии применяются в DeFi, цепочках поставок, обеспечении безопасности медицинских данных, гейминге, NFT и других сферах, предлагая повышенную скорость транзакций, безопасность данных и конфиденциальность.
С какими трудностями сталкивается zkVM при внедрении и в будущем развитии?
Среди ключевых задач — обеспечение широкого внедрения среди проектов в сфере блокчейна, гарантия безопасности при использовании сложных криптографических методов и преодоление потенциальных регуляторных барьеров по мере развития технологии.
Отказ от ответственности. Предоставленная информация не является торговой рекомендацией. Cryptopolitan.com Мы не несем ответственности за любые инвестиции, сделанные на основе информации, представленной на этой странице. Мы настоятельно рекомендуем проводить независимое исследование и/или проконсультироваться с квалифицированным специалистом перед принятием любых инвестиционных решений.

Шаян Чоудхури
Шаян — профессиональный криптожурналист, специализирующийся на криптографических модулях и разработке блокчейна. Он был репортёром новостей в CoinPedia и редактором новостей (стажёром) в Binance. С октября 2022 года он работает редактором по прогнозам цен на криптовалюты в Cryptopolitan. Шаян учился в Bidhannagar Government College, где получил степень бакалавра математики.
















