Expand description

The core [KZG10] construction.

Here we construct a polynomial commitment that enables users to commit to a single polynomial p, and then later provide an evaluation proof that convinces verifiers that a claimed value v is the true evaluation of p at a chosen point x. Our construction follows the template of the construction proposed by Kate, Zaverucha, and Goldberg (KZG11). This construction achieves extractability in the algebraic group model (AGM).

Structs

KZG10 is an implementation of the polynomial commitment scheme of Kate, Zaverucha and Goldbgerg
KZGCommitment commits to a polynomial. It is output by KZG10::commit.
KZGProof is an evaluation proof that is output by KZG10::open.
KZGRandomness hides the polynomial inside a commitment. It is output by KZG10::commit.
LagrangeBasis is used to commit to and create evaluation proofs for a given polynomial.
Powers is used to commit to and create evaluation proofs for a given polynomial.
PreparedKZGCommitment commits to a polynomial and prepares for mul_bits.
PreparedVerifierKey is the fully prepared version for checking evaluation proofs for a given commitment. We omit gamma here for simplicity.
UniversalParams are the universal parameters for the KZG10 scheme.
VerifierKey is used to check evaluation proofs for a given commitment.

Enums