Expand description
Digital signatures over the BLS12-381 curve using G1 as the Public Key (48 bytes) and G2 as the Signature (96 bytes).
§Domain Separation Tag (DST)
All signatures use the POP (Proof of Possession) scheme during signing. For Proof-of-Possession (POP) signatures,
the domain separation tag is BLS_POP_BLS12381G2_XMD:SHA-256_SSWU_RO_POP_. For signatures over other messages, the
domain separation tag is BLS_SIG_BLS12381G2_XMD:SHA-256_SSWU_RO_POP_. You can read more about DSTs here.
Functions§
- aggregate_
public_ keys - Aggregates multiple public keys.
- aggregate_
signatures - Aggregates multiple signatures.
- aggregate_
verify_ multiple_ messages - Verifies the aggregate signature over multiple unique messages from a single public key.
- aggregate_
verify_ multiple_ public_ keys - Verifies the aggregate signature over a single message from multiple public keys.
- keypair
- Returns a new keypair derived from the provided randomness.
- partial_
sign_ message - Signs the provided message with the key share.
- partial_
sign_ proof_ of_ possession - Generates a proof of possession for the private key share.
- partial_
verify_ message - Verifies the partial signature against the public polynomial.
- partial_
verify_ proof_ of_ possession - Verifies the proof of possession for the provided public polynomial.
- sign
- Sign the provided payload with the private key.
- sign_
message - Signs the provided message with the private key.
- sign_
proof_ of_ possession - Generates a proof of possession for the private key.
- threshold_
signature_ recover - Recovers a signature from at least
thresholdpartial signatures. - verify
- Verify the signature from the provided public key.
- verify_
message - Verifies the signature with the provided public key.
- verify_
proof_ of_ possession - Verifies a proof of possession for the provided public key.