MultiSigningProvider

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

Synopsis

Declared in <script/signingprovider.h>

class MultiSigningProvider
    : public SigningProvider

Base Classes

NameDescription
SigningProviderAn interface to be implemented by keystores that support signing.

Member Functions

NameDescription
AddProvider Add a signing provider to delegate lookups to.
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 across all providers.
GetKey GetKey overloads
GetKeyByXOnly Look up a private key by any key id derived from an x-only pubkey.
GetKeyOrigin [virtual]Look up key origin info by key id across all providers.
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 GetPubKey overloads
GetPubKeyByXOnly Look up a public key by any key id derived from an x-only pubkey.
GetTaprootBuilder [virtual]Look up a Taproot builder for an output key across all providers.
GetTaprootSpendData [virtual]Look up Taproot spend data for an output key across all providers.
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

NameDescription
GetKeyForDestinationReturn the CKeyID of the key involved in a script (if there is a unique one).
IsSegWitOutputCheck whether a scriptPubKey is known to be segwit.
ProduceSignatureProduce a script signature using a generic signature creator.
SignPSBTInputSigns a PSBTInput, verifying that all provided data matches what is being signed.
UpdatePSBTOutputUpdates a PSBTOutput with information from provider.