Jens Groth - Efficient Zero-Knowledge Proof Systems

A proof system can be used by a prover to demonstrate to one or more verifiers that statement is true. Proof systems can be interactive where the prover and verifier exchange many messages or non-interactive where the prover just sends a convincing proof to the verifier. Proof systems are widely used in cryptographic protocols to verify that a party is following a protocol correctly and is not cheating.
A particular type of proof systems are zero-knowledge proof systems, where the prover only convinces the verifier that the statement is true but does not leak any other information. Zero-knowledge proofs are useful when the prover has private data that should not be leaked but just wants to demonstrate a certain fact about this data, for instance the prover may want to show it is following a protocol correctly but not want to reveal its own input.
Recent research has yielded many performance improvements. The focus of the lectures will be on definitions and construction of highly efficient zero-knowledge proof systems.