@ledgerhq/hw-app-btc 10.8.0 → 10.9.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.
Files changed (51) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/constants.d.ts +8 -1
  3. package/lib/constants.d.ts.map +1 -1
  4. package/lib/constants.js +17 -3
  5. package/lib/constants.js.map +1 -1
  6. package/lib/createTransaction.d.ts +2 -3
  7. package/lib/createTransaction.d.ts.map +1 -1
  8. package/lib/createTransaction.js +37 -22
  9. package/lib/createTransaction.js.map +1 -1
  10. package/lib/getTrustedInput.d.ts.map +1 -1
  11. package/lib/getTrustedInput.js +5 -0
  12. package/lib/getTrustedInput.js.map +1 -1
  13. package/lib/serializeTransaction.js +1 -1
  14. package/lib/serializeTransaction.js.map +1 -1
  15. package/lib/splitTransaction.d.ts.map +1 -1
  16. package/lib/splitTransaction.js.map +1 -1
  17. package/lib/startUntrustedHashTransactionInput.d.ts.map +1 -1
  18. package/lib/startUntrustedHashTransactionInput.js +3 -0
  19. package/lib/startUntrustedHashTransactionInput.js.map +1 -1
  20. package/lib/types.d.ts +1 -0
  21. package/lib/types.d.ts.map +1 -1
  22. package/lib-es/constants.d.ts +8 -1
  23. package/lib-es/constants.d.ts.map +1 -1
  24. package/lib-es/constants.js +16 -2
  25. package/lib-es/constants.js.map +1 -1
  26. package/lib-es/createTransaction.d.ts +2 -3
  27. package/lib-es/createTransaction.d.ts.map +1 -1
  28. package/lib-es/createTransaction.js +36 -22
  29. package/lib-es/createTransaction.js.map +1 -1
  30. package/lib-es/getTrustedInput.d.ts.map +1 -1
  31. package/lib-es/getTrustedInput.js +5 -0
  32. package/lib-es/getTrustedInput.js.map +1 -1
  33. package/lib-es/serializeTransaction.js +1 -1
  34. package/lib-es/serializeTransaction.js.map +1 -1
  35. package/lib-es/splitTransaction.d.ts.map +1 -1
  36. package/lib-es/splitTransaction.js.map +1 -1
  37. package/lib-es/startUntrustedHashTransactionInput.d.ts.map +1 -1
  38. package/lib-es/startUntrustedHashTransactionInput.js +3 -0
  39. package/lib-es/startUntrustedHashTransactionInput.js.map +1 -1
  40. package/lib-es/types.d.ts +1 -0
  41. package/lib-es/types.d.ts.map +1 -1
  42. package/package.json +1 -1
  43. package/src/constants.ts +16 -2
  44. package/src/createTransaction.ts +30 -25
  45. package/src/getTrustedInput.ts +5 -0
  46. package/src/serializeTransaction.ts +1 -1
  47. package/src/splitTransaction.ts +1 -0
  48. package/src/startUntrustedHashTransactionInput.ts +3 -0
  49. package/src/types.ts +2 -0
  50. package/tests/createTransaction.test.ts +7 -19
  51. package/tests/splitTransaction.test.ts +85 -0
@@ -9,7 +9,7 @@ import { compressPublicKey } from "./compressPublicKey";
9
9
  import { signTransaction } from "./signTransaction";
10
10
  import { hashOutputFull, provideOutputFullChangePath } from "./finalizeInput";
11
11
  import { getAppAndVersion } from "./getAppAndVersion";
12
- import { DEFAULT_LOCKTIME, DEFAULT_SEQUENCE, SIGHASH_ALL, OP_DUP, OP_HASH160, HASH_SIZE, OP_EQUALVERIFY, OP_CHECKSIG, ZCASH_NU6_ACTIVATION_HEIGHT, } from "./constants";
12
+ import { DEFAULT_LOCKTIME, DEFAULT_SEQUENCE, SIGHASH_ALL, OP_DUP, OP_HASH160, HASH_SIZE, OP_EQUALVERIFY, OP_CHECKSIG, ZCASH_ACTIVATION_HEIGHTS, } from "./constants";
13
13
  import { shouldUseTrustedInputForSegwit } from "./shouldUseTrustedInputForSegwit";
14
14
  const defaultsSignTransaction = {
15
15
  lockTime: DEFAULT_LOCKTIME,
@@ -20,36 +20,49 @@ const defaultsSignTransaction = {
20
20
  onDeviceSignatureGranted: () => { },
21
21
  onDeviceSignatureRequested: () => { },
22
22
  };
23
- const getZcashTransactionVersion = (blockHeight) => {
24
- const version = Buffer.alloc(4);
25
- if (blockHeight && blockHeight < ZCASH_NU6_ACTIVATION_HEIGHT) {
26
- version.writeUInt32LE(0x80000005, 0);
23
+ export const getZcashBranchId = (blockHeight) => {
24
+ const branchId = Buffer.alloc(4);
25
+ if (!blockHeight || blockHeight >= ZCASH_ACTIVATION_HEIGHTS.NU6) {
26
+ // NOTE: null and undefined should default to latest version
27
+ branchId.writeUInt32LE(0xc8e71055, 0);
28
+ }
29
+ else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.NU5) {
30
+ branchId.writeUInt32LE(0xc2d6d0b4, 0);
31
+ }
32
+ else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.CANOPY) {
33
+ branchId.writeUInt32LE(0xe9ff75a6, 0);
34
+ }
35
+ else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.HEARTWOOD) {
36
+ branchId.writeUInt32LE(0xf5b9230b, 0);
37
+ }
38
+ else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.BLOSSOM) {
39
+ branchId.writeUInt32LE(0x2bb40e60, 0);
40
+ }
41
+ else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.SAPLING) {
42
+ branchId.writeUInt32LE(0x76b809bb, 0);
27
43
  }
28
44
  else {
29
- // NOTE: null and undefined should default to latest version
30
- version.writeUInt32LE(0x80000006, 0);
45
+ branchId.writeUInt32LE(0x5ba81b19, 0);
31
46
  }
32
- return version;
47
+ return branchId;
33
48
  };
34
- export const getDefaultVersions = ({ isZcash, sapling, isDecred, expiryHeight, blockHeight, }) => {
35
- let defaultVersion = Buffer.alloc(4);
36
- const defaultVersionNu5Only = Buffer.alloc(4);
49
+ export const getDefaultVersions = ({ isZcash, sapling, isDecred, expiryHeight, }) => {
50
+ const defaultVersion = Buffer.alloc(4);
37
51
  if (!!expiryHeight && !isDecred) {
38
52
  if (isZcash) {
39
- defaultVersion = getZcashTransactionVersion(blockHeight);
40
- defaultVersionNu5Only.writeUInt32LE(0x80000005, 0);
53
+ defaultVersion.writeUInt32LE(0x80000005, 0);
54
+ }
55
+ else if (sapling) {
56
+ defaultVersion.writeUInt32LE(0x80000004, 0);
41
57
  }
42
58
  else {
43
- const version = sapling ? 0x80000004 : 0x80000003;
44
- defaultVersion.writeUInt32LE(version, 0);
45
- defaultVersionNu5Only.writeUInt32LE(version, 0);
59
+ defaultVersion.writeUInt32LE(0x80000003, 0);
46
60
  }
47
61
  }
48
62
  else {
49
63
  defaultVersion.writeUInt32LE(1, 0);
50
- defaultVersionNu5Only.writeUInt32LE(1, 0);
51
64
  }
52
- return { defaultVersion, defaultVersionNu5Only };
65
+ return { defaultVersion };
53
66
  };
54
67
  export async function createTransaction(transport, arg) {
55
68
  const signTx = { ...defaultsSignTransaction, ...arg };
@@ -102,12 +115,11 @@ export async function createTransaction(transport, arg) {
102
115
  lockTimeBuffer.writeUInt32LE(lockTime, 0);
103
116
  const nullScript = Buffer.alloc(0);
104
117
  const nullPrevout = Buffer.alloc(0);
105
- const { defaultVersion, defaultVersionNu5Only } = getDefaultVersions({
118
+ const { defaultVersion } = getDefaultVersions({
106
119
  isZcash,
107
120
  sapling,
108
121
  isDecred,
109
122
  expiryHeight,
110
- blockHeight,
111
123
  });
112
124
  // Default version to 2 for XST not to have timestamp
113
125
  const trustedInputs = [];
@@ -128,7 +140,7 @@ export async function createTransaction(transport, arg) {
128
140
  for (const input of inputs) {
129
141
  if (!resuming) {
130
142
  if (isZcash) {
131
- input[0].version = getZcashTransactionVersion(input[4]);
143
+ input[0].consensusBranchId = getZcashBranchId(input[4]);
132
144
  }
133
145
  const trustedInput = await getTrustedInputCall(transport, input[1], input[0], additionals);
134
146
  log("hw", "got trustedInput=" + trustedInput);
@@ -187,6 +199,7 @@ export async function createTransaction(transport, arg) {
187
199
  }
188
200
  }
189
201
  onDeviceSignatureRequested();
202
+ targetTransaction.consensusBranchId = getZcashBranchId(blockHeight);
190
203
  if (useBip143) {
191
204
  // Do the first run with all inputs
192
205
  await startUntrustedHashTransactionInput(transport, true, targetTransaction, trustedInputs, true, !!expiryHeight, additionals, useTrustedInputForSegwit);
@@ -237,7 +250,8 @@ export async function createTransaction(transport, arg) {
237
250
  firstRun = false;
238
251
  }
239
252
  }
240
- targetTransaction.version = defaultVersionNu5Only;
253
+ targetTransaction.version = defaultVersion;
254
+ targetTransaction.consensusBranchId = getZcashBranchId(blockHeight);
241
255
  // Populate the final input scripts
242
256
  for (let i = 0; i < inputs.length; i++) {
243
257
  if (segwit) {
@@ -1 +1 @@
1
- {"version":3,"file":"createTransaction.js","sourceRoot":"","sources":["../src/createTransaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createTransaction.js","sourceRoot":"","sources":["../src/createTransaction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
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
+ {"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,CAwGjB"}
@@ -49,10 +49,15 @@ export async function getTrustedInput(transport, indexLookup, transaction, addit
49
49
  return res;
50
50
  };
51
51
  const processWholeScriptBlock = block => getTrustedInputRaw(transport, block);
52
+ const isZcash = additionals.includes("zcash");
53
+ // NOTE: this isn't necessary as consensusBranchId is only set when the transaction is a zcash tx
54
+ // but better safe than sorry
55
+ const zCashConsensusBranchId = transaction.consensusBranchId || Buffer.alloc(0);
52
56
  await getTrustedInputRaw(transport, Buffer.concat([
53
57
  transaction.version,
54
58
  transaction.timestamp || Buffer.alloc(0),
55
59
  transaction.nVersionGroupId || Buffer.alloc(0),
60
+ isZcash ? zCashConsensusBranchId : Buffer.alloc(0),
56
61
  createVarint(inputs.length),
57
62
  ]), indexLookup);
58
63
  for (const input of inputs) {
@@ -1 +1 @@
1
- {"version":3,"file":"getTrustedInput.js","sourceRoot":"","sources":["../src/getTrustedInput.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getTrustedInput.js","sourceRoot":"","sources":["../src/getTrustedInput.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,WAAW,CAAC;AAGlC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAoB,EACpB,eAAuB,EACvB,WAAuC;IAEvC,IAAI,IAAI,CAAC;IACT,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,UAAU,GAAG,IAAI,CAAC;QAClB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACrC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9E,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,eAAe,CAAC;IACzB,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5F,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3E,OAAO,GAAG,CAAC;AACb,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,SAAoB,EACpB,WAAmB,EACnB,WAAwB,EACxB,cAA6B,EAAE;IAE/B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,WAAW,CAAC;IAE5E,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEhD,MAAM,mBAAmB,GAAG,KAAK,EAAE,MAAM,EAAE,QAAiB,EAAE,EAAE;QAC9D,MAAM,GAAG,GAAG,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,OAAO,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,SAAS,GACb,MAAM,CAAC,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;YAExF,IAAI,MAAM,GAAG,SAAS,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACzC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YACpF,CAAC;YAED,MAAM,IAAI,SAAS,CAAC;QACtB,CAAC;QAED,wEAAwE;QACxE,yEAAyE;QACzE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QAED,IAAI,GAAG,CAAC;QAER,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,GAAG,GAAG,MAAM,kBAAkB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAE9E,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9C,iGAAiG;IACjG,6BAA6B;IAC7B,MAAM,sBAAsB,GAAG,WAAW,CAAC,iBAAiB,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChF,MAAM,kBAAkB,CACtB,SAAS,EACT,MAAM,CAAC,MAAM,CAAC;QACZ,WAAW,CAAC,OAAO;QACnB,WAAW,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACxC,WAAW,CAAC,eAAe,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAClD,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC;KAC5B,CAAC,EACF,WAAW,CACZ,CAAC;IAEF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjF,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC1F,MAAM,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1C,+BAA+B;QAC/B,uBAAuB;QACvB,4BAA4B;QAC5B,MAAM,CAAC,QAAQ;YACb,CAAC,CAAC,uBAAuB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACxE,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,kBAAkB,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAElE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;YACzB,MAAM,CAAC,MAAM;YACb,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,gBAAgB;YACxE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;YAClC,MAAM,CAAC,MAAM;SACd,CAAC,CAAC;QACH,MAAM,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS,CAAC;IAEd,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpC,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/F,SAAS,CAAC,GAAG,EAAE,uCAAuC,CAAC,CAAC;IACxD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -57,7 +57,7 @@ export function serializeTransaction(transaction, skipWitness, timestamp, additi
57
57
  return Buffer.concat([
58
58
  transaction.version,
59
59
  transaction.nVersionGroupId || Buffer.alloc(0),
60
- Buffer.from([0x55, 0x10, 0xe7, 0xc8]), // Zcash Consensus Branch ID: 0xC8E71055 refer to https://zips.z.cash/zip-0253
60
+ transaction.consensusBranchId || Buffer.from([0x00, 0x00, 0x00, 0x00]),
61
61
  transaction.locktime || Buffer.from([0x00, 0x00, 0x00, 0x00]),
62
62
  transaction.nExpiryHeight || Buffer.from([0x00, 0x00, 0x00, 0x00]),
63
63
  useWitness ? Buffer.from("0001", "hex") : Buffer.alloc(0),
@@ -1 +1 @@
1
- {"version":3,"file":"serializeTransaction.js","sourceRoot":"","sources":["../src/serializeTransaction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC;;;;IAII;AACJ,MAAM,UAAU,2BAA2B,CAAC,EAAE,OAAO,EAAe;IAClE,IAAI,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE,CAAC;QACnC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACvB,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC3B,YAAY;gBACZ,MAAM,CAAC,MAAM;gBACb,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;gBAClC,MAAM,CAAC,MAAM;aACd,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AACD,MAAM,UAAU,oBAAoB,CAClC,WAAwB,EACxB,WAAoB,EACpB,SAAkB,EAClB,cAAwB,EAAE;IAE1B,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,SAAS,CAAC,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC;IAChF,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACjC,WAAW;YACT,QAAQ,IAAI,QAAQ;gBAClB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;oBACZ,WAAW;oBACX,KAAK,CAAC,OAAO;oBACb,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM;oBAC3B,KAAK,CAAC,QAAQ;iBACf,CAAC;gBACJ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;oBACZ,WAAW;oBACX,KAAK,CAAC,OAAO;oBACb,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;oBACjC,KAAK,CAAC,MAAM;oBACZ,KAAK,CAAC,QAAQ;iBACf,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IACH,IAAI,YAAY,GAAG,2BAA2B,CAAC,WAAW,CAAC,CAAC;IAE5D,IAAI,OAAO,WAAW,CAAC,OAAO,KAAK,WAAW,IAAI,OAAO,WAAW,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC9F,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;YAC3B,YAAY;YACZ,CAAC,UAAU,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtD,WAAW,CAAC,QAAQ;YACpB,WAAW,CAAC,aAAa,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5C,WAAW,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IACD,sJAAsJ;IACtJ,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,WAAW,CAAC,OAAO;YACnB,WAAW,CAAC,eAAe,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,8EAA8E;YACrH,WAAW,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7D,WAAW,CAAC,aAAa,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAClE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACzD,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;YACvC,WAAW;YACX,YAAY;SACb,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,WAAW,CAAC,OAAO;QACnB,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,WAAW,CAAC,eAAe,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9C,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;QACvC,WAAW;QACX,YAAY;KACb,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"serializeTransaction.js","sourceRoot":"","sources":["../src/serializeTransaction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"splitTransaction.d.ts","sourceRoot":"","sources":["../src/splitTransaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAuC,MAAM,SAAS,CAAC;AAGhF,wBAAgB,gBAAgB,CAC9B,cAAc,EAAE,MAAM,EACtB,iBAAiB,GAAE,OAAO,GAAG,IAAI,GAAG,SAAiB,EACrD,YAAY,UAAQ,EACpB,WAAW,GAAE,KAAK,CAAC,MAAM,CAAM,GAC9B,WAAW,CAqJb"}
1
+ {"version":3,"file":"splitTransaction.d.ts","sourceRoot":"","sources":["../src/splitTransaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAuC,MAAM,SAAS,CAAC;AAIhF,wBAAgB,gBAAgB,CAC9B,cAAc,EAAE,MAAM,EACtB,iBAAiB,GAAE,OAAO,GAAG,IAAI,GAAG,SAAiB,EACrD,YAAY,UAAQ,EACpB,WAAW,GAAE,KAAK,CAAC,MAAM,CAAM,GAC9B,WAAW,CAqJb"}
@@ -1 +1 @@
1
- {"version":3,"file":"splitTransaction.js","sourceRoot":"","sources":["../src/splitTransaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"splitTransaction.js","sourceRoot":"","sources":["../src/splitTransaction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"startUntrustedHashTransactionInput.d.ts","sourceRoot":"","sources":["../src/startUntrustedHashTransactionInput.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,wBAAgB,qCAAqC,CACnD,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,OAAO,EACvB,UAAU,EAAE,OAAO,EACnB,eAAe,EAAE,MAAM,EACvB,MAAM,UAAQ,EACd,UAAU,UAAQ,EAClB,WAAW,GAAE,KAAK,CAAC,MAAM,CAAM,GAC9B,OAAO,CAAC,MAAM,CAAC,CAiBjB;AACD,wBAAsB,kCAAkC,CACtD,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,OAAO,EACvB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,KAAK,CAAC;IACZ,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC,EACF,MAAM,UAAQ,EACd,UAAU,UAAQ,EAClB,WAAW,GAAE,KAAK,CAAC,MAAM,CAAM,EAC/B,wBAAwB,UAAQ,GAC/B,OAAO,CAAC,GAAG,CAAC,CA0Fd"}
1
+ {"version":3,"file":"startUntrustedHashTransactionInput.d.ts","sourceRoot":"","sources":["../src/startUntrustedHashTransactionInput.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,wBAAgB,qCAAqC,CACnD,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,OAAO,EACvB,UAAU,EAAE,OAAO,EACnB,eAAe,EAAE,MAAM,EACvB,MAAM,UAAQ,EACd,UAAU,UAAQ,EAClB,WAAW,GAAE,KAAK,CAAC,MAAM,CAAM,GAC9B,OAAO,CAAC,MAAM,CAAC,CAiBjB;AACD,wBAAsB,kCAAkC,CACtD,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,OAAO,EACvB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,KAAK,CAAC;IACZ,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC,EACF,MAAM,UAAQ,EACd,UAAU,UAAQ,EAClB,WAAW,GAAE,KAAK,CAAC,MAAM,CAAM,EAC/B,wBAAwB,UAAQ,GAC/B,OAAO,CAAC,GAAG,CAAC,CA6Fd"}
@@ -13,10 +13,13 @@ export function startUntrustedHashTransactionInputRaw(transport, newTransaction,
13
13
  return transport.send(0xe0, 0x44, firstRound ? 0x00 : 0x80, newTransaction ? p2 : 0x80, transactionData);
14
14
  }
15
15
  export async function startUntrustedHashTransactionInput(transport, newTransaction, transaction, inputs, bip143 = false, overwinter = false, additionals = [], useTrustedInputForSegwit = false) {
16
+ const isZcash = additionals.includes("zcash");
17
+ const zCashConsensusBranchId = transaction.consensusBranchId || Buffer.alloc(0);
16
18
  let data = Buffer.concat([
17
19
  transaction.version,
18
20
  transaction.timestamp || Buffer.alloc(0),
19
21
  transaction.nVersionGroupId || Buffer.alloc(0),
22
+ isZcash ? zCashConsensusBranchId : Buffer.alloc(0),
20
23
  createVarint(transaction.inputs.length),
21
24
  ]);
22
25
  await startUntrustedHashTransactionInputRaw(transport, newTransaction, true, data, bip143, overwinter, additionals);
@@ -1 +1 @@
1
- {"version":3,"file":"startUntrustedHashTransactionInput.js","sourceRoot":"","sources":["../src/startUntrustedHashTransactionInput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,MAAM,UAAU,qCAAqC,CACnD,SAAoB,EACpB,cAAuB,EACvB,UAAmB,EACnB,eAAuB,EACvB,MAAM,GAAG,KAAK,EACd,UAAU,GAAG,KAAK,EAClB,cAA6B,EAAE;IAE/B,MAAM,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC;QACzC,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,MAAM;YACN,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC/B,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,UAAU;oBACV,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,IAAI;YACV,CAAC,CAAC,IAAI,CAAC;IACX,OAAO,SAAS,CAAC,IAAI,CACnB,IAAI,EACJ,IAAI,EACJ,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EACxB,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAC1B,eAAe,CAChB,CAAC;AACJ,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,SAAoB,EACpB,cAAuB,EACvB,WAAwB,EACxB,MAGE,EACF,MAAM,GAAG,KAAK,EACd,UAAU,GAAG,KAAK,EAClB,cAA6B,EAAE,EAC/B,wBAAwB,GAAG,KAAK;IAEhC,IAAI,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;QACvB,WAAW,CAAC,OAAO;QACnB,WAAW,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACxC,WAAW,CAAC,eAAe,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9C,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;KACxC,CAAC,CAAC;IACH,MAAM,qCAAqC,CACzC,SAAS,EACT,cAAc,EACd,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEhD,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QACvC,IAAI,MAAM,CAAC;QACX,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAEnC,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,wBAAwB,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;gBACvD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;gBAC3B,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;YACnB,MAAM;YACN,UAAU;YACV,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;SAClC,CAAC,CAAC;QACH,MAAM,qCAAqC,CACzC,SAAS,EACT,cAAc,EACd,KAAK,EACL,IAAI,EACJ,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;QACF,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACtC,MAAM,SAAS,GACb,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,GAAG,gBAAgB;oBAC7C,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;gBAEnC,IAAI,MAAM,GAAG,SAAS,KAAK,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC/C,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;gBACpE,CAAC;qBAAM,CAAC;oBACN,YAAY,CAAC,IAAI,CACf,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAChF,CAAC;gBACJ,CAAC;gBAED,MAAM,IAAI,SAAS,CAAC;YACtB,CAAC;QACH,CAAC;QAED,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,MAAM,qCAAqC,CACzC,SAAS,EACT,cAAc,EACd,KAAK,EACL,WAAW,EACX,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;QACJ,CAAC;QAED,CAAC,EAAE,CAAC;IACN,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"startUntrustedHashTransactionInput.js","sourceRoot":"","sources":["../src/startUntrustedHashTransactionInput.ts"],"names":[],"mappings":"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"}
package/lib-es/types.d.ts CHANGED
@@ -26,6 +26,7 @@ export interface Transaction {
26
26
  nVersionGroupId?: Buffer;
27
27
  nExpiryHeight?: Buffer;
28
28
  extraData?: Buffer;
29
+ consensusBranchId?: Buffer;
29
30
  }
30
31
  export interface TrustedInput {
31
32
  trustedInput: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;AAAA;GACG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;GACG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;GACG;AACH,MAAM,WAAW,WAAW;IAG1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAG9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;IAKzB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;AAAA;GACG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;GACG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;GACG;AACH,MAAM,WAAW,WAAW;IAG1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAG9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;IAKzB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/hw-app-btc",
3
- "version": "10.8.0",
3
+ "version": "10.9.0-next.0",
4
4
  "description": "Ledger Hardware Wallet Bitcoin Application API",
5
5
  "keywords": [
6
6
  "Ledger",
package/src/constants.ts CHANGED
@@ -17,5 +17,19 @@ export const OP_EQUALVERIFY = 0x88;
17
17
  export const OP_CHECKSIG = 0xac;
18
18
  export const OP_RETURN = 0x6a;
19
19
 
20
- // https://zips.z.cash/zip-0253
21
- export const ZCASH_NU6_ACTIVATION_HEIGHT = 2726400;
20
+ export const ZCASH_ACTIVATION_HEIGHTS = {
21
+ // https://zcash.readthedocs.io/en/latest/rtd_pages/nu_dev_guide.html
22
+ // https://zips.z.cash/zip-0253
23
+ NU6: 2726400,
24
+ // https://zips.z.cash/zip-0252
25
+ NU5: 1687104,
26
+ // https://zips.z.cash/zip-0251
27
+ CANOPY: 1046400,
28
+ // https://zips.z.cash/zip-0250
29
+ HEARTWOOD: 903000,
30
+ // https://z.cash/upgrade/blossom/
31
+ // https://zips.z.cash/zip-0206
32
+ BLOSSOM: 653600,
33
+ // https://zips.z.cash/zip-0205
34
+ SAPLING: 419200,
35
+ };
@@ -21,7 +21,7 @@ import {
21
21
  HASH_SIZE,
22
22
  OP_EQUALVERIFY,
23
23
  OP_CHECKSIG,
24
- ZCASH_NU6_ACTIVATION_HEIGHT,
24
+ ZCASH_ACTIVATION_HEIGHTS,
25
25
  } from "./constants";
26
26
  import { shouldUseTrustedInputForSegwit } from "./shouldUseTrustedInputForSegwit";
27
27
  export type { AddressFormat };
@@ -36,15 +36,25 @@ const defaultsSignTransaction = {
36
36
  onDeviceSignatureRequested: () => {},
37
37
  };
38
38
 
39
- const getZcashTransactionVersion = (blockHeight: number | null | undefined): Buffer => {
40
- const version = Buffer.alloc(4);
41
- if (blockHeight && blockHeight < ZCASH_NU6_ACTIVATION_HEIGHT) {
42
- version.writeUInt32LE(0x80000005, 0);
43
- } else {
39
+ export const getZcashBranchId = (blockHeight: number | null | undefined): Buffer => {
40
+ const branchId = Buffer.alloc(4);
41
+ if (!blockHeight || blockHeight >= ZCASH_ACTIVATION_HEIGHTS.NU6) {
44
42
  // NOTE: null and undefined should default to latest version
45
- version.writeUInt32LE(0x80000006, 0);
43
+ branchId.writeUInt32LE(0xc8e71055, 0);
44
+ } else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.NU5) {
45
+ branchId.writeUInt32LE(0xc2d6d0b4, 0);
46
+ } else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.CANOPY) {
47
+ branchId.writeUInt32LE(0xe9ff75a6, 0);
48
+ } else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.HEARTWOOD) {
49
+ branchId.writeUInt32LE(0xf5b9230b, 0);
50
+ } else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.BLOSSOM) {
51
+ branchId.writeUInt32LE(0x2bb40e60, 0);
52
+ } else if (blockHeight >= ZCASH_ACTIVATION_HEIGHTS.SAPLING) {
53
+ branchId.writeUInt32LE(0x76b809bb, 0);
54
+ } else {
55
+ branchId.writeUInt32LE(0x5ba81b19, 0);
46
56
  }
47
- return version;
57
+ return branchId;
48
58
  };
49
59
 
50
60
  export const getDefaultVersions = ({
@@ -52,31 +62,26 @@ export const getDefaultVersions = ({
52
62
  sapling,
53
63
  isDecred,
54
64
  expiryHeight,
55
- blockHeight,
56
65
  }: {
57
66
  isZcash: boolean;
58
67
  sapling: boolean;
59
68
  isDecred: boolean;
60
69
  expiryHeight: Buffer | undefined;
61
- blockHeight: number | undefined;
62
- }): { defaultVersion: Buffer; defaultVersionNu5Only: Buffer } => {
63
- let defaultVersion = Buffer.alloc(4);
64
- const defaultVersionNu5Only = Buffer.alloc(4);
70
+ }): { defaultVersion: Buffer } => {
71
+ const defaultVersion = Buffer.alloc(4);
65
72
 
66
73
  if (!!expiryHeight && !isDecred) {
67
74
  if (isZcash) {
68
- defaultVersion = getZcashTransactionVersion(blockHeight);
69
- defaultVersionNu5Only.writeUInt32LE(0x80000005, 0);
75
+ defaultVersion.writeUInt32LE(0x80000005, 0);
76
+ } else if (sapling) {
77
+ defaultVersion.writeUInt32LE(0x80000004, 0);
70
78
  } else {
71
- const version = sapling ? 0x80000004 : 0x80000003;
72
- defaultVersion.writeUInt32LE(version, 0);
73
- defaultVersionNu5Only.writeUInt32LE(version, 0);
79
+ defaultVersion.writeUInt32LE(0x80000003, 0);
74
80
  }
75
81
  } else {
76
82
  defaultVersion.writeUInt32LE(1, 0);
77
- defaultVersionNu5Only.writeUInt32LE(1, 0);
78
83
  }
79
- return { defaultVersion, defaultVersionNu5Only };
84
+ return { defaultVersion };
80
85
  };
81
86
 
82
87
  /**
@@ -177,12 +182,11 @@ export async function createTransaction(
177
182
  const nullScript = Buffer.alloc(0);
178
183
  const nullPrevout = Buffer.alloc(0);
179
184
 
180
- const { defaultVersion, defaultVersionNu5Only } = getDefaultVersions({
185
+ const { defaultVersion } = getDefaultVersions({
181
186
  isZcash,
182
187
  sapling,
183
188
  isDecred,
184
189
  expiryHeight,
185
- blockHeight,
186
190
  });
187
191
  // Default version to 2 for XST not to have timestamp
188
192
  const trustedInputs: Array<any> = [];
@@ -204,7 +208,7 @@ export async function createTransaction(
204
208
  for (const input of inputs) {
205
209
  if (!resuming) {
206
210
  if (isZcash) {
207
- input[0].version = getZcashTransactionVersion(input[4]);
211
+ input[0].consensusBranchId = getZcashBranchId(input[4]);
208
212
  }
209
213
  const trustedInput = await getTrustedInputCall(transport, input[1], input[0], additionals);
210
214
  log("hw", "got trustedInput=" + trustedInput);
@@ -284,6 +288,7 @@ export async function createTransaction(
284
288
 
285
289
  onDeviceSignatureRequested();
286
290
 
291
+ targetTransaction.consensusBranchId = getZcashBranchId(blockHeight);
287
292
  if (useBip143) {
288
293
  // Do the first run with all inputs
289
294
  await startUntrustedHashTransactionInput(
@@ -371,7 +376,8 @@ export async function createTransaction(
371
376
  }
372
377
  }
373
378
 
374
- targetTransaction.version = defaultVersionNu5Only;
379
+ targetTransaction.version = defaultVersion;
380
+ targetTransaction.consensusBranchId = getZcashBranchId(blockHeight);
375
381
  // Populate the final input scripts
376
382
  for (let i = 0; i < inputs.length; i++) {
377
383
  if (segwit) {
@@ -404,7 +410,6 @@ export async function createTransaction(
404
410
  serializeTransaction(targetTransaction, false, targetTransaction.timestamp, additionals),
405
411
  outputScript,
406
412
  ]);
407
-
408
413
  if (segwit && !isDecred) {
409
414
  let witness = Buffer.alloc(0);
410
415
 
@@ -73,12 +73,17 @@ export async function getTrustedInput(
73
73
 
74
74
  const processWholeScriptBlock = block => getTrustedInputRaw(transport, block);
75
75
 
76
+ const isZcash = additionals.includes("zcash");
77
+ // NOTE: this isn't necessary as consensusBranchId is only set when the transaction is a zcash tx
78
+ // but better safe than sorry
79
+ const zCashConsensusBranchId = transaction.consensusBranchId || Buffer.alloc(0);
76
80
  await getTrustedInputRaw(
77
81
  transport,
78
82
  Buffer.concat([
79
83
  transaction.version,
80
84
  transaction.timestamp || Buffer.alloc(0),
81
85
  transaction.nVersionGroupId || Buffer.alloc(0),
86
+ isZcash ? zCashConsensusBranchId : Buffer.alloc(0),
82
87
  createVarint(inputs.length),
83
88
  ]),
84
89
  indexLookup,
@@ -67,7 +67,7 @@ export function serializeTransaction(
67
67
  return Buffer.concat([
68
68
  transaction.version,
69
69
  transaction.nVersionGroupId || Buffer.alloc(0),
70
- Buffer.from([0x55, 0x10, 0xe7, 0xc8]), // Zcash Consensus Branch ID: 0xC8E71055 refer to https://zips.z.cash/zip-0253
70
+ transaction.consensusBranchId || Buffer.from([0x00, 0x00, 0x00, 0x00]),
71
71
  transaction.locktime || Buffer.from([0x00, 0x00, 0x00, 0x00]),
72
72
  transaction.nExpiryHeight || Buffer.from([0x00, 0x00, 0x00, 0x00]),
73
73
  useWitness ? Buffer.from("0001", "hex") : Buffer.alloc(0),
@@ -2,6 +2,7 @@ import { log } from "@ledgerhq/logs";
2
2
  import type { Transaction, TransactionInput, TransactionOutput } from "./types";
3
3
  import { getVarint } from "./varint";
4
4
  import { formatTransactionDebug } from "./debug";
5
+
5
6
  export function splitTransaction(
6
7
  transactionHex: string,
7
8
  isSegwitSupported: boolean | null | undefined = false,
@@ -41,10 +41,13 @@ export async function startUntrustedHashTransactionInput(
41
41
  additionals: Array<string> = [],
42
42
  useTrustedInputForSegwit = false,
43
43
  ): Promise<any> {
44
+ const isZcash = additionals.includes("zcash");
45
+ const zCashConsensusBranchId = transaction.consensusBranchId || Buffer.alloc(0);
44
46
  let data = Buffer.concat([
45
47
  transaction.version,
46
48
  transaction.timestamp || Buffer.alloc(0),
47
49
  transaction.nVersionGroupId || Buffer.alloc(0),
50
+ isZcash ? zCashConsensusBranchId : Buffer.alloc(0),
48
51
  createVarint(transaction.inputs.length),
49
52
  ]);
50
53
  await startUntrustedHashTransactionInputRaw(
package/src/types.ts CHANGED
@@ -38,6 +38,8 @@ export interface Transaction {
38
38
  nExpiryHeight?: Buffer;
39
39
  // extraData is used only for Zcash and ZenCash and komodo
40
40
  extraData?: Buffer;
41
+ // zCash specific
42
+ consensusBranchId?: Buffer;
41
43
  }
42
44
 
43
45
  export interface TrustedInput {