Zero Knowledge Proofs for Dummies

Alexander Poole
2 min readSep 18, 2021

This is a collection of useful tutorials and blog post for learning and getting started with zero knowledge proofs and zk-snarks. It’s mostly written so that I have a good reference point when dwelling deeper into the depths of zero knowledge profs.

I will add to these lists as I learn more. Hopefully it is useful for someone else.

Abbreviations:

  • zk-snarks — Zero-Knowledge Succinct Non-Interactive Argument of Knowledge
  • Arithmetic circuit — standard model for computing polynomials. Maybe not surprising since the final zk-proof is a polynomial.
  • rc1s — Rank 1 constraint system. Typically described by the vectors A,B,C which define the computation of our arithmetic circuit.
  • QAP — Quadratic Arithmetic Program, zk-snarks can be applied on these programs but creating them from a general computational problem is non trivial.
  • witness — A solution to the equation S.A⋅S.B⋅S−C⋅S=[0] is a witness. This is then used to create a proof.

Reading list:

Videos:

Zero knowledge proofs in the wild:

Tools:

Other links of interest:

  • TariLabs — no idea what they are but they had a lot of good information.

--

--