gen sh
#!/bin/bash
# mkdir -p zk
## Compile
# circom -l . -l $(npm root -g) main.circom --r1cs --sym --c -o zk
##
time npx snarkjs@0.6.11 groth16 setup main.r1cs ./powersOfTau28_hez_final_21.ptau ./contributions/initial.zkey
# npx snarkjs@0.6.11 zkey beacon contributions/initial.zkey main_final.zkey 6043406386091147452101140922484360621494493400851389721589489228310759223150 10 -v
## Export verification key
# time snarkjs zkey export verificationkey ./contributions/main_final.zkey ./verification_key.json
## Export solidity verifier
# time snarkjs zkey export solidityverifier ./contributions/main_final.zkey ./main.sol
## Export solidity verifier
# node ./zk/main_c_js/generate_witness.js ./zk/main_c_js/main_c.wasm ./input.json ./witness.wtns
## Generate proof
# echo "Generate proof..."
# time ./prover ../contributions/main_final.zkey ./witness.wtns ./proof.json ./public.json
## Verify proof
#time snarkjs groth16 verify ./test/verification_key.json ./test/public.json ./test/proof.json --verbose