Module sonic_pc

Source
Expand description

Polynomial commitment scheme based on the construction in [KZG10], modified to obtain batching and to enforce strict degree bounds by following the approach outlined in [MBKM19, “Sonic”] (more precisely, via the variant in [Gabizon19, “AuroraLight”] that avoids negative G1 powers).

Structs§

BatchProof
Evaluation proof at a query set.
CommitterKey
ComitterKey is used to commit to, and create evaluation proofs for, a given polynomial.
SonicKZG10
Polynomial commitment based on [KZG10], with degree enforcement and batching taken from [MBKM19, “Sonic”] (more precisely, their counterparts in [Gabizon19, “AuroraLight”] that avoid negative G1 powers). The (optional) hiding property of the commitment scheme follows the approach described in [CHMMVW20, “Marlin”].
VerifierKey
VerifierKey is used to check evaluation proofs for a given commitment.

Type Aliases§

Commitment
Commitment is the commitment for the KZG10 scheme.
PreparedCommitment
PreparedCommitment is the prepared commitment for the KZG10 scheme.
PreparedVerifierKey
Nothing to do to prepare this verifier key (for now).
Randomness
Randomness is the randomness for the KZG10 scheme.
UniversalParams
UniversalParams are the universal parameters for the KZG10 scheme.