Skip to main content

sign_prehashed

Function sign_prehashed 

Source
pub fn sign_prehashed<C>(
    d: &NonZeroScalar<C>,
    k: &NonZeroScalar<C>,
    z: &FieldBytes<C>,
) -> Result<(Signature<C>, RecoveryId)>
Expand description

Sign a prehashed message digest using the provided secret scalar and ephemeral scalar, returning an ECDSA signature.

Accepts the following arguments:

  • d: signing key. MUST BE UNIFORMLY RANDOM!!!
  • k: ephemeral scalar value. MUST BE UNIFORMLY RANDOM!!!
  • z: message digest to be signed. MUST BE OUTPUT OF A CRYPTOGRAPHICALLY SECURE DIGEST ALGORITHM!!!

§Low-S Normalization

This function will apply low-S normalization if <C as EcdsaCurve>::NORMALIZE_S is true.

§Returns

ECDSA Signature and a RecoveryId which can be used to recover the verifying key for a given signature.

§Errors

This will return an error if a zero-scalar was generated. It can be tried again with a different k.