diff --git a/bip-0020.mediawiki b/bip-0020.mediawiki index 93594d15df..a0d6e34b1e 100644 --- a/bip-0020.mediawiki +++ b/bip-0020.mediawiki @@ -7,6 +7,7 @@ Type: Specification Assigned: 2011-01-10 License: BSD-2-Clause + Proposed-Replacement: 21 BIP 0020 is based off an earlier document by Nils Schneider. '''And has been replaced by BIP 0021''' diff --git a/bip-0021.mediawiki b/bip-0021.mediawiki index 5f2756a17d..f97fd24348 100644 --- a/bip-0021.mediawiki +++ b/bip-0021.mediawiki @@ -7,6 +7,7 @@ Status: Closed Type: Specification Assigned: 2012-01-29 + Replaces: 20 Proposed-Replacement: 321 diff --git a/bip-0044.mediawiki b/bip-0044.mediawiki index bbf9d1f04a..a94efba2ec 100644 --- a/bip-0044.mediawiki +++ b/bip-0044.mediawiki @@ -9,6 +9,7 @@ Status: Deployed Type: Specification Assigned: 2014-04-24 + Requires: 32, 43 ==Abstract== diff --git a/bip-0117.mediawiki b/bip-0117.mediawiki index cea3a13cd5..b301083f38 100644 --- a/bip-0117.mediawiki +++ b/bip-0117.mediawiki @@ -192,3 +192,5 @@ The v0 segwit rules prohibit leaving anything on the stack, so for v0 parameters [5] [https://github.com/bitcoin/bips/blob/master/bip-0114.mediawiki BIP114: Merkelized Abstract Syntax Tree] [6] [https://github.com/bitcoin/bips/blob/master/bip-0068.mediawiki BIP68: Relative lock-time using consensus-enforced sequence numbers] + +[9] [https://github.com/bitcoin/bips/blob/master/bip-0008.mediawiki BIP8: Version bits with lock-in by height] diff --git a/bip-0129.mediawiki b/bip-0129.mediawiki index 2e19c9fb18..a7ebae4bd6 100644 --- a/bip-0129.mediawiki +++ b/bip-0129.mediawiki @@ -11,6 +11,7 @@ Type: Specification Assigned: 2020-11-10 License: BSD-2-Clause + Requires: 32, 174, 322, 380, 381, 382, 383 ==Introduction== diff --git a/bip-0174.mediawiki b/bip-0174.mediawiki index 275ce6389e..ad9c7a153d 100644 --- a/bip-0174.mediawiki +++ b/bip-0174.mediawiki @@ -507,11 +507,11 @@ The currently defined per-input types are defined as follows: |- | MuSig2 Participant Public Keys | PSBT_IN_MUSIG2_PARTICIPANT_PUBKEYS = 0x1a -| <33 byte plain aggregate pubkey> -| The MuSig2 aggregate plain public key from the KeyAgg algorithm. This key may or may not +| <33 byte aggregate pubkey (compressed)> +| The MuSig2 aggregate public key (compressed) from the KeyAgg algorithm. This key may or may not be in the script directly (as x-only). It may instead be a parent public key from which the public keys in the script were derived. -| <33 byte compressed pubkey>* +| <33 byte participant pubkey (compressed)>* | A list of the compressed public keys of the participants in the MuSig2 aggregate key in the order required for aggregation. If sorting was done, then the keys must be in the sorted order. | @@ -521,11 +521,11 @@ required for aggregation. If sorting was done, then the keys must be in the sort |- | MuSig2 Public Nonce | PSBT_IN_MUSIG2_PUB_NONCE = 0x1b -| <33 byte compressed pubkey> <33 byte plain pubkey> <32 byte hash or omitted> -| The compressed public key of the participant providing this nonce, followed by the plain public +| <33 byte participant pubkey (compressed)> <33 byte aggregate pubkey (compressed)> <32 byte hash or omitted> +| The compressed public key of the participant providing this nonce, followed by the compressed aggregate public key the participant is providing the nonce for, followed by the BIP 341 tapleaf hash of the Taproot leaf script that will be signed. If the aggregate key is the taproot internal key or the -taproot output key, then the tapleaf hash must be omitted. The plain public key must be +taproot output key, then the tapleaf hash must be omitted. The compressed participant public key must be the key found in the script and not the aggregate public key that it was derived from, if it was derived from an aggregate key. | <66 byte public nonce> @@ -537,11 +537,11 @@ derived from an aggregate key. |- | MuSig2 Participant Partial Signature | PSBT_IN_MUSIG2_PARTIAL_SIG = 0x1c -| <33 byte compressed pubkey> <33 byte plain pubkey> <32 byte hash or omitted> +| <33 byte participant pubkey (compressed)> <33 byte aggregate pubkey (compressed)> <32 byte hash or omitted> | The compressed public key of the participant providing this partial signature, followed by the -plain public key the participant is providing the signature for, followed by the BIP 341 tapleaf hash -of the Taproot leaf script that will be signed. If the aggregate key is the taproot internal key or -the taproot output key, then the tapleaf hash must be omitted. Note that the plain public key must +compressed public key the participant is providing the signature for, followed by the BIP 341 tapleaf hash +of the Taproot leaf script that will be signed. If the aggregate key is the Taproot internal key or +the Taproot output key, then the tapleaf hash must be omitted. Note that the compressed participant public key must be be the key found in the script and not the aggregate public key that it was derived from, if it was derived from an aggregate key. | <32 byte partial signature> @@ -691,11 +691,11 @@ determine which outputs are change outputs and verify that the change is returni |- | MuSig2 Participant Public Keys | PSBT_OUT_MUSIG2_PARTICIPANT_PUBKEYS = 0x08 -| <33 byte plain aggregate pubkey> -| The MuSig2 aggregate plain public key from the KeyAgg algorithm. This key may or may not +| <33 byte aggregate pubkey (compressed)> +| The MuSig2 compressed aggregate public key from the KeyAgg algorithm. This key may or may not be in the script directly. It may instead be a parent public key from which the public keys in the script were derived. -| <33 byte compressed pubkey>* +| <33 byte participant pubkey (compressed)>* | A list of the compressed public keys of the participants in the MuSig2 aggregate key in the order required for aggregation. If sorting was done, then the keys must be in the sorted order. | diff --git a/bip-0383.mediawiki b/bip-0383.mediawiki index 60ef16fedc..b4008f71ab 100644 --- a/bip-0383.mediawiki +++ b/bip-0383.mediawiki @@ -56,7 +56,7 @@ For values greater than 16, they must be a push of the signed little endian enco The only change for sortedmulti() is that the keys are sorted lexicographically prior to the creation of the output script. This sorting is on the keys that are to be put into the output script, i.e. after all extended keys are derived. -===Multiple Extended Keys=== +===Multiple Extended Keys=== When one or more the key expressions in a multi() or sortedmulti() expression are extended keys, the derived keys use the same child index. This changes the keys in lockstep and allows for output scripts to be indexed in the same way that the derived keys are indexed.