Clarifies the restrictions on KEY expressions around when child derivation is allowed.
Also added a Requires
header to all of the descriptor BIPs since they require reading 380 first.
Clarifies the restrictions on KEY expressions around when child derivation is allowed.
Also added a Requires
header to all of the descriptor BIPs since they require reading 380 first.
All of BIPs describing new descriptors require BIP 380
69+described above, with the keys also being sorted after all derivation and prior to aggregation.
70+Then further BIP 32 derivation will be performed on the aggregate public key as described in
71+[[bip-0328.mediawiki|BIP 328]]. The <tt>/NUM/.../*</tt> following the <tt>musig()</tt> specifies
72+the derivation path to be used when deriving from the aggregate public key. <tt>/*</tt> is also
73+optional. As there is no aggregate private key, only unhardened derivation from the aggregate public
74+key is allowed. Thus these derivation steps cannot contain be <tt>/NUMh</tt> or <tt>/NUM'</tt>
66+contains child derivation as specified by <tt>/*</tt> or multipath as specified with
67+<tt>/<NUM;NUM;...></tt>, in addition to the same usage restrictions as in the previous section. The KEY expressions
68+additionally must be xpubs or derived from xpubs. The aggregate public key is first computed as
69+described above, with the keys also being sorted after all derivation and prior to aggregation.
70+Then further BIP 32 derivation will be performed on the aggregate public key as described in
71+[[bip-0328.mediawiki|BIP 328]]. The <tt>/NUM/.../*</tt> following the <tt>musig()</tt> specifies
8@@ -9,6 +9,7 @@
9 Type: Informational
10 Created: 2022-07-26
11 License: BSD-2-Clause
12+ Requires: 380
68+additionally must be xpubs or derived from xpubs. The aggregate public key is first computed as
69+described above, with the keys also being sorted after all derivation and prior to aggregation.
70+Then further BIP 32 derivation will be performed on the aggregate public key as described in
71+[[bip-0328.mediawiki|BIP 328]]. The <tt>/NUM/.../*</tt> following the <tt>musig()</tt> specifies
72+the derivation path to be used when deriving from the aggregate public key. <tt>/*</tt> is also
73+optional. As there is no aggregate private key, only unhardened derivation from the aggregate public
/* is also optional.
So musig(xpub.../1,xpub.../2)/3/4
will be treated as musig(xpub.../1,xpub.../2)/3/4/*
?
If yes, I understand it’s being provided to reduce verbosity but one with an explicit /*
at the end would get rid of any possibility of a doubt in the mind of a reader imho.
So musig(xpub…/1,xpub…/2)/3/4 will be treated as musig(xpub…/1,xpub…/2)/3/4/*?
On second thought, I think this is not what this means, they both will be treated separately. Sorry I didn’t mean to add more confusion.