@@ -483,6 +483,52 @@ The currently defined per-input types are defined as follows:
483
483
| 0, 2
484
484
| [[bip-0371.mediawiki |371 ]]
485
485
|-
486
+ | MuSig2 Participant Public Keys
487
+ | <tt>PSBT_IN_MUSIG2_PARTICIPANT_PUBKEYS = 0x1a </tt>
488
+ | <33 byte plain aggregate pubkey>
489
+ | The MuSig2 aggregate plain public key from the <tt>KeyAgg </tt> algorithm. This key may or may not
490
+ be in the script directly (as x-only). It may instead be a parent public key from which the public keys in the
491
+ script were derived.
492
+ | <tt><33 byte compressed pubkey>* </tt>
493
+ | A list of the compressed public keys of the participants in the MuSig2 aggregate key in the order
494
+ required for aggregation. If sorting was done, then the keys must be in the sorted order.
495
+ |
496
+ |
497
+ | 0, 2
498
+ | [[bip-0373.mediawiki |373 ]]
499
+ |-
500
+ | MuSig2 Public Nonce
501
+ | <tt>PSBT_IN_MUSIG2_PUB_NONCE = 0x1b </tt>
502
+ | <tt><33 byte compressed pubkey> <33 byte plain pubkey> <32 byte hash or omitted> </tt>
503
+ | The compressed public key of the participant providing this nonce, followed by the plain public
504
+ key the participant is providing the nonce for, followed by the BIP 341 tapleaf hash of
505
+ the Taproot leaf script that will be signed. If the aggregate key is the taproot internal key or the
506
+ taproot output key, then the tapleaf hash must be omitted. The plain public key must be
507
+ the key found in the script and not the aggregate public key that it was derived from, if it was
508
+ derived from an aggregate key.
509
+ | <tt><66 byte public nonce> </tt>
510
+ | The public nonce produced by the <tt>NonceGen </tt> algorithm.
511
+ |
512
+ |
513
+ | 0, 2
514
+ | [[bip-0373.mediawiki |373 ]]
515
+ |-
516
+ | MuSig2 Participant Partial Signature
517
+ | <tt>PSBT_IN_MUSIG2_PARTIAL_SIG = 0x1c </tt>
518
+ | <tt><33 byte compressed pubkey> <33 byte plain pubkey> <32 byte hash or omitted> </tt>
519
+ | The compressed public key of the participant providing this partial signature, followed by the
520
+ plain public key the participant is providing the signature for, followed by the BIP 341 tapleaf hash
521
+ of the Taproot leaf script that will be signed. If the aggregate key is the taproot internal key or
522
+ the taproot output key, then the tapleaf hash must be omitted. Note that the plain public key must
523
+ be the key found in the script and not the aggregate public key that it was derived from, if it was
524
+ derived from an aggregate key.
525
+ | <tt><32 byte partial signature> </tt>
526
+ | The partial signature produced by the <tt>Sign </tt> algorithm.
527
+ |
528
+ |
529
+ | 0, 2
530
+ | [[bip-0373.mediawiki |373 ]]
531
+ |-
486
532
| Proprietary Use Type
487
533
| <tt>PSBT_IN_PROPRIETARY = 0xFC </tt>
488
534
| <tt><compact size uint identifier length> <bytes identifier> <compact size uint subtype> <bytes subkeydata> </tt>
@@ -599,6 +645,20 @@ determine which outputs are change outputs and verify that the change is returni
599
645
| 0, 2
600
646
| [[bip-0371.mediawiki |371 ]]
601
647
|-
648
+ | MuSig2 Participant Public Keys
649
+ | <tt>PSBT_OUT_MUSIG2_PARTICIPANT_PUBKEYS = 0x08 </tt>
650
+ | <33 byte plain aggregate pubkey>
651
+ | The MuSig2 aggregate plain public key from the <tt>KeyAgg </tt> algorithm. This key may or may not
652
+ be in the script directly. It may instead be a parent public key from which the public keys in the
653
+ script were derived.
654
+ | <tt><33 byte compressed pubkey>* </tt>
655
+ | A list of the compressed public keys of the participants in the MuSig2 aggregate key in the order
656
+ required for aggregation. If sorting was done, then the keys must be in the sorted order.
657
+ |
658
+ |
659
+ | 0, 2
660
+ | [[bip-0373.mediawiki |373 ]]
661
+ |-
602
662
| Proprietary Use Type
603
663
| <tt>PSBT_OUT_PROPRIETARY = 0xFC </tt>
604
664
| <tt><compact size uint identifier length> <bytes identifier> <compact size uint subtype> <bytes subkeydata> </tt>
0 commit comments