Files
RustCrypto-signatures/ed25519
Tony Arcieri 3862e12046 ed25519: Perform partial reduction check on Signature
Ensures that the three highest bits of the `s` scalar component of an
Ed25519 signature are unset.

This doesn't ensure that `s` is fully reduced (which would require a
full reduction check in the event that the 4th most significant bit is
set), however it will catch a number of invalid signatures relatively
cheaply.

Inspired by:

https://github.com/dalek-cryptography/ed25519-dalek/pull/99
2019-12-05 09:41:33 -08:00
..
2019-10-27 10:26:19 -07:00

ed25519 crate

crate Docs Apache2/MIT licensed Rust Version Build Status

Edwards Digital Signature Algorithm (EdDSA) over Curve25519 as specified in RFC 8032.

This crate doesn't contain an implementation of Ed25519, but instead contains an ed25519::Signature type which other crates can use in conjunction with the signature::Signer and signature::Verifier traits.

These traits allow crates which produce and consume Ed25519 signatures to be written abstractly in such a way that different signer/verifier providers can be plugged in, enabling support for using different Ed25519 implementations, including HSMs or Cloud KMS services.

Documentation

Requirements

  • Rust 1.34+

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.