From c79576c759ff30eee4e6b2765a9e1ddd5fd104cf Mon Sep 17 00:00:00 2001 From: Viktor Radchenko <1641795+vikmeup@users.noreply.github.com> Date: Thu, 13 Sep 2018 16:43:40 -0700 Subject: [PATCH 1/4] Add Trust to compatible wallets --- bip-0044.mediawiki | 1 + 1 file changed, 1 insertion(+) diff --git a/bip-0044.mediawiki b/bip-0044.mediawiki index 4735e2701e..9e5af1f959 100644 --- a/bip-0044.mediawiki +++ b/bip-0044.mediawiki @@ -274,6 +274,7 @@ is required and a pull request to the above file should be created. * [[https://www.keepkey.com/|KeepKey]] ([[https://github.com/keepkey/|source]]) * [[https://www.ledgerwallet.com/|Ledger Wallet]] ([[https://github.com/LedgerHQ|source]]) * [[https://21.co/learn/21-lib-wallet/|21 Machine Wallet]] ([[https://github.com/21dotco|source]]) +* [[https://trustwalletapp.com/|Trust Wallet]] ([[http://github.com/trustWallet/|source]]) ==Reference== From 81644ddfa131bb0e387ead2cc309ca18e57542b1 Mon Sep 17 00:00:00 2001 From: MMGen Date: Thu, 27 Sep 2018 20:49:29 +0300 Subject: [PATCH 2/4] Base58chk-encoded extended keys are always 111 characters long. Amend wording of BIP accordingly. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -This results in a Base58-encoded string of up to 112 characters. +This results in a Base58-encoded string of exactly 111 characters. Version bytes: 0x0488b21e (“xpub”), 0x0488ade4 (“xprv”), 0x043587cf (“tpub”), 0x04358394 (“tprv”) Largest “possible” key: kL = 0x0488b21effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff (78 bytes) b58chk(kL) = xpubEPi3iGSX9RiyuXPTijevUmMctBDQs2TWCMgUd3qKp6qCgUc8RUsPdPBrRC6whFeWTg37DcmnJJiKFL73DH4sjdApJkXBD3vFcBP4xHq3fPY (111 chars) Smallest “possible” key: kS = 0x043583940000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (78 bytes) b58chk(kS) = tprv8ZgxMBicQKsPcsbCVeqqF1KVdH7gwDJbxbzpCxDUsoXHdb6SnTPYxdwSAKDC6KKJzv7khnNWRAJQsRA8BBQyiSfYnRt6zuu4vZQGKjeW4YF (111 chars) --- bip-0032.mediawiki | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bip-0032.mediawiki b/bip-0032.mediawiki index fa41cf2681..54499716a3 100644 --- a/bip-0032.mediawiki +++ b/bip-0032.mediawiki @@ -136,7 +136,7 @@ Extended public and private keys are serialized as follows: * 32 bytes: the chain code * 33 bytes: the public key or private key data (serP(K) for public keys, 0x00 || ser256(k) for private keys) -This 78 byte structure can be encoded like other Bitcoin data in Base58, by first adding 32 checksum bits (derived from the double SHA-256 checksum), and then converting to the Base58 representation. This results in a Base58-encoded string of up to 112 characters. Because of the choice of the version bytes, the Base58 representation will start with "xprv" or "xpub" on mainnet, "tprv" or "tpub" on testnet. +This 78 byte structure can be encoded like other Bitcoin data in Base58, by first adding 32 checksum bits (derived from the double SHA-256 checksum), and then converting to the Base58 representation. This results in a Base58-encoded string of exactly 111 characters. Because of the choice of the version bytes, the Base58 representation will start with "xprv" or "xpub" on mainnet, "tprv" or "tpub" on testnet. Note that the fingerprint of the parent only serves as a fast way to detect parent and child nodes in software, and software must be willing to deal with collisions. Internally, the full 160-bit identifier could be used. From 433283d671482f4f8467168e46cf44c4fe105691 Mon Sep 17 00:00:00 2001 From: kaidiren Date: Fri, 28 Sep 2018 15:15:03 +0800 Subject: [PATCH 3/4] fix bip-0016 link 404 --- bip-0016/qa.mediawiki | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bip-0016/qa.mediawiki b/bip-0016/qa.mediawiki index 6a8a08dc43..1edf28e5b9 100644 --- a/bip-0016/qa.mediawiki +++ b/bip-0016/qa.mediawiki @@ -1,4 +1,4 @@ -This page is a Quality Assurance test plan for [[BIP 16]]. If you see a test missing, please add it. +This page is a Quality Assurance test plan for [[../bip-0016.mediawiki|BIP 16]]. If you see a test missing, please add it. If you can help test, please edit this page to sign-off on it. {| class="wikitable" From aa723fab8ee1391a0b719b785e4e7f17d12579ea Mon Sep 17 00:00:00 2001 From: MMGen Date: Thu, 27 Sep 2018 20:49:29 +0300 Subject: [PATCH 4/4] Base58chk-encoded extended keys are always 111 characters long. Amend wording of BIP accordingly. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -This results in a Base58-encoded string of up to 112 characters. +This results in a Base58-encoded string of exactly 111 characters. Version bytes: 0x0488b21e (“xpub”), 0x0488ade4 (“xprv”), 0x043587cf (“tpub”), 0x04358394 (“tprv”) Largest “possible” key: kL = 0x0488b21effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff (78 bytes) b58chk(kL) = xpubEPi3iGSX9RiyuXPTijevUmMctBDQs2TWCMgUd3qKp6qCgUc8RUsPdPBrRC6whFeWTg37DcmnJJiKFL73DH4sjdApJkXBD3vFcBP4xHq3fPY (111 chars) Smallest “possible” key: kS = 0x043583940000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (78 bytes) b58chk(kS) = tprv8ZgxMBicQKsPcsbCVeqqF1KVdH7gwDJbxbzpCxDUsoXHdb6SnTPYxdwSAKDC6KKJzv7khnNWRAJQsRA8BBQyiSfYnRt6zuu4vZQGKjeW4YF (111 chars) --- bip-0032.mediawiki | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bip-0032.mediawiki b/bip-0032.mediawiki index fa41cf2681..54499716a3 100644 --- a/bip-0032.mediawiki +++ b/bip-0032.mediawiki @@ -136,7 +136,7 @@ Extended public and private keys are serialized as follows: * 32 bytes: the chain code * 33 bytes: the public key or private key data (serP(K) for public keys, 0x00 || ser256(k) for private keys) -This 78 byte structure can be encoded like other Bitcoin data in Base58, by first adding 32 checksum bits (derived from the double SHA-256 checksum), and then converting to the Base58 representation. This results in a Base58-encoded string of up to 112 characters. Because of the choice of the version bytes, the Base58 representation will start with "xprv" or "xpub" on mainnet, "tprv" or "tpub" on testnet. +This 78 byte structure can be encoded like other Bitcoin data in Base58, by first adding 32 checksum bits (derived from the double SHA-256 checksum), and then converting to the Base58 representation. This results in a Base58-encoded string of exactly 111 characters. Because of the choice of the version bytes, the Base58 representation will start with "xprv" or "xpub" on mainnet, "tprv" or "tpub" on testnet. Note that the fingerprint of the parent only serves as a fast way to detect parent and child nodes in software, and software must be willing to deal with collisions. Internally, the full 160-bit identifier could be used.