Trait coins_bip32::ecdsa::signature::RandomizedDigestSigner [−][src]
Combination of DigestSigner
and RandomizedSigner
with support for
computing a signature over a digest which requires entropy from an RNG.
Required methods
pub fn try_sign_digest_with_rng(
&self,
rng: impl CryptoRng + RngCore,
digest: D
) -> Result<S, Error>
[src]
&self,
rng: impl CryptoRng + RngCore,
digest: D
) -> Result<S, Error>
Attempt to sign the given prehashed message Digest
, returning a
digital signature on success, or an error if something went wrong.
Provided methods
pub fn sign_digest_with_rng(
&self,
rng: impl CryptoRng + RngCore,
digest: D
) -> S
[src]
&self,
rng: impl CryptoRng + RngCore,
digest: D
) -> S
Sign the given prehashed message Digest
, returning a signature.
Panics in the event of a signing error.
Implementations on Foreign Types
impl<C, D> RandomizedDigestSigner<D, Signature<C>> for SigningKey<C> where
C: ProjectiveArithmetic + Curve,
D: FixedOutput<OutputSize = <C as Curve>::FieldSize> + BlockInput + Clone + Default + Reset + Update,
GenericArray<u8, <C as Curve>::FieldSize>: From<<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar>,
GenericArray<u8, <C as Curve>::FieldSize>: for<'r> From<&'r <<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar>,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: PrimeField,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: FromDigest<C>,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: Invert,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: SignPrimitive<C>,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: Zeroize,
<<C as Curve>::FieldSize as Add<<C as Curve>::FieldSize>>::Output: ArrayLength<u8>,
<<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar as PrimeField>::Repr == GenericArray<u8, <C as Curve>::FieldSize>,
<<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar as Invert>::Output == <<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar,
[src]
C: ProjectiveArithmetic + Curve,
D: FixedOutput<OutputSize = <C as Curve>::FieldSize> + BlockInput + Clone + Default + Reset + Update,
GenericArray<u8, <C as Curve>::FieldSize>: From<<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar>,
GenericArray<u8, <C as Curve>::FieldSize>: for<'r> From<&'r <<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar>,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: PrimeField,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: FromDigest<C>,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: Invert,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: SignPrimitive<C>,
<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar: Zeroize,
<<C as Curve>::FieldSize as Add<<C as Curve>::FieldSize>>::Output: ArrayLength<u8>,
<<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar as PrimeField>::Repr == GenericArray<u8, <C as Curve>::FieldSize>,
<<<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar as Invert>::Output == <<C as ProjectiveArithmetic>::ProjectivePoint as Group>::Scalar,
pub fn try_sign_digest_with_rng(
&self,
rng: impl CryptoRng + RngCore,
digest: D
) -> Result<Signature<C>, Error>
[src]
&self,
rng: impl CryptoRng + RngCore,
digest: D
) -> Result<Signature<C>, Error>
Sign message prehash using an ephemeral scalar (k
) derived according
to a variant of RFC 6979 (Section 3.6) which supplies additional
entropy from an RNG.
Implementors
impl<D> RandomizedDigestSigner<D, Signature> for coins_bip32::ecdsa::SigningKey where
D: BlockInput + FixedOutput<OutputSize = UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>> + Clone + Default + Reset + Update,
[src]
D: BlockInput + FixedOutput<OutputSize = UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>> + Clone + Default + Reset + Update,
pub fn try_sign_digest_with_rng(
&self,
rng: impl CryptoRng + RngCore,
digest: D
) -> Result<Signature, Error>
[src]
&self,
rng: impl CryptoRng + RngCore,
digest: D
) -> Result<Signature, Error>
impl<D> RandomizedDigestSigner<D, Signature<Secp256k1>> for coins_bip32::ecdsa::SigningKey where
D: BlockInput + FixedOutput<OutputSize = UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>> + Clone + Default + Reset + Update,
[src]
D: BlockInput + FixedOutput<OutputSize = UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>> + Clone + Default + Reset + Update,