-
Notifications
You must be signed in to change notification settings - Fork 106
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
Implement verifiers that accept Groth16 types #305
Comments
Because there are multiple proof statements, but only one |
To verify proofs we will need to have some mechanism for loading the verification data. Notes from digging through stuff with @dconnolly:
Since we don't ever plan to support Sprout-on-Groth16 proving, we probably don't ever have a reason to ship the 700MB file, and since we will only support transaction creation later, it might make sense to split apart the verification keys from the rest of the parameters (and hardcode them in the source). Then later, when we implement tx creation, we can lazily load the other parameters when we are asked to create transactions. |
That looks correct to me. (I'm making guesses about the format based on a brief skim of https://docs.rs/crate/bellman/0.6.0/source/src/groth16/mod.rs .) |
Since the Sapling spend and output parameters are of reasonable size, we deployed a crate |
As a quick note, the crate currently returns the data as buffers ( For those who want to replace the |
Related: #406 |
406 |
Underway in #830 |
Closed in #830 |
Require bellman or bellman community, validators can accept our Groth16 types and validate them, with batching or without.
https://github.com/ZcashFoundation/zebra/blob/main/zebra-chain/src/proofs/groth16.rs
https://zips.z.cash/protocol/protocol.pdf#groth
The text was updated successfully, but these errors were encountered: