Интерпретация доказательств с нулевым разглашением

Эта статья включает следующее: 1. Что такое доказательство с нулевым разглашением? 2. Зачем нужны доказательства с нулевым разглашением? 3. Сценарии применения доказательства с нулевым разглашением. 4. Как работают доказательства с нулевым разглашением. 5. Классификация и случаи применения доказательств с нулевым разглашением. 6. Недостатки доказательств с нулевым разглашением.

ЧАСТЬ.01

Что такое доказательство с нулевым разглашением

**Доказательство с нулевым разглашением (Zero-Knowledge Proof) было предложено С.Гольдвассером, С.Микали и К.Ракоффом в начале 1980-х годов. Это относится к способности доказывающего убедить проверяющего в правильности определенного утверждения, не предоставляя проверяющему никакой полезной информации. **

Чтобы привести простой пример, Пафф сказал, что он шеф-повар и может готовить блюда китайской, корейской и итальянской кухни. Моя мать выразила недоверие, потому что я не приготовил ни одной еды дома. Так как я могу доказать, что могу готовить в это время?

Я могу попросить маму посмотреть, как я заканчиваю обедать на кухне, и доказать, что я действительно умею готовить. Но я не хочу, чтобы мама увидела, как я устраиваю беспорядок на кухне во время готовки, а то меня снова будут придирать, так что мне делать? Я пошла на кухню одна, а родители ждали снаружи.После того, как я закончила готовить и собрала вещи, я вынесла посуду. Это еще раз доказывает, что я умею готовить. Что касается того, какие ингредиенты я использовал, какие приправы добавлял, и насколько грязной была кухня во время процесса, мне это не нужно.Пока моя мама знает, что я могу приготовить еду, это докажет, что я не врущий.

Проще говоря: доказательства с нулевым разглашением пытаются установить доверие между двумя сторонами с минимальным объемом передаваемой информации. Не раскрывая дополнительной информации, одна сторона (доказывающая, доказывающая) может доказать другой стороне (верификатору, верификатору), что одна вещь верна.

ЧАСТЬ.02

Зачем вам нужно доказательство с нулевым разглашением

Защитите личные данные

Мошеннические продавцы хотят собрать как можно больше пользовательских данных, и некоторые квитанции, которые не имеют ничего общего с их бизнесом, также запрашивают у пользователей разрешения (на самом деле их ненавижу). Они помещают собранную личную информацию пользователя (PII) в централизованную базу данных.Эти базы данных очень уязвимы для атак.В случае атаки происходит утечка личной идентификационной информации, что приведет к различным проблемам с мошенничеством.

Аутентификация

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

Вычислительное сжатие и расширение блокчейна

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

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

ЧАСТЬ.03

Сценарий применения доказательства с нулевым разглашением

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

Анонимный платеж

Криптовалютные транзакции публично видны в публичной цепочке. Пользователи совершают транзакции анонимно, но также связаны с реальными личностями (например, путем включения адресов ETH в свои профили в Twitter или GitHub), или их реальные личности могут быть получены с помощью анализа данных в сети и вне сети.

Существуют специальные «монеты конфиденциальности», предназначенные для полностью анонимных транзакций. Примеры включают Zcash и Monero, которые маскируют детали транзакции, включая адреса отправителя/получателя, тип актива, сумму и график транзакции. Включая в протоколы методы с нулевым разглашением, сети блокчейнов, ориентированные на конфиденциальность, позволяют узлам проверять транзакции, не имея доступа к данным транзакций.

Доказательства с нулевым разглашением также применялись к анонимным транзакциям в общедоступных блокчейнах. Например, Tornado Cash, децентрализованный сервис, не связанный с хранением, который позволяет пользователям проводить частные транзакции в Ethereum. Tornado Cash использует доказательства с нулевым разглашением, чтобы скрыть детали транзакций и гарантировать финансовую конфиденциальность.

Персональный идентификационный номер

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

Доказательства с нулевым разглашением могут упростить аутентификацию платформ и пользователей. Доказательства ZK генерируются с использованием общедоступных входных данных (например, данных, подтверждающих, что пользователь является участником платформы) и частных входных данных (например, сведений о пользователе), которые пользователи могут просто предоставить для проверки своей личности, когда им нужен доступ к услугам. Например, чтобы доказать, является ли пользователь совершеннолетним, нет необходимости выдавать данные удостоверения личности или конкретный год рождения, а нужно только заключение о том, восемнадцать лет пользователю или нет.

Поддающийся проверке расчет

Если устройство пользователя не может поддерживать необходимые вычисления или стоимость локальных вычислений слишком высока, будут рассмотрены сторонние службы. Эти сторонние сервисы могут быстро и дешево возвращать результаты пользователям (например, сервис оракула Chainlink). Доказательства с нулевым разглашением в этом сценарии позволяют сторонним поставщикам вычислительных мощностей выводить доказательства вычислительной целостности, чтобы гарантировать правильность выходных результатов, полученных пользователями.

Анонимное голосование

При условии, что конкретная личность не раскрывается, личность пользователя подтверждается, и для завершения голосования предоставляется право голоса.

ЧАСТЬ.04

Как работает доказательство с нулевым разглашением

Доказательства с нулевым разглашением были впервые предложены Шафи Голдвассером и Сильвио Микали из Массачусетского технологического института в статье 1985 года под названием «Сложность знаний интерактивных систем доказательства». Автор упомянул в статье, что доказывающий может убедить проверяющего в подлинности данных, не раскрывая конкретных данных. Доказательство с нулевым разглашением может быть интерактивным, т. проверено. В настоящее время существует множество реализаций доказательств с нулевым разглашением, таких как zk-SNARKS, zk-STARKS, PLONK и Bulletproofs. Каждый метод имеет свои преимущества и недостатки с точки зрения размера доказательства, времени проверки и времени проверки.

Доказательство с нулевым разглашением имеет три основные особенности, а именно:

  • Целостность: если утверждение истинно, честный проверяющий может быть уверен, что у честного доказывающего действительно есть верная информация.
  • Надежность: если утверждение ложно, ни один нечестный доказывающий не сможет убедить честного проверяющего в том, что у него верная информация.
  • Нулевое знание: если утверждение истинно, верификатор ничего не знает, кроме того, что утверждение истинно от доказывающего.

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

ЧАСТЬ.05

Классификация доказательств с нулевым разглашением

Доказательство с нулевым разглашением можно разделить на «интерактивное доказательство с нулевым разглашением» и «неинтерактивное доказательство с нулевым разглашением» в соответствии с методом взаимодействия.

Интерактивное доказательство с нулевым разглашением

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

Интерактивное доказательство нулевого знания — игра для дальтоников

Алиса дальтоник, но Боб не дальтоник. У Боба есть два шара одинакового размера и формы, но цвета этих двух шаров разные. Один шар синий, а другой красный. Так как Алиса дальтоник, то Алиса не может сказать, одинаковы ли два мяча, Бобу нужно доказать Алисе, что эти два мяча разные. Здесь Алиса называется верификатором.Ей нужно проверить правильность утверждения Боба.Боба называют доказывающим.Ему нужно доказать свое утверждение (есть два шара разного цвета).В случае цветов двух шаров, докажите Алисе, что цвета двух шаров различны, что согласуется с определением доказательства с нулевым разглашением.

Алиса берет два мяча перед Бобом, синий мяч в левую руку и красный мяч в правую руку, а затем кладет обе руки за спину, чтобы Боб не мог видеть мяч в руке Алисы, и Алиса случайным образом меняет шары в левой и правой руках за спиной, после завершения обмена Алиса протягивает руку и спрашивает Боба, поменялись ли два шара местами.Если Боб видит цвет на шаре, то каждый раз Алиса меняет позицию мяча, Боб сможет правильно ответить на вопрос Алисы.

В первый раз Алиса тайно поменяла положение шарика в руке, а затем Алиса спросила Боба, поменялась ли она положением шарика.Если Боб ответил Да, то Алиса с вероятностью 50% может различить цвета Боба. два мяча, потому что Боб. Вероятность того, что ответ будет правильным, составляет 1/2, поэтому Алиса может попытаться еще раз. Если Боб ответит Нет, то Алиса может быть уверена, что Боб не может различить цвета двух шаров.

Во второй раз Алиса не меняет местами шарики в руках, а затем Алиса спрашивает Боба, поменял ли он местами шарики. Если Боб ответит «Нет», то Алиса с вероятностью 75% поверит, что Боб может различать цвета двух шаров.

После первой итерации Алиса может сказать, что утверждение, высказанное Бобом, имеет 50-процентную вероятность быть верным. Если Боб ответит правильно во второй раз, то Алиса может сказать, что утверждение Боба верно с вероятностью 75%. После третьей итерации она составит 87,5%. Если Боб прошел проверку n раз подряд, Алиса имеет вероятность 1-(1/2)^n и может считать, что то, что сказал Боб, верно, и два шара действительно красные и синие.

Интерактивное доказательство с нулевым разглашением — вероятностный метод верификации.Верификатор задает вопросы доказывающему на основе определенной случайности.Если доказывающий может дать правильный ответ, это означает, что доказывающий имеет высокую вероятность иметь все имеющиеся у него доказательства. Заявленное "знание". Доказательство с нулевым разглашением не является доказательством в математическом смысле, потому что оно имеет небольшую вероятность ошибки, и лживый доказывающий может обмануть проверяющего посредством ложных утверждений. Другими словами, доказательства с нулевым разглашением — это вероятностные доказательства, а не детерминистические, но есть методы, которые могут уменьшить количество ошибок до пренебрежимо малых значений.

Этот интерактивный подход имеет некоторые ограничения:

  • Каждая проверка требует целого длительного процесса.
  • И доказывающий, и проверяющий должны присутствовать одновременно, будь то онлайн или лично.
  • Доверять можно только одному верификатору.Если нужно доверять нескольким верификаторам, каждый верификатор должен пройти процесс подтверждения.

НЕИНТЕРАКТИВНАЯ ЗАЩИТА ОТ НУЛЕВОГО ЗНАНИЯ

Интерактивные доказательства с нулевым разглашением требуют, чтобы две стороны были легко доступны и постоянно взаимодействовали. Даже если верификатор уверен, что доказывающий честен, доказательство не может быть использовано для независимой проверки (вычисление нового доказательства требует нового набора сообщений между доказывающим и проверяющим).

Чтобы решить проблемы, с которыми сталкиваются интерактивные доказательства с нулевым разглашением, появились неинтерактивные доказательства с нулевым разглашением. Мануэль Блюм, Пол Фельдман и Сильвио Микали предложили первые интерактивные доказательства с нулевым разглашением, в которых у доказывающего и проверяющего есть общий секрет. Это позволяет доказывающему доказать свое знание некоторой информации, не предоставляя самой информации.

Неинтерактивное доказательство с нулевым разглашением --- игра в судоку

Судоку — математическая игра, зародившаяся в Швейцарии в 18 веке, представляет собой логическую игру, в которой для выполнения расчетов используются бумага и ручка. Игроки должны вывести числа всех оставшихся ячеек на основе известных чисел на доске 9 × 9 и убедиться, что числа в каждой строке, каждом столбце и каждом дворце (3*3) содержат 1- 9. повторить.

Чтобы доказать Бобу, что она решила головоломку судоку, Алиса создает для этого защищенную от несанкционированного доступа машину. Алиса помещает сгенерированный ответ судоку в машину, и машина может отправить доказательство Бобу. Машина Алисы следует следующему публично проверяемому протоколу: сначала Алиса кладет в машину нерешенную исходную головоломку судоку, а три карты головоломки судоку лицевой стороной вверх. Далее Алиса кладет свой ответ лицевой стороной вниз на соответствующую ячейку автомата, также кладя по три карточки в каждую ячейку. Наконец, Боб получает доказательство от машины, и машина возвращает Бобу 27 мешков:

Машина достает по 9 карточек из каждого ряда судоку, перемешивает их отдельно и кладет в мешок, всего рядов 9, и использует 9 мешков, автомат достает из каждого ряда судоку по 9 карточек, перемешивает их и кладет их в кладет в мешочек, всего колонок 9, а мешков используется 9; машина достает карточки в каждом дворце толстой линии (3*3) в судоку, перемешивает их и складывает в мешок, всего 9, использовать 9 мешков;

Боб проверяет каждую из 27 сумок по отдельности, и если карточки в каждой сумке содержат числа от 1 до 9, и ни одно из чисел не пропущено и не повторяется, то Боб может подтвердить, что Алиса действительно решила судоку, а Боб не взял любые числа из машины Любые знания о решении судоку могут быть получены из возвращенного доказательства, потому что данные, возвращаемые машиной в сумку Боба, случайным образом перетасовываются.

Неинтерактивные доказательства с нулевым разглашением преодолевают некоторые недостатки интерактивных доказательств с нулевым разглашением, не требуют длительных онлайн-взаимодействий, им могут доверять многие люди (или даже все), и доказательство всегда действительно, но дополнительные машины и программы может потребоваться для определения экспериментального Порядка. Например, в случае с судоку программа сама решает, какой столбец или строку проверять. Последовательность проверки должна храниться в тайне, иначе проверяющий может пройти проверку, не зная настоящих «знаний».

Интерактивное доказательство с нулевым разглашением VS неинтерактивное доказательство с нулевым разглашением

Каждая проверка интерактивного доказательства требует нового раунда общения, а неинтерактивное доказательство требует только одного раунда общения между участниками (доказывающим и проверяющим). Доказывающая сторона передает секретную информацию специальному алгоритму для расчета доказательства с нулевым разглашением. Это доказательство отправляется проверяющему, который использует другой алгоритм, чтобы проверить, знает ли доказывающий секрет.

Неинтерактивные доказательства сокращают взаимодействие между доказывающим и проверяющим, что делает доказательства ZK более эффективными. Кроме того, после создания доказательства его может проверить кто угодно (с доступом к общему секрету и алгоритму проверки).

**ЧАСТЬ.**06

Технические решения и приложения доказательства с нулевым разглашением

Технология с нулевым разглашением позволяет разработчикам не только воспользоваться преимуществами безопасности базовых блокчейнов, таких как Ethereum, но также повысить пропускную способность и скорость транзакций для dApps и в то же время вынести личную информацию пользователей за пределы цепочки для защиты конфиденциальности пользователей. Транзакции будут упакованы и загружены в цепочку, чтобы снизить стоимость использования для конечных пользователей. В конечном счете, проекты могут использовать эти возможности для создания продвинутых dApp, которые не только конкурируют с системами Web2 по производительности, но и сохраняют преимущества децентрализации Web3.

(Источник изображения: Цепная ссылка)

На уровне 2 zk-rollup упакует несколько транзакций вместе и опубликует их в блокчейне уровня 1, а также опубликует доказательство с нулевым разглашением для проверки правильности расчета. Доказательства, размещенные в сети, также называются «доказательствами действительности». **Технологии проверки достоверности делятся на два типа: SNARK и STARK. **

zk-СНАР

Полное название SNARK — «краткий неинтерактивный аргумент с нулевым разглашением о знании» (краткое неинтерактивное доказательство с нулевым разглашением). Это криптографическое доказательство того, что файл небольшой и легко проверяемый. Он генерирует криптографическое доказательство с использованием эллиптической кривой, которая предполагает, что дискретный логарифм случайного элемента эллиптической кривой не может быть найден из общедоступной базовой точки. Стоимость расчета эллиптической кривой ниже, чем у хеш-функции STARK, поэтому стоимость газа протокола SNARK ниже.

Кейс:Zcash, Loopring, zkSync1.0, zkSync 2.0, Zigzag, Mine

ЗК-СТАРК

Полное название STARK — «масштабируемый прозрачный аргумент знания с нулевым разглашением» (масштабируемое с нулевым разглашением, прозрачное доказательство знания). Это криптографическое доказательство практически не требует взаимодействия между доказывающим и проверяющим. Самым большим преимуществом STARK перед SNARK является то, что время доказательства короче и его легче расширять. Кроме того, поскольку STARK используют хеш-функцию, они также устойчивы к квантовым атакам.

Стоит отметить, что изобретателем STARK является Эли Бен-Сассон, соучредитель StarkWare, команды, которая также разработала StarkEx и StarkNet.

Примеры: StarkEx, StarkNet, Immutable X, Starkware.

ЧАСТЬ.07

Недостатки доказательства с нулевым разглашением

Высокая стоимость оборудования

В зависимости от системы доказательства процесс генерации доказательства с нулевым разглашением отличается. Но в итоге вы столкнетесь со сложными задачами: умножение векторов (полей или групп) больших чисел, особенно мультискалярное умножение (МСМ) с переменным и фиксированным основанием, или быстрое преобразование Фурье (БПФ) и обратное БПФ.

И MSM, и FFT — медленные операции. В системе, где существуют и FFT, и MSM, около 70 % времени генерации доказательства тратится на MSM и 30 % на FFT. Аппаратное ускорение требуется для реализации в сложных вычислениях. Обычно считается, что наиболее важной технологией для аппаратного ускорения ZK является FPGA, а не GPU (из-за стоимости и энергоэффективности) или ASIC (из-за их негибкости и длительного цикла итераций). Первоклассные ПЛИС примерно в 3 раза дешевле, чем первоклассные графические процессоры. Кроме того, ПЛИС более чем в 10 раз более энергоэффективны, чем графические процессоры, в основном потому, что графические процессоры необходимо подключать к хост-устройству, которое потребляет много энергии.

Стоимость проверки

Проверка доказательства требует множества сложных вычислений, что также увеличивает вычислительные затраты. Например, ZK-rolluos нужно заплатить около 500 000 газа, чтобы проверить одно доказательство AK-SNARK на Ethereum, а ZK-STARK требуют еще более высоких комиссий.

Надежное предположение

Предпосылка доказательства с нулевым разглашением заключается в том, что обе стороны честны и хотят знать настоящий ответ и не будут фальсифицировать данные. В ZK-SNARK однократное создание общедоступных параметров может быть повторно использовано сторонами, участвующими в протоколе с нулевым разглашением, что означает, что данные, предоставленные участниками, по умолчанию верны.

Но на самом деле у пользователей нет возможности оценить честность участников, даже если участники вводят ложные данные, пользователи должны в это поверить. В ZK-STARK нет предположения о доверии, и теперь исследователи работают над недоверенными настройками для ZK-SNARK, чтобы повысить безопасность механизма проверки.

Угроза квантовых вычислений

ZK-SNARK использует алгоритм цифровой подписи на эллиптических кривых (ECDSA) для шифрования.Похоже, что алгоритм ECDSA в настоящее время безопасен, но развитие квантовых компьютеров в будущем, вероятно, взломает этот алгоритм.

Принято считать, что квантовые вычисления не угрожают ZK-STARK, потому что он зашифрован с использованием хеширования, предотвращающего столкновения.В отличие от пары открытого и закрытого ключей ECDSA, хеширование, предотвращающее столкновения, сложнее взломать с помощью квантовых вычислений.

Посмотреть Оригинал
Содержание носит исключительно справочный характер и не является предложением или офертой. Консультации по инвестициям, налогообложению или юридическим вопросам не предоставляются. Более подробную информацию о рисках см. в разделе «Дисклеймер».
  • Награда
  • комментарий
  • Поделиться
комментарий
0/400
Нет комментариев
  • Закрепить