Schnorr identification

Classic ZK proof of discrete log knowledge. Prover shows R = g^r. Verifier sends challenge c. Prover sends s = r + c·x. Verify g^s = R · y^c.

Advertisement

Fiat-Shamir

Turn interactive proof non-interactive: replace verifier's random challenge with hash of transcript. Random oracle model.

Advertisement

zk-SNARKs

Succinct non-interactive arguments. Groth16, PLONK. Proof size O(1). Trusted setup or universal setup.

zk-STARKs

Scalable transparent (no trusted setup). Larger proofs but quantum-resistant + auditable.