Как работает ZK SNARK?
В последние месяцы zkSNARKs стали часто обсуждать.
И они заслуживают всех признаний, так как могут обеспечить:
- конфиденциальность в dApps и блокчейнах
- масштабируемость с помощью zk rollups
- безопасность на блокчейнах первого уровня, таких как zcash
Если вы пропустили две первые статьи, лучше начните с них:
Доказательство с нулевым разглашением, часть 1
Optimistic и ZK Rollups
zkSNARKs (zero-knowledge - Succinct Non-interactive Argument of Knowledge, пояснение ниже) - это система доказательств, которую каждый может использовать, чтобы доказать любое утверждение кому угодно.
Ее красота заключается в двух определяющих свойствах:
1. Верификатор не узнает абсолютно ничего о базовой информации
2. Верификатору не нужно взаимодействовать с доказывающим
ZERO KNOWLEDGE (нулевое знание) означает, что верификатор не узнает абсолютно ничего о базовой информации, которой обладает доказывающий
SUCCINCT (обозначение сжатых и эффективных доказательств знаний, которые позволяют проверить правильность выполнения вычислений на основе определенных данных, не раскрывая сами данные) означает, что размер доказательств чрезвычайно мал
Более компактные доказательства = более быстрая проверка = больше транзакций в секунду
NON-INTERACTIVE означает, что доказывающему и верификатору не нужно взаимодействовать друг с другом, чтобы доказывающий убедил верификатора
Невзаимодействие важно, потому что доказывающий может создать одно доказательство, и любой человек в любой точке мира может проверить его, не нуждаясь в обмене какой-либо информацией с доказывающим
Хотя невзаимодействие, возможно, является наиболее значимым свойством zkSNARK, оно также является его самым большим недостатком!
Чтобы иметь возможность создавать невзаимодействующие доказательства, протоколам сначала нужна доверенная сторона, которая будет шифровать некоторые секретные параметры и уничтожать их исходные значения
Если кто-то получит доступ к исходным значениям, он сможет подделать поддельные доказательства.
ARGUMENT OF KNOWLEDGE просто означает "доказательство" знания чего-то
Это называется "аргументом", а не доказательством из-за небольшой технической детали (soundness is polynomially-bounded - ограниченность полиномиальной точности, иными словами, существует математическая гарантия, что с вероятностью, близкой к 100%, подтверждение будет корректным)
Но мы можем использовать термины "аргумент" и "доказательство" взаимозаменяемо в этой теме
В итоге, zkSNARK - это система доказательств, с помощью которой доказывающий (Д) может доказать обладание некоторой информацией проверяющему (П), таким образом:
- П ничего не узнает о информации
- нет взаимодействия между П и Д
- доказательство маленькое
- доказательство терпит неудачу, если П или Д нечестны
И эта система доказательств открывает некоторые потрясающие возможности
Не только внутри блокчейна, но и вне его!
Такие вещи, как управление идентичностью, проверка минимального возраста, анонимные учетные данные, цифровое голосование и т. д., могут быть выполнены быстро, конфиденциально и эффективно с использованием zkSNARK.
Пишите в комментариях, если вы что-то поняли.
zkSync Era∎ LIVE. Что там есть?
Канал про DeFi
Чат defi degens
Чат по SocialFi, On chain games, Narrative trading