Первоначальный автор: Сингапурский университет социальных наук, узел инклюзивного финансирования SUSS, исследователь NiFT @Jesse_meta, исследователь Beosin @EatonAshton 2, исследователь безопасности с наименьшим авторитетом @kaplannie
Примечание. Эта статья представляет собой исследовательский отчет Альянса безопасности блокчейнов SUSS NiFT.
Независимо от того, хранится ли информация в Интернете или в офлайн-архивах, намеренная она или случайная, случаи утечки информации сегодня являются обычным явлением, о чем и говорить не приходится. Пока информация хранится централизованно, всегда существует риск единой точки атаки. Пока процесс проверки требует доверенной третьей стороны, будут существовать этические риски и неэффективность. Решение информационной безопасности является решающим и неотложным. Технология доказательства с нулевым разглашением данных позволяет пользователям выполнять проверку более эффективно и безопасно, сохраняя при этом свою конфиденциальность.
Если Биткойн — первое крупное изобретение, которое блокчейн привносит в реальный мир, предоставляя новый способ хранения стоимости, а смарт-контракты Эфириума — второе важное событие, раскрывающее потенциал инноваций, то применение доказательств с нулевым разглашением — это Крупнейшая Третья по величине технологическая инновация в истории развития блокчейна, обеспечивающая конфиденциальность и масштабируемость. Это не только важная часть экосистемы Web3, но и важная базовая технология, способная способствовать социальным изменениям.
В этой статье представлены сценарии применения, принципы работы, состояние разработки и будущие тенденции доказательства с нулевым разглашением с точки зрения нетехнического человека, чтобы позволить читателям без технического образования понять основные изменения, которые собираются принести доказательство с нулевым разглашением. приносить.
1. Что такое доказательство с нулевым разглашением?
Доказательство с нулевым разглашением (ZKP) — это математический протокол, впервые предложенный в статье 1985 года «Сложность знаний интерактивных доказательств», написанной в соавторстве с Шафи Гольдвассером, Сильвио Микали и Чарльзом Ракоффом. быть не раскрывать любую другую информацию. Верификатор не имеет доступа к секретной информации, на основе которой было создано доказательство. Позвольте мне привести вам пример, который поможет вам понять: я хочу доказать, что знаю чей-то номер телефона. Мне нужно только набрать номер телефона этого человека на глазах у всех, чтобы доказать этот факт, не раскрывая настоящий номер этого человека. Доказательства с нулевым разглашением данных обеспечивают эффективный и практически безрисковый способ обмена данными. Используя доказательства с нулевым разглашением, мы можем сохранить право собственности на данные, значительно улучшить защиту конфиденциальности и, надеемся, оставить утечку данных в прошлом.
Доказательство с нулевым разглашением имеет три характеристики:
Полнота
Если утверждение верно, честные проверяющие будут убеждены честными доказывающими. То есть то, что правильно, не может быть неправильным.
рациональность
Если утверждение ложно, в подавляющем большинстве случаев обманщик не сможет заставить честного проверяющего поверить в ложное утверждение. То есть то, что неправильно, не может быть правильным.
НУЛЕВЫЕ ЗНАНИЯ
Если утверждение истинно, проверяющий не может получить никакой дополнительной информации, кроме того, что утверждение истинно.
Доказательства с нулевым разглашением имеют очень небольшую вероятность возникновения разумных ошибок, то есть мошеннический доказывающий может заставить проверяющего поверить в неверное утверждение. Доказательство с нулевым разглашением — это вероятностное, а не детерминированное доказательство, но мы можем свести рациональную ошибку к незначительной с помощью некоторых методов.
2. Применение доказательства с нулевым разглашением
Двумя наиболее важными сценариями применения доказательства с нулевым разглашением являются конфиденциальность и масштабируемость.
2.1 Конфиденциальность
Доказательства с нулевым разглашением позволяют пользователям безопасно делиться необходимой информацией для получения товаров и услуг, не раскрывая личные данные, защищая их от хакеров и утечки личной информации. С постепенной интеграцией цифровой и физической областей функция защиты конфиденциальности с помощью доказательства с нулевым разглашением стала решающей для информационной безопасности в Web3 и даже за его пределами. Без доказательства с нулевым разглашением информация о пользователе будет существовать в доверенной сторонней базе данных и будет потенциально уязвима для хакерских атак. Первым примером применения доказательства с нулевым разглашением в блокчейне является конфиденциальная монета Zcash, которая используется для сокрытия деталей транзакции.
2.1.1 Защита и проверка идентификационной информации
В онлайн-действиях нам часто необходимо предоставить такую информацию, как имя, дата рождения, адрес электронной почты и сложные пароли, чтобы доказать, что мы являемся пользователями с законными разрешениями. Поэтому мы часто оставляем в сети конфиденциальную информацию, которую не хотим раскрывать. В настоящее время нередки звонки мошенников, называющие нас по именам, что показывает, что утечка личной информации очень серьезна.
Мы можем использовать технологию блокчейна, чтобы предоставить каждому человеку специальный зашифрованный цифровой идентификатор, содержащий личные данные. Этот цифровой идентификатор позволяет создать децентрализованную личность, и его невозможно подделать или изменить без ведома его владельца. Децентрализованная идентификация позволяет пользователям контролировать доступ к личным данным, подтверждать гражданство, не раскрывая паспортные данные, упрощать процесс аутентификации и уменьшать вероятность потери пользователями доступа из-за забытых паролей. Доказательства с нулевым разглашением создаются на основе общедоступных данных, которые могут подтвердить личность пользователя, и личных данных с информацией о пользователе, а также могут использоваться для проверки личности при доступе пользователей к услугам. Это не только упрощает громоздкий процесс проверки, улучшает взаимодействие с пользователем, но и позволяет избежать централизованного хранения пользовательской информации.
Кроме того, доказательства с нулевым разглашением также могут использоваться для создания частных систем репутации, позволяя сервисным агентствам проверять, соответствуют ли пользователи определенным стандартам репутации, не раскрывая свою личность. Пользователи могут анонимно экспортировать свою репутацию с таких платформ, как Facebook, Twitter и Github, маскируя при этом конкретную исходную учетную запись.
2.1.2 Анонимный платеж
Детали транзакций, оплаченных с помощью банковских карт, обычно видны нескольким сторонам, включая поставщиков платежных услуг, банки и правительства.
Криптовалюты могут позволять осуществлять платежи без участия третьих сторон, обеспечивая прямые одноранговые транзакции. Тем не менее, транзакции в основных публичных цепочках в настоящее время общедоступны. Если вы знаете адрес кошелька человека, вы можете в любой момент проверить баланс своего банковского счета, что может даже представлять угрозу личности и имуществу пользователя.
Доказательство с нулевым разглашением может обеспечить анонимные платежи на трех уровнях: монеты конфиденциальности, приложения конфиденциальности и публичные сети конфиденциальности. Монета конфиденциальности Zcash скрывает детали транзакции, включая отправителя, адрес получателя, тип актива, количество и время. Tornado Cash — это децентрализованное приложение на Ethereum, которое использует доказательство с нулевым разглашением для сокрытия деталей транзакций для обеспечения частных переводов (но также часто используется хакерами для отмывания денег). Aleo — это блокчейн L1, предназначенный для обеспечения функций конфиденциальности приложений на уровне протокола.
2.1.3 Честное поведение
Доказательства с нулевым разглашением могут способствовать честному поведению, сохраняя при этом конфиденциальность. Протокол может потребовать от пользователей предоставления доказательств с нулевым разглашением, чтобы доказать свое честное поведение. Из-за рациональности доказательств с нулевым разглашением (неправильное не может быть правильным), пользователи должны действовать честно в соответствии с требованиями протокола, прежде чем они смогут предоставить действительные доказательства.
MACI (Minimal Anti-Collusion Infrastructure) — это сценарий приложения, который способствует честности и предотвращает сговор во время онлайн-голосования или других форм принятия решений. Для достижения этой цели система использует пары ключей и технологию доказательства с нулевым разглашением. В MACI пользователи регистрируют свои открытые ключи в смарт-контракте и отправляют свои голоса в контракт посредством зашифрованных сообщений. Функция MACI по борьбе с сговором позволяет избирателям изменять свои открытые ключи, чтобы другие не могли узнать их выбор при голосовании. Координатор использует доказательство с нулевым разглашением в конце периода голосования, чтобы доказать, что он обработал все сообщения правильно, а окончательный результат голосования представляет собой сумму всех действительных голосов. Это обеспечивает честность и справедливость голосования.
2.1.4 Проверка личной информации
Когда мы хотим получить кредит, мы можем получить от компании цифровой сертификат о доходах, чтобы подать заявку на кредит. Легитимность этого доказательства легко проверить криптографически. Банк может использовать доказательство с нулевым разглашением, чтобы убедиться, что наш доход достигает необходимого минимума, но он не получит конфиденциальную конкретную информацию.
2.1.5 Сочетание машинного обучения для раскрытия потенциала личных данных
При обучении моделей машинного обучения обычно требуются большие объемы данных. Используя доказательства с нулевым разглашением, владельцы данных могут доказать, что их данные соответствуют требованиям для обучения модели, не раскрывая данные фактически. Это помогает использовать личные данные и монетизировать их.
Кроме того, доказательства с нулевым разглашением могут позволить создателям моделей доказать, что их модели соответствуют определенным показателям производительности, не раскрывая детали модели, чтобы предотвратить копирование или изменение их моделей другими.
2.2 Расширяемый
Поскольку число пользователей блокчейна увеличивается, в блокчейне требуется большой объем вычислений, что приводит к перегрузке транзакций. Некоторые блокчейны пойдут по пути расширения путем шардинга, но это потребует большого количества сложных модификаций базового уровня блокчейна, что может поставить под угрозу безопасность блокчейна. Другое, более осуществимое решение — пойти по маршруту ZK-Rollup, использовать проверяемые вычисления, передать вычисления на аутсорсинг объектам другой цепочки для выполнения, а затем отправить доказательство с нулевым разглашением и проверяемые результаты в основную цепочку для проверки. Доказательство с нулевым разглашением гарантирует подлинность транзакции. Основной цепочке необходимо только обновить результат до состояния. Нет необходимости хранить детали или воспроизводить вычисления, а также нет необходимости ждать, пока другие обсудят подлинность транзакции. транзакции, что значительно повышает эффективность и масштабируемость. Разработчики могут использовать доказательства с нулевым разглашением для разработки децентрализованных приложений с легкими узлами, которые могут работать на обычном оборудовании, таком как мобильные телефоны, что в большей степени способствует распространению Web3 в массы.
Расширение доказательства с нулевым разглашением может применяться как к сети первого уровня, такой как протокол Mina, так и к ZK-агрегатам сети второго уровня.
3. Как работает доказательство с нулевым разглашением
Дмитрий Лаверенов (2019) делит структуры доказательства с нулевым разглашением на интерактивные и неинтерактивные.
3.1 Интерактивное доказательство с нулевым разглашением
Базовая форма интерактивного доказательства с нулевым разглашением состоит из трех этапов: доказательство, оспаривание и ответ.
Доказательства: Скрытая секретная информация является доказательством доказывающего. Эти доказательства ставят ряд вопросов, на которые правильно ответить может только тот, кто знает информацию. Доказывающая начинает случайным образом выбирать вопросы и отправляет рассчитанные ответы проверяющему для доказательства.
Задача: проверяющий случайным образом выбирает другой вопрос из набора и просит проверяющего ответить на него.
Ответ: Доказывающая принимает вопрос, вычисляет ответ и возвращает результат проверяющему. Ответ доказывающего позволяет проверяющему проверить, знает ли доказывающий доказательства.
Этот процесс можно повторять несколько раз, пока вероятность того, что доказывающий угадает правильный ответ, не зная секретной информации, не станет достаточно низкой. Приведем упрощенный математический пример: если вероятность того, что доказывающий сможет угадать правильный ответ, не зная секретной информации, равна 1/2, а взаимодействие повторяется десять раз, вероятность того, что доказывающий каждый раз попадет в цель, составляет всего 9,7 из 10 000. Если вы хотите проверить Вероятность того, что человек ошибочно подтвердит ложную сертификацию, крайне мала.
3.2 Неинтерактивное доказательство с нулевым разглашением
Интерактивные доказательства с нулевым разглашением имеют ограничения. С одной стороны, доказывающая и проверяющая сторона должны существовать одновременно и выполнять повторные проверки. С другой стороны, каждое вычисление нового доказательства требует, чтобы доказывающая и проверяющая пропустили набор информации. Доказательство не может быть повторно использовано при независимой проверке.
Чтобы преодолеть ограничения интерактивных доказательств с нулевым разглашением, Мануэль Блюм, Пол Фельдман и Сильвио Микали предложили неинтерактивные доказательства с нулевым разглашением, в которых доказывающий и проверяющий используют общий ключ, и требуется только один раунд проверки. чтобы доказательство с нулевым разглашением оказалось более эффективным. Доказывающая сторона вычисляет секретную информацию с помощью специального алгоритма для создания доказательства с нулевым разглашением и отправляет его проверяющему. Верификатор использует другой алгоритм, чтобы проверить, знает ли проверяющий секретную информацию. Как только это доказательство с нулевым разглашением будет создано, любой, у кого есть общий ключ и алгоритм проверки, сможет его проверить.
Неинтерактивное доказательство с нулевым разглашением является крупным прорывом в технологии доказательства с нулевым разглашением и способствует развитию современных систем доказательства с нулевым разглашением. Основными методами являются ЗК-СНАРК и ЗК-СТАРК.
4. Основные технические пути доказательства с нулевым разглашением
Alchemy (2022) делит технические пути доказательства с нулевым разглашением на ZK-SNARK, ZK-STARK и рекурсивный ZK-SNARK.
###4.1 ЗК-СНАРК
ZK-SNARK — это краткое неинтерактивное доказательство с нулевым разглашением.
Чтобы публичная цепочка могла гарантировать правильность транзакций, выполняемых в сети, этого необходимо добиться, заставляя другие компьютеры (узлы) повторно выполнять каждую транзакцию. Однако этот метод заставит каждый узел повторно выполнять каждую транзакцию, что замедлит работу сети и ограничит масштабируемость. Узлы также должны хранить данные транзакций, в результате чего размер блокчейна растет в геометрической прогрессии.
Из-за этих ограничений в игру вступает ZK-SNARK. Он может доказать правильность вычислений, выполненных вне цепочки, не требуя от узлов повторять каждый шаг вычислений. Это также устраняет необходимость в узлах хранить избыточные данные транзакций и увеличивает пропускную способность сети.
Использование SNARK для проверки вычислений вне цепочки приводит к кодированию вычислений в математическое выражение для формирования доказательства достоверности. Верификатор проверяет правильность доказательства. Если доказательство проходит все проверки, лежащее в его основе вычисление считается действительным. Размер доказательства достоверности во много раз меньше, чем вычисление, которое оно проверяет, поэтому мы называем SNARK краткими.
Большинство накопительных пакетов ZK, использующих ZK-SNARK, выполняют следующие шаги.
Пользователь L2 подписывает транзакцию и отправляет ее верификатору.
Верификатор использует криптографию для сжатия нескольких транзакций для создания соответствующих сертификатов действительности (SNARK).
Смарт-контракт в цепочке L1 проверяет сертификат действительности и определяет, публикуется ли этот пакет транзакций в основной цепочке.
Стоит отметить, что ZK-SNARK требует доверенных настроек. На этом этапе генератор ключей использует программу и секретный параметр для генерации двух пригодных для использования открытых ключей: один для создания доказательства, а другой для проверки доказательства. Эти два открытых ключа должны генерировать общедоступные параметры только один раз во время церемонии доверенной установки, и их можно использовать несколько раз сторонами, желающими участвовать в протоколе с нулевым разглашением. Пользователям необходимо верить, что участники ритуалов доверенной настройки не являются злыми, и нет возможности оценить честность участников. Знание секретных параметров может привести к созданию фальшивых доказательств и обмануть проверяющего, что создает потенциальную угрозу безопасности. В настоящее время есть исследователи, изучающие решения ZK-SNARK, которые не требуют предположений о доверии.
Преимущество
Безопасность
Объединение ZK считается более безопасным решением для расширения, чем объединение OP, поскольку ZK-SNARK использует усовершенствованный механизм безопасности шифрования, который затрудняет обман проверяющих и вредоносное поведение.
Высокая пропускная способность
ZK-SNARK уменьшает объем вычислений в нижней части Ethereum, уменьшая перегрузку основной сети.Вычисления вне цепочки разделяют транзакционные издержки, обеспечивая более высокую скорость транзакций.
Небольшой размер пробы
Небольшой размер доказательств SNARK облегчает их проверку в основной цепочке, а это означает, что плата за газ для проверки транзакций вне цепочки ниже, что снижает затраты для пользователей.
ограничения
Относительная централизация
Большую часть времени полагаться на надежную настройку. Это противоречит первоначальному намерению блокчейна уничтожить доверие.
Генерация доказательств достоверности с помощью ZK-SNARK — это трудоемкий процесс, и проверяющий должен инвестировать в специализированное оборудование. Это оборудование дорогое, и лишь немногие люди могут его себе позволить, поэтому процесс проверки ZK-SNARK сильно централизован.
ZK-SNARK использует криптографию эллиптических кривых (ECC) для шифрования информации, используемой для генерации доказательств достоверности. В настоящее время она относительно безопасна, но достижения в области квантовых вычислений могут нарушить ее модель безопасности.
Проекты с использованием ЗК СНАРК
Полигон Гермез
Polygon приобрела Hermez за 250 миллионов долларов США в 2021 году, что стало первым комплексным слиянием и приобретением двух сетей блокчейнов. Технология и инструменты ZK, которые Hermez привнес в быстро растущую базу пользователей Polygon, позволили Polygon получить поддержку в разработке zkEVM. Hermez 1.0 — это платежная платформа, которая выполняет пакет транзакций вне сети, позволяя пользователям легко переносить токены ERC-20 с одной учетной записи Hermez на другую учетную запись Hermez со скоростью до 2000 транзакций в секунду.
Hermez 2.0 действует как zkEVM с нулевым разглашением для прозрачного выполнения транзакций Ethereum, включая смарт-контракты с проверкой с нулевым разглашением. Он полностью совместим с Ethereum и не требует большого количества изменений в коде смарт-контракта, что позволяет разработчикам удобно развертывать проекты L1 в Polygon Hermez. Hermez 1.0 использует доказательства SNARK, а версия 2.0 использует как доказательства SNARK, так и доказательства STARK. В версии 2.0 STARK-proof используется для подтверждения достоверности транзакций вне сети. Однако стоимость проверки STARK-доказательства в основной цепочке очень высока, поэтому для проверки STARK вводится SNARK-доказательство.
zkSync
zkSync 1.0, запущенный Matter Labs в 2020 году, не поддерживает смарт-контракты и в основном используется для транзакций или переводов. ZkSync 2.0, поддерживающий смарт-контракты, будет публично запущен в сети в марте 2023 года.
ZkSync компилирует исходный код смарт-контракта Solidity на Ethereum в Yul для достижения совместимости с EVM. Yul — это промежуточный язык, который можно компилировать в байт-код для разных EVM. Код Yul можно перекомпилировать с помощью структуры компилятора LLVM в собственный, совместимый со схемой набор байт-кода, разработанный для zkEVM от zkSync. Такой подход устраняет необходимость выполнения доказательств zk с помощью кода более высокого уровня для всех этапов выполнения EVM, что упрощает децентрализацию процесса доказательства при сохранении высокой производительности. В будущем поддержка Rust, Java или других языков может быть добавлена путем создания новых интерфейсов компилятора, что повысит гибкость архитектуры zkEVM и позволит привлечь больше разработчиков.
Ацтек
Aztec — это первый гибридный zkRollup, позволяющий выполнять как публичные, так и частные смарт-контракты в одной среде. Это среда выполнения с нулевым разглашением, а не zkEVM. Конфиденциальность достигается за счет объединения публичных и частных исполнений в единый гибридный пакет, таких как частные транзакции для публичных AMM, частные разговоры в публичных играх, частное голосование для публичных DAO и многое другое.
4.2 ЗК-СТАРК
ZK-STARK не требует доверенной настройки. ZK-STARK — это аббревиатура от «Масштабируемый прозрачный аргумент знаний с нулевым разглашением». По сравнению с ZK-SNARK, ZK-STARK обладает лучшей масштабируемостью и прозрачностью.
Преимущество
Потерять доверие
ZK-STARK публично проверяет случайность для замены доверенных настроек, уменьшая зависимость от участников и повышая безопасность протокола.
Более сильные возможности расширения
Несмотря на то, что сложность базовых вычислений возрастает экспоненциально, ZK-STARK по-прежнему обеспечивает меньшее время доказательства и проверки, а не линейный рост, как ZK-SNARK.
Более высокая гарантия безопасности.
ZK-STARK использует для шифрования устойчивые к коллизиям хеш-значения вместо схемы эллиптических кривых, используемой в ZK-SNARK, которая устойчива к атакам квантовых вычислений.
Ограничения
Больший размер пробного образца
Размер доказательства ZK-STARK больше, что делает проверку в основной сети более успешной.
Более низкий уровень внедрения
ZK-SNARK — это первое практическое применение доказательства с нулевым разглашением в блокчейне, поэтому в большинстве накопительных пакетов ZK используется ZK-SNARK, который имеет более зрелые системы и инструменты разработки. Хотя ZK-STARK также поддерживается Ethereum Foundation, уровень его внедрения недостаточен, и базовые инструменты нуждаются в улучшении.
**В каких проектах используется ZK-STARK? **
Полигон Миден
Polygon Miden, решение для масштабирования на базе Ethereum L2, использует технологию zk-STARK для интеграции большого количества транзакций L2 в одну транзакцию Ethereum, тем самым увеличивая вычислительную мощность и снижая транзакционные издержки. Без шардинга Polygon Miden может сгенерировать блок за 5 секунд, а его TPS может достигать более 1000. После шардинга TPS может достигать 10 000. Пользователи могут вывести средства с Polygon Miden на Ethereum всего за 15 минут. Основная функция Polygon Miden — это полная по Тьюрингу виртуальная машина на базе STARK — Miden VM, которая упрощает формальную проверку контрактов.
СтаркЭкс и СтаркНет
StarkEx — это платформа для лицензирования расширенных решений, адаптированных для конкретных приложений. Проекты могут использовать StarkEx для выполнения недорогих вычислений вне сети и создания доказательств STARK, подтверждающих правильность выполнения. Такое доказательство содержит 12 000–500 000 транзакций. Наконец, доказательство отправляется валидатору STARK в цепочке, и обновление статуса принимается после проверки правильности. Приложения, развернутые на StarkEx, включают бессрочные опционы dYdX, NFT L2 Immutable, рынок торговли спортивными цифровыми картами Sorare и многоцепочный агрегатор DeFi rhino.fi.
StarkNet — это не требующая разрешений L2, где каждый может развертывать смарт-контракты, разработанные на языке Cairo. Контракты, развернутые в StarkNet, могут взаимодействовать друг с другом для создания новых составных протоколов. В отличие от StarkEx, где за отправку транзакций отвечают приложения, секвенсор StarkNet группирует транзакции и отправляет их на обработку и сертификацию. StarkNet больше подходит для протоколов, которым необходимо синхронно взаимодействовать с другими протоколами или которые выходят за рамки приложений StarkEx. По мере развития StarkNet приложения на базе StarkEx можно будет портировать в StarkNet и использовать возможность компоновки.
Сравнение ZK-SNARK и ZK-STARK
4.3 Рекурсивный ZK-SNARK
Обычные накопительные пакеты ZK могут обрабатывать только один блок транзакций, что ограничивает количество транзакций, которые они могут обрабатывать. Рекурсивный ZK-SNARK может проверять более одного блока транзакций, объединяя SNARK, сгенерированные разными блоками L2, в единый сертификат достоверности и отправляя его в цепочку L1. Как только он-чейн-контракт L1 принимает представленное доказательство, все эти транзакции становятся действительными, что значительно увеличивает количество транзакций, которые в конечном итоге могут быть завершены с доказательствами с нулевым разглашением.
Plonky 2 — это новый механизм доказательства от Polygon Zero, который использует рекурсивные ZK-SNARK для расширения транзакций. Рекурсивные SNARK расширяют процесс генерации доказательства, объединяя несколько доказательств в рекурсивное доказательство. Plonky 2 использует ту же технологию, чтобы сократить время, необходимое для создания новых доказательств блоков. Plonky 2 генерирует доказательства для тысяч транзакций параллельно, а затем рекурсивно объединяет их в доказательство блока, поэтому скорость генерации очень высокая. Обычный механизм доказательства пытается сгенерировать доказательство всего блока сразу, что еще менее эффективно. Кроме того, Plonky 2 также может генерировать доказательства на устройствах потребительского уровня, решая проблему централизации оборудования, часто связанную с доказательствами SNARK.
5. Сверление с нулевым разглашением или оптимистическое сверление
ZK-SNARK и ZK-STARK стали базовой инфраструктурой проектов расширения блокчейна, особенно решения Zero Knowledge Rollup. Накопительный пакет с нулевым разглашением относится к решению расширения второго уровня для Ethereum, которое использует технологию доказательства с нулевым разглашением для передачи всех вычислений в обработку вне цепочки для уменьшения перегрузки сети. Основное преимущество накопительного пакета с нулевым разглашением заключается в том, что он может значительно увеличить пропускную способность транзакций Ethereum, сохраняя при этом низкие комиссии за транзакции, и как только транзакция будет упакована в накопительный пакет, ее можно будет определить немедленно.
В дополнение к Zero Knowledge Rollup, текущие решения расширения L2 Ethereum также включают Optimistic Rollup. Транзакции, выполняемые в Optimistic Rollup, действительны и по умолчанию выполняются немедленно. Только когда мошенническая транзакция будет обнаружена (кто-то предоставит доказательства мошенничества), транзакция будет отменена. Таким образом, безопасность ниже, чем у накопительного пакета с нулевым разглашением. Чтобы предотвратить мошеннические транзакции, в Optimistic Rollup предусмотрен период проверки, после которого транзакция должна быть завершена. Это может привести к тому, что пользователям придется некоторое время ждать, прежде чем вернуть свои средства.
При первоначальной разработке EVM использование технологии доказательства с нулевым разглашением не рассматривалось. Виталик, основатель Ethereum, считает, что Zero Knowledge Rollup будет технически сложным в краткосрочной перспективе, но в конечном итоге победит Optimistic Rollup в войне за расширение. Ниже приводится сравнение накопительного пакета с нулевым разглашением и оптимистического накопительного пакета.
Источник: SUSS NiFT, ChatGPT
6. Каковы будущие перспективы технологии доказательства с нулевым разглашением?
Область технологии доказательства с нулевым разглашением находится в уникальном положении: в последние годы много усилий было направлено на развитие исследований в этой области, и многие результаты являются совершенно новыми в области криптографии и защищенных коммуникаций. Таким образом, академическому сообществу и сообществу разработчиков еще предстоит ответить на множество интересных вопросов. В то же время технология доказательства с нулевым разглашением используется в различных проектах, демонстрируя проблемы технологии с нулевым разглашением и расширяя ее требования.
Одной из областей, вызывающих обеспокоенность в отношении технологии доказательства с нулевым разглашением, является обсуждение постквантовой безопасности технологии доказательства с нулевым разглашением. Публично проверяемые SNARK (краткие неинтерактивные аргументы знаний) являются ключевым компонентом в области технологий с нулевым разглашением. Однако наиболее широко используемые публично проверяемые схемы SNARK не считаются квантовобезопасными. Примеры включают Groth 16, Sonic, Marlin, SuperSonic и Spartan. Эти решения основаны на математических задачах, которые можно эффективно решить с помощью квантовых компьютеров, что сильно ставит под угрозу их безопасность в постквантовом мире.
Мы обнаружили, что академическое сообщество активно ищет квантовобезопасные доказательства с нулевым разглашением, которые можно использовать для различных утверждений без этапа предварительной обработки. Текущие примеры современных квантовобезопасных доказательств с нулевым разглашением включают Ligero, Aurora, Fractal, Lattice Bulletproofs и LPK 22. Ligero, Aurora и Fractal основаны на хэш-функциях, а Lattice Bulletproofs и LKP 22 — на решетчатых функциях. Обе функции считаются квантовобезопасными. Стало тенденцией продвигать эти программы и повышать их эффективность.
Еще одно ожидание, которое мы возлагаем на будущее технологии с нулевым разглашением, — это ее способность противостоять атакам и зрелость кода, связанная с реализацией. Учитывая увеличение объема написанного кода, появятся более безопасные и проверенные библиотеки, а также лучшие практики для различных методов доказательства с нулевым разглашением. Конечно, в будущем появится больше распространенных ошибок, которые будут обнаружены и о них будет сообщено. Мы ожидаем, что эта область станет зрелой и широко распространенной благодаря усилиям по стандартизации протоколов и обеспечению совместимости между различными реализациями. Проект под названием ZKProof уже начал этим заниматься.
Еще одна тенденция, которая продолжит существовать в сообществе технологий с нулевым разглашением, — это увеличение работы над эффективными алгоритмами и, возможно, специальным оборудованием. В последние годы мы наблюдаем уменьшение размеров доказательств, а доказывающие и проверяющие становятся более эффективными. Достижения в области алгоритмов, специального оборудования и вычислительной оптимизации могут привести к более быстрым и масштабируемым реализациям.
Хотя эффективность существующих алгоритмов приносит пользу будущим пользователям технологии доказательства с нулевым разглашением, мы также ожидаем, что возможности доказательств с нулевым разглашением будут продолжать расширяться. В прошлом мы сталкивались со многими случаями реализации предварительно обработанных ZK-SNARK. Сейчас мы видим все больше и больше масштабируемых экземпляров ZK-SNARK. Кроме того, некоторые методы доказательства с нулевым разглашением используются больше из-за их простоты, чем из-за их возможностей с нулевым разглашением.
Наконец, еще одна тенденция в технологии доказательств с нулевым разглашением — это пересечение машинного обучения и доказательств с нулевым разглашением (ZKML). Идея требует обучения больших языковых моделей в многосторонней среде и использования методов с нулевым разглашением для проверки вычислений. Это очень полезно для современного искусственного интеллекта. Есть потенциал для появления проектов в этой области.
Заключение
Эта статья написана в соавторстве с членами Blockchain Security Alliance.Благодаря представлению этой статьи мы можем понять широкое применение, технические пути, тенденции развития и проблемы доказательства с нулевым разглашением в области блокчейна. Считается, что с развитием аппаратных технологий и криптографии доказательства с нулевым разглашением принесут в будущем еще больше прорывов, обеспечивая более быстрые и безопасные сервисы приложений для цифрового мира.
Об Альянсе экологической безопасности SUSS NiFT Blockchain
Альянс экологической безопасности блокчейна SUSS NiFT, созданный совместно Beosin и SUSS NiFT, ведущей международной компанией по безопасности блокчейнов, был инициирован рядом подразделений с разнообразным отраслевым опытом, включая университетские учреждения, компании, занимающиеся безопасностью блокчейнов, отраслевые ассоциации и службы финансовых технологий. провайдеры и т.д. В первую группу управляющих подразделений входят Beosin, SUSS NiFT, NUS AIDF, BAS, FOMO Pay, Onchain Custodian, Semisand, Coinhako, ParityBit и Huawei Cloud. В будущем члены Альянса безопасности будут работать вместе и сотрудничать, опираясь на мощь экологических партнеров, чтобы постоянно использовать свои технические преимущества для обеспечения безопасности глобальной экосистемы блокчейна. В то же время Совет Альянса приглашает больше людей, разбирающихся в областях, связанных с блокчейном, присоединиться и совместно защитить экологическую безопасность блокчейна.
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
Третья крупная технологическая инновация в истории развития блокчейна: применение технологии доказательства с нулевым разглашением
Первоначальный автор: Сингапурский университет социальных наук, узел инклюзивного финансирования SUSS, исследователь NiFT @Jesse_meta, исследователь Beosin @EatonAshton 2, исследователь безопасности с наименьшим авторитетом @kaplannie
Примечание. Эта статья представляет собой исследовательский отчет Альянса безопасности блокчейнов SUSS NiFT.
Независимо от того, хранится ли информация в Интернете или в офлайн-архивах, намеренная она или случайная, случаи утечки информации сегодня являются обычным явлением, о чем и говорить не приходится. Пока информация хранится централизованно, всегда существует риск единой точки атаки. Пока процесс проверки требует доверенной третьей стороны, будут существовать этические риски и неэффективность. Решение информационной безопасности является решающим и неотложным. Технология доказательства с нулевым разглашением данных позволяет пользователям выполнять проверку более эффективно и безопасно, сохраняя при этом свою конфиденциальность.
Если Биткойн — первое крупное изобретение, которое блокчейн привносит в реальный мир, предоставляя новый способ хранения стоимости, а смарт-контракты Эфириума — второе важное событие, раскрывающее потенциал инноваций, то применение доказательств с нулевым разглашением — это Крупнейшая Третья по величине технологическая инновация в истории развития блокчейна, обеспечивающая конфиденциальность и масштабируемость. Это не только важная часть экосистемы Web3, но и важная базовая технология, способная способствовать социальным изменениям.
В этой статье представлены сценарии применения, принципы работы, состояние разработки и будущие тенденции доказательства с нулевым разглашением с точки зрения нетехнического человека, чтобы позволить читателям без технического образования понять основные изменения, которые собираются принести доказательство с нулевым разглашением. приносить.
1. Что такое доказательство с нулевым разглашением?
Доказательство с нулевым разглашением (ZKP) — это математический протокол, впервые предложенный в статье 1985 года «Сложность знаний интерактивных доказательств», написанной в соавторстве с Шафи Гольдвассером, Сильвио Микали и Чарльзом Ракоффом. быть не раскрывать любую другую информацию. Верификатор не имеет доступа к секретной информации, на основе которой было создано доказательство. Позвольте мне привести вам пример, который поможет вам понять: я хочу доказать, что знаю чей-то номер телефона. Мне нужно только набрать номер телефона этого человека на глазах у всех, чтобы доказать этот факт, не раскрывая настоящий номер этого человека. Доказательства с нулевым разглашением данных обеспечивают эффективный и практически безрисковый способ обмена данными. Используя доказательства с нулевым разглашением, мы можем сохранить право собственности на данные, значительно улучшить защиту конфиденциальности и, надеемся, оставить утечку данных в прошлом.
Доказательство с нулевым разглашением имеет три характеристики:
Полнота
Если утверждение верно, честные проверяющие будут убеждены честными доказывающими. То есть то, что правильно, не может быть неправильным.
рациональность
Если утверждение ложно, в подавляющем большинстве случаев обманщик не сможет заставить честного проверяющего поверить в ложное утверждение. То есть то, что неправильно, не может быть правильным.
НУЛЕВЫЕ ЗНАНИЯ
Если утверждение истинно, проверяющий не может получить никакой дополнительной информации, кроме того, что утверждение истинно.
Доказательства с нулевым разглашением имеют очень небольшую вероятность возникновения разумных ошибок, то есть мошеннический доказывающий может заставить проверяющего поверить в неверное утверждение. Доказательство с нулевым разглашением — это вероятностное, а не детерминированное доказательство, но мы можем свести рациональную ошибку к незначительной с помощью некоторых методов.
2. Применение доказательства с нулевым разглашением
Двумя наиболее важными сценариями применения доказательства с нулевым разглашением являются конфиденциальность и масштабируемость.
2.1 Конфиденциальность
Доказательства с нулевым разглашением позволяют пользователям безопасно делиться необходимой информацией для получения товаров и услуг, не раскрывая личные данные, защищая их от хакеров и утечки личной информации. С постепенной интеграцией цифровой и физической областей функция защиты конфиденциальности с помощью доказательства с нулевым разглашением стала решающей для информационной безопасности в Web3 и даже за его пределами. Без доказательства с нулевым разглашением информация о пользователе будет существовать в доверенной сторонней базе данных и будет потенциально уязвима для хакерских атак. Первым примером применения доказательства с нулевым разглашением в блокчейне является конфиденциальная монета Zcash, которая используется для сокрытия деталей транзакции.
2.1.1 Защита и проверка идентификационной информации
В онлайн-действиях нам часто необходимо предоставить такую информацию, как имя, дата рождения, адрес электронной почты и сложные пароли, чтобы доказать, что мы являемся пользователями с законными разрешениями. Поэтому мы часто оставляем в сети конфиденциальную информацию, которую не хотим раскрывать. В настоящее время нередки звонки мошенников, называющие нас по именам, что показывает, что утечка личной информации очень серьезна.
Мы можем использовать технологию блокчейна, чтобы предоставить каждому человеку специальный зашифрованный цифровой идентификатор, содержащий личные данные. Этот цифровой идентификатор позволяет создать децентрализованную личность, и его невозможно подделать или изменить без ведома его владельца. Децентрализованная идентификация позволяет пользователям контролировать доступ к личным данным, подтверждать гражданство, не раскрывая паспортные данные, упрощать процесс аутентификации и уменьшать вероятность потери пользователями доступа из-за забытых паролей. Доказательства с нулевым разглашением создаются на основе общедоступных данных, которые могут подтвердить личность пользователя, и личных данных с информацией о пользователе, а также могут использоваться для проверки личности при доступе пользователей к услугам. Это не только упрощает громоздкий процесс проверки, улучшает взаимодействие с пользователем, но и позволяет избежать централизованного хранения пользовательской информации.
Кроме того, доказательства с нулевым разглашением также могут использоваться для создания частных систем репутации, позволяя сервисным агентствам проверять, соответствуют ли пользователи определенным стандартам репутации, не раскрывая свою личность. Пользователи могут анонимно экспортировать свою репутацию с таких платформ, как Facebook, Twitter и Github, маскируя при этом конкретную исходную учетную запись.
2.1.2 Анонимный платеж
Детали транзакций, оплаченных с помощью банковских карт, обычно видны нескольким сторонам, включая поставщиков платежных услуг, банки и правительства.
Криптовалюты могут позволять осуществлять платежи без участия третьих сторон, обеспечивая прямые одноранговые транзакции. Тем не менее, транзакции в основных публичных цепочках в настоящее время общедоступны. Если вы знаете адрес кошелька человека, вы можете в любой момент проверить баланс своего банковского счета, что может даже представлять угрозу личности и имуществу пользователя.
Доказательство с нулевым разглашением может обеспечить анонимные платежи на трех уровнях: монеты конфиденциальности, приложения конфиденциальности и публичные сети конфиденциальности. Монета конфиденциальности Zcash скрывает детали транзакции, включая отправителя, адрес получателя, тип актива, количество и время. Tornado Cash — это децентрализованное приложение на Ethereum, которое использует доказательство с нулевым разглашением для сокрытия деталей транзакций для обеспечения частных переводов (но также часто используется хакерами для отмывания денег). Aleo — это блокчейн L1, предназначенный для обеспечения функций конфиденциальности приложений на уровне протокола.
2.1.3 Честное поведение
Доказательства с нулевым разглашением могут способствовать честному поведению, сохраняя при этом конфиденциальность. Протокол может потребовать от пользователей предоставления доказательств с нулевым разглашением, чтобы доказать свое честное поведение. Из-за рациональности доказательств с нулевым разглашением (неправильное не может быть правильным), пользователи должны действовать честно в соответствии с требованиями протокола, прежде чем они смогут предоставить действительные доказательства.
MACI (Minimal Anti-Collusion Infrastructure) — это сценарий приложения, который способствует честности и предотвращает сговор во время онлайн-голосования или других форм принятия решений. Для достижения этой цели система использует пары ключей и технологию доказательства с нулевым разглашением. В MACI пользователи регистрируют свои открытые ключи в смарт-контракте и отправляют свои голоса в контракт посредством зашифрованных сообщений. Функция MACI по борьбе с сговором позволяет избирателям изменять свои открытые ключи, чтобы другие не могли узнать их выбор при голосовании. Координатор использует доказательство с нулевым разглашением в конце периода голосования, чтобы доказать, что он обработал все сообщения правильно, а окончательный результат голосования представляет собой сумму всех действительных голосов. Это обеспечивает честность и справедливость голосования.
2.1.4 Проверка личной информации
Когда мы хотим получить кредит, мы можем получить от компании цифровой сертификат о доходах, чтобы подать заявку на кредит. Легитимность этого доказательства легко проверить криптографически. Банк может использовать доказательство с нулевым разглашением, чтобы убедиться, что наш доход достигает необходимого минимума, но он не получит конфиденциальную конкретную информацию.
2.1.5 Сочетание машинного обучения для раскрытия потенциала личных данных
При обучении моделей машинного обучения обычно требуются большие объемы данных. Используя доказательства с нулевым разглашением, владельцы данных могут доказать, что их данные соответствуют требованиям для обучения модели, не раскрывая данные фактически. Это помогает использовать личные данные и монетизировать их.
Кроме того, доказательства с нулевым разглашением могут позволить создателям моделей доказать, что их модели соответствуют определенным показателям производительности, не раскрывая детали модели, чтобы предотвратить копирование или изменение их моделей другими.
2.2 Расширяемый
Поскольку число пользователей блокчейна увеличивается, в блокчейне требуется большой объем вычислений, что приводит к перегрузке транзакций. Некоторые блокчейны пойдут по пути расширения путем шардинга, но это потребует большого количества сложных модификаций базового уровня блокчейна, что может поставить под угрозу безопасность блокчейна. Другое, более осуществимое решение — пойти по маршруту ZK-Rollup, использовать проверяемые вычисления, передать вычисления на аутсорсинг объектам другой цепочки для выполнения, а затем отправить доказательство с нулевым разглашением и проверяемые результаты в основную цепочку для проверки. Доказательство с нулевым разглашением гарантирует подлинность транзакции. Основной цепочке необходимо только обновить результат до состояния. Нет необходимости хранить детали или воспроизводить вычисления, а также нет необходимости ждать, пока другие обсудят подлинность транзакции. транзакции, что значительно повышает эффективность и масштабируемость. Разработчики могут использовать доказательства с нулевым разглашением для разработки децентрализованных приложений с легкими узлами, которые могут работать на обычном оборудовании, таком как мобильные телефоны, что в большей степени способствует распространению Web3 в массы.
Расширение доказательства с нулевым разглашением может применяться как к сети первого уровня, такой как протокол Mina, так и к ZK-агрегатам сети второго уровня.
3. Как работает доказательство с нулевым разглашением
Дмитрий Лаверенов (2019) делит структуры доказательства с нулевым разглашением на интерактивные и неинтерактивные.
3.1 Интерактивное доказательство с нулевым разглашением
Базовая форма интерактивного доказательства с нулевым разглашением состоит из трех этапов: доказательство, оспаривание и ответ.
Доказательства: Скрытая секретная информация является доказательством доказывающего. Эти доказательства ставят ряд вопросов, на которые правильно ответить может только тот, кто знает информацию. Доказывающая начинает случайным образом выбирать вопросы и отправляет рассчитанные ответы проверяющему для доказательства.
Задача: проверяющий случайным образом выбирает другой вопрос из набора и просит проверяющего ответить на него.
Ответ: Доказывающая принимает вопрос, вычисляет ответ и возвращает результат проверяющему. Ответ доказывающего позволяет проверяющему проверить, знает ли доказывающий доказательства.
Этот процесс можно повторять несколько раз, пока вероятность того, что доказывающий угадает правильный ответ, не зная секретной информации, не станет достаточно низкой. Приведем упрощенный математический пример: если вероятность того, что доказывающий сможет угадать правильный ответ, не зная секретной информации, равна 1/2, а взаимодействие повторяется десять раз, вероятность того, что доказывающий каждый раз попадет в цель, составляет всего 9,7 из 10 000. Если вы хотите проверить Вероятность того, что человек ошибочно подтвердит ложную сертификацию, крайне мала.
3.2 Неинтерактивное доказательство с нулевым разглашением
Интерактивные доказательства с нулевым разглашением имеют ограничения. С одной стороны, доказывающая и проверяющая сторона должны существовать одновременно и выполнять повторные проверки. С другой стороны, каждое вычисление нового доказательства требует, чтобы доказывающая и проверяющая пропустили набор информации. Доказательство не может быть повторно использовано при независимой проверке.
Чтобы преодолеть ограничения интерактивных доказательств с нулевым разглашением, Мануэль Блюм, Пол Фельдман и Сильвио Микали предложили неинтерактивные доказательства с нулевым разглашением, в которых доказывающий и проверяющий используют общий ключ, и требуется только один раунд проверки. чтобы доказательство с нулевым разглашением оказалось более эффективным. Доказывающая сторона вычисляет секретную информацию с помощью специального алгоритма для создания доказательства с нулевым разглашением и отправляет его проверяющему. Верификатор использует другой алгоритм, чтобы проверить, знает ли проверяющий секретную информацию. Как только это доказательство с нулевым разглашением будет создано, любой, у кого есть общий ключ и алгоритм проверки, сможет его проверить.
Неинтерактивное доказательство с нулевым разглашением является крупным прорывом в технологии доказательства с нулевым разглашением и способствует развитию современных систем доказательства с нулевым разглашением. Основными методами являются ЗК-СНАРК и ЗК-СТАРК.
4. Основные технические пути доказательства с нулевым разглашением
Alchemy (2022) делит технические пути доказательства с нулевым разглашением на ZK-SNARK, ZK-STARK и рекурсивный ZK-SNARK.
###4.1 ЗК-СНАРК
ZK-SNARK — это краткое неинтерактивное доказательство с нулевым разглашением.
Чтобы публичная цепочка могла гарантировать правильность транзакций, выполняемых в сети, этого необходимо добиться, заставляя другие компьютеры (узлы) повторно выполнять каждую транзакцию. Однако этот метод заставит каждый узел повторно выполнять каждую транзакцию, что замедлит работу сети и ограничит масштабируемость. Узлы также должны хранить данные транзакций, в результате чего размер блокчейна растет в геометрической прогрессии.
Из-за этих ограничений в игру вступает ZK-SNARK. Он может доказать правильность вычислений, выполненных вне цепочки, не требуя от узлов повторять каждый шаг вычислений. Это также устраняет необходимость в узлах хранить избыточные данные транзакций и увеличивает пропускную способность сети.
Использование SNARK для проверки вычислений вне цепочки приводит к кодированию вычислений в математическое выражение для формирования доказательства достоверности. Верификатор проверяет правильность доказательства. Если доказательство проходит все проверки, лежащее в его основе вычисление считается действительным. Размер доказательства достоверности во много раз меньше, чем вычисление, которое оно проверяет, поэтому мы называем SNARK краткими.
Большинство накопительных пакетов ZK, использующих ZK-SNARK, выполняют следующие шаги.
Пользователь L2 подписывает транзакцию и отправляет ее верификатору.
Верификатор использует криптографию для сжатия нескольких транзакций для создания соответствующих сертификатов действительности (SNARK).
Смарт-контракт в цепочке L1 проверяет сертификат действительности и определяет, публикуется ли этот пакет транзакций в основной цепочке.
Стоит отметить, что ZK-SNARK требует доверенных настроек. На этом этапе генератор ключей использует программу и секретный параметр для генерации двух пригодных для использования открытых ключей: один для создания доказательства, а другой для проверки доказательства. Эти два открытых ключа должны генерировать общедоступные параметры только один раз во время церемонии доверенной установки, и их можно использовать несколько раз сторонами, желающими участвовать в протоколе с нулевым разглашением. Пользователям необходимо верить, что участники ритуалов доверенной настройки не являются злыми, и нет возможности оценить честность участников. Знание секретных параметров может привести к созданию фальшивых доказательств и обмануть проверяющего, что создает потенциальную угрозу безопасности. В настоящее время есть исследователи, изучающие решения ZK-SNARK, которые не требуют предположений о доверии.
Преимущество
Объединение ZK считается более безопасным решением для расширения, чем объединение OP, поскольку ZK-SNARK использует усовершенствованный механизм безопасности шифрования, который затрудняет обман проверяющих и вредоносное поведение.
ZK-SNARK уменьшает объем вычислений в нижней части Ethereum, уменьшая перегрузку основной сети.Вычисления вне цепочки разделяют транзакционные издержки, обеспечивая более высокую скорость транзакций.
Небольшой размер доказательств SNARK облегчает их проверку в основной цепочке, а это означает, что плата за газ для проверки транзакций вне цепочки ниже, что снижает затраты для пользователей.
ограничения
Большую часть времени полагаться на надежную настройку. Это противоречит первоначальному намерению блокчейна уничтожить доверие.
Генерация доказательств достоверности с помощью ZK-SNARK — это трудоемкий процесс, и проверяющий должен инвестировать в специализированное оборудование. Это оборудование дорогое, и лишь немногие люди могут его себе позволить, поэтому процесс проверки ZK-SNARK сильно централизован.
Проекты с использованием ЗК СНАРК
Полигон Гермез
Polygon приобрела Hermez за 250 миллионов долларов США в 2021 году, что стало первым комплексным слиянием и приобретением двух сетей блокчейнов. Технология и инструменты ZK, которые Hermez привнес в быстро растущую базу пользователей Polygon, позволили Polygon получить поддержку в разработке zkEVM. Hermez 1.0 — это платежная платформа, которая выполняет пакет транзакций вне сети, позволяя пользователям легко переносить токены ERC-20 с одной учетной записи Hermez на другую учетную запись Hermez со скоростью до 2000 транзакций в секунду.
Hermez 2.0 действует как zkEVM с нулевым разглашением для прозрачного выполнения транзакций Ethereum, включая смарт-контракты с проверкой с нулевым разглашением. Он полностью совместим с Ethereum и не требует большого количества изменений в коде смарт-контракта, что позволяет разработчикам удобно развертывать проекты L1 в Polygon Hermez. Hermez 1.0 использует доказательства SNARK, а версия 2.0 использует как доказательства SNARK, так и доказательства STARK. В версии 2.0 STARK-proof используется для подтверждения достоверности транзакций вне сети. Однако стоимость проверки STARK-доказательства в основной цепочке очень высока, поэтому для проверки STARK вводится SNARK-доказательство.
zkSync
zkSync 1.0, запущенный Matter Labs в 2020 году, не поддерживает смарт-контракты и в основном используется для транзакций или переводов. ZkSync 2.0, поддерживающий смарт-контракты, будет публично запущен в сети в марте 2023 года.
ZkSync компилирует исходный код смарт-контракта Solidity на Ethereum в Yul для достижения совместимости с EVM. Yul — это промежуточный язык, который можно компилировать в байт-код для разных EVM. Код Yul можно перекомпилировать с помощью структуры компилятора LLVM в собственный, совместимый со схемой набор байт-кода, разработанный для zkEVM от zkSync. Такой подход устраняет необходимость выполнения доказательств zk с помощью кода более высокого уровня для всех этапов выполнения EVM, что упрощает децентрализацию процесса доказательства при сохранении высокой производительности. В будущем поддержка Rust, Java или других языков может быть добавлена путем создания новых интерфейсов компилятора, что повысит гибкость архитектуры zkEVM и позволит привлечь больше разработчиков.
Ацтек
Aztec — это первый гибридный zkRollup, позволяющий выполнять как публичные, так и частные смарт-контракты в одной среде. Это среда выполнения с нулевым разглашением, а не zkEVM. Конфиденциальность достигается за счет объединения публичных и частных исполнений в единый гибридный пакет, таких как частные транзакции для публичных AMM, частные разговоры в публичных играх, частное голосование для публичных DAO и многое другое.
4.2 ЗК-СТАРК
ZK-STARK не требует доверенной настройки. ZK-STARK — это аббревиатура от «Масштабируемый прозрачный аргумент знаний с нулевым разглашением». По сравнению с ZK-SNARK, ZK-STARK обладает лучшей масштабируемостью и прозрачностью.
Преимущество
ZK-STARK публично проверяет случайность для замены доверенных настроек, уменьшая зависимость от участников и повышая безопасность протокола.
Несмотря на то, что сложность базовых вычислений возрастает экспоненциально, ZK-STARK по-прежнему обеспечивает меньшее время доказательства и проверки, а не линейный рост, как ZK-SNARK.
ZK-STARK использует для шифрования устойчивые к коллизиям хеш-значения вместо схемы эллиптических кривых, используемой в ZK-SNARK, которая устойчива к атакам квантовых вычислений.
Ограничения
Размер доказательства ZK-STARK больше, что делает проверку в основной сети более успешной.
ZK-SNARK — это первое практическое применение доказательства с нулевым разглашением в блокчейне, поэтому в большинстве накопительных пакетов ZK используется ZK-SNARK, который имеет более зрелые системы и инструменты разработки. Хотя ZK-STARK также поддерживается Ethereum Foundation, уровень его внедрения недостаточен, и базовые инструменты нуждаются в улучшении.
**В каких проектах используется ZK-STARK? **
Полигон Миден
Polygon Miden, решение для масштабирования на базе Ethereum L2, использует технологию zk-STARK для интеграции большого количества транзакций L2 в одну транзакцию Ethereum, тем самым увеличивая вычислительную мощность и снижая транзакционные издержки. Без шардинга Polygon Miden может сгенерировать блок за 5 секунд, а его TPS может достигать более 1000. После шардинга TPS может достигать 10 000. Пользователи могут вывести средства с Polygon Miden на Ethereum всего за 15 минут. Основная функция Polygon Miden — это полная по Тьюрингу виртуальная машина на базе STARK — Miden VM, которая упрощает формальную проверку контрактов.
СтаркЭкс и СтаркНет
StarkEx — это платформа для лицензирования расширенных решений, адаптированных для конкретных приложений. Проекты могут использовать StarkEx для выполнения недорогих вычислений вне сети и создания доказательств STARK, подтверждающих правильность выполнения. Такое доказательство содержит 12 000–500 000 транзакций. Наконец, доказательство отправляется валидатору STARK в цепочке, и обновление статуса принимается после проверки правильности. Приложения, развернутые на StarkEx, включают бессрочные опционы dYdX, NFT L2 Immutable, рынок торговли спортивными цифровыми картами Sorare и многоцепочный агрегатор DeFi rhino.fi.
StarkNet — это не требующая разрешений L2, где каждый может развертывать смарт-контракты, разработанные на языке Cairo. Контракты, развернутые в StarkNet, могут взаимодействовать друг с другом для создания новых составных протоколов. В отличие от StarkEx, где за отправку транзакций отвечают приложения, секвенсор StarkNet группирует транзакции и отправляет их на обработку и сертификацию. StarkNet больше подходит для протоколов, которым необходимо синхронно взаимодействовать с другими протоколами или которые выходят за рамки приложений StarkEx. По мере развития StarkNet приложения на базе StarkEx можно будет портировать в StarkNet и использовать возможность компоновки.
Сравнение ZK-SNARK и ZK-STARK
4.3 Рекурсивный ZK-SNARK
Обычные накопительные пакеты ZK могут обрабатывать только один блок транзакций, что ограничивает количество транзакций, которые они могут обрабатывать. Рекурсивный ZK-SNARK может проверять более одного блока транзакций, объединяя SNARK, сгенерированные разными блоками L2, в единый сертификат достоверности и отправляя его в цепочку L1. Как только он-чейн-контракт L1 принимает представленное доказательство, все эти транзакции становятся действительными, что значительно увеличивает количество транзакций, которые в конечном итоге могут быть завершены с доказательствами с нулевым разглашением.
Plonky 2 — это новый механизм доказательства от Polygon Zero, который использует рекурсивные ZK-SNARK для расширения транзакций. Рекурсивные SNARK расширяют процесс генерации доказательства, объединяя несколько доказательств в рекурсивное доказательство. Plonky 2 использует ту же технологию, чтобы сократить время, необходимое для создания новых доказательств блоков. Plonky 2 генерирует доказательства для тысяч транзакций параллельно, а затем рекурсивно объединяет их в доказательство блока, поэтому скорость генерации очень высокая. Обычный механизм доказательства пытается сгенерировать доказательство всего блока сразу, что еще менее эффективно. Кроме того, Plonky 2 также может генерировать доказательства на устройствах потребительского уровня, решая проблему централизации оборудования, часто связанную с доказательствами SNARK.
5. Сверление с нулевым разглашением или оптимистическое сверление
ZK-SNARK и ZK-STARK стали базовой инфраструктурой проектов расширения блокчейна, особенно решения Zero Knowledge Rollup. Накопительный пакет с нулевым разглашением относится к решению расширения второго уровня для Ethereum, которое использует технологию доказательства с нулевым разглашением для передачи всех вычислений в обработку вне цепочки для уменьшения перегрузки сети. Основное преимущество накопительного пакета с нулевым разглашением заключается в том, что он может значительно увеличить пропускную способность транзакций Ethereum, сохраняя при этом низкие комиссии за транзакции, и как только транзакция будет упакована в накопительный пакет, ее можно будет определить немедленно.
В дополнение к Zero Knowledge Rollup, текущие решения расширения L2 Ethereum также включают Optimistic Rollup. Транзакции, выполняемые в Optimistic Rollup, действительны и по умолчанию выполняются немедленно. Только когда мошенническая транзакция будет обнаружена (кто-то предоставит доказательства мошенничества), транзакция будет отменена. Таким образом, безопасность ниже, чем у накопительного пакета с нулевым разглашением. Чтобы предотвратить мошеннические транзакции, в Optimistic Rollup предусмотрен период проверки, после которого транзакция должна быть завершена. Это может привести к тому, что пользователям придется некоторое время ждать, прежде чем вернуть свои средства.
При первоначальной разработке EVM использование технологии доказательства с нулевым разглашением не рассматривалось. Виталик, основатель Ethereum, считает, что Zero Knowledge Rollup будет технически сложным в краткосрочной перспективе, но в конечном итоге победит Optimistic Rollup в войне за расширение. Ниже приводится сравнение накопительного пакета с нулевым разглашением и оптимистического накопительного пакета.
Источник: SUSS NiFT, ChatGPT
6. Каковы будущие перспективы технологии доказательства с нулевым разглашением?
Область технологии доказательства с нулевым разглашением находится в уникальном положении: в последние годы много усилий было направлено на развитие исследований в этой области, и многие результаты являются совершенно новыми в области криптографии и защищенных коммуникаций. Таким образом, академическому сообществу и сообществу разработчиков еще предстоит ответить на множество интересных вопросов. В то же время технология доказательства с нулевым разглашением используется в различных проектах, демонстрируя проблемы технологии с нулевым разглашением и расширяя ее требования.
Одной из областей, вызывающих обеспокоенность в отношении технологии доказательства с нулевым разглашением, является обсуждение постквантовой безопасности технологии доказательства с нулевым разглашением. Публично проверяемые SNARK (краткие неинтерактивные аргументы знаний) являются ключевым компонентом в области технологий с нулевым разглашением. Однако наиболее широко используемые публично проверяемые схемы SNARK не считаются квантовобезопасными. Примеры включают Groth 16, Sonic, Marlin, SuperSonic и Spartan. Эти решения основаны на математических задачах, которые можно эффективно решить с помощью квантовых компьютеров, что сильно ставит под угрозу их безопасность в постквантовом мире.
Мы обнаружили, что академическое сообщество активно ищет квантовобезопасные доказательства с нулевым разглашением, которые можно использовать для различных утверждений без этапа предварительной обработки. Текущие примеры современных квантовобезопасных доказательств с нулевым разглашением включают Ligero, Aurora, Fractal, Lattice Bulletproofs и LPK 22. Ligero, Aurora и Fractal основаны на хэш-функциях, а Lattice Bulletproofs и LKP 22 — на решетчатых функциях. Обе функции считаются квантовобезопасными. Стало тенденцией продвигать эти программы и повышать их эффективность.
Еще одно ожидание, которое мы возлагаем на будущее технологии с нулевым разглашением, — это ее способность противостоять атакам и зрелость кода, связанная с реализацией. Учитывая увеличение объема написанного кода, появятся более безопасные и проверенные библиотеки, а также лучшие практики для различных методов доказательства с нулевым разглашением. Конечно, в будущем появится больше распространенных ошибок, которые будут обнаружены и о них будет сообщено. Мы ожидаем, что эта область станет зрелой и широко распространенной благодаря усилиям по стандартизации протоколов и обеспечению совместимости между различными реализациями. Проект под названием ZKProof уже начал этим заниматься.
Еще одна тенденция, которая продолжит существовать в сообществе технологий с нулевым разглашением, — это увеличение работы над эффективными алгоритмами и, возможно, специальным оборудованием. В последние годы мы наблюдаем уменьшение размеров доказательств, а доказывающие и проверяющие становятся более эффективными. Достижения в области алгоритмов, специального оборудования и вычислительной оптимизации могут привести к более быстрым и масштабируемым реализациям.
Хотя эффективность существующих алгоритмов приносит пользу будущим пользователям технологии доказательства с нулевым разглашением, мы также ожидаем, что возможности доказательств с нулевым разглашением будут продолжать расширяться. В прошлом мы сталкивались со многими случаями реализации предварительно обработанных ZK-SNARK. Сейчас мы видим все больше и больше масштабируемых экземпляров ZK-SNARK. Кроме того, некоторые методы доказательства с нулевым разглашением используются больше из-за их простоты, чем из-за их возможностей с нулевым разглашением.
Наконец, еще одна тенденция в технологии доказательств с нулевым разглашением — это пересечение машинного обучения и доказательств с нулевым разглашением (ZKML). Идея требует обучения больших языковых моделей в многосторонней среде и использования методов с нулевым разглашением для проверки вычислений. Это очень полезно для современного искусственного интеллекта. Есть потенциал для появления проектов в этой области.
Заключение
Эта статья написана в соавторстве с членами Blockchain Security Alliance.Благодаря представлению этой статьи мы можем понять широкое применение, технические пути, тенденции развития и проблемы доказательства с нулевым разглашением в области блокчейна. Считается, что с развитием аппаратных технологий и криптографии доказательства с нулевым разглашением принесут в будущем еще больше прорывов, обеспечивая более быстрые и безопасные сервисы приложений для цифрового мира.
Об Альянсе экологической безопасности SUSS NiFT Blockchain
Альянс экологической безопасности блокчейна SUSS NiFT, созданный совместно Beosin и SUSS NiFT, ведущей международной компанией по безопасности блокчейнов, был инициирован рядом подразделений с разнообразным отраслевым опытом, включая университетские учреждения, компании, занимающиеся безопасностью блокчейнов, отраслевые ассоциации и службы финансовых технологий. провайдеры и т.д. В первую группу управляющих подразделений входят Beosin, SUSS NiFT, NUS AIDF, BAS, FOMO Pay, Onchain Custodian, Semisand, Coinhako, ParityBit и Huawei Cloud. В будущем члены Альянса безопасности будут работать вместе и сотрудничать, опираясь на мощь экологических партнеров, чтобы постоянно использовать свои технические преимущества для обеспечения безопасности глобальной экосистемы блокчейна. В то же время Совет Альянса приглашает больше людей, разбирающихся в областях, связанных с блокчейном, присоединиться и совместно защитить экологическую безопасность блокчейна.