[#BaseSignatureCreator-CreateMuSig2PartialSig] = xref:BaseSignatureCreator.adoc[BaseSignatureCreator]::CreateMuSig2PartialSig :relfileprefix: ../ :mrdocs: Create this participant's MuSig2 partial signature. == Synopsis Declared in `<script/sign.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- virtual bool CreateMuSig2PartialSig( xref:SigningProvider.adoc[SigningProvider] const& provider, xref:uint256.adoc[uint256]& partial_sig, xref:CPubKey.adoc[CPubKey] const& aggregate_pubkey, xref:CPubKey.adoc[CPubKey] const& script_pubkey, xref:CPubKey.adoc[CPubKey] const& part_pubkey, xref:uint256.adoc[uint256] const* leaf_hash, std::vector<std::pair<uint256, bool>> const& tweaks, xref:SigVersion.adoc[SigVersion] sigversion, xref:SignatureData.adoc[SignatureData] const& sigdata) const = 0; ---- == Return Value True if the partial signature was created. == Parameters [cols="1,4"] |=== | Name| Description | *provider* | The source of keys and MuSig2 session state. | *partial_sig* | Filled with the produced partial signature. | *aggregate_pubkey* | The aggregate public key of the MuSig2 group. | *script_pubkey* | The output key the aggregate key is tweaked to. | *part_pubkey* | The participant public key producing the signature. | *leaf_hash* | The tapleaf hash for a script path spend, or null. | *tweaks* | The tweaks applied to the aggregate key, with parity flags. | *sigversion* | The signature serialization version to use. | *sigdata* | Signature data providing context for the input. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#