В последние годы в блокчейн-индустрии проекты с использованием零知识证明(ZKP) демонстрируют взрывной рост, особенно в области масштабирования и защиты конфиденциальности. Однако из-за высокой математической природы ZKP глубокое понимание этой технологии представляет определенную сложность для обычных криптоэнтузиастов. В данной статье мы подробно рассмотрим теорию и применение ZKP, обсудим его влияние и ценность для криптоиндустрии, как начало серии.
Один. Развитие zk-SNARKs
Современная система zk-SNARKs восходит к теории интерактивных доказательных систем, предложенной Голдвассером, Микали и Раккоффом в 1985 году. Эта теория исследует минимальное количество знаний, которое необходимо обменять в интерактивной системе для доказательства правильности утверждения через множество раундов взаимодействия. Если доказательство может быть завершено без раскрытия какой-либо дополнительной информации, это называется zk-SNARKs.
Ранние системы zk-SNARKs имели недостаточную эффективность и практичность, в основном оставаясь на теоретическом уровне. За последние десять лет, с широким применением криптографии в области криптовалют, zk-SNARKs постепенно стали важным направлением исследований. Одной из ключевых целей является разработка универсальных, не интерактивных, с небольшим объемом доказательства протоколов zk-SNARKs.
Важным прорывом в области零知识证明 стало предложение Грота в 2010 году короткого парного неинтерактивного零知识证明, которое стало теоретической основой для zk-SNARKs. В 2015 году проект Zcash впервые применил零知识证明 для защиты конфиденциальности транзакций, открыв путь для сочетания zk-SNARKs и смарт-контрактов.
С тех пор ряд научных достижений продолжает способствовать развитию zk-SNARKs:
В 2013 году протокол Pinocchio сократил время доказательства и проверки.
В 2016 году алгоритм Groth16 сократил размер доказательства и повысил эффективность верификации
В 2017 году Bulletproofs были предложены как короткие неинтерактивные zk-SNARKs.
В 2018 году zk-STARKs реализовали систему доказательств без необходимости доверенной настройки
Кроме того, новые алгоритмы, такие как PLONK и Halo2, продолжают совершенствовать zk-SNARKs.
2. Основные применения zk-SNARKs
zk-SNARKs в настоящее время в основном применяются в двух направлениях: защита конфиденциальности и масштабируемость.
Защита конфиденциальности
Ранние проекты по приватной торговле, такие как Zcash и Monero, пользовались большим вниманием, но из-за реального спроса, не соответствующего ожиданиям, в настоящее время они отошли на второй план.
Например, в случае Zcash, процесс транзакции с использованием zk-SNARKs включает в себя: настройку системы, генерацию ключей, чеканку монет, Pour-транзакции, верификацию и получение. Однако у Zcash все еще есть некоторые ограничения, такие как сложность масштабирования на основе модели UTXO и низкая фактическая степень использования приватных транзакций.
Tornado Cash использует дизайн единого большого пула смешивания монет, основанный на сети Ethereum, что обеспечивает лучшую универсальность. Он гарантирует, что только внесенные монеты могут быть выведены, и каждая монета может быть выведена только один раз, с процессом доказательства, связанным с nullifier и другими характеристиками.
расширение
Масштабирование с помощью zk может быть реализовано в первом уровне сети (, таком как Mina ), или во втором уровне сети (, то есть zk rollup ). zk rollup в основном включает две роли: Sequencer и Aggregator. Sequencer отвечает за упаковку транзакций, а Aggregator отвечает за объединение транзакций и генерацию zk-SNARKs для обновления дерева состояния Ethereum.
Преимущества ZK rollup заключаются в низких расходах, быстрой финализации и защите конфиденциальности, но они также сталкиваются с такими проблемами, как большая вычислительная нагрузка и необходимость в доверительной настройке. В настоящее время основными проектами ZK rollup являются StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll и др., которые акцентируют внимание на выборе SNARK/STARK и совместимости с EVM.
Совместимость с EVM является одной из больших проблем, с которыми сталкиваются ZK-системы. Некоторые проекты выбирают разработку специализированных виртуальных машин и языков программирования, в то время как другие стремятся к полной совместимости с Solidity. Недавний быстрый прогресс в области совместимости с EVM предоставляет разработчикам больше возможностей.
Три. Основной принцип ZK-SNARKs
ZK-SNARK( zk-SNARKs) является одной из самых широко используемых систем доказательства с нулевым знанием на сегодняшний день. Она обладает следующими характеристиками:
zk-SNARKs: не раскрывает дополнительную информацию
Простота: маленький объем проверки
Непеременный: не требует многократных взаимодействий
Надежность: доказатели с ограниченными вычислительными возможностями не могут подделать доказательства
Познавательный: Доказатель должен знать действительную информацию, чтобы построить доказательство.
Процесс доказательства ZK-SNARK версии Groth16 в основном включает в себя:
Преобразуйте задачу в схему
Преобразование цепи в форму R1CS
Преобразование R1CS в форму QAP
Установить надежные настройки, сгенерировать ключи доказательства и верификации
Генерация и проверка ZK-SNARK доказательства
Этот процесс положил начало практическому применению zk-SNARKs. В последующих статьях будет подробно рассмотрена теория zk-SNARKs, примеры применения, а также сравнение с zk-STARKs.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
15 Лайков
Награда
15
4
Поделиться
комментарий
0/400
just_here_for_vibes
· 07-22 19:36
zkp уже горел несколько раундов
Посмотреть ОригиналОтветить0
RunWithRugs
· 07-21 01:12
Нажимал на hiddenvault, не могу остановиться.
Посмотреть ОригиналОтветить0
ZKProofster
· 07-21 01:11
с технической точки зрения, элегантность snark все еще безупречна, если честно
zk-SNARKs технология: принципы, применение и влияние на отрасль
zk-SNARKs: от принципа до применения
Введение
В последние годы в блокчейн-индустрии проекты с использованием零知识证明(ZKP) демонстрируют взрывной рост, особенно в области масштабирования и защиты конфиденциальности. Однако из-за высокой математической природы ZKP глубокое понимание этой технологии представляет определенную сложность для обычных криптоэнтузиастов. В данной статье мы подробно рассмотрим теорию и применение ZKP, обсудим его влияние и ценность для криптоиндустрии, как начало серии.
Один. Развитие zk-SNARKs
Современная система zk-SNARKs восходит к теории интерактивных доказательных систем, предложенной Голдвассером, Микали и Раккоффом в 1985 году. Эта теория исследует минимальное количество знаний, которое необходимо обменять в интерактивной системе для доказательства правильности утверждения через множество раундов взаимодействия. Если доказательство может быть завершено без раскрытия какой-либо дополнительной информации, это называется zk-SNARKs.
Ранние системы zk-SNARKs имели недостаточную эффективность и практичность, в основном оставаясь на теоретическом уровне. За последние десять лет, с широким применением криптографии в области криптовалют, zk-SNARKs постепенно стали важным направлением исследований. Одной из ключевых целей является разработка универсальных, не интерактивных, с небольшим объемом доказательства протоколов zk-SNARKs.
Важным прорывом в области零知识证明 стало предложение Грота в 2010 году короткого парного неинтерактивного零知识证明, которое стало теоретической основой для zk-SNARKs. В 2015 году проект Zcash впервые применил零知识证明 для защиты конфиденциальности транзакций, открыв путь для сочетания zk-SNARKs и смарт-контрактов.
С тех пор ряд научных достижений продолжает способствовать развитию zk-SNARKs:
Кроме того, новые алгоритмы, такие как PLONK и Halo2, продолжают совершенствовать zk-SNARKs.
2. Основные применения zk-SNARKs
zk-SNARKs в настоящее время в основном применяются в двух направлениях: защита конфиденциальности и масштабируемость.
Защита конфиденциальности
Ранние проекты по приватной торговле, такие как Zcash и Monero, пользовались большим вниманием, но из-за реального спроса, не соответствующего ожиданиям, в настоящее время они отошли на второй план.
Например, в случае Zcash, процесс транзакции с использованием zk-SNARKs включает в себя: настройку системы, генерацию ключей, чеканку монет, Pour-транзакции, верификацию и получение. Однако у Zcash все еще есть некоторые ограничения, такие как сложность масштабирования на основе модели UTXO и низкая фактическая степень использования приватных транзакций.
Tornado Cash использует дизайн единого большого пула смешивания монет, основанный на сети Ethereum, что обеспечивает лучшую универсальность. Он гарантирует, что только внесенные монеты могут быть выведены, и каждая монета может быть выведена только один раз, с процессом доказательства, связанным с nullifier и другими характеристиками.
расширение
Масштабирование с помощью zk может быть реализовано в первом уровне сети (, таком как Mina ), или во втором уровне сети (, то есть zk rollup ). zk rollup в основном включает две роли: Sequencer и Aggregator. Sequencer отвечает за упаковку транзакций, а Aggregator отвечает за объединение транзакций и генерацию zk-SNARKs для обновления дерева состояния Ethereum.
Преимущества ZK rollup заключаются в низких расходах, быстрой финализации и защите конфиденциальности, но они также сталкиваются с такими проблемами, как большая вычислительная нагрузка и необходимость в доверительной настройке. В настоящее время основными проектами ZK rollup являются StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll и др., которые акцентируют внимание на выборе SNARK/STARK и совместимости с EVM.
Совместимость с EVM является одной из больших проблем, с которыми сталкиваются ZK-системы. Некоторые проекты выбирают разработку специализированных виртуальных машин и языков программирования, в то время как другие стремятся к полной совместимости с Solidity. Недавний быстрый прогресс в области совместимости с EVM предоставляет разработчикам больше возможностей.
Три. Основной принцип ZK-SNARKs
ZK-SNARK( zk-SNARKs) является одной из самых широко используемых систем доказательства с нулевым знанием на сегодняшний день. Она обладает следующими характеристиками:
Процесс доказательства ZK-SNARK версии Groth16 в основном включает в себя:
Этот процесс положил начало практическому применению zk-SNARKs. В последующих статьях будет подробно рассмотрена теория zk-SNARKs, примеры применения, а также сравнение с zk-STARKs.