zk-SNARKs: Основные принципы и применение в отрасли
Один. Развитие zk-SNARKs
Современные zk-SNARKs возникли из основополагающей работы Goldwasser, Micali и Rackoff 1985 года. В этой работе рассматривается объем знаний, необходимых для доказательства истинности утверждения через многократные взаимодействия в интерактивной системе. Если доказательство можно завершить без обмена какими-либо знаниями, это называется нулевым знанием. Хотя такая интерактивная система вероятностно верна, она не является идеальной.
Появление неинтерактивных систем (NP) сделало zk-SNARKs более совершенными. Однако ранние системы zk-SNARKs имели недостатки в эффективности и практичности, оставаясь лишь на теоретическом уровне. Только за последние десять лет, с ростом криптографии в области криптовалют, zk-SNARKs действительно начали применяться.
Одной из ключевых целей zk-SNARKs является разработка универсального, неинтерактивного протокола с ограниченным объемом доказательства. Это требует компромисса между скоростью доказательства, скоростью проверки и объемом доказательства.
Статья Грота 2010 года является одним из самых важных прорывов в области zk-SNARKs, заложив теоретическую основу для них. В 2015 году Zcash применил zk-SNARKs для защиты конфиденциальности транзакций, открыв новую эру сочетания zk-SNARKs и смарт-контрактов.
Другие важные научные достижения включают: протокол Pinocchio 2013 года, алгоритм Groth16 2016 года, алгоритм Bulletproofs 2017 года, протокол zk-STARKs 2018 года и др. Эти исследования способствовали постоянному прогрессу zk-SNARKs в эффективности и области применения.
Второе, основные применения zk-SNARKs
На данный момент две наиболее распространенные области применения zk-SNARKs – это защита конфиденциальности и масштабирование.
В области защиты конфиденциальности ранними представителями проектов были такие как Zcash и Monero. Хотя необходимость в конфиденциальных транзакциях не была столь заметной, как ожидалось, такие проекты продолжают развиваться.
В области масштабирования, с переходом Ethereum на масштабирование, основанное на rollup, решения по масштабированию на основе zk-SNARKs вновь стали центром внимания. Существует два основных способа реализации: масштабирование первого уровня (, такое как Mina ), и масштабирование второго уровня (, то есть zk-rollup ).
Основные роли zk-rollup включают Sequencer и Aggregator. Sequencer отвечает за упаковку транзакций, Aggregator объединяет множество транзакций и генерирует zk-SNARKs для обновления состояния основной цепочки.
Преимущества zk-rollup заключаются в низких затратах, быстрой окончательности и защите конфиденциальности. Однако также существуют такие вызовы, как высокая вычислительная нагрузка и необходимость в доверительных настройках.
К основным проектам zk-rollup, представленным сегодня на рынке, относятся StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll и др. Техническая дорожная карта этих проектов в основном базируется на выборе между SNARK( и его улучшенной версией ) и STARK, а также на степени поддержки EVM.
Совместимость с EVM является важной проблемой. Некоторые проекты выбирают полную совместимость с операциями Solidity, в то время как другие разрабатывают новые виртуальные машины, чтобы учесть дружелюбие к zk и совместимость с Solidity. В последние годы быстрый прогресс в области совместимости с EVM обещает обеспечить бесшовную миграцию разработчиков с основной цепи Ethereum на zk-rollup.
Три. Основные принципы zk-SNARKs
zk-SNARKs является сокращением от zero-knowledge Succinct Non-interactive ARguments of Knowledge и имеет следующие характеристики:
Zero Knowledge: Процесс доказательства не раскрывает избыточную информацию
Сжатый: малый объем проверки
Непосредственный:非交互式
Аргументы: вычислительная надежность
Знания: доказатель должен знать действительную информацию
Процесс доказательства zk-SNARKs Groth16 в основном включает в себя:
Преобразование задачи в электрическую схему
Преобразование схемы в форму R1CS
Преобразование R1CS в форму QAP
Установить доверенные настройки, сгенерировать ключи доказательства и проверки
Генерация и верификация zk-SNARKs доказательства
Технология zk-SNARKs быстро развивается и, вероятно, в будущем будет играть важную роль в более широком круге областей.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
zk-SNARKs: Революционная технология от теоретического прорыва до применения в Криптоактивы
zk-SNARKs: Основные принципы и применение в отрасли
Один. Развитие zk-SNARKs
Современные zk-SNARKs возникли из основополагающей работы Goldwasser, Micali и Rackoff 1985 года. В этой работе рассматривается объем знаний, необходимых для доказательства истинности утверждения через многократные взаимодействия в интерактивной системе. Если доказательство можно завершить без обмена какими-либо знаниями, это называется нулевым знанием. Хотя такая интерактивная система вероятностно верна, она не является идеальной.
Появление неинтерактивных систем (NP) сделало zk-SNARKs более совершенными. Однако ранние системы zk-SNARKs имели недостатки в эффективности и практичности, оставаясь лишь на теоретическом уровне. Только за последние десять лет, с ростом криптографии в области криптовалют, zk-SNARKs действительно начали применяться.
Одной из ключевых целей zk-SNARKs является разработка универсального, неинтерактивного протокола с ограниченным объемом доказательства. Это требует компромисса между скоростью доказательства, скоростью проверки и объемом доказательства.
Статья Грота 2010 года является одним из самых важных прорывов в области zk-SNARKs, заложив теоретическую основу для них. В 2015 году Zcash применил zk-SNARKs для защиты конфиденциальности транзакций, открыв новую эру сочетания zk-SNARKs и смарт-контрактов.
Другие важные научные достижения включают: протокол Pinocchio 2013 года, алгоритм Groth16 2016 года, алгоритм Bulletproofs 2017 года, протокол zk-STARKs 2018 года и др. Эти исследования способствовали постоянному прогрессу zk-SNARKs в эффективности и области применения.
Второе, основные применения zk-SNARKs
На данный момент две наиболее распространенные области применения zk-SNARKs – это защита конфиденциальности и масштабирование.
В области защиты конфиденциальности ранними представителями проектов были такие как Zcash и Monero. Хотя необходимость в конфиденциальных транзакциях не была столь заметной, как ожидалось, такие проекты продолжают развиваться.
В области масштабирования, с переходом Ethereum на масштабирование, основанное на rollup, решения по масштабированию на основе zk-SNARKs вновь стали центром внимания. Существует два основных способа реализации: масштабирование первого уровня (, такое как Mina ), и масштабирование второго уровня (, то есть zk-rollup ).
Основные роли zk-rollup включают Sequencer и Aggregator. Sequencer отвечает за упаковку транзакций, Aggregator объединяет множество транзакций и генерирует zk-SNARKs для обновления состояния основной цепочки.
Преимущества zk-rollup заключаются в низких затратах, быстрой окончательности и защите конфиденциальности. Однако также существуют такие вызовы, как высокая вычислительная нагрузка и необходимость в доверительных настройках.
К основным проектам zk-rollup, представленным сегодня на рынке, относятся StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll и др. Техническая дорожная карта этих проектов в основном базируется на выборе между SNARK( и его улучшенной версией ) и STARK, а также на степени поддержки EVM.
Совместимость с EVM является важной проблемой. Некоторые проекты выбирают полную совместимость с операциями Solidity, в то время как другие разрабатывают новые виртуальные машины, чтобы учесть дружелюбие к zk и совместимость с Solidity. В последние годы быстрый прогресс в области совместимости с EVM обещает обеспечить бесшовную миграцию разработчиков с основной цепи Ethereum на zk-rollup.
Три. Основные принципы zk-SNARKs
zk-SNARKs является сокращением от zero-knowledge Succinct Non-interactive ARguments of Knowledge и имеет следующие характеристики:
Процесс доказательства zk-SNARKs Groth16 в основном включает в себя:
Технология zk-SNARKs быстро развивается и, вероятно, в будущем будет играть важную роль в более широком круге областей.