I’ve a number of questions relating to wallets and BIP44/49/89 requirements.
In lots of locations I discovered that BIP44 is used for conventional addresses (P2PKH) and that the trail is m/44'/...
. Additionally, if we wish one other kind of handle, say P2WPH, then we use totally different customary, it this case BIP84 and the trail m/84'/...
, and so forth…
One of many locations I discovered it could be the next reply: hyperlink.
Second place: hyperlink. Andrew Chow wrote the next:
By this logic, the xprv and xpub prefixes used beforehand then
point out that legacy addresses ought to be made. Therefore BIP 44 exhibits
xprv.
So I began to assume that method too. That’s, the kind of the handle is set by the usual used. So:
- BIP44 – conventional addresses (P2PKH), XPUB (it is outlined in BIP32 however used right here),
m/44'/...
derivation path - BIP49 – P2WPKH-nested-in-P2SH, YPUB,
m/49'/...
derivation path - BIP84 – P2WPH, ZPUB,
m/84'/...
derivation path
That is what I assumed till I checked out golang’s implementation of bitcoin pockets. Specifically, it says there that it makes use of solely BIP44 customary. Because the given pockets is used (I assume) for all addresses (not simply P2PKH, P2WPKH-nested-in-P2SH and P2WPH, however for all as many as there are), I received a bit confused and began to assume in a different way about these requirements and the way they’re used. So I’ve a two questions.
1. BIP44 is only a derivation path customary, it would not resolve what kind of handle it’s a must to generate from it? You possibly can generate any “kind” of handle you need and that is simply how the golang bitcoin pockets works? It makes use of the BIP44 derivation path, however leaf-level tree keys are used for all handle varieties.
2. Though BIP44 can be utilized for all addresses (if the reply to the earlier query is sure), there are additionally requirements that outline different derivation paths equivalent to BIP49 and BIP84 whose goal is barely to separate keys meant for a sure kind of handle to different derivation paths, nothing however that? However even when, for instance, BIP84 says it is for P2WPKH, it is only a derivation path, nothing else. I imply, it’s also possible to use P2PKH right here (it is bizarre, however you’ll be able to) since it is a derivation path? Really, they simply wished to sort of level out that should you use P2WPKH then a distinct derivation path is used, however you’ll be able to nonetheless use the BIP44 derivation path?