ZK-доказательства за пределами роллапов: верифицируемый AI-инференс на Ethereum
Engineering Team
Что ZK-доказательства обеспечивают помимо масштабирования
Доказательства с нулевым разглашением (ZK proofs) были синонимом масштабирования блокчейна с 2021 года. zkSync, StarkNet, Scroll и Polygon zkEVM используют их для сжатия тысяч транзакций в одно доказательство, верифицируемое на Ethereum L1. Но масштабирование — лишь первое применение. Настоящая сила ZK-доказательств — это верифицируемые вычисления: возможность доказать, что произвольная программа выполнилась корректно, без её повторного запуска.
Этот фрейминг важен: ZK — это не технология масштабирования, у которой случайно есть другие применения. ZK — это технология верифицируемых вычислений общего назначения, которая нашла свой первый крупный рынок в масштабировании блокчейна.
В 2026 году наиболее захватывающие применения ZK — это не роллапы. Это:
- zkML — доказательство того, что модель машинного обучения выдала определённый результат без раскрытия весов модели
- ZK-копроцессоры — выполнение тяжёлых вычислений оффчейн и публикация компактного доказательства ончейн
- Верифицируемые учётные данные — доказательство атрибутов идентичности (возраст, гражданство, кредитный рейтинг) без раскрытия базовых данных
- Защита от MEV — шифрование намерения транзакции и доказательство валидности без раскрытия деталей строителям блоков
zkML: верифицируемый AI-инференс
Пересечение искусственного интеллекта и блокчейна было преимущественно хайпом до сих пор. Но zkML — применение доказательств с нулевым разглашением к инференсу машинного обучения — решает реальную проблему: как доверять, что AI-модель выдала конкретный результат?
Проблема доверия
Рассмотрим DeFi-протокол кредитования, использующий AI-модель для кредитного скоринга. Модель принимает ончейн-историю заёмщика и возвращает кредитный балл, определяющий коэффициент залога. Возникают три проблемы доверия:
- Целостность модели — как заёмщик узнает, что протокол использовал заявленную модель, а не другую, дискриминирующую его?
- Целостность входных данных — как протокол доказывает, что использовал корректные ончейн-данные, а не сфабрикованные?
- Целостность выполнения — как кто-либо верифицирует, что вычисление было выполнено правильно?
Без ZK-доказательств ответ: «доверяй оператору протокола». С zkML ответ: «верифицируй доказательство».
Как работает zkML
Системы zkML конвертируют инференс нейронной сети в арифметическую схему, затем генерируют ZK-доказательство корректного выполнения:
1. Квантизация модели: преобразование весов с плавающей запятой
в фиксированную точку (например, float32 → int8 или int16)
2. Компиляция схемы: трансляция каждого слоя нейросети
в арифметические ограничения:
- Линейные слои → схемы матричного умножения
- Активации ReLU → схемы сравнения
- Softmax → схемы таблиц поиска
3. Генерация свидетеля: выполнение модели с реальным входом,
запись всех промежуточных значений
4. Генерация доказательства: использование системы доказательств
(Halo2, Plonky3, SP1) для генерации компактного доказательства
корректного выполнения схемы
5. Верификация: смарт-контракт на Ethereum верифицирует
доказательство за O(1) время, независимо от размера модели
Текущие ограничения и практические границы
zkML в 2026 году реален, но ограничен:
| Размер модели | Время доказательства | Размер доказательства | Газ верификации | Практично? |
|---|---|---|---|---|
| Крошечная (100K параметров) | 5-30 секунд | 256 байт | ~300K газ | Да |
| Малая (1M параметров) | 1-5 минут | 256 байт | ~300K газ | Да, для асинхронных задач |
| Средняя (10M параметров) | 15-60 минут | 256 байт | ~300K газ | Возможно с GPU-проверами |
| Большая (100M+ параметров) | Часы — дни | 256 байт | ~300K газ | Только исследования |
| Масштаб LLM (1B+ параметров) | Непрактично | — | — | Пока нет |
Ключевой инсайт: размер доказательства и стоимость верификации постоянны независимо от размера модели. Только время доказательства масштабируется с вычислительной сложностью. Это значит, что узким местом является прувер, а не верификатор — и аппаратное обеспечение для проверов (GPU, FPGA, ASIC) быстро совершенствуется.
Применения zkML в продакшне
1. Ончейн-кредитный скоринг
DeFi-протокол запускает модель кредитного скоринга на ончейн-истории транзакций заёмщика. ZkML-доказательство гарантирует:
- Использована корректная модель (хеш модели совпадает с зафиксированным хешем)
- Использованы корректные входные данные (доказательство Меркла против корня состояния)
- Вычисление корректно (ZK-доказательство инференса)
Заёмщик получает лучшую ставку без раскрытия полной истории оператору протокола. Протокол получает верифицируемую оценку рисков без доверия к оффчейн-оракулу.
2. Верифицируемая модерация контента
Децентрализованная социальная медиа-платформа использует AI-классификатор для обнаружения вредного контента. zkML доказывает, что классификатор применялся последовательно ко всем постам — никакой выборочной цензуры, никаких скрытых предвзятостей. Доказательство подтверждает: «этот контент классифицирован как вредный моделью XYZ с уверенностью 0.95».
3. Приватное машинное обучение
Медицинский протокол доказывает, что диагностическая модель выдала определённый результат для данных пациента — без раскрытия ни данных пациента, ни весов модели. Приватность обеих сторон сохраняется, а результат вычисления публично верифицируем.
ZK-копроцессоры: вычисления оффчейн, верификация ончейн
Смарт-контракты на Ethereum намеренно ограничены в вычислениях. Стоимость газа делает сложную логику запретительно дорогой. ZK-копроцессоры решают эту проблему, перенося вычисления оффчейн, сохраняя верификацию ончейн.
Архитектура
+------------------+ +-------------------+ +------------------+
| Смарт-контракт |---->| ZK-копроцессор |---->| Верификатор |
| (Запрос) | | (Оффчейн) | | доказательства |
+------------------+ +-------------------+ +------------------+
| 1. Эмитировать | | 2. Прочитать | | 4. Верифицировать |
| событие | | состояние | | доказательство|
| с запросом | | 3. Выполнить | | 5. Сохранить |
| | | программу, | | результат |
| | | сгенерировать | | |
| | | доказательство | | |
+------------------+ +-------------------+ +------------------+
Процесс:
- Смарт-контракт эмитирует событие с запросом на вычисление (например, «вычислить 30-дневный TWAP ETH/USDC»)
- ZK-копроцессор читает историческое состояние блокчейна и выполняет вычисление оффчейн
- Копроцессор генерирует ZK-доказательство корректности вычисления
- Доказательство подаётся в контракт-верификатор ончейн
- Результат сохраняется ончейн и доступен любому смарт-контракту
Почему не просто использовать оракул?
Оракулы (Chainlink, API3) предоставляют оффчейн-данные смарт-контрактам, но требуют доверия к оператору оракула. ZK-копроцессоры обеспечивают вычисления без доверия:
| Свойство | Оракул | ZK-копроцессор |
|---|---|---|
| Модель доверия | Доверие оператору | Доверие математике (верификация доказательства) |
| Источник данных | Внешние API | Состояние блокчейна (верифицируемое) |
| Вычисления | Простая агрегация | Произвольные программы |
| Стоимость | Плата за запрос | Газ верификации доказательства |
| Задержка | Секунды | Минуты (время генерации доказательства) |
| Аудируемость | Репутация оператора | Криптографическое доказательство |
Ведущие проекты ZK-копроцессоров
Axiom — первый ZK-копроцессор для Ethereum, ориентированный на запросы к историческому состоянию. Axiom позволяет смарт-контрактам бездоверительно обращаться к любому историческому заголовку блока, состоянию аккаунта или слоту хранилища из истории Ethereum.
Brevis — ZK-копроцессор общего назначения, поддерживающий пользовательские вычисления над блокчейн-данными. Brevis использует модульную архитектуру с отдельными схемами для доступа к данным, вычислений и агрегации.
Lagrange — специализируется на межсетевых доказательствах состояния. ZK-копроцессор Lagrange может доказывать состояние из нескольких сетей (Ethereum, Arbitrum, Base) и делать его доступным в любой целевой сети.
Сравнение систем доказательств: SP1 vs RISC Zero vs Jolt
Выбор системы доказательств определяет опыт разработчика, производительность и безопасность ZK-приложения. Три системы стали лидирующими zkVM общего назначения в 2026 году:
SP1 (Succinct)
SP1 — это zkVM, доказывающая выполнение произвольных программ RISC-V. Разработчики пишут стандартный код на Rust, компилируют его в RISC-V, и SP1 генерирует ZK-доказательство корректного выполнения.
// Гостевая программа SP1 — стандартный код Rust
#![no_main]
sp1_zkvm::entrypoint!(main);
pub fn main() {
// Чтение входных данных от хоста
let input: Vec<u8> = sp1_zkvm::io::read();
// Выполнение вычислений (например, расчёт кредитного балла)
let score = compute_credit_score(&input);
// Фиксация выходных данных (становится частью публичного доказательства)
sp1_zkvm::io::commit(&score);
}
fn compute_credit_score(data: &[u8]) -> u32 {
// Ваша бизнес-логика — стандартный Rust
// Криптографические знания не требуются
42
}
RISC Zero
RISC Zero — пионер подхода RISC-V zkVM. Использует систему доказательств на основе STARK и предлагает наиболее зрелую экосистему инструментов.
// Гостевая программа RISC Zero
#![no_main]
risc0_zkvm::guest::entry!(main);
fn main() {
let input: MyInput = risc0_zkvm::guest::env::read();
let result = process(input);
risc0_zkvm::guest::env::commit(&result);
}
Jolt (a16z)
Jolt использует новаторский подход на основе таблиц поиска (Lasso + Surge), который избегает сложных арифметических схем, используемых в SNARK и STARK. Это приводит к более простой реализации прувера и конкурентоспособной производительности.
Сравнительная таблица
| Характеристика | SP1 | RISC Zero | Jolt |
|---|---|---|---|
| ISA | RISC-V | RISC-V | RISC-V |
| Система доказательств | Plonky3 (STARK) | STARK + обёртка Groth16 | Lasso/Surge (sumcheck) |
| Язык | Rust | Rust | Rust |
| Ончейн-верификатор | Solidity (Groth16) | Solidity (Groth16) | Solidity (sumcheck) |
| Газ верификации | ~270K | ~250K | ~300K |
| Скорость доказательства (относ.) | Быстро (1x) | Средне (1.5x медленнее) | Быстро (0.9x) |
| Рекурсия | Нативная | Нативная | В разработке |
| GPU-ускорение | Да (CUDA) | Да (CUDA, Metal) | Да (CUDA) |
| Прекомпайлы | SHA256, Keccak, secp256k1 | SHA256, RSA, ed25519 | Ограниченные |
| Зрелость | Продакшн (2025+) | Продакшн (2024+) | Бета (2025+) |
| Заметные пользователи | Axiom, мосты Succinct | Сеть Bonsai, zkVM-приложения | Портфель a16z |
Что выбрать?
- SP1 для максимально быстрого выхода на рынок и лучшего опыта разработчика. Команда Succinct быстро итерирует, документация отличная.
- RISC Zero для наиболее проверенной системы с самой широкой поддержкой прекомпайлов. Лучший выбор для криптографических приложений, требующих верификации RSA или ed25519.
- Jolt для передовой производительности в вычислительно-интенсивных приложениях. Подход Lasso на основе таблиц поиска превосходит в программах с интенсивным использованием памяти.
Практические применения в 2026 году
Верификация личности без раскрытия данных
ZK-система идентификации доказывает «этот пользователь старше 18 лет и является резидентом ЕС» без раскрытия имени, даты рождения или адреса. Доказательство генерируется из государственных цифровых учётных данных (кошелёк eIDAS 2.0) и верифицируется ончейн:
Вход (приватный): Цифровые учётные данные
Программа: Извлечь дату рождения → вычислить возраст → проверить ≥ 18
Извлечь страну → проверить ∈ страны-члены ЕС
Выход (публичный): Булево значение (true/false)
Доказательство: ZK-доказательство корректного выполнения программы на учётных данных
Это обеспечивает комплаентный DeFi (KYC без сбора данных), возрастной контроль доступа и трансграничную верификацию личности.
Защита от MEV через зашифрованные мемпулы
Фронтраннинг и сэндвич-атаки ежегодно извлекают миллиарды у пользователей DeFi. ZK-доказательства обеспечивают зашифрованные мемпулы, где транзакции зашифрованы, но доказуемо валидны:
- Пользователь шифрует транзакцию и генерирует ZK-доказательство того, что: транзакция валидна (корректный nonce, достаточный баланс), транзакция оплачивает достаточно газа, транзакция не нарушает правила протокола
- Строители блоков включают зашифрованную транзакцию на основе доказательства (они знают, что она валидна, но не могут прочитать детали)
- После коммита блока транзакция расшифровывается и исполняется
- MEV-экстракторы не могут фронтраннить, потому что не видят детали транзакции до коммита
Проекты Shutter Network и Penumbra реализуют варианты этого подхода.
Верифицируемые случайные функции для игр
Ончейн-игры нуждаются в доказуемо честной случайности. ZK-based VRF (Verifiable Random Function) генерирует случайные числа с доказательством корректности:
- Случайное начальное значение получается из данных будущего блока (непредсказуемо)
- Вычисление VRF доказывается в ZK (корректное выполнение)
- Доказательство верифицируется ончейн (любой может проверить честность)
Это устраняет необходимость доверять оракулу или комитету случайности.
Путь вперёд: 2026-2027
ZK-экосистема быстро развивается. Ключевые направления:
- Аппаратное ускорение — специализированные ZK-ASIC от Cysic, Ingonyama и Accseal снизят стоимость доказательств в 100-1000 раз, делая zkML в реальном времени возможным для моделей среднего размера.
- Агрегация доказательств — системы вроде Nebra и Aligned Layer агрегируют множество доказательств в одно, амортизируя стоимость верификации на сотни приложений.
- Формальная верификация — инструменты формальной верификации ZK-схем созревают, что критично для высокоценных приложений вроде мостов и финансовых протоколов.
- Доказательства на стороне клиента — мобильные устройства становятся способны генерировать простые ZK-доказательства в браузере, обеспечивая приватную верификацию учётных данных без сервера.
Часто задаваемые вопросы
В чём разница между ZK-доказательствами и ZK-роллапами?
ZK-роллапы — одно из применений ZK-доказательств: они используют ZK-доказательства для верификации пакетного выполнения транзакций для масштабирования блокчейна. ZK-доказательства сами по себе — это общий криптографический инструмент для верифицируемых вычислений. Эта статья фокусируется на нероллаповых применениях: zkML, ZK-копроцессорах, идентичности и защите от MEV.
Нужно ли мне разбираться в криптографии для работы с ZK?
С современными zkVM (SP1, RISC Zero, Jolt) — нет. Вы пишете стандартный код на Rust, и zkVM берёт на себя генерацию криптографического доказательства. Понимание основ ZK помогает при оптимизации, но не обязательно для базовых приложений.
Сколько стоит верификация ZK-доказательства на Ethereum?
Верификация доказательства Groth16 стоит примерно 250-300K газа (~$0,50-1,50 при типичных ценах газа). Верификация STARK стоит больше (~500K-1M газа), но может быть снижена через композицию доказательств (обёртка STARK в Groth16). На L2 (Arbitrum, Base) стоимость верификации в 10-100 раз ниже.
Могут ли ZK-доказательства гарантировать безопасность AI?
Нет. ZK-доказательства гарантируют вычислительную целостность — что программа выполнилась корректно. Они не гарантируют, что сама программа (или модель) безопасна, беспристрастна или согласована с человеческими ценностями. zkML доказывает «модель X выдала выход Y для входа Z». Это не доказывает «модель X справедлива» или «модель X безопасна».
Когда ZK-доказательства будут работать для больших языковых моделей?
Не в 2026 году. Текущие zkVM могут обрабатывать модели до ~10M параметров за разумное время. LLM имеют миллиарды параметров. Доказательство одного инференса GPT-4 заняло бы недели с текущей технологией. Аппаратное ускорение (ASIC) и алгоритмические улучшения могут сделать доказательство LLM среднего размера возможным к 2028-2029 годам.