Shamir's Secret Sharing: How to share a secret s to n parties so that a threshold >= t of them can reconstruct the secret.

Choose a random polynomial p of degree t-1 passing through (0,s). Share secrets p(x) to each party 1 <= x <= n.

Any threshold >= t parties can use Lagrange Interpolation to make a polynomial p1 and evaluate p1(0) to recover the secret s.

n.b. this works over finite fields used in cryptography #moonmath

#moonmath manual adventure is over (or begun)

For sure the book deserves another run. But it is really a good introduction and I warmly recommend it to anyone interested in the nitty gritty math details of the topic

Now I just started going through the Maksym Petkus paper
https://arxiv.org/abs/1906.07221

This paper is amazing and IMO contains the best explanation of the foundations I ever read

Why and How zk-SNARK Works

Despite the existence of multiple great resources on zk-SNARK construction, from original papers to explainers, due to the sheer number of moving parts the subject remains a black box for many. While some pieces of the puzzle are given one can not see the full picture without the missing ones. Hence the focus of this work is to shed light onto the topic with a straightforward and clean approach based on examples and answering many whys along the way so that more individuals can appreciate the state of the art technology, its innovators and ultimately the beauty of math. Paper's contribution is a simplistic exposition with a sufficient and gradually increasing level of complexity, necessary to understand zk-SNARK without any prerequisite knowledge of the subject, cryptography or advanced math. The primary goal is not only to explain how it works but why it works and how it came to be this way.

arXiv.org

#moonmath zk-SNARKs challenge ๐ŸŒ‘ - Week 4 (and half ๐Ÿ˜ƒ)

Entering the formal languages shire
โœ… Decision functions, Instance & Witness
โœ… Statements representations: R1CS, Algebraic Circuits, QAP
โœ… Circuit compilers and PAPER toy language

IMO this is easier to digest than the ECC chapters. But may be subjective

Next stop - Groth16 Protocol gran finale

#cryptography #zeroknowledge #zkSNARKs

#moonmath zk-SNARKs challenge ๐ŸŒ‘ - Week 3

Exiting elliptic curves rollercoaster
โœ… Full torsion groups
โœ… Pairings
โœ… Construction via complex multiplication method

Math is getting hard ๐Ÿคฏ๐Ÿคฏ๐Ÿคฏ

Next stop statements representation using Rank-1 Quadratic Constraint Systems

#cryptography #zeroknowledge #zkSNARKs

#moonmath zk-SNARKs challenge ๐ŸŒ‘ - Week 2

On elliptic curves rollercoaster
โœ… Weierstrass form (affine and projective)
โœ… Montgomery form
โœ… Twisted Edwards form

Discovered some clever tricks to eventually improve my old-good cry library to gain up to 10x speed

#cryptography #zeroknowledge #zkSNARKs

https://tinyurl.com/3ybj4cps

GitHub - LeastAuthority/moonmath-manual: A resource for anyone interested in understanding and unlocking the potential of zk-SNARKs, from beginners to experts.

A resource for anyone interested in understanding and unlocking the potential of zk-SNARKs, from beginners to experts. - GitHub - LeastAuthority/moonmath-manual: A resource for anyone interested in...

GitHub

#moonmath zk-SNARKs challenge ๐ŸŒ‘ - Week 1

โœ… introductory algebra
โœ… prime fields extensions
โœ… projective planes

So far so good, next stop elliptic curves

#cryptography #zeroknowledge #zkSNARKs

https://tinyurl.com/3ybj4cps

GitHub - LeastAuthority/moonmath-manual: A resource for anyone interested in understanding and unlocking the potential of zk-SNARKs, from beginners to experts.

A resource for anyone interested in understanding and unlocking the potential of zk-SNARKs, from beginners to experts. - GitHub - LeastAuthority/moonmath-manual: A resource for anyone interested in...

GitHub

Let the #ZK-SNARKs adventure begin!!! ๐Ÿค“

Booting up from the #moonmath manual https://github.com/LeastAuthority/moonmath-manual

GitHub - LeastAuthority/moonmath-manual: A resource for anyone interested in understanding and unlocking the potential of zk-SNARKs, from beginners to experts.

A resource for anyone interested in understanding and unlocking the potential of zk-SNARKs, from beginners to experts. - GitHub - LeastAuthority/moonmath-manual: A resource for anyone interested in...

GitHub