ethereum / ethereum/sonobe

Specify Groth16 adapted to RelaxedR1CS and fork arkworks Groth16 adapting it into that design

Open
#22 2 comments 0 reactions 1 assignee Claimed by @winderica View on GitHub
decider design
Dominant language
Rust
Stars
285
Forks
97
PR merge metrics
No merged PRs in 30d

Description

@levs57 has suggested modifying Groth16 to adapt it to RelaxedR1CS, which not only would have less overhead than [the current approach](https://github.com/privacy-scaling-explorations/folding-schemes/pull/21), but also seems to have benefits regarding the commitment openings of `cm(E), cm(W)`.

Not for the milestone https://github.com/privacy-scaling-explorations/folding-schemes/milestone/1 , but for those usecases where Decider's proving time is crucial, @levs57's approach will perform much better than the in-circuit RelaxedR1CS checker approach (but the latter is more modular in terms of being able to use any R1CS-based proving scheme for the Decider without needing to adapt each one, but has the ~3x overhead).

The idea of this issue is to track progress on the specification of Groth16 adapted to RelaxedR1CS and it's implementation, which probably would be a fork of arkworks Groth16 repo, which @levs57 already sketched. Once ready, we would need to fork [arkworks Groth16](https://github.com/arkworks-rs/groth16) implementation to addapt it to @levs57's design.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.