Технология нулевых знаний: 40 лет всеобъемлющего обзора: от ZKSNARK до ZKEVM - развитие и перспективы.

Полный обзор технологии zk-SNARKs и перспективы ее развития

Резюме

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

Во-первых, введены основные концепции и исторический контекст нулевых знаний. Затем акцентируется внимание на технологии нулевых знаний на основе схем, включая проектирование, применение и методы оптимизации моделей, таких как zkSNARKs, Ben-Sasson, Pinocchio, Bulletproofs и Ligero. В области вычислительных сред статья представляет ZKVM и ZKEVM, обсуждая, как они повышают скорость обработки транзакций, защищают конфиденциальность и улучшают эффективность верификации. В статье также рассматривается работа нулевых Rollup(ZK Rollup) в качестве решения для расширения Layer 2, механизмы работы и методы оптимизации, а также последние достижения в области аппаратного ускорения, смешанных решений и специализированного ZK EVM.

В заключение, в статье рассматриваются такие новые концепции, как ZKCoprocessor, ZKML, ZKThreads, ZK Sharding и ZK StateChannels, а также обсуждается их потенциал в области масштабируемости блокчейна, взаимодействия и защиты конфиденциальности.

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

Содержание

Введение

  1. Базовые знания доказательств с нулевым разглашением 1.Обзор
  2. zk-SNARKs примеры

Второе, ненавязчивые zk-SNARKs

  1. Фон
  2. Предложение NIZK
  3. Преобразование Фиат-Шамира
  4. Йенс Грот и его исследования
  5. Другие исследования

Три, основанные на схемах zk-SNARKs 1.Фон 2. Основные концепции и характеристики схемных моделей 3. Проектирование и применение схем в zk-SNARKs 4. Потенциальные недостатки и вызовы

Четыре, zk-SNARKs модель 1.Фон 2.Распространенные алгоритмические модели 3. Решение на основе линейного PCP и задачи дискретного логарифма 4. Планы, основанные на доказательствах обычных людей 5. Вероятностное доказательство с проверкой ( PCP ) zk-SNARKs 6. Классификация этапа настройки общего доказательства, основанного на CPC(, для конструкции ).

Пятый. Обзор и развитие нулевых знаний виртуальной машины 1.Фон 2. Существующая классификация ZKVM 3. Парадигмы фронтенда и бэкенда 4. Плюсы и минусы парадигмы ZKVM

Шесть. Обзор и развитие нулевых знаний Ethereum Virtual Machine.

  1. Фон
  2. Принцип работы ZKEVM
  3. Процесс реализации ZKEVM
  4. Особенности ZKEVM

Семь. Обзор и развитие решения второго уровня с использованием zk-SNARKs

  1. Фон
  2. Механизм работы ZK Rollup
  3. Недостатки и оптимизация ZK Rollup

Восемь. Будущее направления развития zk-SNARKs

  1. Ускорение развития вычислительной среды
  2. Предложение и развитие zk-SNARKs
  3. Развитие технологий расширения ZKP
  4. Развитие интероперабельности ZKP

Девять, вывод

Список литературы

Введение

Интернет вступает в эпоху Web3, приложения на блокчейне (DApps) развиваются стремительно, каждый день появляются новые приложения. В последние годы блокчейн-платформы ежедневно обрабатывают активность миллионов пользователей, выполняя десятки миллиардов транзакций. Огромное количество данных, генерируемых этими транзакциями, обычно включает в себя чувствительную личную информацию, такую как идентификация пользователя, сумма транзакции, адреса счетов и балансы счетов. Учитывая открытость и прозрачность блокчейна, данные, которые хранятся, доступны всем, что вызывает различные проблемы безопасности и конфиденциальности.

В настоящее время существует несколько криптографических технологий, которые могут справиться с этими вызовами, включая гомоморфное шифрование, кольцевые подписи, защищенные многопартнерские вычисления и zk-SNARKs. Гомоморфное шифрование позволяет выполнять операции без расшифровки зашифрованных данных, что помогает защищать безопасность балансов счетов и суммы транзакций, но не может защитить безопасность адресов счетов. Кольцевые подписи предоставляют особую форму цифровой подписи, которая может скрывать личность подписывающего, тем самым защищая безопасность адресов счетов, но не может защитить балансы счетов и суммы транзакций. Защищенные многопартнерские вычисления позволяют распределять вычислительные задачи между несколькими участниками, не позволяя никакому участнику знать данные других участников, эффективно защищая безопасность балансов счетов и сумм транзакций, но также не может защитить безопасность адресов счетов. Кроме того, гомоморфное шифрование, кольцевые подписи и защищенные многопартнерские вычисления не могут использоваться для проверки в блокчейн-среде, обладает ли доказатель достаточной суммой транзакции без раскрытия суммы транзакции, адреса счета и баланса счета.

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

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

Таким образом, множество сетевых проектов на основе zk-SNARKs появилось, таких как ZkSync, StarkNet, Mina, Filecoin и Aleo. С развитием этих проектов инновации в алгоритмах zk-SNARKs появляются одна за другой, и сообщается, что почти каждую неделю появляются новые алгоритмы. Кроме того, разработка аппаратного обеспечения, связанного с технологией zk-SNARKs, также стремительно продвигается, включая чипы, оптимизированные специально для zk-SNARKs. Например, такие проекты, как Ingonyama, Irreducible и Cysic, уже завершили масштабные募资, и эти достижения не только демонстрируют быстрый прогресс технологии zk-SNARKs, но и отражают переход от универсального аппаратного обеспечения к специализированному, такому как GPU, FPGA и ASIC.

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

Таким образом, мы решили систематически собрать знания о zk-SNARKs ( ZKP ), чтобы лучше помочь нам принимать инвестиционные решения в будущем. Для этого мы комплексно рассмотрели основные научные статьи, относящиеся к ZKP, отсортировав их по актуальности и количеству цитирований (; одновременно мы также подробно проанализировали информацию и белые книги ведущих проектов в этой области, отсортировав их по объему финансирования ). Эти комплексные сбор и анализ материалов предоставили прочную основу для написания данной статьи.

( Один. Основы zk-SNARKs

)# 1.Обзор

В 1985 году ученые Голдвассер, Микали и Раккофф в статье «Сложность знания интерактивных доказательств» впервые представили нулевое знание ### Zero-Knowledge Proof, ZKP ### и интерактивное знание ( Interactive Zero-Knowledge, IZK ). Эта статья стала основополагающей для нулевых знаний, определив множество концепций, оказавших влияние на последующие академические исследования. Например, определение знания — это "невозможный вычислительный ( unfeasible computation ) вывод", то есть знание должно быть выводом и являться невозможным вычислением, что означает, что это не может быть простой функцией, а должно быть сложной функцией. Невозможные вычисления обычно понимаются как NP-проблемы, то есть проблемы, для которых можно проверить правильность решения за полиномиальное время, где полиномиальное время означает, что время выполнения алгоритма можно выразить с помощью полиномиальной функции от размера входных данных. Это важный критерий для оценки эффективности и осуществимости алгоритмов в информатике. Поскольку процесс решения NP-проблем сложен, их считают невозможными вычислениями; но процесс проверки относительно прост, поэтому они очень хорошо подходят для верификации нулевых доказательств.

Классическим примером NP-проблемы является задача коммивояжера, в которой необходимо найти кратчайший путь, проходящий через ряд городов и возвращающийся в начальную точку. Хотя найти кратчайший путь может быть сложно, проверка того, является ли данный путь кратчайшим, относительно проста. Поскольку проверка общей длины конкретного пути может быть выполнена за полиномиальное время.

Золотвасер и др. в своей статье ввели концепцию "сложности знаний" ( knowledge complexity ), чтобы количественно оценить объем знаний, которые доказатель раскрывает верификатору в интерактивных доказательных системах. Они также предложили интерактивные доказательные системы ( Interactive Proof Systems, IPS ), в которых доказатель ( Prover ) и верификатор ( Verifier ) взаимодействуют в несколько раундов, чтобы доказать истинность утверждения.

Итак, определение zk-SNARKs, предложенное Голдвассером и др., является особым интерактивным доказательством, в котором проверяющий не получает никакой дополнительной информации, кроме истинности высказывания в процессе проверки; и было предложено три основных свойства, включая:

  1. Полнота ( completeness ): если доказательство истинно, честный доказатель может убедить честного проверяющего в этом факте;

  2. Надежность ( soundness ): если доказатель не знает содержания утверждения, он может лишь с незначительной вероятностью обмануть проверяющего;

3.zk-SNARKs(zero-knowledge): После завершения процесса доказательства, проверяющий получает только информацию "доказатель имеет это знание", и не может получить никакого дополнительного содержания.

(# 2.Пример доказательства с нулевым разглашением

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

Первый шаг: установить )Setup###

На этом этапе цель доказателя состоит в том, чтобы создать доказательство того, что он знает некое секретное число s, но при этом не раскрывать s напрямую. Пусть секретное число s;

Выберите два больших простых числа p и q, вычислите их произведение n. Установите простые числа p и q, вычислите полученное n;

Вычислите v=s^2 mod n, здесь v отправляется валидатору как часть доказательства, но этого недостаточно, чтобы валидатор или любой наблюдатель могли вывести s.

Случайным образом выберите целое число r, вычислите x = r^2 mod n и отправьте его проверяющему. Это значение x используется в последующем процессе проверки, но также не раскрывает s. Пусть случайное целое число r, вычисленное значение x.

Второй шаг: Вызов (Challenge)

Валидатор случайным образом выбирает бит a(, который может быть 0 или 1), а затем отправляет его доказателю. Этот "вызов" определяет шаги, которые доказатель должен предпринять далее.

Третий шаг: ответ (Response)

В соответствии с a-значением, выданным валидатором, доказатель отвечает:

Если a=0, доказатель отправляет g=r(, где r - это случайно выбранное число ).

Если a=1, доказатель вычисляет g=rs mod n и отправляет. Пусть валидатор отправляет случайный бит a, в зависимости от значения a, доказатель вычисляет g;

Наконец, валидатор проверяет, равен ли g^2 mod n xa^v mod n, основываясь на полученном g. Если равенство выполняется, валидатор принимает это доказательство. Когда a=0, валидатор вычисляет g^2 mod n, правую сторону проверяет xa^v mod n; когда a=1, валидатор вычисляет g^2 mod n, правую сторону проверяет xa^v mod n.

Здесь мы видим, что g^2 mod n=xa^v mod n, полученное валидатором, указывает на то, что доказатель успешно прошел процесс верификации, при этом не раскрыв своего секретного числа s. Здесь, поскольку a может принимать только значения 0 или 1, существует только две возможности, вероятность того, что доказатель пройдет верификацию за счет удачи, равна (, когда a равно 0, составляет 1/2. Но затем валидатор снова бросает вызов доказателю n раз, доказатель постоянно меняет соответствующие числа и отправляет их валидатору, и ему удается успешно пройти процесс верификации. Таким образом, вероятность того, что доказатель пройдет верификацию за счет удачи, равна )1/2(^n), что стремится к 0(, и вывод о том, что доказатель действительно знает некое секретное число s, получает подтверждение. Этот пример подтверждает целостность, надежность и нулевую знаниевость системы нулевых знаний.

) Два, неинтерактивные zk-SNARKs

(# 1. Фон

zk-SNARKs)ZKP###в традиционных концепциях обычно представляют собой интерактивные и онлайн-протоколы; например, протокол Sigma обычно требует от трех до пяти раундов взаимодействия для завершения аутентификации. Однако в таких сценариях, как мгновенные транзакции или голосование, часто нет возможности для многократного взаимодействия, особенно в приложениях технологии блокчейн, когда офлайн-функции верификации становятся особенно важными.

2. Введение NIZK

1

Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 8
  • Поделиться
комментарий
0/400
GhostAddressHuntervip
· 13ч назад
Не понимаю, но это выглядит очень впечатляюще.
Посмотреть ОригиналОтветить0
CommunityLurkervip
· 07-15 08:41
Я изучал этот ноль 5 лет назад.
Посмотреть ОригиналОтветить0
LiquidationWatchervip
· 07-13 12:17
Написал, что быка, теперь давайте поговорим о деньгах.
Посмотреть ОригиналОтветить0
BoredWatchervip
· 07-13 12:17
Только что сказал, что zk больше не будет использоваться в воздухе.
Посмотреть ОригиналОтветить0
SybilSlayervip
· 07-13 12:16
Слишком жестко, брат.
Посмотреть ОригиналОтветить0
BrokenYieldvip
· 07-13 12:14
ещё один хайп-цикл zk... я видел этот фильм раньше в 2019 году, и мы все знаем, чем это закончилось, смм
Посмотреть ОригиналОтветить0
SchrodingerWalletvip
· 07-13 12:12
Снова кто-то разбудил ZKEVM?
Посмотреть ОригиналОтветить0
MissedTheBoatvip
· 07-13 12:09
писал целый день, а всё равно не лучше, чем зайти в зону zk
Посмотреть ОригиналОтветить0
  • Закрепить