-
Please follow this instruction to install Rust.
-
We test the code using
rustc 1.43.0
. Userustup override set 1.43.0
to specify the rust version for compilation. -
Since many Rust dependency packages may not be backward-compatible, we strongly recommend building the code with the provided
Cargo.lock
. Please refer torun.sh
file for details.
Arkworks/
: A fork of the Arkworks implementation for ZK Proof, especially Groth16.ZENO-engine/
: Implementation of ZENO optimizations.zkNN-circuit/
: Implementation of zkNN circuits.
A laptop should be sufficient to generate proof for small neural networks such as LeNet. Generating proof for large neural networks such as ResNet-50 may need a machine with sufficient (e.g., 256GB) RAM.
cd zkNN-circuit/baseline-one-private
sh ./run.sh
cd zkNN-circuit/baseline-both-private
sh ./run.sh
cd zkNN-circuit/all-optimizations
sh ./run.sh