Source: Proofs, Arguments, and Zero-Knowledge, Section 17.2
Linear Function:
- A function for some large
- Equivalently, is a -variate polynomial of total degree with a constant term of .
The main challenge is that we want the prover’s work to be , not .
Commitment scheme: Makes use of a semantically secure, additively homomorphic encryption scheme (e.g. ElGamal encryption)
- Commitment phase:
- The verifier chooses a vector at random and sends an encryption to the prover
- The prover computes the encryption of for some vector (since is linear), exploiting additive homomorphism of the encryption scheme
- Reveal Phase: Let be query vectors
- The verifier chooses at random and sends as well as
- The prover responds with , claimed to be the evaluations at those points
- The verifier approves if