-
Notifications
You must be signed in to change notification settings - Fork 108
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
Async Halo2 verifier service #2645
Conversation
Now unblocked as the orchard crate/circuit has been released |
97d2c19
to
277203f
Compare
277203f
to
98cdac2
Compare
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.
I've skimmed this PR and I can't see anything particularly risky or concerning here.
I'd like to leave the detailed review to other people.
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.
Looks good! I just left some suggestions
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.
Haven't fully finished reviewing, but I wanted to post a question so I don't block you 😅
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.
Looks great! I added some small suggestions, but they're optional. The only thing I'd like to be sure before approving is if the Display
implementation is correct.
4e7a947
to
9f77067
Compare
16b2c2b
to
7d8b9ca
Compare
Stubs out a batch verifier for the future. The dependencies for orchard, halo2, librustzcash, zcash_primitives, have not been resolved.
…data test vectors
Co-authored-by: Conrado Gouvea <[email protected]>
Co-authored-by: Janito Vaqueiro Ferreira Filho <[email protected]>
Co-authored-by: teor <[email protected]>
Co-authored-by: Janito Vaqueiro Ferreira Filho <[email protected]>
4681f76
to
6607633
Compare
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.
Looks good!
Motivation
To match our verification patterns, we need a Halo2 proof async verifier service.
Solution
Implements a Halo2 verifier service that reproduces the batch api, to maintain the same API as out other verifier services and to be future-proof for batch optimizations for Halo2.
We don't have V5 transactions with verifiable Action proofs yet to use as test vectors, when we can mint those via zcashd they should be used to test this.
In the meantime, we produce test-specific Halo2 proofs. We should augment with test vectors as soon as they are available.
Resolves #2104
Review
Anyone but especially @jvff @conradoplg @upbqdn @teor2345
Reviewer Checklist
Follow Up Work
VerifyingKey
and assert that it matches the::build()
'd one