RustCrypto/elliptic-curves

Collection of pure Rust elliptic curve implementations: NIST P-224, P-256, P-384, P-521, secp256k1, SM2

Rust

878

1,573 commits

updated Oct 5, 2026

See the code

README

RustCrypto: Elliptic Curves Rust Version Project Chat dependency status

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.

Crates in this repo do not require the standard library (i.e. no_std capable) and can be easily used for bare-metal or WebAssembly programming.

Crates

Please see our tracking issue for additional elliptic curves if you are interested in curves beyond the ones listed here.

Minimum Supported Rust Version

All crates in this repository support Rust 1.85 or higher.

Minimum supported Rust version can be changed in the future, but it will be done with a 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.

ecdsa
nist
rust
schnorr
taproot

RustCrypto/elliptic-curves

Collection of pure Rust elliptic curve implementations: NIST P-224, P-256, P-384, P-521, secp256k1, SM2

Rust

878

1,573 commits

updated Oct 5, 2026

See the code

README

RustCrypto: Elliptic Curves Rust Version Project Chat dependency status

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.

Crates in this repo do not require the standard library (i.e. no_std capable) and can be easily used for bare-metal or WebAssembly programming.

Crates

Please see our tracking issue for additional elliptic curves if you are interested in curves beyond the ones listed here.

Minimum Supported Rust Version

All crates in this repository support Rust 1.85 or higher.

Minimum supported Rust version can be changed in the future, but it will be done with a 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.

ecdsa
nist
rust
schnorr
taproot

Project health

Overall

5.5/10

Maintained

10/10

Code review

5/10
OpenSSF Scorecard

Significant stargazers

David Tolnay

9,803 followers · starred Jul 2023

Jonas Platte

660 followers · starred Jan 2021

John Nunley

331 followers · starred May 2024

Zaki Manian

526 followers · starred May 2026