#crypto #ecc #nist #secp256k1 #signature

no-std ecdsa-flow

Signature and elliptic curve types providing interoperable support for the Elliptic Curve Digital Signature Algorithm (ECDSA)

1 stable release

1.0.0 Sep 22, 2021

#2175 in Cryptography


Used in 2 crates

Apache-2.0 OR MIT

59KB
1K SLoC

ECDSA

A heavily modified version, intended for use with the Flow-Rust-SDK.


lib.rs:

Elliptic Curve Digital Signature Algorithm (ECDSA) as specified in FIPS 186-4 (Digital Signature Standard)

About

This crate provides generic ECDSA support which can be used in the following ways:

  • Generic implementation of ECDSA usable with the following crates:
  • ECDSA signature types alone which can be used to provide interoperability between other crates that provide an ECDSA implementation:

Any crates which provide an implementation of ECDSA for a particular elliptic curve can leverage the types from this crate, along with the k256, p256, and/or p384 crates to expose ECDSA functionality in a generic, interoperable way by leveraging the Signature type with in conjunction with the signature_flow::Signer and signature_flow::Verifier traits.

For example, the ring-compat crate implements the signature_flow::Signer and signature_flow::Verifier traits in conjunction with the p256::ecdsa::Signature and p384::ecdsa::Signature types to wrap the ECDSA implementations from ring in a generic, interoperable API.

Minimum Supported Rust Version

Rust 1.52 or higher.

Minimum supported Rust version may be changed in the future, but it will be accompanied with a minor version bump.

Dependencies

~2MB
~40K SLoC