Доказательства с нулевым знанием, объяснение

НовичокDec 03, 2023
В этой статье раскрываются фундаментальные принципы доказательств с нулевым знанием, их широкое применение и конкретная реализация Zk-доказательств в простой и понятной манере.
Доказательства с нулевым знанием, объяснение

1.Что такое доказательство с нулевым знанием?

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

Исследователи Шафи Голдвассер, Сильвио Микали и Чарльз Рэкофф впервые представили эту идею в начале 1980-х годов. Основная цель ZK-доказательства - убедить проверяющего в истинности утверждения, не раскрывая никакой информации, кроме правдивости утверждения.

Хорошее доказательство с нулевым знанием должно соответствовать следующим трем критериям:

  1. Полнота: Проверяющий примет доказательство с высокой вероятностью, если пропозиция истинна, и как проверяющий, так и проверяемый придерживаются протокола.
  2. Разумность: Если утверждение не соответствует действительности, ни один проверяющий не должен быть в состоянии убедить проверяемого в обратном, за исключением крайне маловероятных обстоятельств.
  3. Нулевое знание: Даже после общения с проверяющим, проверяющий понимает только истинность утверждения и больше ничего о секрете.

Существуют различные типы ZK-защиты:

Интерактивные ZK-доказательства

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

Неинтерактивные ZK-доказательства

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

Статистические ZK-доказательства

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

Доказательство знания (Proof-of-knowledge, PoK)

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

Доказательства перестановки и диапазона

Эти ZK-доказательства используются при электронном голосовании и в транзакциях с сохранением конфиденциальности.

Протоколы Sigma

Сигма-протоколы - это класс ZK-доказательств, которые включают в себя три этапа: обязательство, вызов и ответ.

Пуленепробиваемые

Пуленепробиваемые средства предназначены для эффективного доказательства диапазона для больших наборов значений.

2.Как работают доказательства с нулевым знанием?

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

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

Проблема

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

Решение с использованием протокола ZK-proofs

Настройки

Проверяющий и проверяемый согласны с областями и связями графа (карты).

Заявление

Проверяющий утверждает, что у него есть надежная трехцветная раскраска для предоставленного графа.

Раунд 1: Приверженность

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

Раунд 2: Вызов

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

Раунд 3: Ответ

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

Итерация

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

Заключение

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

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

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

3.Каковы области применения доказательств с нулевым знанием?

ZK-доказательства - это полезные инструменты, которые находят применение в самых разных областях и решают важные вопросы конфиденциальности и безопасности.

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

ZK-доказательства могут использоваться в области аутентификации и контроля доступа, чтобы продемонстрировать понимание пароля или криптографического ключа без раскрытия самого пароля или ключа. Это приводит к созданию более удобных и безопасных методов аутентификации.

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

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

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

4.Можно ли интегрировать ZK-доказательства в блокчейн-платформы?

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

При интеграции в блокчейн-платформы ZK-доказательства могут служить множеству целей:

Конфиденциальность и конфиденциальность

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

Проверка и аудит

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

Масштабируемость

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

Идентификация и аутентификация

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

Межцепочечная совместимость

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

5.Каковы недостатки доказательств с нулевым знанием?

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

Разработка и проверка ZK-доказательств может потребовать больших затрат ресурсов и вычислений, особенно если речь идет о более сложных доказательствах. Это может привести к увеличению времени обработки транзакций и объема вычислительной работы, что может затруднить масштабирование блокчейн-систем.

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

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

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

Отказ от ответственности:

  1. Эта статья перепечатана из[Cointelegraph]. Все авторские права принадлежат оригинальному автору[SHIRAZ JAGATI]. Если у Вас есть возражения против этой перепечатки, пожалуйста, свяжитесь с командой Gate Learn, и они незамедлительно рассмотрят их.
  2. Предупреждение об ответственности: Мнения и взгляды, выраженные в этой статье, принадлежат исключительно автору и не являются инвестиционным советом.
  3. Перевод статьи на другие языки осуществляется командой Gate Learn. Если не указано, копирование, распространение или плагиат переведенных статей запрещены.
Comece agora
Inscreva-se e ganhe um cupom de
$100
!
Criar conta