Что такое доказательство с нулевым разглашением (zero-knowledge proof)?

zk_s-500
УглубленныйАнонимностьТехнические основы
zk_s-500
УглубленныйАнонимностьТехнические основы

1

Что такое доказательство с нулевым разглашением (zero-knowledge proof)?

Доказательство с нулевым разглашением — это криптографический протокол, который позволяет одной стороне (доказывающему) подтвердить истинность утверждения другой стороне (верификатору), при этом не раскрывая никакой дополнительной информации о ней (ни содержания, ни источника, из которого доказывающий узнал о правдивости).Такое определение впервые было предложено исследователями из Массачусетского технологического института (MIT) Шафи Голдвассером, Сильвио Микали и Чарльзом Ракоффом в научной статье “Сложность доказательств в интерактивных системах” (1985).

2

Как это работает?

Представьте, что вы находитесь в комнате с человеком, которому завязали глаза. На столе перед вами лежат два шарика — белый и черный. Вам необходимо доказать второму человеку (верификатору), что шарики действительно разных цветов, при этом не раскрывая каких именно.Что такое доказательство с нулевым разглашением (zero-knowledge proof)?Для этого вы должны попросить его спрятать оба шарика под стол. После этого попросите достать только один, чтобы вы могли его увидеть. Далее шарик снова прячется и в следующий раз верификатор снова может показать либо белый, либо черный. Однако вы сможете доказать утверждение, поскольку точно знаете, менял ли он их под столом.

Тем не менее полностью верификатор в истинности факта не будет уверен, ведь могли иметь место удача или обман. Эта проблема решается путем повторения эксперимента n количество раз. С каждым раундом шанс случайно оказаться правым будет уменьшаться вдвое: после пяти повторений вероятность обмана составит 1 к 32, после 10 раундов — 1 к 1024, а после 20 раундов — примерно 1 к 1 000 000.

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

3

Для чего используют доказательство с нулевым разглашением?

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

Этот протокол также можно использовать в сферах, где необходимо обеспечить безопасность данных (например, персональной информации) или проведение финансовой транзакции.

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

4

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

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

Доказательства с нулевым разглашением можно также разделить на две группы, исходя из наличия или отсутствия фазы фиксации подлинности утверждения несколькими верификаторами — так называемой доверенной установки [trusted setup] с применением булевой функции.

Для некоторых протоколов, таких как zk-SNARKs (Zero-Knowledge Succinct Non-Interactive ARgument of Knowledge), это является необходимым условием. Верификаторы генерируют специальный секрет, который уничтожается сразу после доверенной установки. Если секрет продолжит существовать, то данные в сети можно будет подделать, тем самым нивелируя преимущества использования протокола.

Существуют протоколы, которые не требуют доверенной установки (например, zk-STARK (Zero-Knowledge Scalable Transparent ARguments of Knowledge).

5

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

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

6

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

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

7

В каких проектах используются доказательства с нулевым разглашением?

Ориентированная на повышенную приватность пользователей криптовалюта ZCash использует модифицированный протокол zk-SNARKs. Этот же протокол был частично имплементирован в сети Ethereum в рамках хардфорка Byzantium. На данный момент разработчики эфира рассматривают дополнительные возможности применения этой технологии.

Стартап QEDIT разработал SDK (Software Development Kit), который позволяет имплементировать доказательства с нулевым разглашением в уже существующие блокчейны для повышения приватности транзакций с сохранением возможности их валидации нодами. Отметим, что проект уже был награжден Знаком Качества Европейской Комиссии, а среди его партнеров такие известные компании, как VMWare, Ant Financial и Deloitte.

Компания StarkWare создала решения на основе протокола zk-STARKs, которые также могут быть реализованы в существующих сетях. Проект уже привлек финансирование от Виталика Бутерина, Pantera Capital, Intel Capital, Sequoia Capital и других инвесторов.

Голландский банк ING выпустил модифицированную версию доказательства с нулевым разглашением — Zero-Knowledge Range Proof (ZKRP). Этот протокол может доказать, что клиент имеет заработную плату в диапазоне, необходимом для получения ипотечного кредита, при этом не раскрывая саму сумму.

Подписывайтесь на новости ForkLog в Telegram: ForkLog Live — вся лента новостей, ForkLog — самые важные новости и опросы.

Подписывайтесь на ForkLog в социальных сетях

Telegram (основной канал) Discord Instagram
Нашли ошибку в тексте? Выделите ее и нажмите CTRL+ENTER

Рассылки ForkLog: держите руку на пульсе биткоин-индустрии!

*Ежедневная рассылка — краткая сводка наиболее важных новостей предыдущего дня. Чтение занимает не больше двух минут. Выходит в рабочие дни в 06:00 (UTC)
*Еженедельная рассылка — объясняем, кто и как изменил индустрию за неделю. Идеально подходит для тех, кто не успевает за новостным потоком в течение дня. Выходит в пятницу в 16:00 (UTC).

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

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

OK