Create this participant's MuSig2 partial signature.

Synopsis

Declared in <script/sign.h>

virtual
bool
CreateMuSig2PartialSig(
    SigningProvider const& provider,
    uint256& partial_sig,
    CPubKey const& aggregate_pubkey,
    CPubKey const& script_pubkey,
    CPubKey const& part_pubkey,
    uint256 const* leaf_hash,
    std::vector<std::pair<uint256, bool>> const& tweaks,
    SigVersion sigversion,
    SignatureData const& sigdata) const = 0;

Return Value

True if the partial signature was created.

Parameters

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.

Created with MrDocs