Skip to main content

Module ec

Module ec 

Source
Expand description

Elliptic Curve Primitives

This module provides low-level elliptic-curve operations on several curves. Individual implementations use timing-aware techniques, but the module has no blanket compiler- or target-level constant-time guarantee and is not by itself a complete protocol such as RFC 9180 HPKE. The prime curves retained for v3 are P-224, P-256, P-384, P-521, and secp256k1. P-192 and sect283k1 were removed: P-192 is legacy-only in NIST SP 800-186, while the previous sect283k1 implementation used an incorrect group order and did not validate subgroup membership.

Re-exports§

pub use bls12_381::pairing as bls12_381_pairing;
pub use bls12_381::Bls12_381Scalar;
pub use bls12_381::G1Projective as Bls12_381G1;
pub use bls12_381::G2Projective as Bls12_381G2;
pub use bls12_381::Gt as Bls12_381Gt;
pub use k256::Point as K256Point;
pub use k256::Scalar as K256Scalar;
pub use p224::Point as P224Point;
pub use p224::Scalar as P224Scalar;
pub use p256::Point as P256Point;
pub use p256::Scalar as P256Scalar;
pub use p384::Point as P384Point;
pub use p384::Scalar as P384Scalar;
pub use p521::Point as P521Point;
pub use p521::Scalar as P521Scalar;

Modules§

bls12_381
BLS12-381 pairing-friendly elliptic curve implementation.
k256
Koblitz secp256k1 Elliptic Curve Primitives
p224
NIST P-224 Elliptic Curve Primitives
p256
NIST P-256 Elliptic Curve Primitives
p384
NIST P-384 Elliptic Curve Primitives
p521
NIST P-521 Elliptic Curve Primitives

Structs§

Affine
Affine coordinates (x,y)
Jacobian
Jacobian projective coordinates (X:Y:Z) where x = X/Z² and y = Y/Z³

Traits§

CoordinateSystem
Common trait for coordinate systems used in elliptic curve operations