An interface to be implemented by keystores that support signing.

Synopsis

Declared in <script/signingprovider.h>

class SigningProvider;

Member Functions

Name

Description

~SigningProvider [destructor] [virtual]

Destroy the signing provider.

DeleteMuSig2Session [virtual]

Delete the state stored for a MuSig2 signing session.

GetAllMuSig2ParticipantPubkeys [virtual]

Return all known MuSig2 aggregate pubkeys and their participants.

GetCScript [virtual]

Look up a script by its script id.

GetKey [virtual]

Look up a private key by its key id.

GetKeyByXOnly

Look up a private key by any key id derived from an x‐only pubkey.

GetKeyOrigin [virtual]

Look up the origin information for a key.

GetKeyOriginByXOnly

Look up key origin info by any key id derived from an x‐only pubkey.

GetMuSig2ParticipantPubkeys [virtual]

Return the MuSig2 participant pubkeys for an aggregate pubkey.

GetMuSig2SecNonce [virtual]

Retrieve the MuSig2 secret nonce for a signing session.

GetPubKey [virtual]

Look up a public key by its key id.

GetPubKeyByXOnly

Look up a public key by any key id derived from an x‐only pubkey.

GetTaprootBuilder [virtual]

Look up the Taproot builder for an output key.

GetTaprootSpendData [virtual]

Look up the Taproot spend data for an output key.

HaveCScript [virtual]

Report whether a script with the given id is known.

HaveKey [virtual]

Report whether a private key with the given id is known.

SetMuSig2SecNonce [virtual]

Store a MuSig2 secret nonce for a signing session.

Non-Member Functions

Name

Description

GetKeyForDestination

Return the CKeyID of the key involved in a script (if there is a unique one).

IsSegWitOutput

Check whether a scriptPubKey is known to be segwit.

ProduceSignature

Produce a script signature using a generic signature creator.

SignPSBTInput

Signs a PSBTInput, verifying that all provided data matches what is being signed.

UpdatePSBTOutput

Updates a PSBTOutput with information from provider.

Derived Classes

Name

Description

FillableSigningProvider

Fillable signing provider that keeps keys in an address‐>secret map

FlatSigningProvider

A signing provider backed by plain in‐memory maps of keys and scripts.

HidingSigningProvider

Wraps a signing provider, optionally hiding secret keys and key origins.

LegacySigningProvider

SigningProvider wrapper for LegacyDataSPKM that does not provide private keys.

MultiSigningProvider

A signing provider to be used to interface with multiple signing providers at once.

Created with MrDocs