Skip to content
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

[Proposal] Infrastructure for various-scale universal parameters #271

Closed
Tracked by #233
weikengchen opened this issue Jul 17, 2021 · 1 comment
Closed
Tracked by #233
Labels
staging Staging

Comments

@weikengchen
Copy link
Contributor

💥 Proposal

In a setup phase, we may set up for large parameters such as for 2^28. This is essentially a committer key for the polynomial commitment.

However, most statements are small, we want to enable a user to download only a subset of the committer key, which is technically doable, and we just need an infrastructure to do so.

  • a function that trims the KZG parameters down to different sizes
  • ability for snarkvm-parameters to retrieve URS of different sizes
@weikengchen
Copy link
Contributor Author

An enhancement of the SNARK trait is also proposed:

SNARK trait could be updated to have universal_setup() and circuit_setup() whereby Groth16 would have unimplemented!() in universal_setup()` and Marlin’s circuit_setup() would only use a trimmed SRS to index.


This will allow us to use the Marlin's specific interface as well as keep the old interface for Groth16.

@howardwu howardwu added the staging Staging label Jul 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
staging Staging
Projects
None yet
Development

No branches or pull requests

2 participants