Quiz Entry - updated: 2026.07.14
What are the three required properties of a Zero-Knowledge Proof?
Completeness, Soundness, and Zero-Knowledge. All three must hold simultaneously, otherwise the protocol is broken in some way.
| Property | Statement | What it rules out |
|---|---|---|
| Completeness | If the statement is true, an honest prover can convince an honest verifier | Protocol that rejects valid proofs |
| Soundness | If the statement is false, no cheating prover can convince an honest verifier (except with negligible probability) | Verifier fooled by lying provers |
| Zero-Knowledge | The verifier learns nothing beyond "the statement is true" | Leakage of the underlying secret |
The third property is the surprising one — proving "I know X" without revealing anything about X.
Mental check:
- A normal proof (e.g. of a math theorem) satisfies completeness and soundness.
- A ZKP additionally guarantees the verifier's transcript can be simulated without the secret — meaning the verifier could have produced the same conversation alone. That's why the verifier "learns nothing."
Tip: When evaluating a ZK protocol (Schnorr, zk-SNARKs, …), always ask "which of the three is the weakest link?" Soundness errors usually mean a cryptanalytic break; zero-knowledge errors usually mean a side-channel or transcript leak.