Data-Flow-Based Normalization Generation Algorithm of R1CS for Zero-Knowledge Proof

Chenhao Shi,Hao Chen,Ruibang Liu,Guoqiang Li
DOI: https://doi.org/10.1109/prdc59308.2023.00031
2023-01-01
Formal Aspects of Computing
Abstract:The communities of blockchains and distributed ledgers have been stirred upby the introduction of zero-knowledge proofs (ZKPs). Originally designed tosolve privacy issues, ZKPs have now evolved into an effective remedy forscalability concerns and are applied in Zcash (internet money like Bitcoin). Toenable ZKPs, Rank-1 Constraint Systems (R1CS) offer a verifier for bi-linearequations. To accurately and efficiently represent R1CS, several language toolslike Circom, Noir, and Snarky have been proposed to automate the compilation ofadvanced programs into R1CS. However, due to the flexible nature of R1CSrepresentation, there can be significant differences in the compiled R1CS formsgenerated from circuit language programs with the same underlying semantics. Toaddress this issue, this paper uses a data-flow-based R1CS paradigm algorithm,which produces a standardized format for different R1CS instances withidentical semantics. By using the normalized R1CS format circuits, thecomplexity of circuits' verification can be reduced. In addition, this paperpresents an R1CS normalization algorithm benchmark, and our experimentalevaluation demonstrates the effectiveness and correctness of our methods.
What problem does this paper attempt to address?