ZK
Circuit
A circuit can be represented as follows:
Here, denotes the public input, and denotes the witness (i.e., private input).
The circuit outputs if the conditions are satisfied; otherwise, it returns .
Example
Suppose you want to create a circuit that checks whether you know the square root of a value without revealing the square root itself. The circuit can be expressed as:
This verifies that is a valid square root of the public input .
Symbols
: Prover — the party who knows the witness and constructs a proof.
: Verifier — the party who checks the validity of the proof.
: Adversary — an attacker or a malicious party in the security model.
: Oracle — an abstract function or idealized interface (e.g., random oracle).
: The proof generated by the prover.
: A polynomial function, typically used to express a bound of computational power of a party. (e.g., "runs in time").
: Security parameter — determines cryptographic strength; higher indicates stronger security.
Last updated