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

Начнём с алгоритмов. Практически любой алгоритм можно представить как черный ящик с некоторым количеством входов и выходов.

Есть простые алгоритмы,

и там сложные алгоритмы.

Обычно для их вычисления мы запускаем алгоритмы на аппаратном обеспечении, например, на процессоре.

Иногда, когда мы вычисляем алгоритм, мы держим в секрете входные данные, но раскрываем выходные данные.

Часто алгоритм также является общедоступным.

Итак, подведем итог:

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

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

Вы хотите подружиться с металлистами, но не хотите признаваться в том, сколько T-Swift вы слушали.

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

Затем вычислите доказательство с нулевым разглашением, чтобы показать его своим будущим лучшим металлистам. Код является общедоступным, поэтому металлисты могут быть уверены, что вы слушали их музыку на своем потоковом сервисе. Введенные данные являются секретными, поэтому они не смогут увидеть ваши часы прослушивания T-Swift.

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

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

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

Доказательства с нулевым разглашением особенно эффективны в сочетании с гомоморфным шифрованием.

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

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

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

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

Если вы хотите узнать больше, перейдите по этим ссылкам:

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

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

Проекты, использующие доказательства с нулевым разглашением: