[#FillableSigningProvider] = FillableSigningProvider :mrdocs: Fillable signing provider that keeps keys in an address‐>secret map == Synopsis Declared in `<script/signingprovider.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class FillableSigningProvider : public xref:SigningProvider.adoc[SigningProvider] ---- == Base Classes [cols="1,4"] |=== | Name| Description | `xref:SigningProvider.adoc[SigningProvider]` | An interface to be implemented by keystores that support signing. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:FillableSigningProvider/AddCScript.adoc[`AddCScript`] [.small]#[virtual]# | Add a redeem or witness script. | xref:FillableSigningProvider/AddKey.adoc[`AddKey`] [.small]#[virtual]# | Add a private key, deriving its public key. | xref:FillableSigningProvider/AddKeyPubKey.adoc[`AddKeyPubKey`] [.small]#[virtual]# | Add a private key together with its public key. | xref:SigningProvider/DeleteMuSig2Session.adoc[`DeleteMuSig2Session`] [.small]#[virtual]# | Delete the state stored for a MuSig2 signing session. | xref:SigningProvider/GetAllMuSig2ParticipantPubkeys.adoc[`GetAllMuSig2ParticipantPubkeys`] [.small]#[virtual]# | Return all known MuSig2 aggregate pubkeys and their participants. | xref:FillableSigningProvider/GetCScript-0d.adoc[`GetCScript`] | Look up a script by its script id. | xref:FillableSigningProvider/GetCScripts.adoc[`GetCScripts`] [.small]#[virtual]# | Return the ids of all known scripts. | xref:FillableSigningProvider/GetKey-0c.adoc[`GetKey`] | Look up a private key by its key id. | xref:SigningProvider/GetKeyByXOnly.adoc[`GetKeyByXOnly`] | Look up a private key by any key id derived from an x‐only pubkey. | xref:SigningProvider/GetKeyOrigin.adoc[`GetKeyOrigin`] [.small]#[virtual]# | Look up the origin information for a key. | xref:SigningProvider/GetKeyOriginByXOnly.adoc[`GetKeyOriginByXOnly`] | Look up key origin info by any key id derived from an x‐only pubkey. | xref:FillableSigningProvider/GetKeys.adoc[`GetKeys`] [.small]#[virtual]# | Return the ids of all known private keys. | xref:SigningProvider/GetMuSig2ParticipantPubkeys.adoc[`GetMuSig2ParticipantPubkeys`] [.small]#[virtual]# | Return the MuSig2 participant pubkeys for an aggregate pubkey. | xref:SigningProvider/GetMuSig2SecNonce.adoc[`GetMuSig2SecNonce`] [.small]#[virtual]# | Retrieve the MuSig2 secret nonce for a signing session. | xref:FillableSigningProvider/GetPubKey-0d.adoc[`GetPubKey`] | Look up a public key by its key id. | xref:SigningProvider/GetPubKeyByXOnly.adoc[`GetPubKeyByXOnly`] | Look up a public key by any key id derived from an x‐only pubkey. | xref:SigningProvider/GetTaprootBuilder.adoc[`GetTaprootBuilder`] [.small]#[virtual]# | Look up the Taproot builder for an output key. | xref:SigningProvider/GetTaprootSpendData.adoc[`GetTaprootSpendData`] [.small]#[virtual]# | Look up the Taproot spend data for an output key. | xref:FillableSigningProvider/HaveCScript-09.adoc[`HaveCScript`] | Report whether a script with the given id is known. | xref:FillableSigningProvider/HaveKey.adoc[`HaveKey`] [.small]#[virtual]# | Report whether a private key with the given id is known. | xref:SigningProvider/SetMuSig2SecNonce.adoc[`SetMuSig2SecNonce`] [.small]#[virtual]# | Store a MuSig2 secret nonce for a signing session. |=== == Data Members [cols="1,4"] |=== | Name| Description | xref:FillableSigningProvider/cs_KeyStore.adoc[`cs_KeyStore`] | Mutex guarding the key and script maps. |=== == Protected Type Aliases [cols="1,4"] |=== | Name| Description | xref:FillableSigningProvider/KeyMap.adoc[`KeyMap`] | Map of key id to private key. | xref:FillableSigningProvider/ScriptMap.adoc[`ScriptMap`] | Map of script id to script. |=== == Protected Member Functions [cols="1,4"] |=== | Name| Description | xref:FillableSigningProvider/ImplicitlyLearnRelatedKeyScripts.adoc[`ImplicitlyLearnRelatedKeyScripts`] | Record the scripts implied by a public key without persisting them. |=== == Protected Data Members [cols="1,4"] |=== | Name| Description | xref:FillableSigningProvider/mapKeys.adoc[`mapKeys`] | Map of key id to unencrypted private keys known by the signing provider. Map may be empty if the provider has another source of keys, like an encrypted store. | xref:FillableSigningProvider/mapScripts.adoc[`mapScripts`] | Map of script id to scripts known by the signing provider. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:GetKeyForDestination.adoc[`GetKeyForDestination`] | Return the CKeyID of the key involved in a script (if there is a unique one). | xref:IsSegWitOutput.adoc[`IsSegWitOutput`] | Check whether a scriptPubKey is known to be segwit. | xref:ProduceSignature.adoc[`ProduceSignature`] | Produce a script signature using a generic signature creator. | xref:SignPSBTInput.adoc[`SignPSBTInput`] | Signs a PSBTInput, verifying that all provided data matches what is being signed. | xref:UpdatePSBTOutput.adoc[`UpdatePSBTOutput`] | Updates a PSBTOutput with information from provider. |=== == Derived Classes [cols="1,4"] |=== | Name| Description | xref:wallet/LegacyDataSPKM.adoc[`LegacyDataSPKM`] | Manages the minimum data needed to load and migrate a legacy wallet. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#