Сеть доказательств — это инфраструктурный слой вне цепи, который координирует генерацию, проверку и доставку доказательств с нулевым разглашением (zero-knowledge proofs) в приложениях Блокчейн. Она служит связующим звеном между ZK сопроцессорами и слоем блокчейна, обеспечивая эффективную верификацию доказательств, сгенерированных вне цепи, на цепи в масштабируемом и децентрализованном формате.
ZK копроцессоры способны создавать криптографические доказательства для произвольных вычислений. Однако эти системы нуждаются в способе маршрутизации доказательств в правильные on-chain среды, управления зависимостями данных и обеспечения того, чтобы доказательства генерировались вовремя и с целостностью. Сети доказательств решают эти задачи, действуя как децентрализованные или полудецентрализованные уровни, которые управляют провайдерами, проверяющими и связанными компонентами оркестрации.
Вместо того чтобы каждой умной контракту, роллапу или приложению создавать свою собственную изолированную инфраструктуру провайдеров, сети доказательства позволяют нескольким участникам использовать общую экосистему провайдеров. Это сокращает дублирование, снижает затраты и создает более модульную и компонуемую экосистему для приложений с нулевым знанием.
Роль сети доказательств заключается в том, чтобы взять доказательство, сгенерированное ZK-копроцессором, и передать его в верификатор на цепочке в формате, который может быть использован смарт-контрактами. Этот процесс включает в себя несколько шагов, часто абстрагированных от конечного пользователя.
Сначала пользователь или контракт отправляет запрос к ZK сопроцессору через интерфейс или API. Сопроцессор выполняет необходимую логику и генерирует доказательство. Вместо того чтобы размещать доказательство напрямую в блокчейне, оно отправляется координатору сети доказательств, который обеспечивает его действительность, связь с правильными вычислениями и отсутствие дублирования.
После валидации сеть доказательств либо размещает доказательство в блокчейне, либо возвращает его пользователю или ретранслятору, который затем включает его в транзакцию. Умный контракт получает доказательство и проверяет его с помощью предзагруженного ключа проверки. Если проверка проходит, контракт продолжает свою логику на основе доверенного результата.
Эта архитектура делает инфраструктуру ZK масштабируемой и составляемой. Вместо того чтобы жестко кодировать конкретные схемы или системы доказательств в каждый смарт-контракт, разработчики могут полагаться на сеть доказательств, которая будет служить промежуточным слоем, соединяющим вычисления вне цепи с переходами состояния в цепи.
Типичная сеть доказательства включает несколько функциональных ролей. Доказатели отвечают за генерацию криптографических доказательств. Они выполняют вычисления, определенные приложением, и используют криптографические библиотеки для создания доказательства того, что вычисления были выполнены корректно. Доказатели могут быть специализированными узлами, GPU-работниками или доверенными вычислительными средами, в зависимости от дизайна сети.
Верификаторы — это смарт-контракты в Блокчейне, которые проверяют действительность представленных доказательств. Они легковесные, детерминированные и безопасные. Как только доказательство проходит верификацию, связанное с ним вычисление принимается как действительное Блокчейном.
Релееры — это внецепочечные участники, которые обеспечивают связь между инфраструктурой доказателей и Блокчейном. Они подают доказательства в соответствующий контракт, включают необходимую метаданные и обеспечивают своевременную доставку. В некоторых сетях релееры являются необязательными; в других они являются участниками с вознаграждением.
Координаторы управляют сопоставлением запросов с провайдерами. Они получают запросы пользователей или запросы на вычисления и назначают их доступным провайдерам. Координаторы также могут агрегация результатов, удаление дубликатов идентичных вычислений и предоставление гарантий доступности. В децентрализованных сетях этот уровень координации может быть реализован через механизмы стекинга и слайсинга для обеспечения целостности.
Разделение этих ролей позволяет создать гибкую архитектуру. Один участник может выполнять несколько ролей в небольших сетях, или роли могут быть распределены между многими участниками в более крупной системе. Эта модульность является ключом к масштабированию доказательных систем на различных блокчейнах и в разных сценариях использования.
Несколько проектов строят сети доказательств в производственных средах. Prover Network от Succinct позволяет разработчикам генерировать нулевые доказательства по запросу и отправлять их на любую совместимую с EVM цепь. Она поддерживает децентрализованное доказательство и нацелена на то, чтобы сделать любое приложение на цепи проверяемым с помощью сжатых доказательств. Succinct также протестировала свою инфраструктуру на World Chain, эксперименте с роллапами от Tools for Humanity.
ZeroGravity создает полностью децентрализованный слой доказательства, который поддерживает несколько бэкендов доказательства. Он сосредоточен на интероперабельности и нацелен на соединение ZK копрцессоров с Ethereum, роллапами и модульными блокчейнами, такими как Celestia. Абстрагируя стек генерации и верификации доказательства, он позволяет приложениям подключаться к унифицированному ZK слою.
Сеть Лагранжа специализируется на проверяемой доступности данных и запросах состояния. Она позволяет приложениям запрашивать ответы с подтверждением доказательств на кросс-цепочечных запросах, таких как проверка балансов токенов или владения NFT на других цепочках. Лагранж использует модульный подход, позволяя разработчикам выбирать системы доказательств и источники данных в соответствии с потребностями их приложений.
Каждая из этих сетей решает разные уровни проблемы. Некоторые сосредоточены на вычислениях, другие на доступе к данным, а третьи на инфраструктуре на уровне протокола. Вместе они формируют экосистему, в которой вычисления с нулевым раскрытием могут стать стандартизированным, многоразовым слоем в проектировании Блокчейн.
Существуют две основные модели взаимодействия сетей доказательства с блокчейнами: нативная верификация и модульная верификация.
Нативная проверка означает, что Блокчейн сам по себе, часто на уровне протокола, поддерживает проверку нулевых доказательств. Это имеет место в Ethereum, который включает предкомпилированные контракты для проверки доказательств Groth16 и PLONK. Нативная поддержка обеспечивает более быструю проверку и более низкие газовые расходы, но требует стандартизации и ограничивает типы доказательств, которые могут быть использованы.
Модульная верификация использует другой подход. Она рассматривает сети доказательств как внешние сервисы, которые могут соединяться с любой цепочкой с помощью контрактов или мостов. Контракт верификатора на цепочке может быть развернут самим приложением, а формат доказательства определяется вне цепочки. Эта модель более гибкая, позволяя разработчикам использовать новые системы доказательства и пользовательскую логику. Однако это связано с более высокими затратами и сложностью.
Выбор между нативной и модульной верификацией зависит от потребностей приложения. Нативная верификация подходит для приложений с высоким объемом и предсказуемыми форматами доказательств. Модульная верификация лучше подходит для исследований, пользовательской логики или быстро развивающихся систем. Сети доказательств все чаще проектируются для поддержки обеих моделей, обеспечивая резервные пути и совместимые слои.
По мере развития технологии ZK сети доказательства становятся ключевой инфраструктурой для масштабируемых, бездоверительных вычислений. Они позволяют разработчикам создавать мощные оффчейн-системы и безопасно соединять их с блокчейн-средами. Таким образом, они превращают доказательства с нулевым разглашением из криптографической концепции в готовый к производству технологический стек.