Реализация на Rust для создания и проверки Circle STARK на поле M31: верификатор no_std и SIMD-бэкенд для прувера.
succinctlabs/sp1
Виртуальная машина с нулевым разглашением, которая генерирует доказательства корректного выполнения программ на Rust и других языках, компилируемых через LLVM.
- Звёзды
- 1,768
- Форки
- 722
- Открытые issues
- 156
- Последний коммит
- позавчера
Что это?
SP1 — это виртуальная машина с нулевым разглашением (zkVM), которая доказывает выполнение программ, скомпилированных для архитектуры RISC-V. Разработчики пишут обычный код на Rust, запускают его в SP1 и получают доказательство корректности вычислений, которое можно проверить, не выполняя программу повторно.
Цель проекта — сделать доказательства с нулевым разглашением доступными без специальных знаний в криптографии. Программы могут использовать стандартную библиотеку Rust (std), а в README сказано, что большинство Rust-крейтов работает без изменений. В качестве примеров поддерживаемых более крупных задач упоминаются ZK-клиент Tendermint и zkEVM типа 1 на базе Reth.
SP1 предоставляет тулчейн Rust, скрипты установки и prover на базе инструментария Plonky3. Он поддерживает прекомпиляции для распространённых криптографических операций: их можно добавлять как дополнительные таблицы наряду с CPU. Проект прошёл аудит Veridise, Cantina, Zellic и KALOS; для работы требуется Rust версии 1.91.1 или новее.
Ключевые возможности
- 01Доказывает выполнение произвольных программ на Rust и других языках, компилируемых через LLVM.
- 02Поддерживает std в Rust и большинство Rust-крейтов без специальных изменений.
- 03Позволяет расширять набор прекомпиляций для часто используемых криптографических операций.
- 04Генерирует доказательства, которые можно проверить независимо от исходного выполнения.
- 05Предоставляет тулчейн Rust, скрипты установки и примеры программ.
Сценарии использования
- Создание клиентов с нулевым разглашением для блокчейнов, например Tendermint.
- Разработка компонентов zkEVM, доказывающих выполнение блоков Ethereum.
- Написание проверяемых off-chain вычислений на обычном коде Rust.
Быстрый старт
- 1
Установите Rust с официальной страницы rust-lang.org
- 2
Следуйте руководству по установке в книге SP1
- 3
Прочитайте раздел «Начало работы» в книге SP1
Что важно знать
- Требуется Rust версии 1.91.1 или новее (MSRV).
Темы
Частые вопросы
- Что такое sp1?
- Виртуальная машина с нулевым разглашением, которая генерирует доказательства корректного выполнения программ на Rust и других языках, компилируемых через LLVM. SP1 — это виртуальная машина с нулевым разглашением (zkVM), которая доказывает выполнение программ, скомпилированных для архитектуры RISC-V. Разработчики пишут обычный код на Rust, запускают его в SP1 и получают доказательство корректности вычислений, которое можно проверить, не выполняя программу повторно.
- sp1 можно использовать бесплатно? Какая у него лицензия?
- sp1 распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- sp1 всё ещё поддерживается?
- Активно поддерживается. Последний коммит в sp1 — 5 нояб. 2026 г..
- Для чего можно использовать sp1?
- Создание клиентов с нулевым разглашением для блокчейнов, например Tendermint. Разработка компонентов zkEVM, доказывающих выполнение блоков Ethereum. Написание проверяемых off-chain вычислений на обычном коде Rust.
- Как установить sp1?
- Установите Rust с официальной страницы rust-lang.org Следуйте руководству по установке в книге SP1 Прочитайте раздел «Начало работы» в книге SP1
- Где скачать sp1?
- Исходный код и инструкции по установке — на GitHub: https://github.com/succinctlabs/sp1
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Децентрализованная операционная система и ПО узлов, обеспечивающие работу сети Aleo для приложений с доказательствами с нулевым разглашением.
Формально верифицированные примитивы Ethereum на Lean — общая библиотека спецификаций и доказательств для проектов на Lean.
Фреймворк на TypeScript для создания zero-knowledge circuits и zkApps с генерацией и проверкой доказательств в браузере, Node.js или Mina Protocol.
Библиотека на JavaScript и WebAssembly для создания и проверки zkSNARK-доказательств с Groth16, PLONK и FFLONK, работающая с циркуитами circom.
Приложение для анонимного голосования в Cardano: участники подтверждают членство с помощью доказательств с нулевым разглашением, а голоса остаются конфиденциальными.