Skip to content

Latest commit

 

History

History
75 lines (56 loc) · 3.11 KB

README.md

File metadata and controls

75 lines (56 loc) · 3.11 KB
title layout nav_exclude permalink
arkworks
minimal
true
/:path/
arkworks logo

arkworks

arkworks is a Rust ecosystem for zkSNARK programming. Libraries in the arkworks ecosystem provide efficient implementations of all components required to implement zkSNARK applications, from generic finite fields to R1CS constraints for common functionalities.

Getting started

Below are some resources for getting started working with arkworks crates:

Getting Involved

We have a Discord community where folks can ask questions and learn about zkSNARK programming. We also have a Twitter where we (infrequently) post updates.

Index of useful repositories

Working with SNARKs

  • snark - defines interfaces for a SNARK, for your application to generically use them
  • relations - defines interfaces for relations, e.g. r1cs, AIR

SNARK proving systems

Fully packaged SNARK crates

  • groth16 - implementation of the Groth16 SNARK
  • marlin - universal setup SNARK for r1cs
  • gm17
  • gemini - an elastic proof system for streaming inputs
  • ripp - inner pairing product argument systems

Circuit building

Algebra

Citation

If you use arkworks libraries in your research projects, please cite them using the following template:

@software{arkworks,
  author = {arkworks contributors},
  title = {\texttt{arkworks} zkSNARK ecosystem},
  url = {https://arkworks.rs},
  year = {2022},
}