Skip to content

A curated list of awesome ZK resources, libraries, tools and more.

Notifications You must be signed in to change notification settings

iam-dev/awesome-zk

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Zero Knowledge

awesome list badge GitHub contributors pull requests welcome badge

A curated list of awesome ZK resources, libraries, tools and more.

Table of Contents

Basics

Projects

Zk-VM

Zk-Layer1

Zk-Layer2

Transpiler

Computing Infrastructure

Framework / SDK

Zk-Applications

Gaming

Payment

Mixer

Identity

Wallet

Crosschain

Marketplace

Data Infrastructure

Artificial Intelligence

DeFi / DEX

Tokens / NFT

Voting / Participation

Hardware Acceleration

Trusted Execution Environment (TEE) Based Projects

Programming Languages

Name Ecosystem Type GitHub Documentation
Cairo StarkNet STARK-provable programs for general computation https://github.com/starkware-libs/cairo-lang https://cairo-lang.org/docs/
ZoKrates Python subset R1CS SNARKs Frontend https://github.com/Zokrates/ZoKrates https://zokrates.github.io
Leo Aleo Functional, statically-typed https://github.com/AleoHQ/leo https://developer.aleo.org/developer/language/layout/
Circom Typed JS Circuit compiler https://github.com/iden3/circom https://docs.circom.io
Noir Aztec Private contract language https://github.com/noir-lang/noir https://noir-lang.github.io/book/index.html
Snarky Mina R1CS SNARKs OCaml frontend https://github.com/o1-labs/snarky /
Zinc zkSync Turing-complete smart contract https://github.com/matter-labs/zinc /
Juxiv Anoma Functional https://github.com/anoma/juvix https://juvix.readthedocs.io/en/latest/index.html
ZKPDL / High-level https://github.com/brownie/cashlib http://cs.brown.edu/research/brownie/usenix10.pdf
zkVM / Stack machine with a string of bytecode representing ZkVM instructions https://github.com/stellar/slingshot/tree/main/zkvm https://github.com/stellar/slingshot/files/3164245/zkvm-whitepaper-2019-05-09.pdf

Programming Libraries

Name Host Language Features GitHub
Libsnark C++ General-purpose proof systems, gadget libraries https://github.com/scipr-lab/libsnark
Bellman Rust Circuit traits, primitive structures, basic gadget implementations https://github.com/zkcrypto/bellman
gnark Go High level API with frontend and backend to design circuits https://github.com/ConsenSys/gnark
Bulletproofs Rust Single-party proofs, online multi-party computation, R1CS https://github.com/dalek-cryptography/bulletproofs
Circomlib Javascript Circom templates https://github.com/iden3/circomlib
Arkworks Rust R1CS, curves, Groth16, finite field, curves https://github.com/arkworks-rs
libSTARK C++ ZK-STARK library https://github.com/elibensasson/libSTARK
DIZK Java Distributed polynomial interpolation, Lagrange polynomials, multi-scalar multiplication https://github.com/scipr-lab/dizk
wasmsnark Javascript Generate zkSnark proofs and verify from web browser https://github.com/iden3/wasmsnark
libiop C++ IOP-based zkSNARKs https://github.com/scipr-lab/libiop

Advanced Topics

PLONK

Groth16

Halo

Probabilistic Proof Systems

Pinocchio

Bulletproofs

Hash Functions

Systems

Quadratic Span Programs

Zether

Anonymous Zether

Quisquis

Zk-VM

Slush: Fractal Scaling

DIZK: Distributed ZKP

Network Privacy

Tools

Auditing and Consulting

Books

Discussions

Communities

About

A curated list of awesome ZK resources, libraries, tools and more.

Resources

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published