You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Merge bitcoin/bitcoin#29675: wallet: Be able to receive and spend inputs involving MuSig2 aggregate keys
ac599c4 test: Test MuSig2 in the wallet (Ava Chow)
68ef954 wallet: Keep secnonces in DescriptorScriptPubKeyMan (Ava Chow)
4a273ed sign: Create MuSig2 signatures for known MuSig2 aggregate keys (Ava Chow)
258db93 sign: Add CreateMuSig2AggregateSig (Ava Chow)
bf69442 sign: Add CreateMuSig2PartialSig (Ava Chow)
512b17f sign: Add CreateMuSig2Nonce (Ava Chow)
82ea67c musig: Add MuSig2AggregatePubkeys variant that validates the aggregate (Ava Chow)
d99a081 psbt: MuSig2 data in Fill/FromSignatureData (Ava Chow)
4d8b4f5 signingprovider: Add musig2 secnonces (Ava Chow)
c06a1dc Add MuSig2SecNonce class for secure allocation of musig nonces (Ava Chow)
9baff05 sign: Include taproot output key's KeyOriginInfo in sigdata (Ava Chow)
4b24bfe pubkey: Return tweaks from BIP32 derivation (Ava Chow)
f148762 musig: Move synthetic xpub construction to its own function (Ava Chow)
fb8720f sign: Refactor Schnorr sighash computation out of CreateSchnorrSig (Ava Chow)
a4cfddd tests: Clarify why musig derivation adds a pubkey and xpub (Ava Chow)
39a63bf descriptors: Add a doxygen comment for has_hardened output_parameter (Ava Chow)
2320184 descriptors: Fix meaning of any_key_parsed (Ava Chow)
Pull request description:
This PR implements MuSig2 signing so that the wallet can receive and spend from imported `musig(0` descriptors.
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.
ACKs for top commit:
fjahr:
tACK ac599c4
rkrux:
lgtm tACK ac599c4
theStack:
Code-review ACK ac599c4 🗝️
Tree-SHA512: 626b9adc42ed2403e2f4405321eb9ce009a829c07d968e95ab288fe4940b195b0af35ca279a4a7fa51af76e55382bad6f63a23bca14a84140559b3c667e7041e
0 commit comments