How to build modern SNARKs systems
Special thanks to the o1Labs cryptography team for the reviews and feedbacks. We have so far explored some interesting applications enabled by SNARKs and the theory that precluded it all (i.e., interactive proof systems). This is the article where we finally get to formally define SNARKs 馃帀馃コ! The goal of this piece is threefold: To introduce the background (i.e., mathematical and computational) knowledge needed to give you a solid base to understand SNARKs holistically....
What is a zkSNARK and where can I use it?
Interactive proof systems were discovered in the 80s and are the foundation behind zero knowledge proofs. Although almost 40 years have passed, zero knowledge proofs only recently got more widely adopted with the advent of blockchains and non-interactive zero knowledge proofs. There exist many protocols implementing non-interactive zero knowledge proofs (or NIZK): zkSNARKs, zkSTARKs, zkSNARGs, etc. Here I will give a brief overview of what zkSNARKs are and where they can be found today....
What are zero knowledge proofs?
My goal with this post is to explain the theory behind zero knowledge proofs using first principles as I incrementally introduce more context to make sense of it. Here I will try to describe things in a way that most people with some basic comfort level with mathematics can comprehend. The reason why I decided to write about it comes from a personal struggle, most of the material I found available online was either too shallow or too heavy for me to understand zero knowledge proofs....