Zero-knowledge proof toolkit targeting mobile devices.
First make sure you have the exact correct version of Noir installed so the artifacts can be read:
noirup -C 03b58fa2Compile the Noir circuit and generate the witness:
cd noir-r1cs/noir-examples/poseidon-rounds
nargo executeGenerate the R1CS instance:
cargo run --release --bin noir-r1cs ./noir-r1cs/noir-examples/poseidon-rounds/target/basic.json ./noir-r1cs/noir-examples/poseidon-rounds/target/basic.gzGenerate the WHIR GR1CS proof:
cargo run --release --bin prover -- --input_file_path ./noir-r1cs/r1cs.jsonThis will write the proof to prover/proof.
Recursively verify in a Gnark proof (reads the proof from ../ProveKit/prover/proof):
cd ..
git clone https://github.com/reilabs/gnark-whir
cd gnark-whir
go run .This project depends on the following libraries, which are developed in lockstep: