elliptic_curve::hash2curve

Trait OsswuMap

Source
pub trait OsswuMap: Field + Sgn0 {
    const PARAMS: OsswuMapParams<Self>;

    // Provided methods
    fn sqrt_ratio_3mod4(u: Self, v: Self) -> (Choice, Self) { ... }
    fn osswu(&self) -> (Self, Self) { ... }
}
Available on crate feature hash2curve only.
Expand description

The optimized simplified Shallue-van de Woestijne-Ulas method for mapping elliptic curve scalars to affine points.

Required Associated Constants§

Source

const PARAMS: OsswuMapParams<Self>

The OSSWU parameters for mapping the field to affine points. For Weierstrass curves having A==0 or B==0, the parameters should be for isogeny where A≠0 and B≠0.

Provided Methods§

Source

fn sqrt_ratio_3mod4(u: Self, v: Self) -> (Choice, Self)

Optimized sqrt_ratio for q = 3 mod 4.

Source

fn osswu(&self) -> (Self, Self)

Convert this field element into an affine point on the elliptic curve returning (X, Y). For Weierstrass curves having A==0 or B==0 the result is a point on an isogeny.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§