# clone repository
git clone [email protected]:Frenchkebab/groth16-from-scratch.git
cd groth16-from-scratch
# install dependencies
python -m venv ape-devel
source ape-devel/bin/activate
pip install --upgrade pip
pip install eth-ape'[recommended-plugins]'
# run script
ape test
Since Field Prim of BN128 curve is very big, this test takes a while
The contract Groth16Verifier.sol
verifies if the prover knows correct values out
, x
, y
that satisfies the following formula:
Using Groth16, the prover can prove the fact that he knows those values without exposing them.
To learn more about the process, check out the resources below: