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

2021-12-15, 09:41

【TL; DR】

1. Технология доказательства с нулевым разглашением (Zero-knowledge proof) направлена на то, чтобы доказать предложение валидатору, но в процессе доказательства она не раскрывает никакой информации, кроме “утверждение верно”.

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

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

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

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

Предположим, однажды Алибаба был похищен и ему нужно разобраться с похитителем напротив двери с сокровищами. Соответственно, есть ли какой-либо метод, которым он может доказать похитителю, что он действительно знает пароль, не сообщая похитителю пароль, который откроет дверь и спасти свою жизнь? Есть несколько способов. Алибаба может позволить похитителю стоять на некотором расстоянии с луком и стрелами, не слишком близко к нему (похититель может услышать пароль, используемый для открытия двери), или слишком далеко от него (возможно, Алибаба легко сбежит). Затем Алибабе нужно только показать похитителям открытую и закрытую дверь, чтобы он мог доказать, что действительно знает пароль, не сообщая похитителям настоящий пароль. При этом Алибаба не предоставляет похитителю (валидатору) никакой полезной информации, но при этом позволил подтвердить подлинность заключения. Это также основная концепция доказательства с нулевым разглашением (ZKP).

Что такое ZKP?

Концепт ZKP был создан в 1985 году и впервые был описан в статье профессоров Сафи Годвассера, Сильвио Микали и Чарльза Лакфорда под названием “Сложность знания интерактивных систем доказательства” (“The knowledge complexity of interactive proof systems''). Технология ZKP направлена на то, чтобы доказать предложение валидатору, но в процессе доказательства она не раскрывает никакой информации, кроме “утверждение верно”. Следовательно, ZKP также можно назвать “предложением о нулевом раскрытии”.
Эта концепция звучит немного угловато, но ее смысл ясен. ZKP должны иметь следующие три элемента:

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

2. Надёжность. Если утверждение ложно, то доказывающая сторона не сможет доказать валидатору, что утверждение истинно, поэтому протокол ZKP полностью надёжен.

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

ZKP - одна из основ современной криптографии. Шафи Годвассер и Сильвио Микали также получили премию Тьюринга в 2012 году за свои достижения в ZKP. В современном Интернете ZKP - одна из самых основных технологий для обработки конфиденциальной информации. Поскольку данные в цепочке полностью открыты для общественности, в области блокчейна не существует механизма защиты конфиденциальности, за исключением того, что адрес в цепочке не соответствует реальной личности человека. Таким образом, нулевое знание также получило множество применений в блокчейне, таких как системы идентификации, защита конфиденциальности, масштабирование вне сети и т. д. В частности, технология zk-SNARK (краткие аргументы знания с нулевым разглашением) широко используется в области блокчейнов и может доказать, что кто-то обладает определенной информацией с нулевым разглашением.



Изображение: An approximate introduction to how zk-SNARKs are possible

Применение ZKP

1. Filecoin

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

При хранении файлов необходимо построить дерево Меркла для необработанных данных, рассчитать VDE уровень за уровнем и, наконец, загрузить корень дерева Меркла в цепочку. Этот процесс шифрования потребляет много вычислительной мощности, но размер данных в цепочке очень ограничен. Он может сжимать сотни килобайт данных до сотен байтов. Таким образом, это метод обработки “обмена времени на пространство”. После того, как данные внесены в цепочку, необходимо проверять их на случайно выбранном листе Меркла через равные промежутки времени и вычислять все пути от корня до листа. Этот процесс также называют пространственно-временным доказательством. Если узел, который должен предоставить доказательства, не хранит соответствующие данные, он не может предоставить хеш-значения всех требуемых путей за ограниченное время, поэтому он не может пройти проверку. Таким образом, мы проверяем достоверность хранения данных, не раскрывая сами сохраненные данные через ZKP.


For more details about IPFS and FileCoin, please refer to:
Протокол IPFS, который может произвести революцию в мире Интернета, и FileCoin, который появился вместе с ним

2. ZK-Rollup

Filecoin использует технологию zk-SNARKs для распределенного хранилища для проверки достоверности общего хранилища данных. ZK-Rollup загружает необработанные торговые данные в блокчейн и использует ZKP для автоматической проверки действительности сделки. Однако все торговые данные должны быть подтверждены, что приводит к огромным накладным расходам на вычисления и низкой производительности ZK-Rollup.

В системе блокчейн каждому узлу необходимо вычислить информацию о блоке, чтобы проверить надежность торговой информации. Для всей системы этот расчет часто повторяется и, очевидно, быстрее напрямую проверить информацию о блоке, чем вычислить её. Это основной принцип масштабирования блокчейна ZK-Rollup. Что касается структуры данных, эта технология также поддерживает глобальное дерево Меркла для изменения состояний в системе, и каждое состояние является листовым узлом в дереве. Если будет принята бинарная структура дерева Меркла, чтобы поддерживать 1 миллион пользователей и 1000 видов активов, глубина дерева Меркла должна достигать около 30. Если каждая сделка изменяет информацию от 5 до 10 конечных узлов, то потребуется около 200 хеш-расчётов.

Дополнительные сведения о решениях ZK-Rollup можно прочитать в:
Взломать “невозможный треугольник”: Обзор решений Layer 1
Будет ли L2 и будущее обновление Sharding (2022 г.) наилучшим решением Ethereum для масштабируемости?

Заключение

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

Отвечайте на вопросы, чтобы получить вознаграждение

Автор: исследователь Gate.io Ashley H.
*Эта статья содержит только точку зрения исследователей и не является руководством по инвестированию.
*Все права на текст данной статьи принадлежат Gate.io. Репост данной статьи будет разрешен в случае указания Gate.io как источник. В противном случае будет преследоваться юридическая ответственность в связи с нарушением авторских прав.

Избранные статьи недели Gate.io
SocialFi - следующий большой тренд в эпоху Web3.0?
Ключевые моменты по заседанию о криптографии | Представители отрасли призвали не вводить чрезмерное регулирование, а члены Конгресса предложили обеспечить процветание Web 3.0 в США
Endgame: в поиске оптимального решения масштабирования блокчейна с Виталиком Бутериным
Поделиться
gate logo
Credit Ranking
Complete Gate Post tasks to upgrade your rank