Table of Contents / Basics |
Prerequisite understanding questions | | | |
ZKP Overview: History, Proving Systems, Circuits, Compilers | | | |
Table of Contents / Basics / Introduction |
Understanding ZKPs Through Illustrated Examples | | | |
Understanding zero-knowledge proofs without cryptography background | | | |
A Non-Mathematical Introduction to Zero Knowledge Proof | | | |
Zero Knowledge Proofs: An Illustrated Primer | | | |
What are zk-SNARKs? | | | |
ZKPs for Engineers: Introduction | | | |
Privacy in Cryptocurrencies: An Overview | | | |
Zero Knowledge virtual machine step by step | | | |
Table of Contents / Basics / Vitalik's blogs for STARKs |
Part 1: Proofs with Polynomials | | | |
Part 2: Thank Goodness It's FRI-day | | | |
Part 3: Into the Weeds | | | |
Table of Contents / Basics / Explaining STARKs |
Part I: STARK Overview | | | |
Part II: Basic Tools | | | |
Part II: FRI | | | |
Part IV: The STARK Polynomial IOP | | | |
Part V: A Rescue-Prime STARK | | | |
Part VI: Speeding Things Up | | | |
Brainfuck STARK Tutorial | | | |
Table of Contents / Basics |
zkSNARKs in a nutshell | | | |
The RareSkills Book of Zero Knowledge | | | |
The MoonMath Manual to zk-SNARKs | | | |
Comments on paper: zkSNARKs in a Nutshell by Aaron | 1,486 | about 1 month ago | |
An approximate introduction to how zk-SNARKs are possible | | | |
Table of Contents / Basics / Explaining SNARKs |
Part I: Homomorphic Hidings | | | |
Part II: Blind Evaluation of Polynomials | | | |
Part III: The Knowledge of Coefficient Test and Assumption | | | |
Part IV: How to make Blind Evaluation of Polynomials Verifiable | | | |
Part V: From Computations to Polynomials | | | |
Part VI: The Pinocchio Protocol | | | |
Part VII: Pairings of Elliptic Curves | | | |
Table of Contents / Basics / Important landmarks for zk-SNARKs |
Succinct ZK | | | K92 |
Succinct Non-Interactive ZK | | | M94 |
“SNARK” terminology and characterization of existence | | | BCCT11 |
Succinct NIZK without the PCP Theorem | | | Groth10 |
Succinct NIZK without PCP Theorem & Quasi-linear prover time | | | GGPR13 |
Verifiable Delay Function | | | |
Table of Contents / Basics / Circuit optimization |
Circuit Optimisation Handout | | | |
Table of Contents / Basics / Introduction to Layer 2 |
An Incomplete Guide to Rollups | | | |
Why rollups + data shards are the only sustainable solution for high scalability | | | |
Introducing zkSync: the missing link to mass adoption of Ethereum | | | |
Validity Proofs vs. Fraud Proofs | | | |
A Pre-consensus Mechanism by Leohio | | | |
Table of Contents / Basics / Mathematical Foundations |
Introduction to Mathematical Cryptography | 1,010 | about 5 years ago | |
Modern Computer Algebra | | | |
Explicit-Formulas Database | | | |
Abstract Algebra | | | |
Algebraic Number Theory | | | |
Computational Introduction to Number Theory and Algebra | | | |
A Graduate Course in Applied Cryptography | | | |
Lattice Cryptography | | | |
The Design of Rijndael | | | |
Elliptic Curves Number Theory And Cryptography | | | |
Pairings for Beginners | | | |
Succint Proofs and Linear Algebra | | | |
Proofs, Arguments, and Zero-Knowledge | | | |
Table of Contents / Projects / Zk-EVM |
Matter Labs zkEVM | | | |
Hermez zkEVM | | | |
Scroll | | | and their |
Appliedzkp: Circuits for zkEVM | 817 | 5 months ago | |
ConsenSys zkEVM | | | and their |
TinyZKEVM | 46 | about 3 years ago | |
Sovereign Labs: zkEVM on Risc0 | | | |
Table of Contents / Projects / Zk-VM |
Delphinus zkWASM | | | and their |
zkMove: bytecode VM | | | and their |
zkRiscV: RV32I Risc-V instruction set | 47 | about 2 years ago | |
OlaVM: An Ethereum compatible ZKVM | | | |
Tritron VM | 247 | 5 days ago | |
Risc0: a general purpose zkVM based on RISCV | 1,681 | 5 days ago | |
Miden: STARK-based zero-knowledge virtual machine | 631 | 6 days ago | |
Valida: A zkVM with an LLVM frontend | 290 | 4 months ago | |
ZK System Benchmarking: compare the performance of different zero-knowledge proof libraries | 128 | about 1 year ago | |
ZK-Bench: Benchmarks for popular ZK frameworks, continuously updated | | | |
zk-Harness: a comprehensive benchmarking framework for zk SNARKs | | | |
Table of Contents / Projects / Zk-Layer1 |
Mir Protocol | | | |
Aleo: A SDK for Zero-Knowledge Transactions | 593 | 2 days ago | |
Iron Fish: the universal privacy layer for crypto | | | |
Mina: a payment system using a succinct blockchain | | | |
Celo: EVM compatible proof-of-stake layer-1 | | | and their |
Zeeka Network: a light and scalable blockchain using ZKPs | | | |
quark: decentralized state machine with STARK proofs | 56 | over 2 years ago | |
Lelantus: transaction confidentiality and anonymity | | | |
Neptune: a new privacy layer-one blockchain | | | |
DarkFi: a new Layer 1 blockchain, designed with anonymity at the forefront | | | |
Espresso Systems: single-shot scaling & privacy solution | | | |
Table of Contents / Projects / Zk-Layer2 |
Aztec: Scalable Privacy on Ethereum | | | |
StarkNet: permissionless decentralized ZK-Rollup | | | |
Scroll: an EVM-equivalent zkRollup | | | |
zkSync: an EVM-compatible zkRollup | | | |
Polygon Zero: a layer 2 scaling solution for Ethereum | | | |
Polygon Miden: a STARK-based zkRollup | | | |
Taikocha: a zkEVM-based general-purpose zkRollup | | | |
Twilight: Layer 2 for Private Computation | | | |
Orbis: A Layer 2 ZK-Rollup Scaling Solution Built on Cardano | | | |
Radius: MEV-resistant ZK-Rollups with Practical VDE (PVDE) | | | |
ZEXE on Plasma: An implementation of ZEXE on Ethereum | | | |
Nightfall: Private Token Transaction on Ethereum | | | |
Table of Contents / Projects / Privacy Layer |
Light Protocol: DeFi Privacy Infrastructure on Solana | | | |
Table of Contents / Projects / Transpiler |
Starlight: Generate a zApp from a Solidity contract | 188 | 29 days ago | |
Warp: transpile Ethereum smart contracts to Cairo | 752 | about 1 year ago | |
zkay: A Language for Private Smart Contracts on Ethereum | 81 | 11 months ago | |
Table of Contents / Projects / Computing Infrastructure |
=nil;'s zkLLVM: LLVM-based zero-knowledge proof systems compiler | 295 | about 1 month ago | |
CirC: Compiler Infrastructure for Cryptosystems and Verification | 286 | about 2 months ago | |
Trustless Labs: ZK-friendly Multi-rollup Architecture for Web3 Applications | | | |
SuccinctX: Infrastructure for zk-app development | 134 | 7 months ago | |
Table of Contents / Projects / Framework / SDK |
Adapt Framework: a toolkit for building end-to-end decentralized systems | | | |
Atlas Protocol: Zero-Knowlege Blockchain Development Platform | | | |
Table of Contents / Projects / Zk-Applications |
Dark Forest: an MMO space-conquest game | | | and their |
Isaac: a physics-powered onchain reality on Starknet | | | and their |
Crypto Maze: action-packed MMO | | | |
Zordle: the first end-to-end web app built using Halo 2 ZK proofs | 215 | almost 2 years ago | |
zkSNARK-Sudoku: Sudoku verifier using zkSNARK and circom. | 15 | almost 2 years ago | |
Leela vs the World: the first zkAI game | | | |
Zcash: a privacy-protecting, digital currency | | | |
Monero: private, decentralized cryptocurrency | | | |
Manta: a Plug and Play Private DeFi Stack | | | |
SwapCT: Swap Confidential Transactions for Privacy-Preserving Multi-Token Exchanges | | | |
Zef: Low-latency, Scalable, Private Payments | | | and their |
Anoma: A protocol for private, asset-agnostic digital cash | | | and their |
ZETH: Integrating Zerocash on Ethereum | 57 | over 1 year ago | |
Intmax2: A ZK-rollup with Minimal Onchain Data and Computation Costs | | | |
CoinJoin: an open-source way to mix bitcoins | | | |
Tornado Cash: Introducing Private Transactions On Ethereum | | | |
Otter Cash: A privacy layer for the Solana ecosystem | | | |
Mobius: Trustless Tumbling for Transaction Privacy | | | |
TumbleBit: An Untrusted Bitcoin-Compatible Anonymous Payment Hub | | | |
Mixcoin: Anonymity for Bitcoin with accountable mixes | | | |
CashShuffle: background coin shuffling for Bitcoin Cash | | | |
MicroMix: A noncustodial Ethereum mixer | 5 | over 3 years ago | |
Juicer Protocol: trusted and secure | 1 | over 2 years ago | |
Privacy pools: Opt-in or Opt-out Anonymity Sets | 280 | about 1 year ago | |
zkKYC: A solution concept for KYC without knowing your customer | | | |
zkID.app: A Privacy-Preserving Passport to the Web 3.0 World | | | |
Notebook: a zero-knowledge B2B2C identity protocol | | | |
Iden3: future-proof tech stack for self-sovereign identity | | | |
Polygon ID: identity system with programmable privacy | | | |
Sealance: building financial compliance into digital currencies | | | |
Humanode: biologically verified human nodes for a fair financial system | | | |
OutDID: your zero-knowledge, decentralized KYC filter of blockchain users | | | |
IdentityBlockchain: state-certified electronic identities to establish blockchain identities | | | |
Worldcoin: Privacy-Preserving Proof-of-Personhood Protocol | | | |
ZeroBiometrics: Privacy Preserving and Data Protection Face Authentication | | | |
zCloak: Privacy-first DID and verifiable computation infrastructure | | | |
Everest ID: Your global everything account | | | |
Proof of Passport: Privacy Preserving Passport Proving | 340 | 6 days ago | |
Argent: smart contract wallet based on zkSync | | | |
Numio: Layer 2 focused wallet built on zkSync | | | |
Zkopru: Affordable Ethereum Privacy Wallet | | | |
Bunkyr: zero‑knowledge security without seed phrases or backup codes | | | |
Wasabi Wallet: non-custodial, privacy-focused Bitcoin wallet | | | |
Particle Network: Zero Knowledge Wallet-as-a-Service, confidential social logins and transactions | | | |
=nil; Foundation's Solana and Mina to Ethereum zkBridge | | | |
Succinct Labs: the trust-minimized interoperability layer | | | |
Overeality: Infrastructure for Web3 Interoperability | | | and their |
ZkLink: cross chain amm swap protocol powered by ZK-Rollup | 98 | 5 months ago | |
Mystiko Network: Anonymous Protocol for a Cross-Chain Network | | | |
Penumbra: a shielded, cross-chain network | | | |
Zecrey: Bringing Cross-chain Privacy to Digital Assets | | | |
Suez: move Eth to the Starknet ecosystem | | | |
ZKCross: a trustworthy cross-chain protocol built with multichain zkRollup | | | |
Electron Labs: ZK Light Clients for NEAR Rainbow Bridge | | | |
ZeroPool: a fully private multi-blockchain solution | | | |
Raze Network: Multichain Privacy Middleware | | | |
Zendoo: A zk-SNARK enabled verifiable cross-chain transfer protocol | | | and their |
DarkFi: applications and shielded cross-chain assets utilizing Halo 2 | | | |
=nil; Foundation's Proof Market: a decentralized proof market protocol | | | |
Modulo Zero: on-chain solution for private data exchange | | | and their |
Ruby Protocol: Building a Cross-chain Cryptographic Infrastructure for Data Monetization | | | |
zkPoD: A decentralized system for data exchange | 206 | over 1 year ago | |
Ladder: KYC on-ramp solution implementing an oraclized peer-to-peer protocol | | | |
FirstBatch: create a representation of your identity from your social data | | | |
Interep: verify users' reputation without exposing their identities | | | |
=nil; `DROP DATABASE *: A database management system for blockchains enhanced by provable SQL | | | |
Filecoin: Zero Knowledge and the Filecoin Network | | | |
Nectar Protocol: Web3 infrastructure for healthcare | | | and their |
zk-SQL: ZK-based engine for self-sovereign SQL queries | 84 | over 2 years ago | |
Hyper Oracle: Programmable zkOracle network with zkIndexing and zkAutomation | | | |
Relic Protocol: the first provably secure source of historical data on chain | | | |
Axiom: generate proofs for various computations completed previously on chain | | | |
Checks and balances: Machine Learning and zero-knowledge proofs | | | |
zk-MNIST: web frontend app + Jupyter notebook with ML model generation | 119 | about 2 years ago | and their |
zkCNN: GKR-based zero-knowledge proof protocol for CNN model inference | 70 | over 1 year ago | and their |
Modulus Labs: bringing powerful ML models on-chain | | | and their |
ZKML: Bridging AI/ML and Web3 with Zero-Knowledge Proofs | | | |
zkonduit: inference for deep learning models and other computational graphs in a zk-snark | 946 | 8 days ago | |
ZK Machine Learning: truly private machine learning, with zk-SNARKs and blockchain | 213 | over 2 years ago | |
Panther Protocol | | | |
Loopring Launches zkRollup Exchange | | | |
Railgun: brings privacy to cryptocurrencies | | | |
EdgeSwap: Ethereum-based layer 2 trading protocol | | | |
ZigZag: ZK Rollup order book DEX | | | |
Mute: a ZK-Rollup based AMM exchange | | | |
StealthDrop: Anonymous Airdrops using ZK proofs | 350 | 9 months ago | |
ZKP Private Airdrop | 755 | over 1 year ago | and their |
zk-NftMint: Mint an NFT if you know a secret | 48 | over 1 year ago | and their |
Immutable X: the first layer-2 scaling solution for NFTs on Ethereum | | | |
Semaphore: a privacy gadget built on Ethereum | | | |
zkC.R.E.A.M: Confidential Reliable Ethereum Anonymous Mixer | | | |
Cabal: create credibly pseudonymous channels based on members' Ethereum activity | | | |
OVOTE: Offchain Voting with Onchain Trustless Execution | | | and their |
Scaffold-ETH: Prove Membership with Circom and Zero Knowledge | 215 | 8 months ago | |
Vocdoni: A decentralized self sovereign governance platform | | | and their |
Waku: a suite of privacy-preserving, peer-to-peer messaging protocols | | | |
Zero Knowledge Message Board by nulven, yush_g | 36 | over 2 years ago | and their |
Double Blind: semi-anonymously sign messages for a group of people | 17 | over 2 years ago | and their |
zkDocs: information attestation and verification workflows | 309 | over 1 year ago | |
Table of Contents / Projects / Hardware Acceleration |
Hardware for ZKPs & VDFs with Supranational | | | and their |
PipeZK: Accelerating Zero-Knowledge Proof with a Pipelined Architecture | | | |
Ingonyama: building a ZK processing unit | | | and their |
ZKAccel: Accelerated ZKP as a Service | | | |
DZK: decentralized zero-knowledge proof platform | | | |
Cysic: Hardware Accelerating Zero-Knowledge Proof | | | |
Table of Contents / Projects / Trusted Execution Environment (TEE) Based Projects |
Oasis Network | | | |
Secret Network | | | |
Obscuro | | | |
Phala | | | |
Table of Contents / Projects / Fully Homomorphic Encryption (FHE) Based Projects |
Zama | | | |
Table of Contents / Programming Languages |
https://github.com/starkware-libs/cairo-lang | 1,346 | 5 days ago | |
https://cairo-lang.org/docs/ | | | |
https://github.com/Zokrates/ZoKrates | 1,828 | 4 months ago | |
https://zokrates.github.io | | | |
https://github.com/AleoHQ/leo | 4,781 | 2 days ago | |
https://developer.aleo.org/developer/language/layout/ | | | |
https://github.com/iden3/circom | 1,339 | 11 days ago | |
https://docs.circom.io | | | |
https://github.com/noir-lang/noir | 895 | 5 days ago | |
https://noir-lang.github.io/book/index.html | | | |
https://github.com/o1-labs/snarky | 495 | 2 months ago | |
https://github.com/matter-labs/zinc | 307 | over 2 years ago | |
https://github.com/anoma/juvix | 455 | 8 days ago | |
https://juvix.readthedocs.io/en/latest/index.html | | | |
https://github.com/brownie/cashlib | 54 | over 8 years ago | |
http://cs.brown.edu/research/brownie/usenix10.pdf | | | |
https://github.com/stellar/slingshot/tree/main/zkvm | 415 | over 3 years ago | |
https://github.com/stellar/slingshot/files/3164245/zkvm-whitepaper-2019-05-09.pdf | 415 | over 3 years ago | |
https://github.com/lurk-lang/lurk-rs | 434 | 12 days ago | |
https://github.com/lurk-lang/lurk/blob/master/spec/v0-1.md | 67 | 3 months ago | |
Table of Contents / Programming Languages / Language examples |
zk-languages: A repo with basic example of most ZK languages | 49 | about 1 month ago | |
Table of Contents / Programming Libraries |
https://github.com/scipr-lab/libsnark | 1,838 | 9 months ago | |
https://github.com/dalek-cryptography/bulletproofs | 1,049 | 4 months ago | |
https://github.com/zkcrypto/bellman | 1,023 | 4 months ago | |
https://github.com/ConsenSys/gnark | 1,435 | 8 days ago | |
https://github.com/arkworks-rs | | | |
https://github.com/iden3/circomlib | 623 | about 1 month ago | |
https://github.com/elibensasson/libSTARK | 507 | over 1 year ago | |
https://github.com/mir-protocol/plonky2 | 778 | 7 days ago | |
https://github.com/dusk-network/plonk | 551 | about 1 month ago | |
https://github.com/microsoft/Spartan | 694 | about 2 months ago | |
https://github.com/scipr-lab/dizk | 234 | over 2 years ago | |
https://github.com/iden3/wasmsnark | 210 | almost 2 years ago | |
https://github.com/EspressoSystems/jellyfish | 406 | 7 days ago | |
https://github.com/scipr-lab/libiop | 148 | 11 months ago | |
https://github.com/microsoft/Nova | 714 | 29 days ago | |
https://github.com/Plonky3/Plonky3 | 476 | 5 days ago | |
Table of Contents / Tools / Plonk |
plonkit: zkSNARK toolkit to work with circom DSL in PLONK proof system | 158 | almost 2 years ago | |
Plonk: A pure Rust PLONK implementation | 294 | about 1 year ago | |
Table of Contents / Tools / ECDSA |
zk-ECDSA: zkSNARKs for ECDSA | | | |
Spartan ECDSA: Fast in-browser ECDSA verification | 203 | 12 months ago | |
Table of Contents / Tools / Circuit Building Library |
Circom: zkSnark circuit compiler | 1,339 | 11 days ago | |
Arkworks: an ecosystem for developing with zkSNARKs | | | |
ZoKrates: a toolbox for zkSNARKs on Ethereum | | | |
Snarkjs: zkSNARK implementation in JavaScript & WASM | 1,790 | 29 days ago | |
RCC: Rust Circuit Compiler | | | |
Chiquito: DSL for Halo2 circuits | 188 | 19 days ago | |
Table of Contents / Tools / Formal Verification |
The State of Current Progress | | | |
Ecne: an engine for verifying the soundness of R1CS constraints | 108 | over 2 years ago | |
Picus: Symbolic Virtual Machine for Automated R1CS Verification | 70 | 9 months ago | |
Papyrus: A Symbolic Execution Tool for Cairo | 49 | about 2 years ago | |
Table of Contents / Tools / Other Tools |
zkREPL: an in-browser collaborative development environment | | | |
crrl: Rust library for cryptographic research | 134 | 6 months ago | |
Shield: a development framework for circom developers | | | |
Table of Contents / Auditing and Consulting |
ABDK | | | |
Least Authority | | | |
ZK Security | | | |
Hashcloak | | | |
Taurus | | | |
Common Prefix | | | |
ZK Labs | | | |
Diligence | | | |
Trail of Bits | | | |
Kudelski Security | | | |
Table of Contents / Validator Services |
ZK Validator | | | |
Table of Contents / Books |
Proofs, Arguments, and Zero-Knowledge | | | (Justin Thaler, 2022) |
A Graduate Course in Applied Cryptography | | | (Dan Boneh and Victor Shoup, 2020) |
Table of Contents / Discussions |
Why Dark Forest Matters: A Good Game, not a Crypto Game | | | |
Six Moonshot ZK Applications | | | |
A Socratic Dialogue to Come Up With a Secure ZK Message Board Architecture | | | |
The Strongest Crypto Gaming Thesis | | | |
Hardware Acceleration for Zero Knowledge Proofs | | | |
How do trusted setups work? | | | |
10 zkApps Use Cases on Mina Protocol | | | |
Programming Languages in ZKP | | | |
Table of Contents / Communities |
Harmony zkDAO | | | |
ZK Hash Bounties | | | |
Zero Knowledge Forum | | | |
0xPARC: Program for Applied Research in Cryptography | | | |
ZPrize: accelerate zero-knowledge cryptography | | | |
zkMesh: a monthly newsletter | | | |
ZKHack Discord | | | : Read, discuss, and implement ZK in Rust/Python (Fridays at 11:30ET) |
ZKP Discussion Group Chat by Delendum | | | : idea sharing, seeking advice/review/co-publish |
Table of Contents / Advanced Topics / PLONK |
Understanding PLONK | | | |
Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge | | | |
Table of Contents / Advanced Topics / Groth16 |
On the Size of Pairing-based Non-interactive Arguments | | | |
Table of Contents / Advanced Topics / Halo |
Vitalik Buterin: Halo and more: exploring incremental verification and SNARKs without pairings | | | Proof size reduction |
Recursive Proof Composition without a Trusted Setup | | | |
Table of Contents / Advanced Topics / Probabilistic Proof Systems |
Georgetown University COSC 544 Class Notes | | | |
Table of Contents / Advanced Topics / Pinocchio |
Pinocchio: Nearly Practical Verifiable Computation | | | |
Table of Contents / Advanced Topics / Bulletproofs |
Bulletproofs: Short Proofs for Confidential Transactions and More | | | |
Bulletproofs+: Shorter Proofs for Privacy-Enhanced Distributed Ledger | | | |
Table of Contents / Advanced Topics / Hash Functions |
POSEIDON: A New Hash Function for Zero-Knowledge Proof Systems | | | |
Table of Contents / Advanced Topics / Systems |
SNARKs for C: Verifying Program Executions Succinctly and in Zero Knowledge | | | |
Table of Contents / Advanced Topics / Quadratic Span Programs |
Quadratic Span Programs and Succinct NIZKs without PCPs | | | |
Table of Contents / Advanced Topics / Zether |
Zether: Towards Privacy in a Smart Contract World | | | |
Table of Contents / Advanced Topics / Anonymous Zether |
MANY-OUT-OF-MANY PROOFS | | | |
Table of Contents / Advanced Topics / Quisquis |
Quisquis: A New Design for Anonymous Cryptocurrencies | | | |
Table of Contents / Advanced Topics / Zk-VM |
ZKVM book | | | |
Introduction to zkEVM | | | |
Table of Contents / Advanced Topics / Elliptic Curve |
2-chains of elliptic curves | | | |
A survey of elliptic curves for proof systems | | | |
ECFFT: Fast Polynomial Algorithms over all Finite Fields | | | |
Table of Contents / Advanced Topics / Slush: Fractal Scaling |
Slush, a proposal for Fractal scaling | | | |
Table of Contents / Advanced Topics / DIZK: Distributed ZKP |
DIZK: A Distributed Zero Knowledge Proof System | | | |
Table of Contents / Advanced Topics / Network Privacy |
Dandelion: Redesigning the Bitcoin Network for Anonymity | | | |
A Flexible Network Approach to Privacy of Blockchain Transactions | | | |