Trait halo2_backend::poly::commitment::CommitmentScheme
source · pub trait CommitmentScheme {
type Scalar: Field;
type Curve: CurveAffine<ScalarExt = Self::Scalar>;
type ParamsProver: ParamsProver<Self::Curve>;
type ParamsVerifier: for<'params> ParamsVerifier<'params, Self::Curve>;
// Required methods
fn new_params(k: u32) -> Self::ParamsProver;
fn read_params<R: Read>(reader: &mut R) -> Result<Self::ParamsProver>;
}
Expand description
Defines components of a commitment scheme.
Required Associated Types§
sourcetype Curve: CurveAffine<ScalarExt = Self::Scalar>
type Curve: CurveAffine<ScalarExt = Self::Scalar>
Elliptic curve used to commit the application and witnesses
sourcetype ParamsProver: ParamsProver<Self::Curve>
type ParamsProver: ParamsProver<Self::Curve>
Constant prover parameters
sourcetype ParamsVerifier: for<'params> ParamsVerifier<'params, Self::Curve>
type ParamsVerifier: for<'params> ParamsVerifier<'params, Self::Curve>
Constant verifier parameters
Required Methods§
sourcefn new_params(k: u32) -> Self::ParamsProver
fn new_params(k: u32) -> Self::ParamsProver
Wrapper for parameter generator
sourcefn read_params<R: Read>(reader: &mut R) -> Result<Self::ParamsProver>
fn read_params<R: Read>(reader: &mut R) -> Result<Self::ParamsProver>
Wrapper for parameter reader
Object Safety§
This trait is not object safe.