Современная система zk-SNARKs возникла в 1985 году в работе, написанной Goldwasser, Micali и Rackoff. В этой статье рассматривается количество знаний, необходимых для доказательства истинности утверждения в интерактивной системе через многократные взаимодействия. Если можно реализовать обмен без знания, это называется zk-SNARKs. Эта интерактивная система может быть правильной только в вероятностном смысле, а не строго доказуемой математически.
Для преодоления ограничений интерактивных систем были разработаны неинтерактивные (NP) системы, обладающие полнотой, что делает их идеальным выбором для zk-SNARKs. Ранние системы zk-SNARKs страдали от недостаточной эффективности и практичности, в основном находясь на теоретическом уровне. За последние десять лет, с ростом криптографии в области криптовалют, zk-SNARKs стремительно развивались и стали важным направлением исследований.
Ключевым прорывом в области нулевых знаний стало исследование, опубликованное Гротом в 2010 году, которое заложило теоретическую основу для zk-SNARKs. В 2015 году Zcash внедрил систему нулевых знаний для обеспечения конфиденциальности транзакций, что стало важным шагом на уровне приложений. В дальнейшем zk-SNARKs были объединены со смарт-контрактами, что расширило спектр их применения.
В этот период некоторые важные научные достижения включают: протокол Pinocchio 2013 года, алгоритм Groth16 2016 года, Bulletproofs 2017 года, zk-STARKs 2018 года и т.д. Эти достижения постоянно оптимизировались по размеру доказательства, эффективности проверки и другим аспектам, способствуя развитию zk-SNARKs.
Два, основные применения zk-SNARKs
Два самых широких применения нулевых знаний — это защита конфиденциальности и масштабирование. Ранние проекты по приватным транзакциям, такие как Zcash и Monero, привлекли большое внимание после своего запуска, но реальный спрос оказался не таким высоким, как ожидалось. В последние годы, с переходом Ethereum на масштабирование, ориентированное на rollup, решения по масштабированию на основе нулевых знаний вновь стали в центре внимания.
Приватные сделки
Приватные транзакции уже имеют несколько реализованных проектов, таких как Zcash и Tornado, использующие SNARK, и Monero, использующий Bulletproof. Например, в Zcash процесс транзакции включает в себя этапы настройки системы, генерации ключей, чеканки, создания доказательства транзакции, проверки и получения. Однако у Zcash также есть ограничения, такие как трудности с масштабированием на основе модели UTXO и низкий фактический уровень использования приватных транзакций.
Tornado использует дизайн единого большого混币池, основанный на сети Ethereum, что обеспечивает лучшую универсальность. Он использует zk-SNARKs для обеспечения конфиденциальности транзакций, что гарантирует, что только внесенные монеты могут быть извлечены, и что монеты не могут быть повторно извлечены и т. д.
Расширение
Применение zk-SNARKs в области масштабирования в основном связано с zk-rollup. zk-rollup включает две роли: Sequencer и Aggregator. Sequencer отвечает за упаковку транзакций, а Aggregator объединяет большое количество транзакций для создания rollup и создания zk-SNARKs, которые используются для обновления состояния Layer 1.
zk-rollup обладает такими преимуществами, как низкие затраты и быстрая окончательность, но также сталкивается с такими вызовами, как большая вычислительная нагрузка и сложные настройки безопасности. В настоящее время основными проектами zk-rollup являются StarkNet, zkSync, Aztec Connect, Polygon Hermez и другие, каждый из которых имеет свои особенности в техническом подходе и совместимости с EVM.
Совместимость с EVM является ключевой проблемой в развитии zk-rollup. Проектам необходимо находить баланс между дружелюбностью к нулевым знаниям и совместимостью с EVM: некоторые проекты выбирают полную совместимость с кодами операций EVM, в то время как другие разрабатывают новые виртуальные машины, чтобы учесть оба аспекта. Недавние технологические достижения значительно повысили совместимость с EVM, что, как ожидается, будет способствовать процветанию экосистемы разработки.
Три. Основные принципы zk-SNARKs
zk-SNARK(Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) является широко применяемым протоколом zk-SNARKs. Он обладает такими характеристиками, как нулевое знание, краткость, не интерактивность, надежность и надежность знания.
Процесс доказательства Groth16 zk-SNARKs в основном включает следующие этапы:
Преобразуйте задачу в цепь
Преобразование схемы в форму R1CS( Rank-1 Constraint System)
Преобразование R1CS в форму QAP(Квадратичной арифметической программы)
Установите доверенные настройки, сгенерируйте ключи доказательства и проверки
Генерация и верификация zk-SNARKs доказательства
Этот процесс включает в себя сложные математические принципы и криптографические технологии, которые являются основой для реализации эффективных zk-SNARKs.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
8 Лайков
Награда
8
9
Поделиться
комментарий
0/400
IntrovertMetaverse
· 07-20 08:37
Не понимаю, но чувствую, что это очень круто.
Посмотреть ОригиналОтветить0
RektHunter
· 07-19 21:00
Учился до головокружения, пошел выпить.
Посмотреть ОригиналОтветить0
Ser_APY_2000
· 07-19 00:54
О чем это вообще? Один голова, два больших.
Посмотреть ОригиналОтветить0
Anon32942
· 07-17 19:31
Почему кажется, что все говорят о zk, немного как будто следуют за модой?
Посмотреть ОригиналОтветить0
GasFeeCrier
· 07-17 19:19
Бесконечные Газ расходы!
Посмотреть ОригиналОтветить0
WalletWhisperer
· 07-17 19:18
хм... увлекательно, как zk-доказательства эволюционировали от чистой математики к фактической механике цепочки... поведенческие паттерны, честно говоря, неоспоримы
Посмотреть ОригиналОтветить0
BearMarketBuilder
· 07-17 19:12
Понял, что базовые технологии - это настоящая божественность.
Посмотреть ОригиналОтветить0
HalfPositionRunner
· 07-17 19:10
Нулевая информация? Эй, не понимаю, так что убегаю.
Посмотреть ОригиналОтветить0
WenMoon42
· 07-17 19:03
Эх, в тот день, когда L2 найдет свое реальное применение, у каждого будет свой zk.
История развития технологии zk-SNARKs: от теоретических прорывов до приложений расширения Layer2
Развитие и применение zk-SNARKs
Один. Историческая эволюция zk-SNARKs
Современная система zk-SNARKs возникла в 1985 году в работе, написанной Goldwasser, Micali и Rackoff. В этой статье рассматривается количество знаний, необходимых для доказательства истинности утверждения в интерактивной системе через многократные взаимодействия. Если можно реализовать обмен без знания, это называется zk-SNARKs. Эта интерактивная система может быть правильной только в вероятностном смысле, а не строго доказуемой математически.
Для преодоления ограничений интерактивных систем были разработаны неинтерактивные (NP) системы, обладающие полнотой, что делает их идеальным выбором для zk-SNARKs. Ранние системы zk-SNARKs страдали от недостаточной эффективности и практичности, в основном находясь на теоретическом уровне. За последние десять лет, с ростом криптографии в области криптовалют, zk-SNARKs стремительно развивались и стали важным направлением исследований.
Ключевым прорывом в области нулевых знаний стало исследование, опубликованное Гротом в 2010 году, которое заложило теоретическую основу для zk-SNARKs. В 2015 году Zcash внедрил систему нулевых знаний для обеспечения конфиденциальности транзакций, что стало важным шагом на уровне приложений. В дальнейшем zk-SNARKs были объединены со смарт-контрактами, что расширило спектр их применения.
В этот период некоторые важные научные достижения включают: протокол Pinocchio 2013 года, алгоритм Groth16 2016 года, Bulletproofs 2017 года, zk-STARKs 2018 года и т.д. Эти достижения постоянно оптимизировались по размеру доказательства, эффективности проверки и другим аспектам, способствуя развитию zk-SNARKs.
Два, основные применения zk-SNARKs
Два самых широких применения нулевых знаний — это защита конфиденциальности и масштабирование. Ранние проекты по приватным транзакциям, такие как Zcash и Monero, привлекли большое внимание после своего запуска, но реальный спрос оказался не таким высоким, как ожидалось. В последние годы, с переходом Ethereum на масштабирование, ориентированное на rollup, решения по масштабированию на основе нулевых знаний вновь стали в центре внимания.
Приватные сделки
Приватные транзакции уже имеют несколько реализованных проектов, таких как Zcash и Tornado, использующие SNARK, и Monero, использующий Bulletproof. Например, в Zcash процесс транзакции включает в себя этапы настройки системы, генерации ключей, чеканки, создания доказательства транзакции, проверки и получения. Однако у Zcash также есть ограничения, такие как трудности с масштабированием на основе модели UTXO и низкий фактический уровень использования приватных транзакций.
Tornado использует дизайн единого большого混币池, основанный на сети Ethereum, что обеспечивает лучшую универсальность. Он использует zk-SNARKs для обеспечения конфиденциальности транзакций, что гарантирует, что только внесенные монеты могут быть извлечены, и что монеты не могут быть повторно извлечены и т. д.
Расширение
Применение zk-SNARKs в области масштабирования в основном связано с zk-rollup. zk-rollup включает две роли: Sequencer и Aggregator. Sequencer отвечает за упаковку транзакций, а Aggregator объединяет большое количество транзакций для создания rollup и создания zk-SNARKs, которые используются для обновления состояния Layer 1.
zk-rollup обладает такими преимуществами, как низкие затраты и быстрая окончательность, но также сталкивается с такими вызовами, как большая вычислительная нагрузка и сложные настройки безопасности. В настоящее время основными проектами zk-rollup являются StarkNet, zkSync, Aztec Connect, Polygon Hermez и другие, каждый из которых имеет свои особенности в техническом подходе и совместимости с EVM.
Совместимость с EVM является ключевой проблемой в развитии zk-rollup. Проектам необходимо находить баланс между дружелюбностью к нулевым знаниям и совместимостью с EVM: некоторые проекты выбирают полную совместимость с кодами операций EVM, в то время как другие разрабатывают новые виртуальные машины, чтобы учесть оба аспекта. Недавние технологические достижения значительно повысили совместимость с EVM, что, как ожидается, будет способствовать процветанию экосистемы разработки.
Три. Основные принципы zk-SNARKs
zk-SNARK(Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) является широко применяемым протоколом zk-SNARKs. Он обладает такими характеристиками, как нулевое знание, краткость, не интерактивность, надежность и надежность знания.
Процесс доказательства Groth16 zk-SNARKs в основном включает следующие этапы:
Этот процесс включает в себя сложные математические принципы и криптографические технологии, которые являются основой для реализации эффективных zk-SNARKs.