arnaucube
arnaucube/miksi-corePublic Self-hosted repository
miksi-core/compile-circuits.sh
compile-circuits.shRaw
 1#!/bin/sh
 2
 3# npm install
 4rm -r build
 5mkdir build
 6cd build
 7
 8echo $(date +"%T") "circom ../circuits/withdraw.circom --r1cs --wasm --sym"
 9itime="$(date -u +%s)"
10../node_modules/.bin/circom ../circuits/withdraw.circom --r1cs --wasm --sym
11ftime="$(date -u +%s)"
12echo "	($(($(date -u +%s)-$itime))s)"
13
14echo $(date +"%T") "snarkjs info -r withdraw.r1cs"
15../node_modules/.bin/snarkjs info -r withdraw.r1cs
16
17echo $(date +"%T") "snarkjs setup"
18itime="$(date -u +%s)"
19../node_modules/.bin/snarkjs setup -r withdraw.r1cs
20echo "	($(($(date -u +%s)-$itime))s)"
21echo $(date +"%T") "trusted setup generated"
22
23# sed -i 's/null/["0","0","0"]/g' proving_key.json
24
25
26echo $(date +"%T") "snarkjs generateverifier"
27itime="$(date -u +%s)"
28../node_modules/.bin/snarkjs generateverifier
29echo "	($(($(date -u +%s)-$itime))s)"
30echo $(date +"%T") "generateverifier generated"
31
32sed -i "s/solidity ^0.5.0/solidity ^0.6.0/g" verifier.sol
33sed -i "s/gas/gas()/g" verifier.sol
34sed -i "s/return the sum/return r the sum/g" verifier.sol
35sed -i "s/return the product/return r the product/g" verifier.sol
36cp verifier.sol ../contracts/verifier.sol