pub trait CurvePoint: AbelianGroup {
    type MulScalar;

    const GENERATOR: Self;

    // Required methods
    fn scalar_mul(self, k: Self::MulScalar) -> Self;
    fn double(self) -> Self;
    fn at_inf(&self) -> bool;
    fn on_curve(&self) -> bool;
    fn normalize(self) -> Self;
    fn mont_form(self) -> Self;
    fn mont_rdc(self) -> Self;
}

Required Associated Types§

Required Associated Constants§

source

const GENERATOR: Self

Required Methods§

source

fn scalar_mul(self, k: Self::MulScalar) -> Self

k * self

source

fn double(self) -> Self

2 * self

source

fn at_inf(&self) -> bool

whether current point is at infinity

source

fn on_curve(&self) -> bool

source

fn normalize(self) -> Self

convert point into affine coordinate

source

fn mont_form(self) -> Self

source

fn mont_rdc(self) -> Self

Implementors§