pub trait TwistedEdwardsParameters: ModelParameters {
    type MontgomeryParameters: MontgomeryParameters<BaseField = Self::BaseField>;

    const EDWARDS_A: <Self as ModelParameters>::BaseField;
    const EDWARDS_D: <Self as ModelParameters>::BaseField;
    const COFACTOR: &'static [u64];
    const COFACTOR_INV: <Self as ModelParameters>::ScalarField;
    const AFFINE_GENERATOR_COEFFS: (Self::BaseField, Self::BaseField);

    // Provided method
    fn mul_by_a(elem: &Self::BaseField) -> Self::BaseField { ... }
}

Required Associated Types§

type MontgomeryParameters: MontgomeryParameters<BaseField = Self::BaseField>

Required Associated Constants§

const EDWARDS_A: <Self as ModelParameters>::BaseField

The coefficient A of the twisted Edwards curve.

const EDWARDS_D: <Self as ModelParameters>::BaseField

The coefficient D of the twisted Edwards curve.

const COFACTOR: &'static [u64]

The cofactor of the twisted Edwards curve.

const COFACTOR_INV: <Self as ModelParameters>::ScalarField

The cofactor inverse of the twisted Edwards curve.

const AFFINE_GENERATOR_COEFFS: (Self::BaseField, Self::BaseField)

The affine generator of the twisted Edwards curve.

Provided Methods§

fn mul_by_a(elem: &Self::BaseField) -> Self::BaseField

Implementors§

§

impl TwistedEdwardsParameters for EdwardsParameters

§

type MontgomeryParameters = EdwardsParameters

§

const AFFINE_GENERATOR_COEFFS: (<EdwardsParameters as ModelParameters>::BaseField, <EdwardsParameters as ModelParameters>::BaseField) = (GENERATOR_X, GENERATOR_Y)

§

const COFACTOR: &'static [u64] = &[4]

§

const COFACTOR_INV: Fp256<FrParameters> = Fr{ 0: BigInteger256([10836190823041854989, 14880086764632731920, 5023208332782666747, 239524813690824359]), 1: std::marker::PhantomData,}

§

const EDWARDS_A: Fp256<FrParameters> = Fq{ 0: BigInteger256([10157024534604021774, 16668528035959406606, 5322190058819395602, 387181115924875961]), 1: std::marker::PhantomData,}

§

const EDWARDS_D: Fp256<FrParameters> = Fq{ 0: BigInteger256([15008245758212136496, 17341409599856531410, 648869460136961410, 719771289660577536]), 1: std::marker::PhantomData,}