-
Notifications
You must be signed in to change notification settings - Fork 361
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
Project: Bringing (libsnark) gadgets to ZoKrates #19
Comments
Update: @barryWhiteHat has done some progress towards Objective 1 here: howardwu/libsnark-tutorial@master...barryWhiteHat:master Also, implicitly has defined a new format for R1CS :) |
For reference https://github.com/QED-it/r1cs_proto where @kobigurk is also working on a standard format for r1cs |
A first version is being actively worked on here https://github.com/schaeff/ZoKrates/tree/bind-libsnark-sha256 with the approach of generating witnesses in libsnark. Stay tuned! |
Sha is available as libsnark import as well as as native ZoKrates implementation |
wooow! |
Nice proposal @nicola, I definitely agree that this is a direction that different projects should be working towards to enable interoperability. We published a proposal as part of the community standards of zkproof.org. https://github.com/QED-it/gadget_standard We are thinking of implementing the ZoKrates frontend and bellman backend |
Hello everyone,
I finally wrapped my head around what is needed to make #2 happen :)
Current state: ZoKrates is really great - however, as soon as more complex primitives (SHA #2 and others) are required for designing a circuit, you either end up using libsnark or you will have to reimplement those carefully designed gadgets from libsnark again in ZoKrates (really prone to errors!)
There is hope: What if we could export gadgets from libsnark into R1CS that can be imported into ZoKrates? Then ZoKrates would be a really simple glue to combine gadgets and make circuts that Libsnark can then use. Once we have the ability of re-using circuits, then ZoKrates can really reach a wider audience which is not just "prototyping".
Note: This might even be a project where ZoKrates as a community could apply for grants (Zec? Protocol Labs? Eth?)
Ack: So talking to @JacobEberhardt @lgarron, I assembled this list of tasks/projects that we as a community should look into to make the leap with ZoKrates
Project: Gadgets to ZoKrates
Objectives
There are three objectives, and they can be run in parallel:
/cc @amiller, @JacobEberhardt, @barryWhiteHat, @Schaeff
The text was updated successfully, but these errors were encountered: