pub trait AsyncRandomizedSigner<S> {
// Required method
async fn try_sign_with_rng_async(
&self,
rng: &mut impl CryptoRngCore,
msg: &[u8],
) -> Result<S, Error>;
// Provided method
async fn sign_with_rng_async(
&self,
rng: &mut impl CryptoRngCore,
msg: &[u8],
) -> S { ... }
}
Available on crate feature
rand_core
only.Expand description
Sign the given message using the provided external randomness source.
Required Methods§
Sourceasync fn try_sign_with_rng_async(
&self,
rng: &mut impl CryptoRngCore,
msg: &[u8],
) -> Result<S, Error>
async fn try_sign_with_rng_async( &self, rng: &mut impl CryptoRngCore, msg: &[u8], ) -> Result<S, Error>
Attempt to sign the given message, returning a digital signature on success, or an error if something went wrong.
The main intended use case for signing errors is when communicating with external signers, e.g. cloud KMS, HSMs, or other hardware tokens.
Provided Methods§
Sourceasync fn sign_with_rng_async(
&self,
rng: &mut impl CryptoRngCore,
msg: &[u8],
) -> S
async fn sign_with_rng_async( &self, rng: &mut impl CryptoRngCore, msg: &[u8], ) -> S
Sign the given message and return a digital signature
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.