@@ -124,16 +124,16 @@ jobs:
124
124
circom circuits/nf_anon_nullifier.circom --output ./js/lib --sym --wasm
125
125
circom circuits/nf_anon.circom --output ./js/lib --sym --wasm
126
126
127
- - name : Create folder
127
+ - name : Create folders
128
128
if : github.repository == 'settlemint/solidity-zeto'
129
129
run : |
130
130
mkdir -p ./zeto/proving-keys
131
+ mkdir -p ./zeto/contracts-lib
131
132
132
133
- name : Download ptau
133
134
if : github.repository == 'settlemint/solidity-zeto'
135
+ working-directory : zeto/proving-keys/
134
136
run : |
135
- cd zeto
136
- cd proving-keys
137
137
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_12.ptau
138
138
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_13.ptau
139
139
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_16.ptau
@@ -142,23 +142,20 @@ jobs:
142
142
143
143
- name : Generate R1CS circuit format
144
144
if : github.repository == 'settlemint/solidity-zeto'
145
+ working-directory : zeto/zkp/
145
146
run : |
146
- cd zeto
147
- cd zkp/
148
147
circom circuits/anon_enc_nullifier.circom --output ../proving-keys --r1cs
149
148
circom circuits/anon_enc.circom --output ../proving-keys --r1cs
150
149
circom circuits/anon_nullifier.circom --output ../proving-keys --r1cs
151
150
circom circuits/anon.circom --output ../proving-keys --r1cs
152
151
circom circuits/check-nullifiers.circom --output ../proving-keys --r1cs
153
152
circom circuits/nf_anon_nullifier.circom --output ../proving-keys --r1cs
154
153
circom circuits/nf_anon.circom --output ../proving-keys --r1cs
155
- ls ../proving-keys -la
156
154
157
155
- name : Generate proving keys
158
156
if : github.repository == 'settlemint/solidity-zeto'
157
+ working-directory : zeto/zkp/
159
158
run : |
160
- cd zeto
161
- cd zkp/
162
159
snarkjs groth16 setup ../proving-keys/anon.r1cs ../proving-keys/powersOfTau28_hez_final_12.ptau ../proving-keys/anon.zkey
163
160
snarkjs groth16 setup ../proving-keys/anon_enc.r1cs ../proving-keys/powersOfTau28_hez_final_13.ptau ../proving-keys/anon_enc.zkey
164
161
snarkjs groth16 setup ../proving-keys/anon_nullifier.r1cs ../proving-keys/powersOfTau28_hez_final_16.ptau ../proving-keys/anon_nullifier.zkey
@@ -168,9 +165,8 @@ jobs:
168
165
169
166
- name : Per-circuit set up ceremony on proving keys
170
167
if : github.repository == 'settlemint/solidity-zeto'
168
+ working-directory : zeto/zkp/
171
169
run : |
172
- cd zeto
173
- cd zkp/
174
170
snarkjs zkey contribute ../proving-keys/anon.zkey ../proving-keys/anon_new.zkey --name="contribution" -v -e="random entropy"
175
171
snarkjs zkey contribute ../proving-keys/anon_enc.zkey ../proving-keys/anon_enc_new.zkey --name="contribution" -v -e="random entropy"
176
172
snarkjs zkey contribute ../proving-keys/anon_nullifier.zkey ../proving-keys/anon_nullifier_new.zkey --name="contribution" -v -e="random entropy"
@@ -180,10 +176,8 @@ jobs:
180
176
181
177
- name : Generate verfication keys
182
178
if : github.repository == 'settlemint/solidity-zeto'
179
+ working-directory : zeto/zkp/
183
180
run : |
184
- cd zeto
185
- cd zeto
186
- cd zkp/
187
181
snarkjs zkey export verificationkey ../proving-keys/anon_new.zkey ../proving-keys/anon-vkey.json
188
182
snarkjs zkey export verificationkey ../proving-keys/anon_enc_new.zkey ../proving-keys/anon_enc-vkey.json
189
183
snarkjs zkey export verificationkey ../proving-keys/anon_nullifier_new.zkey ../proving-keys/anon_nullifier-vkey.json
@@ -193,24 +187,19 @@ jobs:
193
187
194
188
- name : Generate solidity verifier library
195
189
if : github.repository == 'settlemint/solidity-zeto'
190
+ working-directory : zeto/zkp/
196
191
run : |
197
- mkdir -p ./zeto/contracts-lib
198
- mkdir -p ./zeto/contracts-lib
199
- cd zeto
200
- cd zkp/
201
192
snarkjs zkey export solidityverifier ../proving-keys/anon_new.zkey ../contracts-lib/verifier_anon.sol
202
193
snarkjs zkey export solidityverifier ../proving-keys/anon_enc_new.zkey ../contracts-lib/verifier_anon_enc.sol
203
194
snarkjs zkey export solidityverifier ../proving-keys/anon_nullifier_new.zkey ../contracts-lib/verifier_anon_nullifier.sol
204
195
snarkjs zkey export solidityverifier ../proving-keys/anon_enc_nullifier_new.zkey ../contracts-lib/verifier_anon_enc_nullifier.sol
205
196
snarkjs zkey export solidityverifier ../proving-keys/nf_anon_new.zkey ../contracts-lib/verifier_nf_anon.sol
206
197
snarkjs zkey export solidityverifier ../proving-keys/nf_anon_nullifier_new.zkey ../contracts-lib/verifier_nf_anon_nullifier.sol
207
198
208
-
209
199
- name : Edit solidity files
210
200
if : github.repository == 'settlemint/solidity-zeto'
201
+ working-directory : zeto/contracts-lib/
211
202
run : |
212
- cd zeto
213
- cd contracts-lib
214
203
sed 's/Groth16Verifier/Groth16Verifier_Anon/' verifier_anon.sol > ../solidity/contracts/lib/verifier_anon.sol
215
204
sed 's/Groth16Verifier/Groth16Verifier_AnonEnc/' verifier_anon_enc.sol > ../solidity/contracts/lib/verifier_anon_enc.sol
216
205
sed 's/Groth16Verifier/Groth16Verifier_AnonNullifier/' verifier_anon_nullifier.sol > ../solidity/contracts/lib/verifier_anon_nullifier.sol
0 commit comments