pub trait Signer<S>where
S: Signature,{
// Required method
fn try_sign(&self, msg: &[u8]) -> Result<S, Error>;
// Provided method
fn sign(&self, msg: &[u8]) -> S { ... }
}Expand description
Implemented by Keypair and SecretKey to Signer::sign arbitrary bytesequences.
Sign the provided message bytestring using Self (e.g. a cryptographic key
or connection to an HSM), returning a digital signature.
Required Methods§
Sourcefn try_sign(&self, msg: &[u8]) -> Result<S, Error>
fn try_sign(&self, 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.