Skip to content

Elliptic curve types and traits for generically expressing curve types, scalars, points, and keys

Notifications You must be signed in to change notification settings

Mundo-enfermo-y-triste/elliptic-curves

 
 

Repository files navigation

RustCrypto: Elliptic Curves Rust Version

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.

All curves reside in the separate crates and implemented using traits from the elliptic-curve crate. Additionally all crates do not require the standard library (i.e. no_std capable) and can be easily used for bare-metal or WebAssembly programming.

Crates

Name Curve arithmetic? Crates.io Documentation Build Status
k256 secp256k1 crates.io Documentation build
p256 NIST P-256 crates.io Documentation build
p384 NIST P-384 🚫 crates.io Documentation build
p521 NIST P-521 🚫 crates.io Documentation build

NOTE: Some crates contain field/point arithmetic implementations gated under the arithmetic cargo feature as noted above.

Other Curves

Curve25519

We recommend curve25519-dalek for a pure Rust Curve25519 library.

Minimum Supported Rust Version

All crates in this repository support Rust 1.41 or higher. In future minimum supported Rust version can be changed, but it will be done with the minor version bump.

License

All crates licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

Elliptic curve types and traits for generically expressing curve types, scalars, points, and keys

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 100.0%