README.md
zkwid-zkvm
RISC Zero host for zkwid: prove(ProveInput) returns bincode(Receipt), and verify(receipt) checks it against image_id() and returns the Journal.
core/holds the sharedProveInputandJournaltypes.guest/is the zkVM programzkwid-guest. It measures every stage with SHA-256, runs stage 0 (the shim) in wasmi 0.31 with theenv.keygenimport, and commits theJournal.
Features
| Feature | Effect |
|---|---|
prove | Enables prove (risc0-zkvm/prove) |
disable-dev-mode | Rejects RISC0_DEV_MODE fake receipts (risc0-zkvm/disable-dev-mode) |
Without features, the crate only verifies receipts.
zkVM
- Guest build: about 1.5 minutes from clean with the RISC Zero toolchain (rust 1.97.0), and about 30 seconds after a guest source change.
- Cycles for the test shim plus one extra stage: 236318 user cycles in 1 segment (po2 19).
- k256 uses the RISC Zero accelerated fork (
k256/v0.13.4-risczero.1, with the patchedcrypto-bigintandsha2), wired up through[patch.crates-io]inguest/Cargo.toml.
Dev-mode round trip with fake receipts:
RISC0_DEV_MODE=1 cargo test -p zkwid-zkvm --features prove -- --nocapture
Real succinct proof:
cargo test -p zkwid-zkvm --features prove --release -- --ignored real_proof --nocapture
