1
0
mirror of https://github.com/bitcoin/bips.git synced 2025-06-30 12:42:43 +00:00

Merge pull request #1867 from achow101/390-clarifications

390: Allow repeated participant pubkeys and disallow ranged participants with aggregate derivation.
This commit is contained in:
Mark "Murch" Erhardt 2025-06-18 14:10:44 -07:00 committed by GitHub
commit 879ba82ab4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -33,7 +33,7 @@ A new key expression is defined: <tt>musig()</tt>.
The <tt>musig(KEY, KEY, ..., KEY)</tt> expression can only be used inside of a <tt>tr()</tt> The <tt>musig(KEY, KEY, ..., KEY)</tt> expression can only be used inside of a <tt>tr()</tt>
expression as a key expression. It additionally cannot be nested within another <tt>musig()</tt> expression as a key expression. It additionally cannot be nested within another <tt>musig()</tt>
expression. Repeated participant public keys are not allowed. The aggregate public key is produced expression. Participant public keys may be repeated. The aggregate public key is produced
by using the <tt>KeyAgg</tt> algorithm on all KEYs specified in the expression after performing all by using the <tt>KeyAgg</tt> algorithm on all KEYs specified in the expression after performing all
specified derivation. As with script expressions, KEY can contain child derivation specified by specified derivation. As with script expressions, KEY can contain child derivation specified by
<tt>/*</tt>. A new aggregate public key will be computed for each child index. Keys must be sorted <tt>/*</tt>. A new aggregate public key will be computed for each child index. Keys must be sorted
@ -80,6 +80,8 @@ will have the 0th, 1st, and 2nd scripts listed.
** <tt>512068983d461174afc90c26f3b2821d8a9ced9534586a756763b68371a404635cc8</tt> ** <tt>512068983d461174afc90c26f3b2821d8a9ced9534586a756763b68371a404635cc8</tt>
** <tt>5120368e2d864115181bdc8bb5dc8684be8d0760d5c33315570d71a21afce4afd43e</tt> ** <tt>5120368e2d864115181bdc8bb5dc8684be8d0760d5c33315570d71a21afce4afd43e</tt>
** <tt>512097a1e6270b33ad85744677418bae5f59ea9136027223bc6e282c47c167b471d5</tt> ** <tt>512097a1e6270b33ad85744677418bae5f59ea9136027223bc6e282c47c167b471d5</tt>
* <tt>tr(musig(xpub6ERApfZwUNrhLCkDtcHTcxd75RbzS1ed54G1LkBUHQVHQKqhMkhgbmJbZRkrgZw4koxb5JaHWkY4ALHY2grBGRjaDMzQLcgJvLJuZZvRcEL/1,xpub6ERApfZwUNrhLCkDtcHTcxd75RbzS1ed54G1LkBUHQVHQKqhMkhgbmJbZRkrgZw4koxb5JaHWkY4ALHY2grBGRjaDMzQLcgJvLJuZZvRcEL/1)/2)</tt>
** <tt>5120a17ceacd6422bd5ffd9f165807b254b7d68ad39f179cc4f11545a6835227e97c</tt>
Invalid descriptors Invalid descriptors