diff --git a/src/shared/wallet.js b/src/shared/wallet.js index 8abebf6..ff29648 100644 --- a/src/shared/wallet.js +++ b/src/shared/wallet.js @@ -25,10 +25,11 @@ function hdWalletFromMnemonic(mnemonic) { } function hdWalletFromXprv(xprv) { - const node = HDNodeWallet.fromExtendedKey(xprv); - if (!node.privateKey) { + const root = HDNodeWallet.fromExtendedKey(xprv); + if (!root.privateKey) { throw new Error("Not an extended private key (xprv)."); } + const node = root.derivePath("44'/60'/0'/0"); const xpub = node.neuter().extendedKey; const firstAddress = node.deriveChild(0).address; return { xpub, firstAddress }; @@ -58,7 +59,8 @@ function getSignerForAddress(walletData, addrIndex, decryptedSecret) { return node.deriveChild(addrIndex); } if (walletData.type === "xprv") { - const node = HDNodeWallet.fromExtendedKey(decryptedSecret); + const root = HDNodeWallet.fromExtendedKey(decryptedSecret); + const node = root.derivePath("44'/60'/0'/0"); return node.deriveChild(addrIndex); } return new Wallet(decryptedSecret);