Skip to content

Commit 68e96e8

Browse files
committed
feat: align some repos
1 parent 848e2c3 commit 68e96e8

File tree

1 file changed

+103
-106
lines changed

1 file changed

+103
-106
lines changed

.github/workflows/solidity.yml

Lines changed: 103 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ jobs:
5050
with:
5151
sarif: slither.sarif
5252
slither-args: --filter-paths "lib/" --filter-paths "node_modules/"
53-
solc-version: 0.8.24
5453
fail-on: none
5554

5655
- name: Upload findings to GitHub Advanced Security Dashboard
@@ -94,122 +93,121 @@ jobs:
9493
- name: Install Node dependencies
9594
run: npm install
9695

97-
- name: install circom
96+
- name: Install circom
97+
if: github.repository == 'settlemint/solidity-zeto'
9898
run: |
99-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
100-
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh -s -- -y
101-
git clone https://github.com/iden3/circom.git
102-
cd circom
103-
cargo build --release
104-
cargo install --path circom
105-
fi
106-
107-
- name: install snarkjs
99+
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh -s -- -y
100+
git clone https://github.com/iden3/circom.git
101+
cd circom
102+
cargo build --release
103+
cargo install --path circom
104+
105+
- name: Install snarkjs
106+
if: github.repository == 'settlemint/solidity-zeto'
108107
run: |
109-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
110-
npm install -g snarkjs@latest
111-
fi
108+
npm install -g snarkjs@latest
112109
113-
- name: install zeto
110+
- name: Install zeto
111+
if: github.repository == 'settlemint/solidity-zeto'
114112
run: |
115-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
116-
git clone https://github.com/victoryeo/zeto.git
117-
cd zeto
118-
cd zkp/circuits
119-
npm install
120-
cd ..
121-
circom circuits/anon_enc_nullifier.circom --output ./js/lib --sym --wasm
122-
circom circuits/anon_enc.circom --output ./js/lib --sym --wasm
123-
circom circuits/anon_nullifier.circom --output ./js/lib --sym --wasm
124-
circom circuits/anon.circom --output ./js/lib --sym --wasm
125-
circom circuits/check-nullifiers.circom --output ./js/lib --sym --wasm
126-
circom circuits/nf_anon_nullifier.circom --output ./js/lib --sym --wasm
127-
circom circuits/nf_anon.circom --output ./js/lib --sym --wasm
128-
fi
129-
- name: create folder
113+
git clone https://github.com/victoryeo/zeto.git
114+
cd zeto
115+
cd zkp/circuits
116+
npm install
117+
cd ..
118+
circom circuits/anon_enc_nullifier.circom --output ./js/lib --sym --wasm
119+
circom circuits/anon_enc.circom --output ./js/lib --sym --wasm
120+
circom circuits/anon_nullifier.circom --output ./js/lib --sym --wasm
121+
circom circuits/anon.circom --output ./js/lib --sym --wasm
122+
circom circuits/check-nullifiers.circom --output ./js/lib --sym --wasm
123+
circom circuits/nf_anon_nullifier.circom --output ./js/lib --sym --wasm
124+
circom circuits/nf_anon.circom --output ./js/lib --sym --wasm
125+
126+
- name: Create folder
127+
if: github.repository == 'settlemint/solidity-zeto'
130128
run: |
131-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
132-
mkdir -p ./zeto/proving-keys
133-
fi
134-
- name: download ptau
129+
mkdir -p ./zeto/proving-keys
130+
131+
- name: Download ptau
132+
if: github.repository == 'settlemint/solidity-zeto'
135133
run: |
136-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
137-
cd zeto
138-
cd proving-keys
139-
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_12.ptau
140-
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_13.ptau
141-
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_16.ptau
142-
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_11.ptau
143-
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_15.ptau
144-
fi
145-
- name: generate R1CS circuit format
134+
cd zeto
135+
cd proving-keys
136+
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_12.ptau
137+
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_13.ptau
138+
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_16.ptau
139+
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_11.ptau
140+
wget -nv https://storage.googleapis.com/zkevm/ptau/powersOfTau28_hez_final_15.ptau
141+
142+
- name: Generate R1CS circuit format
143+
if: github.repository == 'settlemint/solidity-zeto'
146144
run: |
147-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
148-
cd zeto
149-
cd zkp/
150-
circom circuits/anon_enc_nullifier.circom --output ../proving-keys --r1cs
151-
circom circuits/anon_enc.circom --output ../proving-keys --r1cs
152-
circom circuits/anon_nullifier.circom --output ../proving-keys --r1cs
153-
circom circuits/anon.circom --output ../proving-keys --r1cs
154-
circom circuits/check-nullifiers.circom --output ../proving-keys --r1cs
155-
circom circuits/nf_anon_nullifier.circom --output ../proving-keys --r1cs
156-
circom circuits/nf_anon.circom --output ../proving-keys --r1cs
157-
ls ../proving-keys -la
158-
fi
159-
- name: generate proving keys
145+
cd zeto
146+
cd zkp/
147+
circom circuits/anon_enc_nullifier.circom --output ../proving-keys --r1cs
148+
circom circuits/anon_enc.circom --output ../proving-keys --r1cs
149+
circom circuits/anon_nullifier.circom --output ../proving-keys --r1cs
150+
circom circuits/anon.circom --output ../proving-keys --r1cs
151+
circom circuits/check-nullifiers.circom --output ../proving-keys --r1cs
152+
circom circuits/nf_anon_nullifier.circom --output ../proving-keys --r1cs
153+
circom circuits/nf_anon.circom --output ../proving-keys --r1cs
154+
ls ../proving-keys -la
155+
156+
- name: Generate proving keys
157+
if: github.repository == 'settlemint/solidity-zeto'
160158
run: |
161-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
162-
cd zeto
163-
cd zkp/
164-
snarkjs groth16 setup ../proving-keys/anon.r1cs ../proving-keys/powersOfTau28_hez_final_12.ptau ../proving-keys/anon.zkey
165-
snarkjs groth16 setup ../proving-keys/anon_enc.r1cs ../proving-keys/powersOfTau28_hez_final_13.ptau ../proving-keys/anon_enc.zkey
166-
snarkjs groth16 setup ../proving-keys/anon_nullifier.r1cs ../proving-keys/powersOfTau28_hez_final_16.ptau ../proving-keys/anon_nullifier.zkey
167-
snarkjs groth16 setup ../proving-keys/anon_enc_nullifier.r1cs ../proving-keys/powersOfTau28_hez_final_16.ptau ../proving-keys/anon_enc_nullifier.zkey
168-
snarkjs groth16 setup ../proving-keys/nf_anon.r1cs ../proving-keys/powersOfTau28_hez_final_11.ptau ../proving-keys/nf_anon.zkey
169-
snarkjs groth16 setup ../proving-keys/nf_anon_nullifier.r1cs ../proving-keys/powersOfTau28_hez_final_15.ptau ../proving-keys/nf_anon_nullifier.zkey
170-
fi
171-
- name: per-circuit set up ceremony on proving keys
159+
cd zeto
160+
cd zkp/
161+
snarkjs groth16 setup ../proving-keys/anon.r1cs ../proving-keys/powersOfTau28_hez_final_12.ptau ../proving-keys/anon.zkey
162+
snarkjs groth16 setup ../proving-keys/anon_enc.r1cs ../proving-keys/powersOfTau28_hez_final_13.ptau ../proving-keys/anon_enc.zkey
163+
snarkjs groth16 setup ../proving-keys/anon_nullifier.r1cs ../proving-keys/powersOfTau28_hez_final_16.ptau ../proving-keys/anon_nullifier.zkey
164+
snarkjs groth16 setup ../proving-keys/anon_enc_nullifier.r1cs ../proving-keys/powersOfTau28_hez_final_16.ptau ../proving-keys/anon_enc_nullifier.zkey
165+
snarkjs groth16 setup ../proving-keys/nf_anon.r1cs ../proving-keys/powersOfTau28_hez_final_11.ptau ../proving-keys/nf_anon.zkey
166+
snarkjs groth16 setup ../proving-keys/nf_anon_nullifier.r1cs ../proving-keys/powersOfTau28_hez_final_15.ptau ../proving-keys/nf_anon_nullifier.zkey
167+
168+
- name: Per-circuit set up ceremony on proving keys
169+
if: github.repository == 'settlemint/solidity-zeto'
172170
run: |
173-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
174-
cd zeto
175-
cd zkp/
176-
snarkjs zkey contribute ../proving-keys/anon.zkey ../proving-keys/anon_new.zkey --name="contribution" -v -e="random entropy"
177-
snarkjs zkey contribute ../proving-keys/anon_enc.zkey ../proving-keys/anon_enc_new.zkey --name="contribution" -v -e="random entropy"
178-
snarkjs zkey contribute ../proving-keys/anon_nullifier.zkey ../proving-keys/anon_nullifier_new.zkey --name="contribution" -v -e="random entropy"
179-
snarkjs zkey contribute ../proving-keys/anon_enc_nullifier.zkey ../proving-keys/anon_enc_nullifier_new.zkey --name="contribution" -v -e="random entropy"
180-
snarkjs zkey contribute ../proving-keys/nf_anon.zkey ../proving-keys/nf_anon_new.zkey --name="contribution" -v -e="random entropy"
181-
snarkjs zkey contribute ../proving-keys/nf_anon_nullifier.zkey ../proving-keys/nf_anon_nullifier_new.zkey --name="contribution" -v -e="random entropy"
182-
fi
183-
- name: generate verfication keys
171+
cd zeto
172+
cd zkp/
173+
snarkjs zkey contribute ../proving-keys/anon.zkey ../proving-keys/anon_new.zkey --name="contribution" -v -e="random entropy"
174+
snarkjs zkey contribute ../proving-keys/anon_enc.zkey ../proving-keys/anon_enc_new.zkey --name="contribution" -v -e="random entropy"
175+
snarkjs zkey contribute ../proving-keys/anon_nullifier.zkey ../proving-keys/anon_nullifier_new.zkey --name="contribution" -v -e="random entropy"
176+
snarkjs zkey contribute ../proving-keys/anon_enc_nullifier.zkey ../proving-keys/anon_enc_nullifier_new.zkey --name="contribution" -v -e="random entropy"
177+
snarkjs zkey contribute ../proving-keys/nf_anon.zkey ../proving-keys/nf_anon_new.zkey --name="contribution" -v -e="random entropy"
178+
snarkjs zkey contribute ../proving-keys/nf_anon_nullifier.zkey ../proving-keys/nf_anon_nullifier_new.zkey --name="contribution" -v -e="random entropy"
179+
180+
- name: Generate verfication keys
181+
if: github.repository == 'settlemint/solidity-zeto'
184182
run: |
185-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
186-
cd zeto
187-
cd zkp/
188-
snarkjs zkey export verificationkey ../proving-keys/anon_new.zkey ../proving-keys/anon-vkey.json
189-
snarkjs zkey export verificationkey ../proving-keys/anon_enc_new.zkey ../proving-keys/anon_enc-vkey.json
190-
snarkjs zkey export verificationkey ../proving-keys/anon_nullifier_new.zkey ../proving-keys/anon_nullifier-vkey.json
191-
snarkjs zkey export verificationkey ../proving-keys/anon_enc_nullifier_new.zkey ../proving-keys/anon_enc_nullifier-vkey.json
192-
snarkjs zkey export verificationkey ../proving-keys/nf_anon_new.zkey ../proving-keys/nf_anon-vkey.json
193-
snarkjs zkey export verificationkey ../proving-keys/nf_anon_nullifier_new.zkey ../proving-keys/nf_anon_nullifier-vkey.json
194-
fi
195-
- name: generate solidity verifier library
183+
cd zeto
184+
cd zeto
185+
cd zkp/
186+
snarkjs zkey export verificationkey ../proving-keys/anon_new.zkey ../proving-keys/anon-vkey.json
187+
snarkjs zkey export verificationkey ../proving-keys/anon_enc_new.zkey ../proving-keys/anon_enc-vkey.json
188+
snarkjs zkey export verificationkey ../proving-keys/anon_nullifier_new.zkey ../proving-keys/anon_nullifier-vkey.json
189+
snarkjs zkey export verificationkey ../proving-keys/anon_enc_nullifier_new.zkey ../proving-keys/anon_enc_nullifier-vkey.json
190+
snarkjs zkey export verificationkey ../proving-keys/nf_anon_new.zkey ../proving-keys/nf_anon-vkey.json
191+
snarkjs zkey export verificationkey ../proving-keys/nf_anon_nullifier_new.zkey ../proving-keys/nf_anon_nullifier-vkey.json
192+
193+
- name: Generate solidity verifier library
194+
if: github.repository == 'settlemint/solidity-zeto'
196195
run: |
197-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
198-
mkdir -p ./zeto/contracts-lib
199-
cd zeto
200-
cd zkp/
201-
snarkjs zkey export solidityverifier ../proving-keys/anon_new.zkey ../contracts-lib/verifier_anon.sol
202-
snarkjs zkey export solidityverifier ../proving-keys/anon_enc_new.zkey ../contracts-lib/verifier_anon_enc.sol
203-
snarkjs zkey export solidityverifier ../proving-keys/anon_nullifier_new.zkey ../contracts-lib/verifier_anon_nullifier.sol
204-
snarkjs zkey export solidityverifier ../proving-keys/anon_enc_nullifier_new.zkey ../contracts-lib/verifier_anon_enc_nullifier.sol
205-
snarkjs zkey export solidityverifier ../proving-keys/nf_anon_new.zkey ../contracts-lib/verifier_nf_anon.sol
206-
snarkjs zkey export solidityverifier ../proving-keys/nf_anon_nullifier_new.zkey ../contracts-lib/verifier_nf_anon_nullifier.sol
207-
ls ../proving-keys -la
208-
ls ../contracts-lib -la
209-
fi
210-
- name: edit solidity files
196+
mkdir -p ./zeto/contracts-lib
197+
mkdir -p ./zeto/contracts-lib
198+
cd zeto
199+
cd zkp/
200+
snarkjs zkey export solidityverifier ../proving-keys/anon_new.zkey ../contracts-lib/verifier_anon.sol
201+
snarkjs zkey export solidityverifier ../proving-keys/anon_enc_new.zkey ../contracts-lib/verifier_anon_enc.sol
202+
snarkjs zkey export solidityverifier ../proving-keys/anon_nullifier_new.zkey ../contracts-lib/verifier_anon_nullifier.sol
203+
snarkjs zkey export solidityverifier ../proving-keys/anon_enc_nullifier_new.zkey ../contracts-lib/verifier_anon_enc_nullifier.sol
204+
snarkjs zkey export solidityverifier ../proving-keys/nf_anon_new.zkey ../contracts-lib/verifier_nf_anon.sol
205+
snarkjs zkey export solidityverifier ../proving-keys/nf_anon_nullifier_new.zkey ../contracts-lib/verifier_nf_anon_nullifier.sol
206+
207+
208+
- name: Edit solidity files
209+
if: github.repository == 'settlemint/solidity-zeto'
211210
run: |
212-
if [[ ${{ github.repository }} == *"zeto"* ]]; then
213211
cd zeto
214212
cd contracts-lib
215213
sed 's/Groth16Verifier/Groth16Verifier_Anon/' verifier_anon.sol > ../solidity/contracts/lib/verifier_anon.sol
@@ -218,7 +216,6 @@ jobs:
218216
sed 's/Groth16Verifier/Groth16Verifier_AnonEncNullifier/' verifier_anon_enc_nullifier.sol > ../solidity/contracts/lib/verifier_anon_enc_nullifier.sol
219217
sed 's/Groth16Verifier/Groth16Verifier_NFAnon/' verifier_nf_anon.sol > ../solidity/contracts/lib/verifier_nf_anon.sol
220218
sed 's/Groth16Verifier/Groth16Verifier_NFAnonNullifier/' verifier_nf_anon_nullifier.sol > ../solidity/contracts/lib/verifier_nf_anon_nullifier.sol
221-
fi
222219
223220
- name: Run Forge build
224221
run: |

0 commit comments

Comments
 (0)