ring_compat/signature/
ecdsa.rs

1//! Elliptic Curve Digital Signature Algorithm
2//!
3//! <https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm>
4
5pub mod p256;
6pub mod p384;
7
8mod signing_key;
9mod verifying_key;
10
11pub use self::{signing_key::SigningKey, verifying_key::VerifyingKey};
12pub use ::ecdsa::{der, elliptic_curve::PrimeCurve, Signature};
13
14use ring::signature::{EcdsaSigningAlgorithm, EcdsaVerificationAlgorithm};
15
16/// Trait for associating a *ring* [`EcdsaSigningAlgorithm`] with an
17/// elliptic curve
18pub trait CurveAlg: PrimeCurve {
19    /// *ring* signing algorithm
20    fn signing_alg() -> &'static EcdsaSigningAlgorithm;
21
22    /// *ring* verify algorithm
23    fn verify_alg() -> &'static EcdsaVerificationAlgorithm;
24}