pub trait Bls12Config: 'static + Sized {
    type Fp: PrimeField + Into<<Self::Fp as PrimeField>::BigInt>;
    type Fp2Config: Fp2Config<Fp = Self::Fp>;
    type Fp6Config: Fp6Config<Fp2Config = Self::Fp2Config>;
    type Fp12Config: Fp12Config<Fp6Config = Self::Fp6Config>;
    type G1Config: SWCurveConfig<BaseField = Self::Fp>;
    type G2Config: SWCurveConfig<BaseField = Fp2<Self::Fp2Config>, ScalarField = <Self::G1Config as CurveConfig>::ScalarField>;

    const X: &'static [u64];
    const X_IS_NEGATIVE: bool;
    const TWIST_TYPE: TwistType;

    fn multi_miller_loop(
        a: impl IntoIterator<Item = impl Into<G1Prepared<Self>>>,
        b: impl IntoIterator<Item = impl Into<G2Prepared<Self>>>
    ) -> MillerLoopOutput<Bls12<Self>> { ... } fn final_exponentiation(
        f: MillerLoopOutput<Bls12<Self>>
    ) -> Option<PairingOutput<Bls12<Self>>> { ... } }

Required Associated Types§

Required Associated Constants§

Parameterizes the BLS12 family.

Is Self::X negative?

What kind of twist is this?

Provided Methods§

Implementors§