Imagine proving to a friend that you know a secret — without revealing the secret itself. That is the goal of a zero-knowledge proof: convince a verifier that a statement is true while leaking nothing beyond the truth of the statement.
The classic way to do it is a three-step dance called a Σ-protocol (sigma protocol):
- The prover sends a commitment — a random blinding value.
- The verifier picks a random challenge and sends it back.
- The prover computes a response that ties the challenge to the secret, and the verifier checks it.
This works beautifully — but it requires the prover and verifier to be online at the same time. In 1986, Amos Fiat and Adi Shamir asked a disarmingly simple question: what if the prover just computed the challenge themselves, using a hash function?
Replace the verifier's random challenge with , where is a cryptographic hash, and the interaction collapses to a single object the prover publishes. Anyone can check it later, without a live verifier. That one substitution — the Fiat-Shamir transform — turned interactive proofs into digital signatures and shaped modern cryptography.
Comments
Loading comments...