Implementação em Rust de prova e verificação de Circle STARK sobre o campo M31, com um verificador no_std e backend de prova com SIMD.
succinctlabs/sp1
Uma máquina virtual de conhecimento zero que gera provas de execução correta para programas escritos em Rust ou em outras linguagens compiladas com LLVM.
- Estrelas
- 1,768
- Forks
- 722
- Issues abertas
- 156
- Último commit
- ontem
O que é?
SP1 é uma máquina virtual de conhecimento zero (zkVM) que comprova a execução de programas compilados para a arquitetura RISC-V. Os desenvolvedores escrevem código Rust comum, executam-no no SP1 e obtêm uma prova de que a computação foi realizada corretamente, que qualquer pessoa pode verificar sem executar o programa novamente.
O projeto busca tornar as provas de conhecimento zero acessíveis sem exigir conhecimentos especializados em criptografia. Os programas podem usar Rust padrão com suporte a std, e o README afirma que a maioria dos crates Rust funciona sem modificações. Entre os exemplos de cargas de trabalho maiores citados como compatíveis estão um light client ZK do Tendermint e uma zkEVM tipo 1 baseada no Reth.
O SP1 oferece uma toolchain Rust, scripts de instalação e um prover baseado no toolkit Plonky3. Ele oferece suporte a precompiles para operações criptográficas comuns, que podem ser adicionadas como tabelas extras junto à CPU. O projeto passou por auditorias da Veridise, Cantina, Zellic e KALOS e requer Rust 1.91.1 ou mais recente.
Recursos principais
- 01Comprova a execução de programas Rust arbitrários e de outras linguagens compiladas com LLVM.
- 02Oferece suporte a Rust std e à maioria dos crates Rust sem modificações especiais.
- 03Permite adicionar precompiles extensíveis para operações criptográficas comuns.
- 04Gera provas que podem ser verificadas independentemente da execução original.
- 05Oferece uma toolchain Rust, scripts de instalação e programas de exemplo.
Casos de uso
- Criar light clients de conhecimento zero para blockchains como o Tendermint.
- Desenvolver componentes de zkEVM que comprovam a execução de blocos do Ethereum.
- Escrever computações verificáveis off-chain usando código Rust comum.
Início rápido
- 1
Instale Rust pela página oficial rust-lang.org
- 2
Siga o guia de instalação do livro do SP1
- 3
Leia a seção «Primeiros passos» do livro do SP1
Antes de usar
- Requer Rust 1.91.1 ou mais recente (MSRV).
Tópicos
Perguntas frequentes
- O que é sp1?
- Uma máquina virtual de conhecimento zero que gera provas de execução correta para programas escritos em Rust ou em outras linguagens compiladas com LLVM. SP1 é uma máquina virtual de conhecimento zero (zkVM) que comprova a execução de programas compilados para a arquitetura RISC-V. Os desenvolvedores escrevem código Rust comum, executam-no no SP1 e obtêm uma prova de que a computação foi realizada corretamente, que qualquer pessoa pode verificar sem executar o programa novamente.
- sp1 é gratuito? Qual é a licença?
- sp1 é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- sp1 ainda é mantido?
- Manutenção ativa. O último commit de sp1 foi em 5 de nov. de 2026.
- Para que posso usar sp1?
- Criar light clients de conhecimento zero para blockchains como o Tendermint. Desenvolver componentes de zkEVM que comprovam a execução de blocos do Ethereum. Escrever computações verificáveis off-chain usando código Rust comum.
- Como instalar sp1?
- Instale Rust pela página oficial rust-lang.org Siga o guia de instalação do livro do SP1 Leia a seção «Primeiros passos» do livro do SP1
- Onde consigo sp1?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/succinctlabs/sp1
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Sistema operacional descentralizado e software de nós que executam a rede Aleo para aplicações de conhecimento zero.
Primitivos do Ethereum verificados formalmente em Lean, criados como uma biblioteca compartilhada de especificações e provas para projetos em Lean.
Framework TypeScript para criar circuitos de conhecimento zero e zkApps, com geração e verificação de provas no navegador, no Node ou para o Mina Protocol.
Biblioteca JavaScript e WebAssembly para gerar e verificar provas zkSNARK com Groth16, PLONK e FFLONK, usada com circuitos circom.
App de votação privada on-chain na Cardano, em que os eleitores comprovam sua participação com provas de conhecimento zero e mantêm seus votos anônimos.