logo
Expand description

Signatory

crate Docs Apache2/MIT licensed MSRV Build Status

Pure Rust digital signature library with support for elliptic curve digital signature algorithms, namely ECDSA (FIPS 186‑4) and Ed25519 (RFC 8032).

Documentation

About

This crate provides a thread-and-object-safe API for both creating and verifying elliptic curve digital signatures, using either software-based or hardware-based providers.

The following algorithms are supported:

  • ECDSA: Elliptic Curve Digital Signature Algorithm (FIPS 186‑4)
  • Ed25519: Edwards Digital Signature Algorithm (EdDSA) instantiated using the twisted Edwards form of Curve25519 (RFC 8032).

Minimum Supported Rust Version

Rust 1.57 or newer.

In the future, we reserve the right to change MSRV (i.e. MSRV is out-of-scope for this crate’s SemVer guarantees), however when we do it will be accompanied by a minor version bump.

License

Signatory is distributed under your choice of the terms of the MIT license and/or the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.

Contribution

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

Re-exports

pub use pkcs8;
pub use signature;

Modules

ecdsaecdsa

Elliptic Curve Digital Signature Algorithm (ECDSA) support.

ed25519ed25519

Ed25519 digital signature algorithm support.

Structs

Filesystem-backed keystore.

Information/metadata about a particular key.

Key names.

Signature key ring which can contain signing keys for all supported algorithms.

Enums

Signature algorithms.

Error type

Handle to a particular key.

Traits

Trait for generating PKCS#8-encoded private keys.

Support for loading PKCS#8 private keys.

Type Definitions

Map type.

Result type