arnaucube
arnaucube/go-circom-prover-verifierPublic Self-hosted repository
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