Schnorrs Proof
p: A large prime number.
G: A mathematical group of order p.
g: A generator element of that group.
x: The secret witness (a number known only to the Prover).
X: The public statement (calculated as X = g^x mod p). Think of X like a public lock derived from a private key
R(y,w) = [X = gx] - Relation that the prover is proving is that they know x that connects g to X
Interactive Schnorr Proof
Prover chooses random a from the integers of the modulo p set
Prover calculates and sends A = ga mod p
Verifier responds with random challenge c
Prover calculates and sends z = a + cx mod p
Verifier checks if gz == A times Xc (mod p) is true