Skip to content

Commit 1e58163

Browse files
update README (#113)
* bump plonkit version * update readme
1 parent 6bc7463 commit 1e58163

File tree

1 file changed

+34
-8
lines changed

1 file changed

+34
-8
lines changed

README.md

Lines changed: 34 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ A zkSNARK toolkit to work with [circom](https://github.com/iden3/circom) zkSNARK
1414
+ [x] Proof verification
1515
+ [x] Solidity verifier generation
1616
+ [x] Local key setup for developement
17+
+ [x] Proof Aggregation
1718

1819
## Usage examples
1920

@@ -35,13 +36,18 @@ FLAGS:
3536
-V, --version Prints version information
3637

3738
SUBCOMMANDS:
38-
dump-lagrange Dump "SRS in lagrange form" from a "SRS in monomial form"
39-
export-verification-key Export verifying key
40-
generate-verifier Generate verifier smart contract
41-
help Prints this message or the help of the given subcommand(s)
42-
prove Generate a SNARK proof
43-
setup Trusted locally set up Plonk universal srs in monomial form
44-
verify Verify a SNARK proof
39+
analyse Analyse the circuit and output some stats
40+
check-aggregation Check proofs aggregation
41+
dump-lagrange Dump "SRS in lagrange form" from a "SRS in monomial form"
42+
export-recursive-verification-key Export Recursive verifying key
43+
export-verification-key Export verifying key
44+
generate-verifier Generate verifier smart contract
45+
help Prints this message or the help of the given subcommand(s)
46+
prove Generate a SNARK proof
47+
recursive-prove Aggregate multiple proofs
48+
recursive-verify Verify recursive proof
49+
setup Trusted locally set up Plonk universal srs in monomial form
50+
verify Verify a SNARK proof
4551

4652
# Getting help for a subcommand
4753
> plonkit prove --help
@@ -97,7 +103,7 @@ Proof is correct
97103
circuit.circom circuit.r1cs circuit.sym circuit.wasm input.json proof.bin proof.json public.json setup_2^20.key verifier.sol vk.bin witness.wtns
98104
```
99105
100-
Moreover, if you want to set up a SRS locally for testing, you can make use of `setup` subcommand:
106+
If you want to set up a SRS locally for testing, you can make use of `setup` subcommand:
101107
102108
```
103109
plonkit-setup
@@ -117,6 +123,26 @@ OPTIONS:
117123
118124
You may also want to manually edit and lower down `plonk::SETUP_MIN_POW2` in the codes to fast generate a relatively small-sized SRS.
119125
126+
Moreover, you can make use of the `analyse` subcommand to print out the statistics of a circuit (num of inputs, num of constraints, num of gates...):
127+
```
128+
plonkit-analyse
129+
Analyse the circuit and output some stats
130+
131+
USAGE:
132+
plonkit analyse [OPTIONS]
133+
134+
FLAGS:
135+
-h, --help Prints help information
136+
-V, --version Prints version information
137+
138+
OPTIONS:
139+
-c, --circuit <circuit> Circuit R1CS or JSON file [default: circuit.r1cs|circuit.json]
140+
-o, --output <output> Output file [default: analyse.json]
141+
```
142+
143+
### Proof Aggregation
144+
Plonkit also supports Proof Aggregation. You can aggregate multiple proofs into one, see [test_poseidon_plonk_recursive.sh](./test/test_poseidon_plonk_recursive.sh) for a workflow example.
145+
120146
## Installation
121147
122148
Install Rust

0 commit comments

Comments
 (0)