Skip to content

wallet: Be able to receive and spend inputs involving MuSig2 aggregate keys

Placeholder Ava Chow requested to merge github/fork/achow101/musig2 into master

This PR implements MuSig2 descriptors (BIP 390), derivation (BIP 328), and PSBT fields (BIP 373) so that the wallet can receive and spend from taproot addresses that have keys involving a MuSig2 aggregate key.

The libsecp musig module is enabled so that it can be used for all of the MuSig2 cryptography.

Secnonces are handled in a separate class which holds the libsecp secnonce object in a secure_unique_ptr. Since secnonces must not be used, this class has no serialization and will only live in memory. A restart of the software will require a restart of the MuSig2 signing process.

Merge request reports

Loading