Trait coins_bip32::ecdsa::signature::PrehashSignature[][src]

pub trait PrehashSignature: Signature {
    type Digest: Digest;
}

Marker trait for Signature types computable as 𝐒(𝐇(π’Ž)) i.e. ones which prehash a message to be signed as 𝐇(π’Ž)

Where:

  • 𝐒: signature algorithm
  • 𝐇: hash (a.k.a. digest) function
  • π’Ž: message

This approach is relatively common in signature schemes based on the Fiat-Shamir heuristic.

For signature types that implement this trait, when the derive-preview Cargo feature is enabled a custom derive for Signer is available for any types that impl DigestSigner, and likewise for deriving Verifier for types which impl DigestVerifier.

Associated Types

type Digest: Digest[src]

Preferred Digest algorithm to use when computing this signature type.

Loading content...

Implementations on Foreign Types

impl<C> PrehashSignature for Signature<C> where
    C: DigestPrimitive + CheckSignatureBytes,
    <<C as Curve>::FieldSize as Add<<C as Curve>::FieldSize>>::Output: ArrayLength<u8>, 
[src]

impl<C> PrehashSignature for Signature<C> where
    C: Curve + DigestPrimitive,
    <C as Curve>::FieldSize: Add<<C as Curve>::FieldSize>,
    <C as Curve>::FieldSize: ArrayLength<u8>,
    <<<C as Curve>::FieldSize as Add<<C as Curve>::FieldSize>>::Output as Add<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>>>::Output: ArrayLength<u8>,
    <<C as Curve>::FieldSize as Add<<C as Curve>::FieldSize>>::Output: Add<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>>,
    <<C as Curve>::FieldSize as Add<<C as Curve>::FieldSize>>::Output: ArrayLength<u8>, 
[src]

Loading content...

Implementors

Loading content...