-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add CommitmentProver trait, and add KZG prover to it #62
Conversation
Add KZG commitment scheme adapted to vector commitment Also move the `src/pedersen.rs` into `src/commitment/pedersen.rs` where it will coexist with `kzg.rs` and the trait defined in `src/commitment/mod.rs`.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, just got a small question
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM overall! Nice job.
Left some suggestions. But feel free to do what you think makes more sense. For me it can still be merged this way. 😄
37c4285
to
37e69b3
Compare
Co-authored-by: han0110 <[email protected]>
37e69b3
to
48625e6
Compare
* Add KZG commitment scheme adapted to vector commitment Add KZG commitment scheme adapted to vector commitment Also move the `src/pedersen.rs` into `src/commitment/pedersen.rs` where it will coexist with `kzg.rs` and the trait defined in `src/commitment/mod.rs`. * Adapt Pedersen into the new CommitmentProver trait * add CommitmentProver (Pedersen&KZG) homomorphic property test * polishing * Use divide_with_q_and_r, rename skip_first_zero_coeffs Co-authored-by: han0110 <[email protected]> --------- Co-authored-by: han0110 <[email protected]>
CommitmentProver
trait as a interface for the CommittedInstances that will use this trait to commit to the witness (and if needed to the error terms)pedersen.rs
to the newCommitmentProver
trait (and move it under the newsrc/commitment/
dirKZGProver
implementing theCommitmentProver
trait, by adapting arkworks/poly-commit::kzg10 commit & open implementationAt line kzg.rs#4 there is the rationale on why doing the
CommitmentProver
trait: