Эта статья предоставлена сообществом. Автор — Кенни Ли, соучредитель Manta Network, программируемого протокола конфиденциальности уровня 1, основанного на технологии доказательства с нулевым разглашением.
Мнения в этой статье принадлежат автору/участнику и не обязательно отражают точку зрения Binance Academy.
ТЛ;ДР
Доказательство с нулевым разглашением (ZKP) — это криптографическая технология, которая позволяет проверять достоверность части информации без раскрытия самой информации. Это становится все более важной технологией в блокчейне, криптовалюте и децентрализованных финансах (DeFi) для повышения конфиденциальности и безопасности.
Многие проекты DeFi уже используют ZKP, чтобы обеспечить пользователям лучшую конфиденциальность и безопасность таких услуг, как кредитование, заимствование и торговля. Ряд блокчейнов уровня 1 добавляют объединения на основе ZKP или zkEVM. Ожидается, что доказательства с нулевым разглашением будут играть все более важную роль в мире блокчейна и Web3, поскольку их приложения, как ожидается, получат более широкое распространение.
Как работает доказательство с нулевым разглашением?
Доказательство с нулевым разглашением — это метод, с помощью которого одна сторона (доказывающая) может доказать другой стороне (проверяющей), что утверждение верно, без раскрытия какой-либо дополнительной информации. Это особенно полезно, когда информация конфиденциальна и проверяющий не хочет, чтобы проверяющий имел к ней доступ.
Доказывающая предоставляет математическое доказательство, которое могут создать только они, а проверяющая может использовать это доказательство для проверки истинности утверждения. Однако они не могут использовать доказательство для восстановления исходной информации.
Представьте себе туннель с двумя входами: А и Б. Там есть запертая дверь с секретным кодом, блокирующая единственный путь и не позволяющая людям пройти по туннелю от одного конца до другого (от А до Б). Вы знаете секретный код и хотите продать его миссис X, которая хочет получить доступ к туннелю.
Вы хотите, чтобы она заплатила авансом, прежде чем вы раскроете ей код, но сначала она хочет, чтобы вы доказали, что действительно знаете код. В этом случае она может сделать это, стоя перед туннелем и наблюдая, как вы входите в один из входов и выходите из другого. Таким образом, она будет удовлетворена тем, что вы действительно знаете секретный код.
Расширенный пример доказательства с нулевым разглашением
Представьте, что у вас есть друг, который не различает красный и синий цвета. У вас на столе два шара: красный и синий. Однако ваш друг не верит, что шарики можно отличить друг от друга. Вы хотите доказать, что они разного цвета, не раскрывая при этом, что у вас есть красный и синий шар. На самом деле, вы вообще не хотите раскрывать никакой информации о том, как вы их различаете.
Так как же нам доказать, что их можно различить, не раскрывая при этом никаких знаний о процессе идентификации или определении характеристик? Ответ прост. Вы просите друга держать два мяча за спиной, прежде чем показать один. Затем они кладут мяч себе за спину и случайным образом выбирают (50/50) один из двух, чтобы показать его снова. Обратите внимание: ваш друг всегда будет знать, поменял ли он мяч.
Затем ваш друг спросит вас: «Мяч поменялся?» прежде чем подтвердить достоверность вашего ответа. После правильного ответа ваш друг может заподозрить, что вы догадались. Они просят вас сделать это еще пять раз, а это означает, что вероятность того, что вы угадаете правильно каждый раз в эксперименте, будет равна:
Шансы кажутся небольшими! Для уверенности вы и ваш друг повторите процесс 15 раз. Шансы на то, что вы правильно угадаете, будут следующими:
Вы можете быть почти уверены, что на данный момент доказательство верно. Если вы и ваш друг повторите эксперимент бесконечное количество раз, вероятность того, что вы каждый раз правильно угадаете, будет стремиться к нулю.
Таким образом, вы доказали своему другу, что шары различимы, при этом ваш друг не знает, как это делается. Однако он может с уверенностью принять это открытие.
Зачем использовать доказательства с нулевым разглашением?
Популярность доказательств с нулевым разглашением в блокчейне и криптографии обусловлена растущим спросом на конфиденциальность и безопасность цифровых транзакций. С развитием технологии блокчейна и криптовалюты растет потребность в способе проверки транзакций без раскрытия конфиденциальной информации — потребность, которую могут удовлетворить ZKP.
В последние годы доказательства с нулевым разглашением привлекли все большее внимание и интерес: было запущено множество протоколов, использующих ZKP, а крупные блокчейны создали накопительные пакеты с нулевым разглашением. Явный признак популярности доказательства с нулевым разглашением был замечен на конференции DevCon 2022, где более 20% всех выступлений было посвящено этой технологии.
Ключевые события
Одним из ключевых достижений в области доказательств с нулевым разглашением является более широкое использование zk-SNARK, особого типа ZKP. zk-SNARK широко используются в различных приложениях DeFi, таких как транзакции с частными токенами и защищенное кредитование и заимствование. Еще одним важным достижением в области доказательств с нулевым разглашением является повышенное внимание к масштабируемости и производительности с помощью zk-rollups.
zk-СНАРК
Краткий неинтерактивный аргумент знания с нулевым разглашением (zk-SNARKs) — это особый тип доказательства с нулевым разглашением, который позволяет проверить утверждение без раскрытия какой-либо информации о самом утверждении.
zk-SNARK уже использовались в таких приложениях, как Zcash и платежная система на основе блокчейна JP Morgan Chase. Он также использовался как способ безопасной аутентификации клиентов на серверах.
Zk-роллапы
Zk-rollups — это решение масштабирования для сетей блокчейнов, которое облегчает объединение нескольких транзакций в одну, более крупную транзакцию, которая затем записывается в блокчейн. Например, в 2022 году BNB Chain запустила тестовую сеть zkBNB, построенную на архитектуре zk-rollup.
zkBNB может объединять сотни транзакций в один пакет вне сети и генерировать криптографическое доказательство действительности всех транзакций. zk-rollups обеспечивает баланс между масштабируемостью и безопасностью и подходит для крупномасштабных настроек с низкой задержкой.
Варианты использования доказательств с нулевым разглашением
Доказательства с нулевым разглашением имеют множество вариантов использования, некоторые из которых уже реализованы; ожидается, что другие станут реальностью в будущем. Некоторые основные случаи использования ZKP включают в себя:
Цифровая проверка личности
Доказательства с нулевым разглашением могут использоваться для проверки личности пользователей без раскрытия какой-либо конфиденциальной личной информации. Это может быть полезно в таких приложениях, как системы цифрового голосования, где необходимо проверять личность избирателей без ущерба для их анонимности.
Транзакции с сохранением конфиденциальности
Одним из наиболее популярных вариантов использования доказательств с нулевым разглашением в криптографии является обеспечение транзакций, сохраняющих конфиденциальность. Например, децентрализованное приложение MantaPay (DApp) от Manta Network использует ZKP, чтобы пользователи могли совершать транзакции на децентрализованной бирже (DEX), не раскрывая свою личность или детали транзакции. Это позволяет пользователям сохранять конфиденциальность, сохраняя при этом возможность использовать платформу для транзакций.
Защищенные транзакции
Zcash — это криптовалюта, которая использует доказательства с нулевым разглашением для обеспечения защищенных транзакций. В таких транзакциях адреса отправителя и получателя, а также суммы транзакций скрываются от публичного блокчейна, обеспечивая дополнительную конфиденциальность для пользователей.
Токенизация и проверка владения
Доказательства с нулевым разглашением также можно использовать для токенизации активов и проверки их права собственности. Например, собственность может быть токенизирована, и любая сторона может подтвердить ее право собственности, не раскрывая публично никакой другой информации.
Глобальное соответствие
В некоторых странах действуют строгие правила сбора и обмена финансовой информацией, соблюдать которые децентрализованным платформам может быть сложно. Доказательства с нулевым разглашением могут использоваться для обмена необходимой информацией с регулирующими органами, сохраняя при этом ее конфиденциальность от других сторон.
Это может помочь преодолеть разрыв между децентрализованными платформами и традиционными финансовыми учреждениями, что облегчит DeFi соблюдение правил в различных юрисдикциях.
Будущее доказательств с нулевым разглашением в блокчейне
Доказательства с нулевым разглашением, вероятно, приведут к новым технологическим инновациям в будущем. Некоторые будущие разработки, связанные с ZKP, на которые стоит обратить внимание, включают:
Межсетевые уровни конфиденциальности
Поскольку экосистемы блокчейна и DeFi продолжают расти и развиваться, растет потребность в совместимости различных сетей блокчейнов. Межсетевые уровни конфиденциальности позволят проводить транзакции в разных сетях блокчейнов, сохраняя при этом конфиденциальность участвующих сторон.
zk-STARKs
Еще одна область, на которую следует обратить внимание, — это более широкое использование zk-STARK (масштабируемый прозрачный аргумент знания с нулевым разглашением), нового типа доказательства с нулевым разглашением, которое считается более эффективным и безопасным, чем zk-SNARK. Еще одним преимуществом zk-STARK перед zk-SNARK является то, что первые быстрее проверяются и не требуют доверенной настройки.
Удобные наборы инструментов
Технология доказательства с нулевым разглашением может быть сложной, и не каждая команда разработчиков обладает опытом в этой конкретной области криптографии. Удобные для пользователя наборы инструментов ZKP могут помочь преодолеть этот разрыв и облегчить разработчикам разного опыта использование этой технологии.
Ограничения доказательств с нулевым разглашением
Доказательства с нулевым разглашением представляют собой уникальный метод проверки правдивости информации при сохранении конфиденциальности, но они не дают 100% гарантии. Хотя вероятность проверки, когда доказывающий лжет, незначительна, пользователи должны знать, что ZKP не являются пуленепробиваемыми.
Кроме того, алгоритмы, используемые для доказательств с нулевым разглашением, требуют интенсивных вычислительных ресурсов. В некоторых типах ZKP необходимы интенсивные вычисления, поскольку они требуют большого количества взаимодействий между проверяющими и проверяющими. В других алгоритмы чрезвычайно интенсивны в вычислительном отношении, что потенциально может ограничить возможности применения ZKP.
Заключительные мысли
Доказательства с нулевым разглашением быстро привлекают внимание из-за их уникальных свойств сохранения конфиденциальности и потенциала масштабирования. Растущее применение этой технологии в блокчейне, криптовалюте и DeFi, вероятно, принесет больше инновационных услуг, которые принесут большую пользу пользователям. Ожидается, что доказательства с нулевым разглашением сыграют решающую роль в создании экосистем DApp, которые будут более безопасными, конфиденциальными и эффективными.
Дальнейшее чтение
Объяснение zk-SNARK и zk-STARK
Решения для масштабирования уровня 1 и уровня 2 блокчейна