Una implementación en Rust de pruebas y verificación Circle STARK sobre el cuerpo M31, con un verificador no_std y un backend de prover con SIMD.
succinctlabs/sp1
Una máquina virtual de conocimiento cero que genera pruebas de ejecución correcta para programas escritos en Rust u otros lenguajes compilados con LLVM.
- Estrellas
- 1,768
- Forks
- 722
- Issues abiertos
- 156
- Último commit
- ayer
¿Qué es?
SP1 es una máquina virtual de conocimiento cero (zkVM) que demuestra la ejecución de programas compilados para la arquitectura RISC-V. Los desarrolladores escriben código Rust común, lo ejecutan en SP1 y obtienen una prueba de que el cálculo se realizó correctamente, que cualquiera puede verificar sin volver a ejecutar el programa.
El proyecto busca que las pruebas de conocimiento cero sean accesibles sin conocimientos especializados de criptografía. Los programas pueden usar Rust estándar con compatibilidad con std, y el README indica que la mayoría de los crates de Rust funcionan sin modificaciones. Entre los ejemplos compatibles se mencionan cargas de trabajo más grandes, como un light client de ZK Tendermint o una zkEVM de tipo 1 basada en Reth.
SP1 incluye una cadena de herramientas de Rust, scripts de instalación y un prover basado en el toolkit Plonky3. Admite precompiles para operaciones criptográficas comunes, que pueden añadirse como tablas adicionales junto a la CPU. El proyecto ha sido auditado por Veridise, Cantina, Zellic y KALOS, y requiere Rust 1.91.1 o posterior.
Funciones clave
- 01Demuestra la ejecución de programas arbitrarios en Rust y otros lenguajes compilados con LLVM.
- 02Admite Rust std y la mayoría de los crates de Rust sin modificaciones especiales.
- 03Permite ampliar las precompiles para operaciones criptográficas de uso habitual.
- 04Genera pruebas que se pueden verificar independientemente de la ejecución original.
- 05Incluye una cadena de herramientas de Rust, scripts de instalación y programas de ejemplo.
Casos de uso
- Crear light clients de conocimiento cero para blockchains como Tendermint.
- Desarrollar componentes zkEVM que demuestren la ejecución de bloques de Ethereum.
- Escribir cálculos verificables fuera de la cadena con código Rust común.
Inicio rápido
- 1
Instala Rust desde la página oficial rust-lang.org
- 2
Sigue la guía de instalación del libro de SP1
- 3
Lee la sección «Primeros pasos» del libro de SP1
Antes de usarlo
- Requiere Rust 1.91.1 o posterior (MSRV).
Temas
Preguntas frecuentes
- ¿Qué es sp1?
- Una máquina virtual de conocimiento cero que genera pruebas de ejecución correcta para programas escritos en Rust u otros lenguajes compilados con LLVM. SP1 es una máquina virtual de conocimiento cero (zkVM) que demuestra la ejecución de programas compilados para la arquitectura RISC-V. Los desarrolladores escriben código Rust común, lo ejecutan en SP1 y obtienen una prueba de que el cálculo se realizó correctamente, que cualquiera puede verificar sin volver a ejecutar el programa.
- ¿sp1 es gratuito? ¿Qué licencia tiene?
- sp1 es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿sp1 sigue mantenido?
- Mantenimiento activo. El último commit de sp1 fue el 5 nov 2026.
- ¿Para qué puedo usar sp1?
- Crear light clients de conocimiento cero para blockchains como Tendermint. Desarrollar componentes zkEVM que demuestren la ejecución de bloques de Ethereum. Escribir cálculos verificables fuera de la cadena con código Rust común.
- ¿Cómo se instala sp1?
- Instala Rust desde la página oficial rust-lang.org Sigue la guía de instalación del libro de SP1 Lee la sección «Primeros pasos» del libro de SP1
- ¿Dónde consigo sp1?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/succinctlabs/sp1
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Sistema operativo descentralizado y software de nodos que ejecuta la red Aleo para aplicaciones de conocimiento cero.
Primitivas de Ethereum verificadas formalmente y escritas en Lean, concebidas como una biblioteca compartida de especificaciones y demostraciones para proyectos Lean.
Framework de TypeScript para crear circuitos de conocimiento cero y zkApps, con generación y verificación de pruebas en navegadores, Node o para Mina Protocol.
Biblioteca de JavaScript y WebAssembly para generar y verificar pruebas zkSNARK con Groth16, PLONK y FFLONK, en circuitos de circom.
Una app de votación en Cardano que protege la privacidad: los votantes prueban que pertenecen al grupo mediante pruebas de conocimiento cero y sus votos son anónimos.