This repository contains my work on the RareSkills ZK-book.
Chapter 1: Set Theory
Chapter 2: Group Theory
Chapter 3: Rings and Fields
Chapter 4: Elliptic Curve Addition
Chapter 5: Elliptic Curves in Finite Fields
Chapter 6: Bilinear Pairings
Chapter 7: Arithmetic Circuits
Chapter 8: Rank 1 Constraint Systems
Chapter 9: Zero Knowledge Proofs with Rank 1 Constraint Systems
Chapter 10: Quadratic Arithmetic Programs
Chapter 11: R1CS to QAP in Python
Chapter 12: Encrypted Polynomial Evaluation
Chapter 13: Quadratic Arithmetic Programs over Elliptic Curves
Chapter 14: [Groth16 Explained]()
Chapter 15: [Circom and Circomlib]()
It is a set with:
Order of a group = the number of elements in it
Cyclic group = group that has a generator element, allows to generate every other elements with the binary operator
Product of groups exist and are useful.
It is a set with two binary operators such that:
It is a set with two bin operators such that: