@ledgerhq/hw-app-trx 6.27.15 → 6.27.16-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/CHANGELOG.md +8 -0
- package/lib/Trx.d.ts.map +1 -1
- package/lib/Trx.js +9 -15
- package/lib/Trx.js.map +1 -1
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +2 -2
- package/lib/utils.js.map +1 -1
- package/lib-es/Trx.d.ts.map +1 -1
- package/lib-es/Trx.js +9 -15
- package/lib-es/Trx.js.map +1 -1
- package/lib-es/utils.d.ts.map +1 -1
- package/lib-es/utils.js +2 -2
- package/lib-es/utils.js.map +1 -1
- package/package.json +5 -5
- package/src/Trx.ts +20 -36
- package/src/utils.ts +6 -12
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @ledgerhq/hw-app-trx
|
|
2
2
|
|
|
3
|
+
## 6.27.16-next.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [[`9adc1862dd`](https://github.com/LedgerHQ/ledger-live/commit/9adc1862dda605a722d19f3b6895bd324834c914)]:
|
|
8
|
+
- @ledgerhq/errors@6.12.7-next.0
|
|
9
|
+
- @ledgerhq/hw-transport@6.28.5-next.0
|
|
10
|
+
|
|
3
11
|
## 6.27.15
|
|
4
12
|
|
|
5
13
|
### Patch Changes
|
package/lib/Trx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Trx.d.ts","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":";AAmBA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAoBpD;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,GAAG;IACtB,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS,EAAE,WAAW,SAAQ;IAgBrD;;;;;;;OAOG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;
|
|
1
|
+
{"version":3,"file":"Trx.d.ts","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":";AAmBA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAoBpD;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,GAAG;IACtB,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS,EAAE,WAAW,SAAQ;IAgBrD;;;;;;;OAOG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAsBF,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAOjC;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA0E3F;;;;;;;;OAQG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAaxE;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,IAAI,OAAO,CAAC;QAC7B,aAAa,EAAE,OAAO,CAAC;QACvB,eAAe,EAAE,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAgCF;;;;;;;;OAQG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0CtE;;;;;;;OAOG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAajE"}
|
package/lib/Trx.js
CHANGED
|
@@ -18,7 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
********************************************************************************/
|
|
19
19
|
// FIXME drop:
|
|
20
20
|
const utils_1 = require("./utils");
|
|
21
|
-
const remapTransactionRelatedErrors =
|
|
21
|
+
const remapTransactionRelatedErrors = e => {
|
|
22
22
|
if (e && e.statusCode === 0x6a80) {
|
|
23
23
|
// TODO:
|
|
24
24
|
}
|
|
@@ -70,7 +70,7 @@ class Trx {
|
|
|
70
70
|
});
|
|
71
71
|
return this.transport
|
|
72
72
|
.send(CLA, ADDRESS, boolDisplay ? 0x01 : 0x00, 0x00, buffer)
|
|
73
|
-
.then(
|
|
73
|
+
.then(response => {
|
|
74
74
|
const publicKeyLength = response[0];
|
|
75
75
|
const addressLength = response[1 + publicKeyLength];
|
|
76
76
|
return {
|
|
@@ -156,14 +156,12 @@ class Trx {
|
|
|
156
156
|
}
|
|
157
157
|
}
|
|
158
158
|
return (0, utils_1.foreach)(toSend, (data, i) => {
|
|
159
|
-
return this.transport
|
|
160
|
-
.send(CLA, SIGN, startBytes[i], 0x00, data)
|
|
161
|
-
.then((apduResponse) => {
|
|
159
|
+
return this.transport.send(CLA, SIGN, startBytes[i], 0x00, data).then(apduResponse => {
|
|
162
160
|
response = apduResponse;
|
|
163
161
|
});
|
|
164
162
|
}).then(() => {
|
|
165
163
|
return response.slice(0, 65).toString("hex");
|
|
166
|
-
},
|
|
164
|
+
}, e => {
|
|
167
165
|
throw remapTransactionRelatedErrors(e);
|
|
168
166
|
});
|
|
169
167
|
}
|
|
@@ -184,9 +182,7 @@ class Trx {
|
|
|
184
182
|
data.writeUInt32BE(element, 1 + 4 * index);
|
|
185
183
|
});
|
|
186
184
|
data = Buffer.concat([data, Buffer.from(rawTxHashHex, "hex")]);
|
|
187
|
-
return this.transport
|
|
188
|
-
.send(CLA, SIGN_HASH, 0x00, 0x00, data)
|
|
189
|
-
.then((response) => {
|
|
185
|
+
return this.transport.send(CLA, SIGN_HASH, 0x00, 0x00, data).then(response => {
|
|
190
186
|
return response.slice(0, 65).toString("hex");
|
|
191
187
|
});
|
|
192
188
|
}
|
|
@@ -206,7 +202,7 @@ class Trx {
|
|
|
206
202
|
* }
|
|
207
203
|
*/
|
|
208
204
|
getAppConfiguration() {
|
|
209
|
-
return this.transport.send(CLA, VERSION, 0x00, 0x00).then(
|
|
205
|
+
return this.transport.send(CLA, VERSION, 0x00, 0x00).then(response => {
|
|
210
206
|
// eslint-disable-next-line no-bitwise
|
|
211
207
|
const signByHash = (response[0] & (1 << 3)) > 0;
|
|
212
208
|
// eslint-disable-next-line no-bitwise
|
|
@@ -253,9 +249,7 @@ class Trx {
|
|
|
253
249
|
while (offset < packed.length) {
|
|
254
250
|
// Use small buffer to be compatible with old and new protocol
|
|
255
251
|
const maxChunkSize = offset === 0 ? CHUNK_SIZE - 1 - paths.length * 4 : CHUNK_SIZE;
|
|
256
|
-
const chunkSize = offset + maxChunkSize > packed.length
|
|
257
|
-
? packed.length - offset
|
|
258
|
-
: maxChunkSize;
|
|
252
|
+
const chunkSize = offset + maxChunkSize > packed.length ? packed.length - offset : maxChunkSize;
|
|
259
253
|
const buffer = Buffer.alloc(offset === 0 ? 1 + paths.length * 4 + chunkSize : chunkSize);
|
|
260
254
|
if (offset === 0) {
|
|
261
255
|
buffer[0] = paths.length;
|
|
@@ -274,7 +268,7 @@ class Trx {
|
|
|
274
268
|
return (0, utils_1.foreach)(toSend, (data, i) => {
|
|
275
269
|
return this.transport
|
|
276
270
|
.send(CLA, SIGN_MESSAGE, i === 0 ? 0x00 : 0x80, 0x00, data)
|
|
277
|
-
.then(
|
|
271
|
+
.then(apduResponse => {
|
|
278
272
|
response = apduResponse;
|
|
279
273
|
});
|
|
280
274
|
}).then(() => {
|
|
@@ -300,7 +294,7 @@ class Trx {
|
|
|
300
294
|
data.copy(buffer, 1 + 4 * paths.length, 0, data.length);
|
|
301
295
|
return this.transport
|
|
302
296
|
.send(CLA, ECDH_SECRET, 0x00, 0x01, buffer)
|
|
303
|
-
.then(
|
|
297
|
+
.then(response => response.slice(0, 65).toString("hex"));
|
|
304
298
|
}
|
|
305
299
|
}
|
|
306
300
|
exports.default = Trx;
|
package/lib/Trx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Trx.js","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,cAAc;AACd,mCAA2D;AAI3D,MAAM,6BAA6B,GAAG,CAAC,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"Trx.js","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":"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"}
|
package/lib/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,KAAK,KAAK,CAAC,CAAC,IAAI;IACd,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAC7B,CAAC;AACF,wBAAgB,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAanC;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBhD;AAED,wBAAgB,UAAU,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,KAAK,KAAK,CAAC,CAAC,IAAI;IACd,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAC7B,CAAC;AACF,wBAAgB,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAanC;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBhD;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAEpF;AACD,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAC1B,GAAG,EAAE,CAAC,EAAE,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAC9C,OAAO,CAAC,CAAC,EAAE,CAAC,CAYd;AACD,wBAAgB,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAM1F;AACD,wBAAgB,UAAU,CAAC,CAAC,EAC1B,SAAS,EAAE,MAAM,OAAO,EACxB,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAanB;AACD,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AACD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY,CAuBxE"}
|
package/lib/utils.js
CHANGED
|
@@ -20,7 +20,7 @@ exports.defer = defer;
|
|
|
20
20
|
function splitPath(path) {
|
|
21
21
|
const result = [];
|
|
22
22
|
const components = path.split("/");
|
|
23
|
-
components.forEach(
|
|
23
|
+
components.forEach(element => {
|
|
24
24
|
let number = parseInt(element, 10);
|
|
25
25
|
if (isNaN(number)) {
|
|
26
26
|
return; // FIXME shouldn't it throws instead?
|
|
@@ -66,7 +66,7 @@ function asyncWhile(predicate, callback) {
|
|
|
66
66
|
return result;
|
|
67
67
|
}
|
|
68
68
|
else {
|
|
69
|
-
return callback().then(
|
|
69
|
+
return callback().then(res => {
|
|
70
70
|
result.push(res);
|
|
71
71
|
return iterate(result);
|
|
72
72
|
});
|
package/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAqBA,SAAgB,KAAK;IACnB,IAAI,OAAO,EAAE,MAAM,CAAC;IACpB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAI,UAAU,OAAO,EAAE,OAAO;QACvD,OAAO,GAAG,OAAO,CAAC;QAClB,MAAM,GAAG,OAAO,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM;QAAE,MAAM,eAAe,CAAC,CAAC,oDAAoD;IAEpG,OAAO;QACL,OAAO;QACP,OAAO;QACP,MAAM;KACP,CAAC;AACJ,CAAC;AAbD,sBAaC;AACD,8BAA8B;AAC9B,SAAgB,SAAS,CAAC,IAAY;IACpC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnC,UAAU,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/lib-es/Trx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Trx.d.ts","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":";AAmBA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAoBpD;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,GAAG;IACtB,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS,EAAE,WAAW,SAAQ;IAgBrD;;;;;;;OAOG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;
|
|
1
|
+
{"version":3,"file":"Trx.d.ts","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":";AAmBA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAoBpD;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,GAAG;IACtB,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS,EAAE,WAAW,SAAQ;IAgBrD;;;;;;;OAOG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAsBF,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAOjC;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA0E3F;;;;;;;;OAQG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAaxE;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,IAAI,OAAO,CAAC;QAC7B,aAAa,EAAE,OAAO,CAAC;QACvB,eAAe,EAAE,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAgCF;;;;;;;;OAQG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0CtE;;;;;;;OAOG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAajE"}
|
package/lib-es/Trx.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
********************************************************************************/
|
|
17
17
|
// FIXME drop:
|
|
18
18
|
import { splitPath, foreach, decodeVarint } from "./utils";
|
|
19
|
-
const remapTransactionRelatedErrors =
|
|
19
|
+
const remapTransactionRelatedErrors = e => {
|
|
20
20
|
if (e && e.statusCode === 0x6a80) {
|
|
21
21
|
// TODO:
|
|
22
22
|
}
|
|
@@ -68,7 +68,7 @@ export default class Trx {
|
|
|
68
68
|
});
|
|
69
69
|
return this.transport
|
|
70
70
|
.send(CLA, ADDRESS, boolDisplay ? 0x01 : 0x00, 0x00, buffer)
|
|
71
|
-
.then(
|
|
71
|
+
.then(response => {
|
|
72
72
|
const publicKeyLength = response[0];
|
|
73
73
|
const addressLength = response[1 + publicKeyLength];
|
|
74
74
|
return {
|
|
@@ -154,14 +154,12 @@ export default class Trx {
|
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
156
|
return foreach(toSend, (data, i) => {
|
|
157
|
-
return this.transport
|
|
158
|
-
.send(CLA, SIGN, startBytes[i], 0x00, data)
|
|
159
|
-
.then((apduResponse) => {
|
|
157
|
+
return this.transport.send(CLA, SIGN, startBytes[i], 0x00, data).then(apduResponse => {
|
|
160
158
|
response = apduResponse;
|
|
161
159
|
});
|
|
162
160
|
}).then(() => {
|
|
163
161
|
return response.slice(0, 65).toString("hex");
|
|
164
|
-
},
|
|
162
|
+
}, e => {
|
|
165
163
|
throw remapTransactionRelatedErrors(e);
|
|
166
164
|
});
|
|
167
165
|
}
|
|
@@ -182,9 +180,7 @@ export default class Trx {
|
|
|
182
180
|
data.writeUInt32BE(element, 1 + 4 * index);
|
|
183
181
|
});
|
|
184
182
|
data = Buffer.concat([data, Buffer.from(rawTxHashHex, "hex")]);
|
|
185
|
-
return this.transport
|
|
186
|
-
.send(CLA, SIGN_HASH, 0x00, 0x00, data)
|
|
187
|
-
.then((response) => {
|
|
183
|
+
return this.transport.send(CLA, SIGN_HASH, 0x00, 0x00, data).then(response => {
|
|
188
184
|
return response.slice(0, 65).toString("hex");
|
|
189
185
|
});
|
|
190
186
|
}
|
|
@@ -204,7 +200,7 @@ export default class Trx {
|
|
|
204
200
|
* }
|
|
205
201
|
*/
|
|
206
202
|
getAppConfiguration() {
|
|
207
|
-
return this.transport.send(CLA, VERSION, 0x00, 0x00).then(
|
|
203
|
+
return this.transport.send(CLA, VERSION, 0x00, 0x00).then(response => {
|
|
208
204
|
// eslint-disable-next-line no-bitwise
|
|
209
205
|
const signByHash = (response[0] & (1 << 3)) > 0;
|
|
210
206
|
// eslint-disable-next-line no-bitwise
|
|
@@ -251,9 +247,7 @@ export default class Trx {
|
|
|
251
247
|
while (offset < packed.length) {
|
|
252
248
|
// Use small buffer to be compatible with old and new protocol
|
|
253
249
|
const maxChunkSize = offset === 0 ? CHUNK_SIZE - 1 - paths.length * 4 : CHUNK_SIZE;
|
|
254
|
-
const chunkSize = offset + maxChunkSize > packed.length
|
|
255
|
-
? packed.length - offset
|
|
256
|
-
: maxChunkSize;
|
|
250
|
+
const chunkSize = offset + maxChunkSize > packed.length ? packed.length - offset : maxChunkSize;
|
|
257
251
|
const buffer = Buffer.alloc(offset === 0 ? 1 + paths.length * 4 + chunkSize : chunkSize);
|
|
258
252
|
if (offset === 0) {
|
|
259
253
|
buffer[0] = paths.length;
|
|
@@ -272,7 +266,7 @@ export default class Trx {
|
|
|
272
266
|
return foreach(toSend, (data, i) => {
|
|
273
267
|
return this.transport
|
|
274
268
|
.send(CLA, SIGN_MESSAGE, i === 0 ? 0x00 : 0x80, 0x00, data)
|
|
275
|
-
.then(
|
|
269
|
+
.then(apduResponse => {
|
|
276
270
|
response = apduResponse;
|
|
277
271
|
});
|
|
278
272
|
}).then(() => {
|
|
@@ -298,7 +292,7 @@ export default class Trx {
|
|
|
298
292
|
data.copy(buffer, 1 + 4 * paths.length, 0, data.length);
|
|
299
293
|
return this.transport
|
|
300
294
|
.send(CLA, ECDH_SECRET, 0x00, 0x01, buffer)
|
|
301
|
-
.then(
|
|
295
|
+
.then(response => response.slice(0, 65).toString("hex"));
|
|
302
296
|
}
|
|
303
297
|
}
|
|
304
298
|
//# sourceMappingURL=Trx.js.map
|
package/lib-es/Trx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Trx.js","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,cAAc;AACd,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI3D,MAAM,6BAA6B,GAAG,CAAC,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"Trx.js","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":"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"}
|
package/lib-es/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,KAAK,KAAK,CAAC,CAAC,IAAI;IACd,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAC7B,CAAC;AACF,wBAAgB,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAanC;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBhD;AAED,wBAAgB,UAAU,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,KAAK,KAAK,CAAC,CAAC,IAAI;IACd,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAC7B,CAAC;AACF,wBAAgB,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAanC;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBhD;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAEpF;AACD,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAC1B,GAAG,EAAE,CAAC,EAAE,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAC9C,OAAO,CAAC,CAAC,EAAE,CAAC,CAYd;AACD,wBAAgB,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAM1F;AACD,wBAAgB,UAAU,CAAC,CAAC,EAC1B,SAAS,EAAE,MAAM,OAAO,EACxB,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAanB;AACD,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AACD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY,CAuBxE"}
|
package/lib-es/utils.js
CHANGED
|
@@ -16,7 +16,7 @@ export function defer() {
|
|
|
16
16
|
export function splitPath(path) {
|
|
17
17
|
const result = [];
|
|
18
18
|
const components = path.split("/");
|
|
19
|
-
components.forEach(
|
|
19
|
+
components.forEach(element => {
|
|
20
20
|
let number = parseInt(element, 10);
|
|
21
21
|
if (isNaN(number)) {
|
|
22
22
|
return; // FIXME shouldn't it throws instead?
|
|
@@ -58,7 +58,7 @@ export function asyncWhile(predicate, callback) {
|
|
|
58
58
|
return result;
|
|
59
59
|
}
|
|
60
60
|
else {
|
|
61
|
-
return callback().then(
|
|
61
|
+
return callback().then(res => {
|
|
62
62
|
result.push(res);
|
|
63
63
|
return iterate(result);
|
|
64
64
|
});
|
package/lib-es/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAqBA,MAAM,UAAU,KAAK;IACnB,IAAI,OAAO,EAAE,MAAM,CAAC;IACpB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAI,UAAU,OAAO,EAAE,OAAO;QACvD,OAAO,GAAG,OAAO,CAAC;QAClB,MAAM,GAAG,OAAO,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM;QAAE,MAAM,eAAe,CAAC,CAAC,oDAAoD;IAEpG,OAAO;QACL,OAAO;QACP,OAAO;QACP,MAAM;KACP,CAAC;AACJ,CAAC;AACD,8BAA8B;AAC9B,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnC,UAAU,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ledgerhq/hw-app-trx",
|
|
3
|
-
"version": "6.27.
|
|
3
|
+
"version": "6.27.16-next.0",
|
|
4
4
|
"description": "Ledger Hardware Wallet Tron Application API",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Ledger",
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"types": "lib/Trx.d.ts",
|
|
28
28
|
"license": "Apache-2.0",
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@ledgerhq/errors": "^6.12.
|
|
31
|
-
"@ledgerhq/hw-transport": "^6.28.
|
|
30
|
+
"@ledgerhq/errors": "^6.12.7-next.0",
|
|
31
|
+
"@ledgerhq/hw-transport": "^6.28.5-next.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/jest": "^29.5.0",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"source-map-support": "^0.5.21",
|
|
40
40
|
"ts-jest": "^28.0.5",
|
|
41
41
|
"ts-node": "^10.4.0",
|
|
42
|
-
"@ledgerhq/hw-transport-mocker": "^6.27.
|
|
42
|
+
"@ledgerhq/hw-transport-mocker": "^6.27.16-next.0"
|
|
43
43
|
},
|
|
44
44
|
"gitHead": "dd0dea64b58e5a9125c8a422dcffd29e5ef6abec",
|
|
45
45
|
"scripts": {
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"prewatch": "pnpm build",
|
|
49
49
|
"watch": "tsc --watch",
|
|
50
50
|
"doc": "documentation readme src/** --section=API --pe ts --re ts --re d.ts",
|
|
51
|
-
"lint": "eslint ./src --no-error-on-unmatched-pattern --ext .ts,.tsx",
|
|
51
|
+
"lint": "eslint ./src --no-error-on-unmatched-pattern --ext .ts,.tsx --cache",
|
|
52
52
|
"lint:fix": "pnpm lint --fix",
|
|
53
53
|
"test": "jest"
|
|
54
54
|
}
|
package/src/Trx.ts
CHANGED
|
@@ -19,7 +19,7 @@ import { splitPath, foreach, decodeVarint } from "./utils";
|
|
|
19
19
|
//import { StatusCodes, TransportStatusError } from "@ledgerhq/errors";
|
|
20
20
|
import type Transport from "@ledgerhq/hw-transport";
|
|
21
21
|
|
|
22
|
-
const remapTransactionRelatedErrors =
|
|
22
|
+
const remapTransactionRelatedErrors = e => {
|
|
23
23
|
if (e && e.statusCode === 0x6a80) {
|
|
24
24
|
// TODO:
|
|
25
25
|
}
|
|
@@ -60,7 +60,7 @@ export default class Trx {
|
|
|
60
60
|
"signPersonalMessage",
|
|
61
61
|
"getAppConfiguration",
|
|
62
62
|
],
|
|
63
|
-
scrambleKey
|
|
63
|
+
scrambleKey,
|
|
64
64
|
);
|
|
65
65
|
}
|
|
66
66
|
|
|
@@ -74,7 +74,7 @@ export default class Trx {
|
|
|
74
74
|
*/
|
|
75
75
|
getAddress(
|
|
76
76
|
path: string,
|
|
77
|
-
boolDisplay?: boolean
|
|
77
|
+
boolDisplay?: boolean,
|
|
78
78
|
): Promise<{
|
|
79
79
|
publicKey: string;
|
|
80
80
|
address: string;
|
|
@@ -87,17 +87,14 @@ export default class Trx {
|
|
|
87
87
|
});
|
|
88
88
|
return this.transport
|
|
89
89
|
.send(CLA, ADDRESS, boolDisplay ? 0x01 : 0x00, 0x00, buffer)
|
|
90
|
-
.then(
|
|
90
|
+
.then(response => {
|
|
91
91
|
const publicKeyLength = response[0];
|
|
92
92
|
const addressLength = response[1 + publicKeyLength];
|
|
93
93
|
|
|
94
94
|
return {
|
|
95
95
|
publicKey: response.slice(1, 1 + publicKeyLength).toString("hex"),
|
|
96
96
|
address: response
|
|
97
|
-
.slice(
|
|
98
|
-
1 + publicKeyLength + 1,
|
|
99
|
-
1 + publicKeyLength + 1 + addressLength
|
|
100
|
-
)
|
|
97
|
+
.slice(1 + publicKeyLength + 1, 1 + publicKeyLength + 1 + addressLength)
|
|
101
98
|
.toString("ascii"),
|
|
102
99
|
};
|
|
103
100
|
});
|
|
@@ -122,11 +119,7 @@ export default class Trx {
|
|
|
122
119
|
* @example
|
|
123
120
|
* const signature = await tron.signTransaction("44'/195'/0'/0/0", "0a02f5942208704dda506d59dceb40f0f4978f802e5a69080112650a2d747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5472616e73666572436f6e747261637412340a1541978dbd103cfe59c35e753d09dd44ae1ae64621c7121541e2ae49db6a70b9b4757d2137a43b69b24a445780188ef8b5ba0470cbb5948f802e", [], 105);
|
|
124
121
|
*/
|
|
125
|
-
signTransaction(
|
|
126
|
-
path: string,
|
|
127
|
-
rawTxHex: string,
|
|
128
|
-
tokenSignatures: string[]
|
|
129
|
-
): Promise<string> {
|
|
122
|
+
signTransaction(path: string, rawTxHex: string, tokenSignatures: string[]): Promise<string> {
|
|
130
123
|
const paths = splitPath(path);
|
|
131
124
|
let rawTx = Buffer.from(rawTxHex, "hex");
|
|
132
125
|
const toSend: Buffer[] = [];
|
|
@@ -187,18 +180,16 @@ export default class Trx {
|
|
|
187
180
|
}
|
|
188
181
|
|
|
189
182
|
return foreach(toSend, (data, i) => {
|
|
190
|
-
return this.transport
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
response = apduResponse;
|
|
194
|
-
});
|
|
183
|
+
return this.transport.send(CLA, SIGN, startBytes[i], 0x00, data).then(apduResponse => {
|
|
184
|
+
response = apduResponse;
|
|
185
|
+
});
|
|
195
186
|
}).then(
|
|
196
187
|
() => {
|
|
197
188
|
return response.slice(0, 65).toString("hex");
|
|
198
189
|
},
|
|
199
|
-
|
|
190
|
+
e => {
|
|
200
191
|
throw remapTransactionRelatedErrors(e);
|
|
201
|
-
}
|
|
192
|
+
},
|
|
202
193
|
);
|
|
203
194
|
}
|
|
204
195
|
|
|
@@ -219,11 +210,9 @@ export default class Trx {
|
|
|
219
210
|
data.writeUInt32BE(element, 1 + 4 * index);
|
|
220
211
|
});
|
|
221
212
|
data = Buffer.concat([data, Buffer.from(rawTxHashHex, "hex")]);
|
|
222
|
-
return this.transport
|
|
223
|
-
.
|
|
224
|
-
|
|
225
|
-
return response.slice(0, 65).toString("hex");
|
|
226
|
-
});
|
|
213
|
+
return this.transport.send(CLA, SIGN_HASH, 0x00, 0x00, data).then(response => {
|
|
214
|
+
return response.slice(0, 65).toString("hex");
|
|
215
|
+
});
|
|
227
216
|
}
|
|
228
217
|
|
|
229
218
|
/**
|
|
@@ -249,7 +238,7 @@ export default class Trx {
|
|
|
249
238
|
version: string;
|
|
250
239
|
versionN: number;
|
|
251
240
|
}> {
|
|
252
|
-
return this.transport.send(CLA, VERSION, 0x00, 0x00).then(
|
|
241
|
+
return this.transport.send(CLA, VERSION, 0x00, 0x00).then(response => {
|
|
253
242
|
// eslint-disable-next-line no-bitwise
|
|
254
243
|
const signByHash = (response[0] & (1 << 3)) > 0;
|
|
255
244
|
// eslint-disable-next-line no-bitwise
|
|
@@ -300,15 +289,10 @@ export default class Trx {
|
|
|
300
289
|
|
|
301
290
|
while (offset < packed.length) {
|
|
302
291
|
// Use small buffer to be compatible with old and new protocol
|
|
303
|
-
const maxChunkSize =
|
|
304
|
-
offset === 0 ? CHUNK_SIZE - 1 - paths.length * 4 : CHUNK_SIZE;
|
|
292
|
+
const maxChunkSize = offset === 0 ? CHUNK_SIZE - 1 - paths.length * 4 : CHUNK_SIZE;
|
|
305
293
|
const chunkSize =
|
|
306
|
-
offset + maxChunkSize > packed.length
|
|
307
|
-
|
|
308
|
-
: maxChunkSize;
|
|
309
|
-
const buffer = Buffer.alloc(
|
|
310
|
-
offset === 0 ? 1 + paths.length * 4 + chunkSize : chunkSize
|
|
311
|
-
);
|
|
294
|
+
offset + maxChunkSize > packed.length ? packed.length - offset : maxChunkSize;
|
|
295
|
+
const buffer = Buffer.alloc(offset === 0 ? 1 + paths.length * 4 + chunkSize : chunkSize);
|
|
312
296
|
|
|
313
297
|
if (offset === 0) {
|
|
314
298
|
buffer[0] = paths.length;
|
|
@@ -328,7 +312,7 @@ export default class Trx {
|
|
|
328
312
|
return foreach(toSend, (data, i) => {
|
|
329
313
|
return this.transport
|
|
330
314
|
.send(CLA, SIGN_MESSAGE, i === 0 ? 0x00 : 0x80, 0x00, data)
|
|
331
|
-
.then(
|
|
315
|
+
.then(apduResponse => {
|
|
332
316
|
response = apduResponse;
|
|
333
317
|
});
|
|
334
318
|
}).then(() => {
|
|
@@ -355,6 +339,6 @@ export default class Trx {
|
|
|
355
339
|
data.copy(buffer, 1 + 4 * paths.length, 0, data.length);
|
|
356
340
|
return this.transport
|
|
357
341
|
.send(CLA, ECDH_SECRET, 0x00, 0x01, buffer)
|
|
358
|
-
.then(
|
|
342
|
+
.then(response => response.slice(0, 65).toString("hex"));
|
|
359
343
|
}
|
|
360
344
|
}
|
package/src/utils.ts
CHANGED
|
@@ -37,7 +37,7 @@ export function defer<T>(): Defer<T> {
|
|
|
37
37
|
export function splitPath(path: string): number[] {
|
|
38
38
|
const result: number[] = [];
|
|
39
39
|
const components = path.split("/");
|
|
40
|
-
components.forEach(
|
|
40
|
+
components.forEach(element => {
|
|
41
41
|
let number = parseInt(element, 10);
|
|
42
42
|
|
|
43
43
|
if (isNaN(number)) {
|
|
@@ -53,15 +53,12 @@ export function splitPath(path: string): number[] {
|
|
|
53
53
|
return result;
|
|
54
54
|
}
|
|
55
55
|
// TODO use async await
|
|
56
|
-
export function eachSeries<A>(
|
|
57
|
-
arr: A[],
|
|
58
|
-
fun: (arg0: A) => Promise<any>
|
|
59
|
-
): Promise<any> {
|
|
56
|
+
export function eachSeries<A>(arr: A[], fun: (arg0: A) => Promise<any>): Promise<any> {
|
|
60
57
|
return arr.reduce((p, e) => p.then(() => fun(e)), Promise.resolve());
|
|
61
58
|
}
|
|
62
59
|
export function foreach<T, A>(
|
|
63
60
|
arr: T[],
|
|
64
|
-
callback: (arg0: T, arg1: number) => Promise<A
|
|
61
|
+
callback: (arg0: T, arg1: number) => Promise<A>,
|
|
65
62
|
): Promise<A[]> {
|
|
66
63
|
function iterate(index, array, result) {
|
|
67
64
|
if (index >= array.length) {
|
|
@@ -75,10 +72,7 @@ export function foreach<T, A>(
|
|
|
75
72
|
|
|
76
73
|
return Promise.resolve().then(() => iterate(0, arr, []));
|
|
77
74
|
}
|
|
78
|
-
export function doIf(
|
|
79
|
-
condition: boolean,
|
|
80
|
-
callback: () => any | Promise<any>
|
|
81
|
-
): Promise<void> {
|
|
75
|
+
export function doIf(condition: boolean, callback: () => any | Promise<any>): Promise<void> {
|
|
82
76
|
return Promise.resolve().then(() => {
|
|
83
77
|
if (condition) {
|
|
84
78
|
return callback();
|
|
@@ -87,13 +81,13 @@ export function doIf(
|
|
|
87
81
|
}
|
|
88
82
|
export function asyncWhile<T>(
|
|
89
83
|
predicate: () => boolean,
|
|
90
|
-
callback: () => Promise<T
|
|
84
|
+
callback: () => Promise<T>,
|
|
91
85
|
): Promise<Array<T>> {
|
|
92
86
|
function iterate(result) {
|
|
93
87
|
if (!predicate()) {
|
|
94
88
|
return result;
|
|
95
89
|
} else {
|
|
96
|
-
return callback().then(
|
|
90
|
+
return callback().then(res => {
|
|
97
91
|
result.push(res);
|
|
98
92
|
return iterate(result);
|
|
99
93
|
});
|