Ethereumjs
無法從 EthereumJSWallet 中的 MetaMask 助記符生成相同的帳戶
即使我使用相同的助記符,我也無法生成在 EthereumJSWallet 的 MetaMask 中看到的帳戶。
由於缺乏文件,我可能會誤解如何這樣做。我在終端的 Truffle Node 控制台中執行了以下 2 個程式碼塊,但我從未得到正確的結果。
該變數
mnemonic
包含我的 MetaMask 12 字串。根據 EthereumJSWallet 文件的HD Wallet API部分,我應該“使用 bip39 來創建$$ a seed $$來自 BIP39 助記符。”但是,我仍然無法生成適當的帳戶。 下面兩個
wallet_test
程式碼片段中的任何一個派生路徑都與我的第一個帳戶不對應。嘗試1:
var seed = bip39.mnemonicToSeed(mnemonic) var wallet_test = hdkey.fromMasterSeed(seed) wallet_test.derivePath("m/44'/60'/0'/0/0") wallet_test.derivePath("m/44'/60'/0'/0")
嘗試2:
var seed = bip39.mnemonicToSeedHex(mnemonic) var wallet_test = hdkey.fromMasterSeed(seed) wallet_test.derivePath("m/44'/60'/0'/0/0") wallet_test.derivePath("m/44'/60'/0'/0")
請問有什麼幫助嗎?
此程式碼將從 MetaMask、MyEtherWallet 等的助記詞中生成相同的地址
const bip39 = require('bip39'); const hdkey = require('ethereumjs-wallet/hdkey'); const mnemonic = 'party box feel talent peace tiger endorse defy cheese girl tumble mail'; const seed = bip39.mnemonicToSeed(mnemonic); const hdwallet = hdkey.fromMasterSeed(seed); const myWallet = hdwallet.derivePath("m/44'/60'/0'/0/0").getWallet(); console.log(`Address: ${myWallet.getAddressString()}`); console.log(`Private Key: ${myWallet.getPrivateKeyString()}`);
它不會將校驗和添加到地址
0x999c43b9dd689b9a0bf12ce097663857f62ffbe7
沒有校驗和0x999C43B9DD689b9a0bF12Ce097663857f62ffbe7
帶校驗和