As of May 31, 2023, we have updated our Code of Conduct.

Hot answers tagged

6 votes

How to generate public and private key pairs from the 12 seed words in python

Please try the following demo, and the result is same with https://iancoleman.io/bip39/. $ python3.6 test.py {'addr': '1A9vZ4oPLb29szfRWVFe1VoEe7a2qEMjvJ', 'coin': 'BTC', 'mnemonic_words': 'aware ...
debug's user avatar
  • 161
6 votes

Recovering a HD wallet from a partial seed phrase

(The language used in this post is Python) Breadwallet uses BIP39 to generate the 128-bit master seed from the 12-word mnemonic. The master seed is then used to generate a set of wallets/accounts ...
LivingInformation's user avatar
5 votes
Accepted

BIP 32 child key derivation "stops working" after a certain index (i)

Mycelium HD is BIP 44 compliant. As specified by BIP 44, the address gap limit is 20. This means that after 20 indexes of unused addresses, the wallet expects that no more addresses are used beyond ...
user44404's user avatar
  • 546
4 votes

Is there any service/api for deriving HD wallet addresses from a master public key?

I ended up writing my own command-line tool to perform wallet discovery and print out a report. It supports single xpub derivation as well as multisig m-of-n wallets, specifically CoPay wallets. It ...
danda's user avatar
  • 41
4 votes
Accepted

BIP44 external and internal accounts

Change can be sent to any address separately specified in the transaction for the change or, paid as fees to the miner if not. Looking at the examples, it is clear that where the specification ...
Willtech's user avatar
  • 3,186
4 votes
Accepted

Why not hardened keys in addresses BIP44?

Change in this case represent external/internal chain. Usually if that's external chain, you can share it with parties. Imagine having a client which is obliged to send you bitcoin very often. If you'...
Tony Sanak's user avatar
  • 1,646
4 votes

Bitcoin HD Wallet using C#

I advise you just to rely on https://github.com/dgarage/NBXplorer/ This is an API more flexible and more stable than Bitcoin Core to manage HD wallets. There is a C# client, and it integrate nicely ...
Nicolas Dorier's user avatar
3 votes
Accepted

BIP 44 is scanning external chain really enough?

I got it - the paragraph in the BIP 44 proposal I referenced is about "Account discovery" - i.e. discovering whether an account was used at all. It's not about used addresses discovery within the ...
Rafael Korbas's user avatar
3 votes

How do I get a vanity address from a hierarchal deterministic wallet?

You can do this but the advantage of HD wallets effectively diminishes. You can simply brute force by iterating over all the indices of the HD wallet until you find one that has the vanity ...
Paul Puey's user avatar
3 votes
Accepted

What does 44' mean in BIP44?

I believe 0x8000002C is 128 as an integer ... No, it isn't. First of all, it already is an integer, just represented in hexadecimal. In decimal it is 2147483692. How did you get 128? how does this ...
Andrew Chow's user avatar
  • 66.4k
3 votes

How are bip44 coin identifiers assigned?

BIP44 is more like a standard which you are supposed to follow. The coin id's assigned are way to standardise the approach in case you are making a wallet and want better segregation of your coins. ...
Shabahat M. Ayubi's user avatar
3 votes

In HD Wallet recovery how does the wallets know which addresses to recover

Does it just try all possible addresses related to that seed's master key ? (This seems impractical imo). No, this is actually impossible to do since there is effectively an infinite number of ...
Andrew Chow's user avatar
  • 66.4k
3 votes

What is the meaning and application of the apostrophes in derivation paths of BIP32 / BIP44?

The apostrophes show whether or not that particular derivation is hardened. The difference been hardened and non-hardened keys is described in BIP32. See the wiki for some further detail. https://...
 mynt's user avatar
  • 106
3 votes
Accepted

How to generate mycelium addresses from the 12 words in python

The difficulty is with the poorly named BIP32Key.fromEntropy. Typically to create a new wallet, you: Get some entropy from a cryptographically secure random source, at least 128 bits and must be a ...
Christopher Gurnee's user avatar
2 votes

Using NBitcoin or C# to derive Litecoin and Ethereum Addresses from Master HD Key

Not sure how NBitcoin works, but it looks like so far you have derived your private and public key, you now need to hash it in the Ethereum method rather than the bitcoin way. Look at step 3 in this ...
feedthedogs's user avatar
2 votes
Accepted

generate HD addresses using publicKey Bip44

Any derivation path with an apostrophe (') signifies that that index should use hardened derivation. Hardened derivation means that you can only use the master private key. So with just an xpub, you ...
Andrew Chow's user avatar
  • 66.4k
2 votes

Does bitcoin core 0.18 support bip44,bip39 (HD wallet)

You seem to have confused a couple of things. Firstly, HD wallets is specified by BIP 32, not BIPs 39 or 44. Secondly, being able to set your own seed is completely unrelated to setting a custom ...
Andrew Chow's user avatar
  • 66.4k
2 votes

does bitcoin-core support bip44 HD wallet

No, Bitcoin Core uses the BIP32 derivation path m/0'/0', and you are unable to change the derivation path of the wallet in Bitcoin Core. There is however the Hardware Wallet Interface (HWI) that ...
m1xolyd1an's user avatar
  • 5,536
2 votes
Accepted

Testnet addresses fail in explorers

You are on the right track. The address is derived correctly, it is just not encoded with the right version. You need to add the testnet network version to the btc.payments.p2pkh call as well. ...
guggero's user avatar
  • 228
2 votes
Accepted

Deriving payable address from mnemonic using BIP44

When you say simplified code it's hard to tell where you are going wrong. Here's an example of how you can derive a bip44 key pair from a mnemonic using bitcoinjs-lib v3.3.2 let mnemonicInput = 'width ...
m1xolyd1an's user avatar
  • 5,536
2 votes

According to BIP44 each HD wallet have a finite number of 2^32 addresses, Why is that the case?

2 billion keys within one wallet ought to be enough for everyone. There haven't been even that many transactions in all of Bitcoin's history.
Pieter Wuille's user avatar
1 vote
Accepted

What are the consequences from the leak of xpub and child private key?

If the above two keys are leaked, then your master private key at the account level (m/44'/60'/4') can be back-calculated. That means, any private key (both receiving and change) that you derive from ...
Ugam Kamat's user avatar
  • 7,213
1 vote
Accepted

Which BIP describes the structure and algorithm for creating a wallet file?

There is a list of BIPs at https://github.com/bitcoin/bips I don't see anything that specifies a wallet format. To be honest I'd be surprised to see one. This is something that each implementation ...
RedGrittyBrick's user avatar
1 vote

Restore BIP44 HD wallet

BIP44 is a convention about derivation paths. BIP32 gives you an extended master key which you can then combine with a derivation path to get a private key. So after you get your master key you are ...
Mike D's user avatar
  • 3,469
1 vote

Wallets with BIP44 support

I've looked at several and it seems that, at most, they support only BIP39. BIP39 and BIP44 cover different stages of the wallet generation procedure BIP44 is a BIP32 convention - a prescribed ...
karimkorun's user avatar
1 vote
Accepted

Wallets with BIP44 support

You can find a list of compatible wallets on BIP44's Github page. Mycelium Bitcoin Wallet (Android) Copay CoinVault Samourai Wallet Coinomi TREZOR KeepKey Ledger Wallet 21 ...
Bobface's user avatar
  • 179
1 vote
Accepted

Whether I have to scan all types of addresses to discover BIP44 wallet from mnemonic?

That depends on what kind of wallet you have. The derivation path is designed to tell you which types of addresses you need to. m/44 means just regular addresses m/49 means segwit nested in P2SH. m/...
Raghav Sood's user avatar
  • 16.8k
1 vote

If Two Cryptocurrencies use different curves, Can They be in the same HD Wallet?

The short answer is yes. The examples below are referenced to a higher level libbitcoin framework command line interface. For a working example see the Bitcoin HD wallet key synthesis example that ...
skaht's user avatar
  • 3,007
1 vote
Accepted

If Two Cryptocurrencies use different curves, Can They be in the same HD Wallet?

You can only do that if you are deriving hardened keys. For non-hardenend keys, you still need to know the curve as a public key is calculated for non-hardened derivation in order to derive the next ...
Andrew Chow's user avatar
  • 66.4k
1 vote

What options do I have to avoid API gap limit? I am using xpub keys

Here's my solution. When gap limit is reached, append a random and unique satoshi amount to the total bitcoin amount and associate it with the user. For example, if your product price is BTC 0.001, ...
ethmz's user avatar
  • 141

Only top scored, non community-wiki answers of a minimum length are eligible