Instance Method
signature(for:)
Generates a BIP-340 Schnorr signature from a pre-computed digest using secp256k1_schnorrsig_sign_custom with fresh 32-byte auxiliary randomness.
- iOS 13.0+
- macCatalyst 13.0+
- macOS 10.15+
- tvOS 13.0+
- visionOS 1.0+
- watchOS 6.0+
func signature<D>(for digest: D) throws -> P256K.Schnorr.SchnorrSignature where D : Digest
Parameters
-
digest
-
The pre-computed message digest to sign.
Return Value
A 64-byte P256K.Schnorr.SchnorrSignature.
Discussion
The auxiliary randomness is mixed into the BIP-340 nonce derivation (secp256k1_nonce_function_bip340) to protect against fault attacks. When the digest was produced using BIP-340 Tagged Hashes, the resulting signature is fully BIP-340 compliant.
Throws
secp256k1Error.underlyingCryptoError if signature production fails.