on master help sign in
bitcoin: modify path in a more robust way when signing
commitef3340a2934a8af66e59e4ddcb0a71b391489467 authorpkova <pyry.kovanen@gmail.com> dateFri 26 Feb 2021, 00:41 (6 years ago) parentc8e8454
2 files changed+6−2
src/lib/validators.js+3−1 src/views/Bitcoin.js+3−1
src/lib/validators.js+3−1
@@ -147,7 +147,9 @@ export const validateSignablePsbt = btcWallet => base64 => {
147147 return !psbt.data.inputs.some((input, idx) => {
148148 try {
149149 // removing already derived part, eg m/84'/0'/0'/0/0 becomes 0/0
150− const path = input.bip32Derivation[0].path.substring(12);
150+ const path = input.bip32Derivation[0].path
151+ .split("m/84'/0'/0'/")
152+ .join('');
151153 const prv = btcWallet.derivePath(path).privateKey;
152154 psbt.signInput(idx, bitcoin.ECPair.fromPrivateKey(prv));
153155 return true;
src/views/Bitcoin.js+3−1
@@ -67,7 +67,9 @@ export default function Bitcoin() {
6767 const hex = newPsbt.data.inputs
6868 .reduce((psbt, input, idx) => {
6969 // removing already derived part, eg m/84'/0'/0'/0/0 becomes 0/0
70− const path = input.bip32Derivation[0].path.substring(12);
70+ const path = input.bip32Derivation[0].path
71+ .split("m/84'/0'/0'/")
72+ .join('');
7173 const prv = btcWallet.derivePath(path).privateKey;
7274 try {
7375 return psbt.signInput(idx, bitcoin.ECPair.fromPrivateKey(prv));