@ledgerhq/hw-app-btc 10.5.0 → 10.6.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +6 -0
- package/README.md +3 -2
- package/lib/Btc.d.ts +1 -0
- package/lib/Btc.d.ts.map +1 -1
- package/lib/Btc.js +35 -41
- package/lib/Btc.js.map +1 -1
- package/lib/BtcNew.d.ts.map +1 -1
- package/lib/BtcNew.js +191 -216
- package/lib/BtcNew.js.map +1 -1
- package/lib/BtcOld.js +23 -37
- package/lib/BtcOld.js.map +1 -1
- package/lib/bip32.d.ts +1 -0
- package/lib/bip32.d.ts.map +1 -1
- package/lib/buffertools.d.ts +1 -0
- package/lib/buffertools.d.ts.map +1 -1
- package/lib/buffertools.js +3 -3
- package/lib/buffertools.js.map +1 -1
- package/lib/compressPublicKey.d.ts +1 -0
- package/lib/compressPublicKey.d.ts.map +1 -1
- package/lib/constants.d.ts +1 -0
- package/lib/constants.d.ts.map +1 -1
- package/lib/constants.js +3 -1
- package/lib/constants.js.map +1 -1
- package/lib/createTransaction.d.ts +19 -1
- package/lib/createTransaction.d.ts.map +1 -1
- package/lib/createTransaction.js +273 -245
- package/lib/createTransaction.js.map +1 -1
- package/lib/finalizeInput.d.ts +1 -0
- package/lib/finalizeInput.d.ts.map +1 -1
- package/lib/finalizeInput.js +18 -29
- package/lib/finalizeInput.js.map +1 -1
- package/lib/getAppAndVersion.d.ts +1 -0
- package/lib/getAppAndVersion.d.ts.map +1 -1
- package/lib/getAppAndVersion.js +6 -15
- package/lib/getAppAndVersion.js.map +1 -1
- package/lib/getTrustedInput.d.ts +1 -0
- package/lib/getTrustedInput.d.ts.map +1 -1
- package/lib/getTrustedInput.js +83 -96
- package/lib/getTrustedInput.js.map +1 -1
- package/lib/getWalletPublicKey.js +27 -34
- package/lib/getWalletPublicKey.js.map +1 -1
- package/lib/hashPublicKey.d.ts +1 -0
- package/lib/hashPublicKey.d.ts.map +1 -1
- package/lib/newops/accounttype.d.ts +1 -0
- package/lib/newops/accounttype.d.ts.map +1 -1
- package/lib/newops/accounttype.js +2 -0
- package/lib/newops/accounttype.js.map +1 -1
- package/lib/newops/appClient.d.ts +1 -0
- package/lib/newops/appClient.d.ts.map +1 -1
- package/lib/newops/appClient.js +90 -110
- package/lib/newops/appClient.js.map +1 -1
- package/lib/newops/clientCommands.d.ts +1 -0
- package/lib/newops/clientCommands.d.ts.map +1 -1
- package/lib/newops/clientCommands.js +18 -10
- package/lib/newops/clientCommands.js.map +1 -1
- package/lib/newops/merkelizedPsbt.d.ts +1 -0
- package/lib/newops/merkelizedPsbt.d.ts.map +1 -1
- package/lib/newops/merkelizedPsbt.js +5 -2
- package/lib/newops/merkelizedPsbt.js.map +1 -1
- package/lib/newops/merkle.d.ts +1 -0
- package/lib/newops/merkle.d.ts.map +1 -1
- package/lib/newops/merkle.js +8 -0
- package/lib/newops/merkle.js.map +1 -1
- package/lib/newops/merkleMap.d.ts +1 -0
- package/lib/newops/merkleMap.d.ts.map +1 -1
- package/lib/newops/merkleMap.js +4 -0
- package/lib/newops/merkleMap.js.map +1 -1
- package/lib/newops/policy.d.ts +1 -0
- package/lib/newops/policy.d.ts.map +1 -1
- package/lib/newops/policy.js +2 -0
- package/lib/newops/policy.js.map +1 -1
- package/lib/newops/psbtExtractor.d.ts +1 -0
- package/lib/newops/psbtExtractor.d.ts.map +1 -1
- package/lib/newops/psbtExtractor.js +2 -3
- package/lib/newops/psbtExtractor.js.map +1 -1
- package/lib/newops/psbtv2.d.ts +1 -0
- package/lib/newops/psbtv2.d.ts.map +1 -1
- package/lib/newops/psbtv2.js +10 -10
- package/lib/newops/psbtv2.js.map +1 -1
- package/lib/serializeTransaction.d.ts +1 -0
- package/lib/serializeTransaction.d.ts.map +1 -1
- package/lib/signMessage.js +38 -49
- package/lib/signMessage.js.map +1 -1
- package/lib/signP2SHTransaction.js +72 -83
- package/lib/signP2SHTransaction.js.map +1 -1
- package/lib/signTransaction.d.ts +1 -0
- package/lib/signTransaction.d.ts.map +1 -1
- package/lib/startUntrustedHashTransactionInput.d.ts +1 -0
- package/lib/startUntrustedHashTransactionInput.d.ts.map +1 -1
- package/lib/startUntrustedHashTransactionInput.js +52 -63
- package/lib/startUntrustedHashTransactionInput.js.map +1 -1
- package/lib/types.d.ts +1 -0
- package/lib/types.d.ts.map +1 -1
- package/lib/varint.d.ts +1 -0
- package/lib/varint.d.ts.map +1 -1
- package/lib-es/Btc.d.ts +1 -0
- package/lib-es/Btc.d.ts.map +1 -1
- package/lib-es/Btc.js +35 -41
- package/lib-es/Btc.js.map +1 -1
- package/lib-es/BtcNew.d.ts.map +1 -1
- package/lib-es/BtcNew.js +191 -216
- package/lib-es/BtcNew.js.map +1 -1
- package/lib-es/BtcOld.js +23 -37
- package/lib-es/BtcOld.js.map +1 -1
- package/lib-es/bip32.d.ts +1 -0
- package/lib-es/bip32.d.ts.map +1 -1
- package/lib-es/buffertools.d.ts +1 -0
- package/lib-es/buffertools.d.ts.map +1 -1
- package/lib-es/buffertools.js +3 -3
- package/lib-es/buffertools.js.map +1 -1
- package/lib-es/compressPublicKey.d.ts +1 -0
- package/lib-es/compressPublicKey.d.ts.map +1 -1
- package/lib-es/constants.d.ts +1 -0
- package/lib-es/constants.d.ts.map +1 -1
- package/lib-es/constants.js +2 -0
- package/lib-es/constants.js.map +1 -1
- package/lib-es/createTransaction.d.ts +19 -1
- package/lib-es/createTransaction.d.ts.map +1 -1
- package/lib-es/createTransaction.js +272 -245
- package/lib-es/createTransaction.js.map +1 -1
- package/lib-es/finalizeInput.d.ts +1 -0
- package/lib-es/finalizeInput.d.ts.map +1 -1
- package/lib-es/finalizeInput.js +18 -29
- package/lib-es/finalizeInput.js.map +1 -1
- package/lib-es/getAppAndVersion.d.ts +1 -0
- package/lib-es/getAppAndVersion.d.ts.map +1 -1
- package/lib-es/getAppAndVersion.js +6 -15
- package/lib-es/getAppAndVersion.js.map +1 -1
- package/lib-es/getTrustedInput.d.ts +1 -0
- package/lib-es/getTrustedInput.d.ts.map +1 -1
- package/lib-es/getTrustedInput.js +83 -96
- package/lib-es/getTrustedInput.js.map +1 -1
- package/lib-es/getWalletPublicKey.js +27 -34
- package/lib-es/getWalletPublicKey.js.map +1 -1
- package/lib-es/hashPublicKey.d.ts +1 -0
- package/lib-es/hashPublicKey.d.ts.map +1 -1
- package/lib-es/newops/accounttype.d.ts +1 -0
- package/lib-es/newops/accounttype.d.ts.map +1 -1
- package/lib-es/newops/accounttype.js +2 -0
- package/lib-es/newops/accounttype.js.map +1 -1
- package/lib-es/newops/appClient.d.ts +1 -0
- package/lib-es/newops/appClient.d.ts.map +1 -1
- package/lib-es/newops/appClient.js +90 -110
- package/lib-es/newops/appClient.js.map +1 -1
- package/lib-es/newops/clientCommands.d.ts +1 -0
- package/lib-es/newops/clientCommands.d.ts.map +1 -1
- package/lib-es/newops/clientCommands.js +18 -10
- package/lib-es/newops/clientCommands.js.map +1 -1
- package/lib-es/newops/merkelizedPsbt.d.ts +1 -0
- package/lib-es/newops/merkelizedPsbt.d.ts.map +1 -1
- package/lib-es/newops/merkelizedPsbt.js +5 -2
- package/lib-es/newops/merkelizedPsbt.js.map +1 -1
- package/lib-es/newops/merkle.d.ts +1 -0
- package/lib-es/newops/merkle.d.ts.map +1 -1
- package/lib-es/newops/merkle.js +8 -0
- package/lib-es/newops/merkle.js.map +1 -1
- package/lib-es/newops/merkleMap.d.ts +1 -0
- package/lib-es/newops/merkleMap.d.ts.map +1 -1
- package/lib-es/newops/merkleMap.js +4 -0
- package/lib-es/newops/merkleMap.js.map +1 -1
- package/lib-es/newops/policy.d.ts +1 -0
- package/lib-es/newops/policy.d.ts.map +1 -1
- package/lib-es/newops/policy.js +2 -0
- package/lib-es/newops/policy.js.map +1 -1
- package/lib-es/newops/psbtExtractor.d.ts +1 -0
- package/lib-es/newops/psbtExtractor.d.ts.map +1 -1
- package/lib-es/newops/psbtExtractor.js +2 -3
- package/lib-es/newops/psbtExtractor.js.map +1 -1
- package/lib-es/newops/psbtv2.d.ts +1 -0
- package/lib-es/newops/psbtv2.d.ts.map +1 -1
- package/lib-es/newops/psbtv2.js +10 -10
- package/lib-es/newops/psbtv2.js.map +1 -1
- package/lib-es/serializeTransaction.d.ts +1 -0
- package/lib-es/serializeTransaction.d.ts.map +1 -1
- package/lib-es/signMessage.js +38 -49
- package/lib-es/signMessage.js.map +1 -1
- package/lib-es/signP2SHTransaction.js +72 -83
- package/lib-es/signP2SHTransaction.js.map +1 -1
- package/lib-es/signTransaction.d.ts +1 -0
- package/lib-es/signTransaction.d.ts.map +1 -1
- package/lib-es/startUntrustedHashTransactionInput.d.ts +1 -0
- package/lib-es/startUntrustedHashTransactionInput.d.ts.map +1 -1
- package/lib-es/startUntrustedHashTransactionInput.js +52 -63
- package/lib-es/startUntrustedHashTransactionInput.js.map +1 -1
- package/lib-es/types.d.ts +1 -0
- package/lib-es/types.d.ts.map +1 -1
- package/lib-es/varint.d.ts +1 -0
- package/lib-es/varint.d.ts.map +1 -1
- package/package.json +5 -4
- package/src/BtcNew.ts +7 -1
- package/src/constants.ts +3 -0
- package/src/createTransaction.ts +68 -5
- package/tests/createTransaction.test.ts +225 -0
package/lib-es/finalizeInput.js
CHANGED
|
@@ -1,37 +1,26 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import { bip32asBuffer } from "./bip32";
|
|
11
2
|
import { MAX_SCRIPT_BLOCK } from "./constants";
|
|
12
3
|
export function provideOutputFullChangePath(transport, path) {
|
|
13
4
|
const buffer = bip32asBuffer(path);
|
|
14
5
|
return transport.send(0xe0, 0x4a, 0xff, 0x00, buffer);
|
|
15
6
|
}
|
|
16
|
-
export function hashOutputFull(
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
35
|
-
});
|
|
7
|
+
export async function hashOutputFull(transport, outputScript, additionals = []) {
|
|
8
|
+
let offset = 0;
|
|
9
|
+
const p1 = Number(0x80);
|
|
10
|
+
const isDecred = additionals.includes("decred");
|
|
11
|
+
///WARNING: Decred works only with one call (without chunking)
|
|
12
|
+
//TODO: test without this for Decred
|
|
13
|
+
if (isDecred) {
|
|
14
|
+
return transport.send(0xe0, 0x4a, p1, 0x00, outputScript);
|
|
15
|
+
}
|
|
16
|
+
while (offset < outputScript.length) {
|
|
17
|
+
const blockSize = offset + MAX_SCRIPT_BLOCK >= outputScript.length
|
|
18
|
+
? outputScript.length - offset
|
|
19
|
+
: MAX_SCRIPT_BLOCK;
|
|
20
|
+
const p1 = offset + blockSize === outputScript.length ? 0x80 : 0x00;
|
|
21
|
+
const data = outputScript.slice(offset, offset + blockSize);
|
|
22
|
+
await transport.send(0xe0, 0x4a, p1, 0x00, data);
|
|
23
|
+
offset += blockSize;
|
|
24
|
+
}
|
|
36
25
|
}
|
|
37
26
|
//# sourceMappingURL=finalizeInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finalizeInput.js","sourceRoot":"","sources":["../src/finalizeInput.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"finalizeInput.js","sourceRoot":"","sources":["../src/finalizeInput.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,MAAM,UAAU,2BAA2B,CAAC,SAAoB,EAAE,IAAY;IAC5E,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACnC,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACxD,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAAoB,EACpB,YAAoB,EACpB,cAA6B,EAAE;IAE/B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEhD,8DAA8D;IAC9D,oCAAoC;IACpC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,SAAS,GACb,MAAM,GAAG,gBAAgB,IAAI,YAAY,CAAC,MAAM;YAC9C,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,MAAM;YAC9B,CAAC,CAAC,gBAAgB,CAAC;QACvB,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,KAAK,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACpE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;QAC5D,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACjD,MAAM,IAAI,SAAS,CAAC;IACtB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAppAndVersion.d.ts","sourceRoot":"","sources":["../src/getAppAndVersion.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getAppAndVersion.d.ts","sourceRoot":"","sources":["../src/getAppAndVersion.ts"],"names":[],"mappings":";;AACA,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,gBAAgB,cAAqB,SAAS,KAAG,QAAQ,aAAa,CAgBlF,CAAC;AAEF,eAAO,MAAM,gBAAgB,cAAqB,SAAS,KAAG,QAAQ,OAAO,CAQ5E,CAAC"}
|
|
@@ -1,15 +1,6 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import invariant from "invariant";
|
|
11
|
-
export const getAppAndVersion = (transport) =>
|
|
12
|
-
const r =
|
|
2
|
+
export const getAppAndVersion = async (transport) => {
|
|
3
|
+
const r = await transport.send(0xb0, 0x01, 0x00, 0x00);
|
|
13
4
|
let i = 0;
|
|
14
5
|
const format = r[i++];
|
|
15
6
|
invariant(format === 1, "getAppAndVersion: format not supported");
|
|
@@ -24,15 +15,15 @@ export const getAppAndVersion = (transport) => __awaiter(void 0, void 0, void 0,
|
|
|
24
15
|
version,
|
|
25
16
|
flags,
|
|
26
17
|
};
|
|
27
|
-
}
|
|
28
|
-
export const checkIsBtcLegacy = (transport) =>
|
|
18
|
+
};
|
|
19
|
+
export const checkIsBtcLegacy = async (transport) => {
|
|
29
20
|
try {
|
|
30
21
|
// Call old btc API, it will throw an exception with new btc app. It is a workaround to differentiate new/old btc nano app
|
|
31
|
-
|
|
22
|
+
await transport.send(0xe0, 0xc4, 0, 0);
|
|
32
23
|
}
|
|
33
24
|
catch (e) {
|
|
34
25
|
return false;
|
|
35
26
|
}
|
|
36
27
|
return true;
|
|
37
|
-
}
|
|
28
|
+
};
|
|
38
29
|
//# sourceMappingURL=getAppAndVersion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAppAndVersion.js","sourceRoot":"","sources":["../src/getAppAndVersion.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getAppAndVersion.js","sourceRoot":"","sources":["../src/getAppAndVersion.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,WAAW,CAAC;AASlC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,SAAoB,EAA0B,EAAE;IACrF,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACvD,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACtB,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,wCAAwC,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1B,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7D,MAAM,aAAa,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACnE,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;IAC5C,OAAO;QACL,IAAI;QACJ,OAAO;QACP,KAAK;KACN,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,SAAoB,EAAoB,EAAE;IAC/E,IAAI,CAAC;QACH,0HAA0H;QAC1H,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
import type Transport from "@ledgerhq/hw-transport";
|
|
3
4
|
import type { Transaction } from "./types";
|
|
4
5
|
export declare function getTrustedInputRaw(transport: Transport, transactionData: Buffer, indexLookup?: number | null | undefined): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTrustedInput.d.ts","sourceRoot":"","sources":["../src/getTrustedInput.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getTrustedInput.d.ts","sourceRoot":"","sources":["../src/getTrustedInput.ts"],"names":[],"mappings":";;AACA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,MAAM,EACvB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACtC,OAAO,CAAC,MAAM,CAAC,CAgBjB;AACD,wBAAsB,eAAe,CACnC,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,WAAW,EACxB,WAAW,GAAE,KAAK,CAAC,MAAM,CAAM,GAC9B,OAAO,CAAC,MAAM,CAAC,CAmGjB"}
|
|
@@ -1,108 +1,95 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import invariant from "invariant";
|
|
11
2
|
import { MAX_SCRIPT_BLOCK } from "./constants";
|
|
12
3
|
import { createVarint } from "./varint";
|
|
13
|
-
export function getTrustedInputRaw(transport, transactionData, indexLookup) {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
return res;
|
|
29
|
-
});
|
|
4
|
+
export async function getTrustedInputRaw(transport, transactionData, indexLookup) {
|
|
5
|
+
let data;
|
|
6
|
+
let firstRound = false;
|
|
7
|
+
if (typeof indexLookup === "number") {
|
|
8
|
+
firstRound = true;
|
|
9
|
+
const prefix = Buffer.alloc(4);
|
|
10
|
+
prefix.writeUInt32BE(indexLookup, 0);
|
|
11
|
+
data = Buffer.concat([prefix, transactionData], transactionData.length + 4);
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
data = transactionData;
|
|
15
|
+
}
|
|
16
|
+
const trustedInput = await transport.send(0xe0, 0x42, firstRound ? 0x00 : 0x80, 0x00, data);
|
|
17
|
+
const res = trustedInput.slice(0, trustedInput.length - 2).toString("hex");
|
|
18
|
+
return res;
|
|
30
19
|
}
|
|
31
|
-
export function getTrustedInput(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
scriptBlocks.push(script.slice(offset, offset + blockSize));
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
scriptBlocks.push(Buffer.concat([script.slice(offset, offset + blockSize), seq]));
|
|
49
|
-
}
|
|
50
|
-
offset += blockSize;
|
|
20
|
+
export async function getTrustedInput(transport, indexLookup, transaction, additionals = []) {
|
|
21
|
+
const { inputs, outputs, locktime, nExpiryHeight, extraData } = transaction;
|
|
22
|
+
if (!outputs || !locktime) {
|
|
23
|
+
throw new Error("getTrustedInput: locktime & outputs is expected");
|
|
24
|
+
}
|
|
25
|
+
const isDecred = additionals.includes("decred");
|
|
26
|
+
const processScriptBlocks = async (script, sequence) => {
|
|
27
|
+
const seq = sequence || Buffer.alloc(0);
|
|
28
|
+
const scriptBlocks = [];
|
|
29
|
+
let offset = 0;
|
|
30
|
+
while (offset !== script.length) {
|
|
31
|
+
const blockSize = script.length - offset > MAX_SCRIPT_BLOCK ? MAX_SCRIPT_BLOCK : script.length - offset;
|
|
32
|
+
if (offset + blockSize !== script.length) {
|
|
33
|
+
scriptBlocks.push(script.slice(offset, offset + blockSize));
|
|
51
34
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
if (script.length === 0) {
|
|
55
|
-
scriptBlocks.push(seq);
|
|
35
|
+
else {
|
|
36
|
+
scriptBlocks.push(Buffer.concat([script.slice(offset, offset + blockSize), seq]));
|
|
56
37
|
}
|
|
57
|
-
|
|
58
|
-
for (const scriptBlock of scriptBlocks) {
|
|
59
|
-
res = yield getTrustedInputRaw(transport, scriptBlock);
|
|
60
|
-
}
|
|
61
|
-
return res;
|
|
62
|
-
});
|
|
63
|
-
const processWholeScriptBlock = block => getTrustedInputRaw(transport, block);
|
|
64
|
-
yield getTrustedInputRaw(transport, Buffer.concat([
|
|
65
|
-
transaction.version,
|
|
66
|
-
transaction.timestamp || Buffer.alloc(0),
|
|
67
|
-
transaction.nVersionGroupId || Buffer.alloc(0),
|
|
68
|
-
createVarint(inputs.length),
|
|
69
|
-
]), indexLookup);
|
|
70
|
-
for (const input of inputs) {
|
|
71
|
-
const treeField = isDecred ? input.tree || Buffer.from([0x00]) : Buffer.alloc(0);
|
|
72
|
-
const data = Buffer.concat([input.prevout, treeField, createVarint(input.script.length)]);
|
|
73
|
-
yield getTrustedInputRaw(transport, data);
|
|
74
|
-
// iteration (eachSeries) ended
|
|
75
|
-
// TODO notify progress
|
|
76
|
-
// deferred.notify("input");
|
|
77
|
-
yield (isDecred
|
|
78
|
-
? processWholeScriptBlock(Buffer.concat([input.script, input.sequence]))
|
|
79
|
-
: processScriptBlocks(input.script, input.sequence));
|
|
80
|
-
}
|
|
81
|
-
yield getTrustedInputRaw(transport, createVarint(outputs.length));
|
|
82
|
-
for (const output of outputs) {
|
|
83
|
-
const data = Buffer.concat([
|
|
84
|
-
output.amount,
|
|
85
|
-
isDecred ? Buffer.from([0x00, 0x00]) : Buffer.alloc(0), //Version script
|
|
86
|
-
createVarint(output.script.length),
|
|
87
|
-
output.script,
|
|
88
|
-
]);
|
|
89
|
-
yield getTrustedInputRaw(transport, data);
|
|
90
|
-
}
|
|
91
|
-
const endData = [];
|
|
92
|
-
if (nExpiryHeight && nExpiryHeight.length > 0) {
|
|
93
|
-
endData.push(nExpiryHeight);
|
|
38
|
+
offset += blockSize;
|
|
94
39
|
}
|
|
95
|
-
|
|
96
|
-
|
|
40
|
+
// Handle case when no script length: we still want to pass the sequence
|
|
41
|
+
// relatable: https://github.com/LedgerHQ/ledger-live-desktop/issues/1386
|
|
42
|
+
if (script.length === 0) {
|
|
43
|
+
scriptBlocks.push(seq);
|
|
97
44
|
}
|
|
98
|
-
let
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
extraPart = isDecred ? data : Buffer.concat([createVarint(data.length), data]);
|
|
45
|
+
let res;
|
|
46
|
+
for (const scriptBlock of scriptBlocks) {
|
|
47
|
+
res = await getTrustedInputRaw(transport, scriptBlock);
|
|
102
48
|
}
|
|
103
|
-
const res = yield processScriptBlocks(Buffer.concat([locktime, extraPart || Buffer.alloc(0)]));
|
|
104
|
-
invariant(res, "missing result in processScriptBlocks");
|
|
105
49
|
return res;
|
|
106
|
-
}
|
|
50
|
+
};
|
|
51
|
+
const processWholeScriptBlock = block => getTrustedInputRaw(transport, block);
|
|
52
|
+
await getTrustedInputRaw(transport, Buffer.concat([
|
|
53
|
+
transaction.version,
|
|
54
|
+
transaction.timestamp || Buffer.alloc(0),
|
|
55
|
+
transaction.nVersionGroupId || Buffer.alloc(0),
|
|
56
|
+
createVarint(inputs.length),
|
|
57
|
+
]), indexLookup);
|
|
58
|
+
for (const input of inputs) {
|
|
59
|
+
const treeField = isDecred ? input.tree || Buffer.from([0x00]) : Buffer.alloc(0);
|
|
60
|
+
const data = Buffer.concat([input.prevout, treeField, createVarint(input.script.length)]);
|
|
61
|
+
await getTrustedInputRaw(transport, data);
|
|
62
|
+
// iteration (eachSeries) ended
|
|
63
|
+
// TODO notify progress
|
|
64
|
+
// deferred.notify("input");
|
|
65
|
+
await (isDecred
|
|
66
|
+
? processWholeScriptBlock(Buffer.concat([input.script, input.sequence]))
|
|
67
|
+
: processScriptBlocks(input.script, input.sequence));
|
|
68
|
+
}
|
|
69
|
+
await getTrustedInputRaw(transport, createVarint(outputs.length));
|
|
70
|
+
for (const output of outputs) {
|
|
71
|
+
const data = Buffer.concat([
|
|
72
|
+
output.amount,
|
|
73
|
+
isDecred ? Buffer.from([0x00, 0x00]) : Buffer.alloc(0), //Version script
|
|
74
|
+
createVarint(output.script.length),
|
|
75
|
+
output.script,
|
|
76
|
+
]);
|
|
77
|
+
await getTrustedInputRaw(transport, data);
|
|
78
|
+
}
|
|
79
|
+
const endData = [];
|
|
80
|
+
if (nExpiryHeight && nExpiryHeight.length > 0) {
|
|
81
|
+
endData.push(nExpiryHeight);
|
|
82
|
+
}
|
|
83
|
+
if (extraData && extraData.length > 0) {
|
|
84
|
+
endData.push(extraData);
|
|
85
|
+
}
|
|
86
|
+
let extraPart;
|
|
87
|
+
if (endData.length) {
|
|
88
|
+
const data = Buffer.concat(endData);
|
|
89
|
+
extraPart = isDecred ? data : Buffer.concat([createVarint(data.length), data]);
|
|
90
|
+
}
|
|
91
|
+
const res = await processScriptBlocks(Buffer.concat([locktime, extraPart || Buffer.alloc(0)]));
|
|
92
|
+
invariant(res, "missing result in processScriptBlocks");
|
|
93
|
+
return res;
|
|
107
94
|
}
|
|
108
95
|
//# sourceMappingURL=getTrustedInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTrustedInput.js","sourceRoot":"","sources":["../src/getTrustedInput.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getTrustedInput.js","sourceRoot":"","sources":["../src/getTrustedInput.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import { bip32asBuffer } from "./bip32";
|
|
11
2
|
const addressFormatMap = {
|
|
12
3
|
legacy: 0,
|
|
@@ -14,30 +5,32 @@ const addressFormatMap = {
|
|
|
14
5
|
bech32: 2,
|
|
15
6
|
cashaddr: 3,
|
|
16
7
|
};
|
|
17
|
-
export function getWalletPublicKey(transport, options) {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
8
|
+
export async function getWalletPublicKey(transport, options) {
|
|
9
|
+
const { path, verify, format } = {
|
|
10
|
+
verify: false,
|
|
11
|
+
format: "legacy",
|
|
12
|
+
...options,
|
|
13
|
+
};
|
|
14
|
+
if (!(format in addressFormatMap)) {
|
|
15
|
+
throw new Error("btc.getWalletPublicKey invalid format=" + format);
|
|
16
|
+
}
|
|
17
|
+
const buffer = bip32asBuffer(path);
|
|
18
|
+
const p1 = verify ? 1 : 0;
|
|
19
|
+
const p2 = addressFormatMap[format];
|
|
20
|
+
const response = await transport.send(0xe0, 0x40, p1, p2, buffer);
|
|
21
|
+
const publicKeyLength = response[0];
|
|
22
|
+
const addressLength = response[1 + publicKeyLength];
|
|
23
|
+
const publicKey = response.slice(1, 1 + publicKeyLength).toString("hex");
|
|
24
|
+
const bitcoinAddress = response
|
|
25
|
+
.slice(1 + publicKeyLength + 1, 1 + publicKeyLength + 1 + addressLength)
|
|
26
|
+
.toString("ascii");
|
|
27
|
+
const chainCode = response
|
|
28
|
+
.slice(1 + publicKeyLength + 1 + addressLength, 1 + publicKeyLength + 1 + addressLength + 32)
|
|
29
|
+
.toString("hex");
|
|
30
|
+
return {
|
|
31
|
+
publicKey,
|
|
32
|
+
bitcoinAddress,
|
|
33
|
+
chainCode,
|
|
34
|
+
};
|
|
42
35
|
}
|
|
43
36
|
//# sourceMappingURL=getWalletPublicKey.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getWalletPublicKey.js","sourceRoot":"","sources":["../src/getWalletPublicKey.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getWalletPublicKey.js","sourceRoot":"","sources":["../src/getWalletPublicKey.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAMxC,MAAM,gBAAgB,GAAG;IACvB,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;CACZ,CAAC;AACF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAoB,EACpB,OAIC;IAMD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG;QAC/B,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,QAAQ;QAChB,GAAG,OAAO;KACX,CAAC;IAEF,IAAI,CAAC,CAAC,MAAM,IAAI,gBAAgB,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,wCAAwC,GAAG,MAAM,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,MAAM,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,MAAM,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,aAAa,GAAG,QAAQ,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzE,MAAM,cAAc,GAAG,QAAQ;SAC5B,KAAK,CAAC,CAAC,GAAG,eAAe,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,GAAG,CAAC,GAAG,aAAa,CAAC;SACvE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACrB,MAAM,SAAS,GAAG,QAAQ;SACvB,KAAK,CAAC,CAAC,GAAG,eAAe,GAAG,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,eAAe,GAAG,CAAC,GAAG,aAAa,GAAG,EAAE,CAAC;SAC5F,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnB,OAAO;QACL,SAAS;QACT,cAAc;QACd,SAAS;KACV,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hashPublicKey.d.ts","sourceRoot":"","sources":["../src/hashPublicKey.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hashPublicKey.d.ts","sourceRoot":"","sources":["../src/hashPublicKey.ts"],"names":[],"mappings":";;AAEA,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEpD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounttype.d.ts","sourceRoot":"","sources":["../../src/newops/accounttype.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"accounttype.d.ts","sourceRoot":"","sources":["../../src/newops/accounttype.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,8 @@ import { BufferWriter } from "../buffertools";
|
|
|
4
4
|
import { HASH_SIZE, OP_CHECKSIG, OP_DUP, OP_EQUAL, OP_EQUALVERIFY, OP_HASH160 } from "../constants";
|
|
5
5
|
import { hashPublicKey } from "../hashPublicKey";
|
|
6
6
|
class BaseAccount {
|
|
7
|
+
psbt;
|
|
8
|
+
masterFp;
|
|
7
9
|
constructor(psbt, masterFp) {
|
|
8
10
|
this.psbt = psbt;
|
|
9
11
|
this.masterFp = masterFp;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounttype.js","sourceRoot":"","sources":["../../src/newops/accounttype.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAoEjD,MAAe,WAAW;
|
|
1
|
+
{"version":3,"file":"accounttype.js","sourceRoot":"","sources":["../../src/newops/accounttype.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appClient.d.ts","sourceRoot":"","sources":["../../src/newops/appClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"appClient.d.ts","sourceRoot":"","sources":["../../src/newops/appClient.ts"],"names":[],"mappings":";;AAAA,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAqBxC;;;GAGG;AACH,qBAAa,SAAS;IACpB,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS;YAIlB,WAAW;IA0BnB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAW5E,gBAAgB,CACpB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,CAAC;IA+BZ,QAAQ,CACZ,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,gBAAgB,EAAE,MAAM,IAAI,GAC3B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAqDzB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIvC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;CAyB5E"}
|