logo
Expand description

General purpose Elliptic Curve Cryptography (ECC) support, including types and traits for representing various elliptic curve forms, scalars, points, and public/secret keys composed thereof.

Minimum Supported Rust Version

Rust 1.46 or higher.

Minimum supported Rust version can be changed in the future, but it will be done with a minor version bump.

Re-exports

pub use self::error::Error;
pub use generic_array;
pub use rand_core;
pub use subtle;
pub use self::point::AffinePoint;
pub use self::point::ProjectiveArithmetic;
pub use self::point::ProjectivePoint;
pub use self::public_key::PublicKey;
pub use self::scalar::Scalar;
pub use ff;
pub use group;
pub use digest;
pub use secret_key::SecretKey;
pub use zeroize;

Modules

Type aliases for many constants.

Error type.

Traits for arithmetic operations on elliptic curve field elements

Elliptic curve points.

Elliptic curve public keys.

Scalar types

SEC1 encoding support.

Secret keys for elliptic curves (i.e. private scalars)

Arithmetic helper functions designed for efficient LLVM lowering.

Elliptic curves in short Weierstrass form.

Traits

Views a type that can store bits as a bit-slice.

Elliptic curve.

The Digest trait specifies an interface common for digest functions.

This trait represents an element of a field.

Instantiate this type from the output of a digest.

This trait represents an element of a cryptographic group.

Type Definitions

Byte representation of a base/scalar field element of a given curve.