go-circom-prover-verifier/testdata/compile-circuits.sh
testdata/compile-circuits.shRaw
1#!/bin/sh
2
3compile_and_ts_and_witness() {
4 echo $(date +"%T") "circom circuit.circom --r1cs --wasm --sym"
5 itime="$(date -u +%s)"
6 circom circuit.circom --r1cs --wasm --sym
7 ftime="$(date -u +%s)"
8 echo " ($(($(date -u +%s)-$itime))s)"
9
10 echo $(date +"%T") "snarkjs info -r circuit.r1cs"
11 snarkjs info -r circuit.r1cs
12
13 echo $(date +"%T") "snarkjs setup"
14 itime="$(date -u +%s)"
15 snarkjs setup
16 echo " ($(($(date -u +%s)-$itime))s)"
17 echo $(date +"%T") "trusted setup generated"
18
19 sed -i 's/null/["0","0","0"]/g' proving_key.json
20
21 echo "calculating witness"
22 snarkjs calculatewitness --wasm circuit.wasm --input inputs.json --witness witness.json
23
24 echo $(date +"%T") "snarkjs generateverifier"
25 itime="$(date -u +%s)"
26 snarkjs generateverifier
27 echo " ($(($(date -u +%s)-$itime))s)"
28 echo $(date +"%T") "generateverifier generated"
29}
30
31echo "compile & trustesetup for circuit1k"
32cd circuit1k
33compile_and_ts_and_witness
34echo "compile & trustesetup for circuit5k"
35cd ../circuit5k
36compile_and_ts_and_witness
37# echo "compile & trustesetup for circuit10k"
38# cd ../circuit10k
39# compile_and_ts_and_witness
40# echo "compile & trustesetup for circuit20k"
41# cd ../circuit20k
42# compile_and_ts_and_witness