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 ...
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 ...
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 ...
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 ...
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 ...
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'...
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 ...
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 ...
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 ...
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 ...
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.
...
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 ...
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://...
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 ...
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 ...
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 ...
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 ...
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 ...
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.
...
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 ...
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.
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 ...
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 ...
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 ...
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 ...
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 ...
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/...
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 ...
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 ...
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, ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
bip44 × 51bip32-hd-wallets × 32
mnemonic-seed × 12
bitcoin-core × 9
address-generation × 9
wallet × 7
address × 6
private-key × 6
deterministic-wallets × 4
python × 3
change × 3
bitcoind × 2
wallet-recovery × 2
bitcoinjs × 2
copay × 2
xpub × 2
mycelium-wallet × 2
transactions × 1
security × 1
blockchain.info × 1
client × 1
api × 1
electrum × 1
segregated-witness × 1
bitcoin-core-development × 1