Skip to main content
Share Your Experience: Take the 2024 Developer Survey
92 votes
Accepted

Can someone explain the meaning of derivation path in wallet in plain English (such as m/44'/60'/0'/0)?

Such a great question. Background Derivation paths are related to HD Wallets or HD Keys, a type of wallet where you have a single, human readable, seed phrase that unlocks a number of accounts / ...
tayvano's user avatar
  • 16k
31 votes
Accepted

How can I get a mnemonic phrase from a private key?

No, a mnemonic is generated using an hd wallet - a hierarchical deterministic wallet. Private keys are "children" of this mnemonic and there can be millions of them, but there's no way to go back to ...
Paul Razvan Berg's user avatar
19 votes

What is an HD wallet for Ether and how to create one using node.js?

HD Wallets refer to Hierarchical Deterministic wallets. They are wallets that, from a root, can generate multiple "child" private keys in a deterministic way. You only need to remember the &...
Ismael's user avatar
  • 30.6k
17 votes
Accepted

What is the difference between m/44'/60'/0'/0 and m/44'/60'/0'?

Jaxx,MEtamask,...etc uses the BIP44 derivation. from the BIP44 specification, the HD derivation path is defined as : m / purpose' / coin_type' / account' / change / address_index But some wallets (...
Badr Bellaj's user avatar
  • 18.8k
9 votes
Accepted

Web3 create account from mnemonic + passphrase

Do it with ethers: const ethers = require('ethers'); const mnemonic = await ethers.HDNode.entropyToMnemonic(ethers.utils.randomBytes(16)); const wallet = ethers.Wallet.fromMnemonic(mnemonic); P.S. ...
George Spasov's user avatar
7 votes
Accepted

What is an HD wallet for Ether and how to create one using node.js?

You can also use the highly convenient HDWalletProvider library from the Truffle team const HDWalletProvider = require("truffle-hdwallet-provider"); const Web3 = require('web3'); var mnemonic = "...
Garen Vartanian's user avatar
7 votes

How to connect truffle using HDWallet provider to Websocket-powered node?

You can pass an instance of the provider instead of a string as a second argument. So you can pass a websocket provider in: const webSocketProvider = new Web3.providers.WebsocketProvider(...); const ...
Mitar's user avatar
  • 173
6 votes
Accepted

Are mnemonic seeds or hierarchical deterministic wallets standardized?

There are several bitcoin standards related to creating keys from mnemonic seeds. BIP 39 for making mnemonics to create a seed: https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki BIP 32 ...
Edmund Edgar's user avatar
  • 16.9k
6 votes

Web3 create account from mnemonic + passphrase

Just in case someone comes here later, in the recent version of ethers, HDNODE has been moved to the utils method. So, in modification to @George's answer above; const ethers = require('ethers'); ...
SirPhemmiey's user avatar
5 votes

Ethereum HD Wallet implementation in Golang, is there any library in go?

You can use the package github.com/miguelmota/go-ethereum-hdwallet to implement an HD wallet (which implements the accounts.Wallet interface from go-ethereum). Here's a basic example to get started: ...
Miguel Mota's user avatar
  • 5,163
5 votes
Accepted

Unable to Generate Same Account from MetaMask Mnemonic in EthereumJSWallet

This code will generate the same address from the mnemonic that MetaMask, MyEtherWallet, etc const bip39 = require('bip39'); const hdkey = require('ethereumjs-wallet/hdkey'); const mnemonic = 'party ...
Ismael's user avatar
  • 30.6k
5 votes

How can I get a mnemonic phrase from a private key?

I concur with Paul Berg that there is no way to represent a single private key as a mnemonic, with the qualification that there is no STANDARD way which will automatically work with existing wallets ...
Vega Paithankar's user avatar
5 votes
Accepted

Convert BIP-39 mnemonic to Ethereum private key in Python

I realized my error: https://github.com/vergl4s/ethereum-mnemonic-utils works, but the full derivation path I was looking for is m/44'/60'/0'/0/0 (note the extra /0 to select the first account). Here ...
Niklas B.'s user avatar
  • 211
5 votes
Accepted

What is the difference between HD Node and Wallet in ethers.js?

this ethers.Wallet.fromMnemonic(mnemonic) generate only one account You can read from hd wallet Bip32 The Bitcoin reference client uses randomly generated keys. In order to avoid the necessity for a ...
Yilmaz's user avatar
  • 1,610
4 votes
Accepted

How to create a own ethereum wallet

Now my question is how can i dynamically get the new 12 mnemonics without metamask You can use BIP39 npm package to generate mnemonic. var mnemonic = bip39.generateMnemonic(); and use this mnemonic ...
kherwa's user avatar
  • 724
4 votes
Accepted

Total metamask balance

You can get the balance of a single account via: web3.eth.getBalance(address); By default you will get all accounts of metamask. (this code uses await and therefore has to be placed within an async ...
cqx's user avatar
  • 3,462
4 votes
Accepted

Can you get the seed phrase of a HD wallet from the private key of one of the wallets?

A seed phrase is used to generate a master key and chain code for an HD wallet. These values can be used to generate many keys and addresses depending on how you want to set up your HD wallet. There ...
Zephyrus's user avatar
  • 350
3 votes
Accepted

How to push new wallet into Ethereum blockchain?

There's no such thing as "pushing" a wallet to an Ethereum node. You can go ahead and send ether to the new address. When you want to send ether from that address, you'll need to know the ...
user19510's user avatar
  • 28.1k
3 votes

How can I restore a mnemonic seed with one missing word?

I'm assuming you know which wallet you were using before and that you have previously received ether or tokens using the wallet -- or at least have posted a receiving address somewhere (if you're not ...
lungj's user avatar
  • 6,680
3 votes
Accepted

How to set truffle-hdwallet-provider as the Web3 currentProvider inside a web page

A solution is provided here. Essentially, you build the HDProvider, just as you would in truffle, and then pass it to Web3.
jsantos's user avatar
  • 106
3 votes
Accepted

Load an HD (Hierarchical Deterministic) Wallet

I managed to get this working. There's definitely something wrong with that digix-eth fork of the eth gem. I suspect it's the padding he adds to the mnemonic. Anyway, here's how you can generate HD ...
Maros's user avatar
  • 141
3 votes

What Hierarchical Deterministic (HD) wallets are available for Ethereum?

Bitcoin operates under a UTXO (unspent transaction output) system, which necessitates new addresses for each transaction. Ethereum, in contrast, operates on an account based system. While it would be ...
3 votes

What Hierarchical Deterministic (HD) wallets are available for Ethereum?

I only know the mobile Jaxx app wallet for now that can handle Ethereum HD accounts all linked under a mnemonic. It can also handle bitcoin. It's my favorite wallet app for the moment if you only want ...
3 votes
Accepted

Is possible to continue the BIP32/BIP39 algorithm from a Pk and Sk pair and "climb" to the mnemonic seed?

If I'm understanding your question correctly, you are asking whether you can go from any key pair in the hierarchy back to the original seed. This is not possible since each step down the hierarchy ...
mafrasi2's user avatar
  • 938
3 votes

Getting Addresses using a Path causes the error: Could not derive hardened child key

Hardened child keys are the ones using apostrophes (m/44'/60'/0'). By design, hardened child keys cannot be derived from extended public keys, only from private (xprv). To get around this, you derive ...
Mircea Nistor's user avatar
3 votes
Accepted

User ether.js mnemonic for bitcoin

No, you cannot use ethers.js to generate a Bitcoin key pair. Most Bitcoin and Ethereum wallets use the same standard though (BIP-32 and BIP-39), so you can simply use one of the other libraries that ...
Morten's user avatar
  • 6,017
3 votes

Ethereum HD address generator

This is silly but I found what the problem was. After I ran the libsecp256k1 point multiplication to obtain the second coordinate of the public key I was discarding the first 8 bytes of the resulting ...
tzumby's user avatar
  • 61
3 votes

generate unique mnemonic with password(only)

Entropy implies randomness. Using deterministic algorithms on a password is not entropy and SHOULD NOT be used! I would recommend researching how to gather entropic data from whatever programming ...
Matt Swezey's user avatar
  • 1,246
2 votes

What is the difference between m/44'/60'/0'/0 and m/44'/60'/0'?

The derivation path can be defined by every wallet independently, it's just a rule about how they generate your wallet from a single master seed. If you want to migrate your wallet to another device ...
Anton Cheng's user avatar
2 votes
Accepted

Hierarchial deterministic wallets on Android

I have experimented with Consensys eth-lightwallet. It makes use a 12-word seed to calculate private keys. You can probably look into its dependencies.
Xavier Leprêtre B9lab's user avatar

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