| Aspect | First‑principles view | | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Goal** | Convince a verifier that a statement about hidden data is true without leaking anything more than that fact. | | **Actors** | _Prover_ (knows the secret) and _Verifier_ (skeptical). | | **Game** | A protocol with randomness. The verifier finishes with _accept_ or _reject_. | | **Security pillars** | 1. **Completeness**: Honest prover wins. 2. **Soundness**: Liar almost never wins. 3. **Zero knowledge**: Everything the verifier saw could have been faked by a simulator that knows no secret. | | **Building blocks** | Commitments, hash functions, algebra over finite fields or elliptic curves. | | **Typical flow** | Commit → Challenge → Response. Repeat or aggregate until cheating chance is negligible. | | **Variations** | _Interactive_ (classic), _Non‑interactive_ (Fiat–Shamir hash trick), _Succinct_ proofs (SNARKs, STARKs) for blockchain and privacy applications. |