Module grin_core::libtx::aggsig

source ·
Expand description

Aggregated Signature functions used in the creation of Grin transactions. This module interfaces into the underlying Rust Aggsig library

Functions§

  • Adds signatures
  • Calculates a partial signature given the signer’s secure key, the sum of all public nonces and (optionally) the sum of all public keys.
  • Creates a new secure nonce (as a SecretKey), guaranteed to be usable during aggsig creation.
  • Creates a single-signer aggsig signature from a key id. Generally, this function is used to create transaction kernel signatures for coinbase outputs. Returns Ok(Signature) if the signature is valid, or a Signature ErrorKind otherwise
  • Just a simple sig, creates its own nonce if not provided
  • Just a simple sig, creates its own nonce, etc
  • Subtract a partial signature from a completed signature see https://github.com/mimblewimble/rust-secp256k1-zkp/blob/e9e4f09bd0c85da914774a52219457ba10ac3e57/src/aggsig.rs#L267
  • Verify a batch of signatures.
  • Verifies a completed (summed) signature, which must include the message and pubkey sum values that are used during signature creation time to create ‘e’ Returns Ok(()) if the signature is valid, or a Signature ErrorKind otherwise
  • Verifies a partial signature from a public key. All nonce and public key sum values must be identical to those provided in the call to calculate_partial_sig. Returns Result::Ok if the signature is valid, or a Signature ErrorKind otherwise
  • Verifies an aggsig signature
  • Simple verification a single signature from a commitment. The public key used to verify the signature is derived from the commit. Returns Ok(()) if the signature is valid, or a Signature ErrorKind otherwise