mirror of
https://github.com/HerodotusDev/swiftness.git
synced 2026-05-22 13:26:29 +00:00
No description
- Rust 100%
|
|
||
|---|---|---|
| .cargo | ||
| .github/workflows | ||
| cli | ||
| crates | ||
| examples | ||
| proof_parser | ||
| wasm_bindings | ||
| .dockerignore | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| clippy.toml | ||
| LICENSE | ||
| README.md | ||
| runtime.dockerfile | ||
| rust-toolchain.toml | ||
| rustfmt.toml | ||
Swiftness CairoVM Verifier
Swiftness is a Rust implementation of the Cairo-VM STARK verifier with layouts, inspired by StarkWare's Cairo-verifier in Cairo0.
Getting Started
Verify an Example Proof
cd cli && cargo run --release --bin swiftness --features starknet_with_keccak,keccak_160_lsb,stone5 --no-default-features -- --proof ../examples/proofs/starknet_with_keccak/cairo0_stone5_example_proof.json
Running Tests
cargo test
WebAssembly (WASM) Setup
-
Install
wasm-pack:cargo install wasm-pack -
Build WASM:
cd wasm_bindings && wasm-pack build --target web --features recursive_with_poseidon,blake2s_248_lsb,stone5 --no-default-features
Features
Implemented Layouts
- dex
- recursive
- recursive_with_poseidon
- small
- starknet
- starknet_with_keccak
- dynamic
Commitment Hashes
- keccak_160_lsb
- keccak_248_lsb
- blake2s_160_lsb
- blake2s_248_lsb
Stone Prover versions
- Stone5
- Stone6
Web Support
- WASM support
- NO_STD support
- Web Demo
- NPM packages
Other Platforms Support
- Bare Armv7-R, Big Endian -
armebv7r-none-eabi - Bare RISC-V (RV64IMAC ISA) -
riscv64imac-unknown-none-elf - Bare ARM64, softfloat -
aarch64-unknown-none-softfloat - Bare ARM64, hardfloat -
aarch64-unknown-none
Contributing
Contributions are welcome! Feel free to open issues or submit pull requests to help improve this project.