Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/quillhash/zero-knowledge-mastery
This repository contains list of resources to aid your journey of mastering Zero Knowledge Proofs. If you find any resource missing, you can create a pull request and be a contributor of the project.
https://github.com/quillhash/zero-knowledge-mastery
ethereum zero-knowledge-proofs zk-snarks zkp zksync
Last synced: 5 days ago
JSON representation
This repository contains list of resources to aid your journey of mastering Zero Knowledge Proofs. If you find any resource missing, you can create a pull request and be a contributor of the project.
- Host: GitHub
- URL: https://github.com/quillhash/zero-knowledge-mastery
- Owner: Quillhash
- Created: 2023-07-27T10:41:19.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-03-29T14:01:10.000Z (8 months ago)
- Last Synced: 2024-03-30T14:56:40.040Z (8 months ago)
- Topics: ethereum, zero-knowledge-proofs, zk-snarks, zkp, zksync
- Homepage: https://www.quillaudits.com/services/zksync-audit
- Size: 2.28 MB
- Stars: 158
- Watchers: 3
- Forks: 27
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
![](https://github.com/Quillhash/Zero-Knowledge-Mastery/blob/main/files/Zero%20Knowledge%20Mastery.png)
[Zero-Knowledge_Mastery.pdf](https://github.com/Quillhash/Zero-Knowledge-Mastery/blob/main/files/Zero%20Knowledge%20Mastery.pdf)
## Content
1. [Introduction](#introduction)
2. [Mathematical Knowledge](#mathematical-knowledge)
3. [Courses](#courses)
4. [Programming languages](#programming-languages)
5. [Libraries](#libraries)
6. [Layer1 and Layer2](#layer1-and-layer2)
7. [Puzzles](#puzzles)
8. [Books](#books)
10. [Papers](#papers)
11. [Application and Use Cases](#application-and-use-cases)
12. [Opensource Projects](#opensource-projects)
13. [Tools](#tools)
14. [Tweets](#tweets)
15. [Communities](#communities)
16. [Writeups](#writeups)
17. [Security](#security)
## Introduction
- [An approximate introduction to how zk-SNARKs are possible](https://vitalik.eth.limo/general/2021/01/26/snarks.html)
- [zk-SNARK Concepts Explained Like You’re 15](https://sjkelleyjr.medium.com/zk-snark-concepts-explained-like-youre-15-54755f87c6d1)
- [Computer Scientist Explains One Concept in 5 Levels of Difficulty | WIRED](https://www.youtube.com/watch?v=fOGdb1CTu5c)
- [How To Create a ZK Smart Contract](https://medium.com/cyfrin/how-to-create-a-zk-smart-contract-cd948a673749)
- [What Is Zero-knowledge Proof and How Does It Impact Blockchain?](https://academy.binance.com/en/articles/what-is-zero-knowledge-proof-and-how-does-it-impact-blockchain)
- [Introduction to Zero Knowledge Proofs](https://www.youtube.com/watch?v=BT88s7_VtC8) : Youtube
- [What to know about Zero Knowledge](https://archive.devcon.org/archive/watch/6/what-to-know-about-zero-knowledge/?tab=YouTube)
- [A beginner's intro to coding zero-knowledge proofs](https://dev.to/spalladino/a-beginners-intro-to-coding-zero-knowledge-proofs-c56)
- [ZKPs for Engineers: Introduction](https://blog.zkga.me/intro-to-zksnarks)
- [Zero Knowledge Proofs: An Illustrated Primer by Matthew Green](https://blog.cryptographyengineering.com/2014/11/27/zero-knowledge-proofs-illustrated-primer/)
- [Understanding ZKPs Through Illustrated Examples](https://blog.goodaudience.com/understanding-zero-knowledge-proofs-through-simple-examples-df673f796d99)
- Vitalik Buterin
- [Part 1: Proofs with Polynomials](https://vitalik.ca/general/2017/11/09/starks_part_1.html)
- [Part 2: Thank Goodness It's FRI-day](https://vitalik.ca/general/2017/11/22/starks_part_2.html)
- [Part 3: Into the Weeds](https://vitalik.ca/general/2018/07/21/starks_part_3.html)
## Mathematical Knowledge
- [ZK Primer](https://blog.cryptographyengineering.com/2014/11/27/zero-knowledge-proofs-illustrated-primer)
- [Polynomials 101](https://www.zkcamp.xyz/blog/you-cant-understand-zkps-without-understanding-polynomials)
- [Mathematics for ZK](https://www.youtube.com/@lambdaclass/playlists) : Youtube
- [Quadratic Arithmetic Programs: from Zero to Hero](https://medium.com/@VitalikButerin/quadratic-arithmetic-programs-from-zero-to-hero-f6d558cea649) : Vitalik Buterin
- [Introduction to Mathematical Cryptography](https://github.com/isislovecruft/library--/blob/master/cryptography%20%26%20mathematics/An%20Introduction%20to%20Mathematical%20Cryptography%20(2014)%20-%20Hoffstein%2C%20Pipher%2C%20Silverman.pdf)
- [A Graduate Course in Applied Cryptography](https://crypto.stanford.edu/~dabo/cryptobook/BonehShoup_0_4.pdf)
- [Modern Computer Algebra](https://maths-people.anu.edu.au/~brent/pd/mca-cup-0.5.9.pdf)
- [Algebraic Number Theory](https://kashanu.ac.ir/Files/Content/ANT.pdf)
- [Computational Introduction to Number Theory and Algebra](https://shoup.net/ntb/ntb-v2.pdf)
- [Lattice Cryptography](https://eprint.iacr.org/2015/939.pdf)
- [The Mathematics behind zkSNARKS](https://www.youtube.com/watch?v=iRQw2RpQAVc)## Courses
- [Zero Knowledge Proofs MOOC Videos](https://www.youtube.com/@blockchain-web3moocs635)
- [ZKP WhiteBoard Sessions](https://zkhack.dev/whiteboard/)
- [ZK Learning](https://zk-learning.org/)
- [Zero Knowledge Canon](https://a16zcrypto.com/posts/article/zero-knowledge-canon/)
- [ZK Battleship sCrypt](https://academy.scrypt.io/)
- [A Practical Guide To Building Zero Knowledge dApps](https://kndrck.co/posts/practical_guide_build_zk_dapps/)
- [Getting Started with zkSnarks on ZoKrates](https://blog.gnosis.pm/getting-started-with-zksnarks-zokrates-61e4f8e66bcc)
- [ZK AUDITING FELLOWSHIP - yacademy](https://yacademy.dev/fellowships/zBlock1/)
- [0xPARC learning group](https://learn.0xparc.org)## Programming Languages
### [Programming Languages in ZKP](https://medium.com/delendum/thoughts-of-programming-languages-in-zkp-c906e96f056e)
- [Cario](https://cairo-lang.org/docs/)
- [Circom](https://docs.circom.io/)
- [Noir](https://noir-lang.github.io/book/index.html)
- [Snarky](https://github.com/o1-labs/snarky)
- [Zinc](https://github.com/matter-labs/zinc)
- [ZoKrates](https://zokrates.github.io/)
- [Leo](https://developer.aleo.org/developer/language/layout/)
- [Juxiv](https://juvix.readthedocs.io/en/latest/index.html)
- [zkVM](https://github.com/stellar/slingshot/files/3164245/zkvm-whitepaper-2019-05-09.pdf)
- [ZKPDL](http://cs.brown.edu/research/brownie/usenix10.pdf)
- [Lurk](https://github.com/lurk-lang/lurk/blob/master/spec/v0-1.md)
- [Chiquito](https://github.com/privacy-scaling-explorations/chiquito)
## Libraries
- [Libsnark](https://github.com/scipr-lab/libsnark)
- [Bulletproofs](https://github.com/dalek-cryptography/bulletproofs)
- [gnark](https://github.com/ConsenSys/gnark)
- [Bellman](https://github.com/zkcrypto/bellman)
- [libSTARK](https://github.com/elibensasson/libSTARK)
- [jellyfish](https://github.com/EspressoSystems/jellyfish)
- [Arkworks](https://github.com/arkworks-rs)
- [Circomlib](https://github.com/iden3/circomlib)
- [DIZK](https://github.com/scipr-lab/dizk)
- [plonky](https://github.com/mir-protocol/plonky2)
- [Spartan](https://github.com/microsoft/Spartan)
- [wasmsnark](https://github.com/iden3/wasmsnark)
- [libiop](https://github.com/scipr-lab/libiop)
- [Nova](https://github.com/microsoft/Nova)
- [SnarkyJS](https://github.com/o1-labs/snarkyjs)
- [DIZK](https://github.com/scipr-lab/dizk)
- [halo2-lib](https://github.com/axiom-crypto/halo2-lib)## Layer1 and Layer2
### Layer 1
- [Iron Fish](https://ironfish.network/)
- [Mir Protocol](https://mirprotocol.org/blog/Introducing-Mir)
- [Aleo](https://github.com/AleoHQ/aleo)
- [Lelantus](https://lelantus.io/)
- [Mina](https://minaprotocol.com/wp-content/uploads/technicalWhitepaper.pdf)
- [Neptune](https://neptune.cash/)
- [Espresso Systems](http://espressosys.com/)
- [DarkFi](https://dark.fi/)
- [Zeeka Network](https://hackmd.io/_Sw5u2lUR9GfBV5vwtoMSQ#Zeeka-Network---Whitepaper)
- [Quark](https://github.com/liamzebedee/quark-blockchain/blob/master/whitepaper.md)
- [Celo](https://celo.org/)### Layer 2
- [Aztec](https://aztec.network/)
- [StarkNet](https://starkware.co/starknet/)
- [ZEXE on Plasma](https://devpost.com/software/zexe-on-ethereum)
- [zkSync](https://zksync.io)
- [Scroll](https://scroll.io/)
- [Twilight](https://twilight.finance/)
- [Polygon Zero](https://polygon.technology/solutions/polygon-zero/)
- [Polygon Miden](https://polygon.technology/solutions/polygon-miden/)
- [Taikocha](https://taikocha.in/)
- [Radius](https://ethresear.ch/t/mev-resistant-zk-rollups-with-practical-vde-pvde/12677)
- [Orbis](https://linktr.ee/orbisprotocol)
- [Nightfall](https://github.com/EYBlockchain/nightfall/blob/master/doc/whitepaper/nightfall-v1.pdf)## Puzzles
- [Let's Hash It Out](https://zkhack.dev/events/puzzle1.html)
- [Sudoku](https://github.com/nalinbhardwaj/snarky-sudoku)
- [Battleship](https://xiaohuiliu.medium.com/introducing-zkbattleship-the-worlds-first-interactive-zero-knowledge-proof-tutorial-95d1fc5f65cb)
- [Incomplete Information Games on Bitcoin](https://xiaohuiliu.medium.com/incomplete-information-games-on-bitcoin-d79408050882)
- [Dark Forest](https://zkga.me/)
- [Zordle](https://github.com/nalinbhardwaj/zordle)
- [Lottery](https://killari.medium.com/zero-knowledge-lottery-437e456dc3f2)
- [zkAutoChess](https://talk.harmony.one/t/zkautochess-an-on-chain-auto-chess-battle-game/18375)
- [GoL2](https://github.com/perama-v/GoL2)
- [Cachebox](https://github.com/qcomps/cachebox)
- [Exgrasia](https://github.com/nalinbhardwaj/exgrasia)
- [Crypto Maze](https://www.cryptomaze.app/)
## Books
- [Proofs, Arguments, and Zero-Knowledge](https://people.cs.georgetown.edu/jthaler/ProofsArgsAndZK.pdf)
- [A Graduate Course in Applied Cryptography](http://toc.cryptobook.us/book.pdf)
- [The MoonMath Manual to zk-SNARKs](https://leastauthority.com/community-matters/moonmath-manual)
## Papers
- [Why and How zk-SNARK Works](https://arxiv.org/abs/1906.07221)
- [zk research](https://zkresear.ch/)
- [A simplified polynomial protocol for lookup tables](https://eprint.iacr.org/2020/315.pdf)
- [Dandelion: Redesigning the Bitcoin Network for Anonymity](https://arxiv.org/pdf/1701.04439.pdf)
## Application and Use Cases
- [Checks and balances: Machine learning and zero-knowledge proofs](https://a16zcrypto.com/posts/article/checks-and-balances-machine-learning-and-zero-knowledge-proofs/)
- [ZK Machine Learning: truly private machine learning, with zk-SNARKs and blockchain](https://github.com/zk-ml/demo)
- [Reinventing Vulnerability Disclosure using Zero-knowledge Proofs](https://blog.trailofbits.com/2020/05/21/reinventing-vulnerability-disclosure-using-zero-knowledge-proofs/)
- [Zero Knowledge Proof and its Applications in Bitcoin](https://xiaohuiliu.medium.com/zero-knowledge-proof-and-its-applications-in-bitcoin-aca833d7d745)
- [Zcash: Privacy-Protecting Digital Currency](https://z.cash/)
- [Awesome Privacy on Blockchains](https://github.com/Mikerah/awesome-privacy-on-blockchains)
- [A Flexible Network Approach to Privacy of Blockchain Transactions](https://arxiv.org/pdf/1807.11338.pdf)
- [Quisquis: A New Design for Anonymous Cryptocurrencies](https://eprint.iacr.org/2018/990.pdf)
- [Pinocchio: Nearly Practical Verifiable Computation](https://eprint.iacr.org/2013/279.pdf)
- [Waku: a suite of privacy-preserving, peer-to-peer messaging protocols](https://waku.org)
- [StealthDrop: Anonymous Airdrops using ZK proofs](https://github.com/nalinbhardwaj/stealthdrop)
- [zk-NftMint: Mint an NFT if you know a secret](https://github.com/weijiekoh/zknftmint)
- [Loopring zkRollup Exchange](https://medium.com/loopring-protocol/loopring-launches-zkrollup-exchange-loopring-io-d6a85beeed21)
- [zk-SQL: Self-sovereign SQL queries](https://github.com/timoth-y/zk-SQL)
- [Hyper Oracle: Programmable zkOracle network ](https://hyperoracle.io/)
- [Foundation's Proof Market](https://proof.market.nil.foundation)
- [Integrating Zerocash on Ethereum](https://github.com/clearmatics/zeth)## Opensource Projects
- [ZK EVM](https://t.co/HE4D8lJfkt)
- [Starknet](https://t.co/8LR9MHvVnV)
- [ZK Sync](https://t.co/DQpoHdsR0C)
- [Light Protocol on Solana](https://www.lightprotocol.com/)
- [Tornado Cash](https://tornado-cash.medium.com/introducing-private-transactions-on-ethereum-now-69fb059a14a1)
- [ZKaggle](https://ethglobal.com/showcase/zkaggle-70g3b)
- [ZKPhoto](https://github.com/socathie/zkPhoto)
## Tools
- [ZK Toolkit](https://github.com/socathie/keras2circom)
- [hello-noir: Hardhat x Foundry Template](https://github.com/socathie/hello-noir)
## Tweets
- [I spent the past week reading hundreds of resources](https://twitter.com/jarrodWattsDev/status/1674312138402283520)
- [Solidity devs do you want to get into ZK but don't know where to start?](https://twitter.com/alexroan/status/1666739234215002119)
- [ZK Fundamentals: What is proof aggregation, recursion, and composition?](https://twitter.com/tracecrypto1/status/1653007267728355328)
- [Explain ZK Proofs to someone new to web3](https://twitter.com/a16zcrypto/status/1623742284134252544)
- [Simplifying zkEVM for a 10year old](https://twitter.com/0xSalazar/status/1605636584631566371)
- [ZK rollup categorization](https://twitter.com/pseudotheos/status/1622698514475061252)
- [About zk](https://twitter.com/0xSalazar/status/1587492234223558656)
- [Here are the best released (and unreleased) ZK projects to keep your eye on](https://twitter.com/milesdeutscher/status/1620799259976007681)
- [ZK setup process](https://twitter.com/jonataspvt/status/1615524375385763840)
- [A question on ZK circuit development](https://twitter.com/smpalladino/status/1607483400021241856)
- [ConsenSys zkEVM is such a giant leap forward for the Ethereum ecosystem, and here’s why…](https://twitter.com/DeclanFox14/status/1602830122796523520)
- [zk rollups](https://twitter.com/trading_vapor/status/1624002289844252678)## Communities
- [ZK Hack](https://discord.gg/rcCjDb8sya) : Discord Server
- [Zero-knowledge podcast](https://www.zeroknowledge.fm)
- [ZK Tech](https://www.reddit.com/r/zkTech) : Reddit
- [0xPARC](https://0xparc.org/) : Supporting the next generation of cryptography-enabled applications.
- [ZKProof](https://zkproof.org/) : Open-Industry academic initiative
## Writeups
- [Hickup’s ZK Journey](https://www.notion.so/quillaudits/Hickup-s-ZK-Journey-affa9ce9cdf44a33b3549c37f908521a?pvs=4)
- [Zero Knowledge Database : Notion ](https://blog.cryptographyengineering.com/2014/11/27/zero-knowledge-proofs-illustrated-primer/)
- [Zero Knowledge Blog](https://www.zeroknowledgeblog.com)
## Security
- [zk Bug Tracker - Github](https://github.com/0xPARC/zk-bug-tracker)
- [Circom-Pairing: A Million-Dollar ZK Bug Caught Early](https://medium.com/veridise/circom-pairing-a-million-dollar-zk-bug-caught-early-c5624b278f25)
- [ZK privacy landscape > Zero-knowledge privacy-enhancing solutions](https://github.com/web3privacy/web3privacy/blob/main/ZKprivacylandscape/Readme.md)
- [DeFi security Summit 2023 - Session 12: Vulnerabilities & Exploits - Dmitry Khovratovich](https://www.youtube.com/watch?v=r1j3zfjar-4&t=276s)## Security Firms
- [Quill Audits](https://www.quillaudits.com/services/zksync-audit)
- [Diligence](https://consensys.net/diligence/)
- [Trail of Bits](https://www.trailofbits.com/)
- [ZK Labs](https://zklabs.io/#audits)
- [Least Authority](https://leastauthority.com/)
- [ABDK](https://www.abdk.consulting/)
- [Kudelski Security](https://kudelskisecurity.com/)
- [Hashcloak](https://hashcloak.com/)
- [Taurus](https://blog.taurushq.com/zero-knowledge-security/)
- [Common Prefix](https://www.commonprefix.com/)