Skip to content

Commit

Permalink
Apply suggestions from code review
Browse files Browse the repository at this point in the history
Co-authored-by: Chih Cheng Liang <[email protected]>
  • Loading branch information
han0110 and ChihChengLiang authored Dec 12, 2023
1 parent b1c3f7d commit 84ea679
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
Solidity verifier generator for [`halo2`](http://github.com/privacy-scaling-explorations/halo2) proof with KZG polynomial commitment scheme on BN254.

For audited solidity verifier generator and proof aggregation toolkits, please refer to [`snark-verifier`](http://github.com/privacy-scaling-explorations/snark-verifier).
For audited solidity verifier generator and proof aggregation toolkits, please refer to [`snark-verifier`](http://github.com/axiom-crypto/snark-verifier).

## Usage

Expand Down Expand Up @@ -42,14 +42,14 @@ Note that function selector is already included.

The [`Keccak256Transcript`](./src/transcript.rs#L19) behaves exactly same as the `EvmTranscript` in `snark-verifier`.

## Why
## Design Rationale

The existing solidity verifier generator in `snark-verifier` has a few problems:
The current solidity verifier generator within `snark-verifier` faces a couple of issues:

- Generator only receives low-level operation like add or mul, without hardwork to analyze these operations, it currently unrolled all the assembly codes, so it's easy to grow out of contract size limit even with a normal size circuit.
- Complicated abstraction & APIs to consumers.
- The generator receives only unoptimized, low-level operations, such as add or mul. As a result, it currently unrolls all assembly codes, making it susceptible to exceeding the contract size limit, even with a moderately sized circuit.
- The existing solution involves complex abstractions and APIs for consumers.

So this repo is rebuilt from scratch, with focus also on codesize and readability, and surprisingly the gas cost is similar (even a little bit less) compared to the one generated by `snark-verifier`
This repository is a ground-up rebuild, addressing these concerns while maintaining a focus on code size and readability. Remarkably, the gas cost is comparable, if not slightly lower, than the one generated by `snark-verifier`.

## Acknowledgement

Expand Down

0 comments on commit 84ea679

Please sign in to comment.