algosdk 1.19.0 → 1.20.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 (83) hide show
  1. package/README.md +4 -4
  2. package/dist/browser/algosdk.min.js +1 -1
  3. package/dist/browser/algosdk.min.js.map +1 -1
  4. package/dist/cjs/src/client/v2/algod/algod.js +37 -5
  5. package/dist/cjs/src/client/v2/algod/algod.js.map +1 -1
  6. package/dist/cjs/src/client/v2/algod/getTransactionProof.js +41 -0
  7. package/dist/cjs/src/client/v2/algod/getTransactionProof.js.map +1 -0
  8. package/dist/cjs/src/client/v2/algod/{proof.js → lightBlockHeaderProof.js} +5 -7
  9. package/dist/cjs/src/client/v2/algod/lightBlockHeaderProof.js.map +1 -0
  10. package/dist/cjs/src/client/v2/algod/models/types.js +117 -30
  11. package/dist/cjs/src/client/v2/algod/models/types.js.map +1 -1
  12. package/dist/cjs/src/client/v2/algod/stateproof.js +18 -0
  13. package/dist/cjs/src/client/v2/algod/stateproof.js.map +1 -0
  14. package/dist/cjs/src/client/v2/indexer/lookupAccountTransactions.js +1 -1
  15. package/dist/cjs/src/client/v2/indexer/searchForTransactions.js +1 -1
  16. package/dist/cjs/src/logic/logic.js +28 -1
  17. package/dist/cjs/src/logic/logic.js.map +1 -1
  18. package/dist/cjs/src/logicsig.js +27 -6
  19. package/dist/cjs/src/logicsig.js.map +1 -1
  20. package/dist/cjs/src/main.js +5 -1
  21. package/dist/cjs/src/main.js.map +1 -1
  22. package/dist/cjs/src/multisig.js +95 -24
  23. package/dist/cjs/src/multisig.js.map +1 -1
  24. package/dist/cjs/src/nacl/naclWrappers.js +5 -1
  25. package/dist/cjs/src/nacl/naclWrappers.js.map +1 -1
  26. package/dist/cjs/src/transaction.js +97 -0
  27. package/dist/cjs/src/transaction.js.map +1 -1
  28. package/dist/cjs/src/types/transactions/base.js +6 -1
  29. package/dist/cjs/src/types/transactions/base.js.map +1 -1
  30. package/dist/cjs/src/types/transactions/index.js.map +1 -1
  31. package/dist/cjs/src/types/transactions/stateproof.js +3 -0
  32. package/dist/cjs/src/types/transactions/stateproof.js.map +1 -0
  33. package/dist/esm/src/client/v2/algod/algod.js +37 -5
  34. package/dist/esm/src/client/v2/algod/algod.js.map +1 -1
  35. package/dist/esm/src/client/v2/algod/getTransactionProof.js +35 -0
  36. package/dist/esm/src/client/v2/algod/getTransactionProof.js.map +1 -0
  37. package/dist/esm/src/client/v2/algod/lightBlockHeaderProof.js +12 -0
  38. package/dist/esm/src/client/v2/algod/lightBlockHeaderProof.js.map +1 -0
  39. package/dist/esm/src/client/v2/algod/models/types.js +112 -28
  40. package/dist/esm/src/client/v2/algod/models/types.js.map +1 -1
  41. package/dist/esm/src/client/v2/algod/stateproof.js +12 -0
  42. package/dist/esm/src/client/v2/algod/stateproof.js.map +1 -0
  43. package/dist/esm/src/client/v2/indexer/lookupAccountTransactions.js +1 -1
  44. package/dist/esm/src/client/v2/indexer/searchForTransactions.js +1 -1
  45. package/dist/esm/src/logic/logic.js +28 -1
  46. package/dist/esm/src/logic/logic.js.map +1 -1
  47. package/dist/esm/src/logicsig.js +25 -5
  48. package/dist/esm/src/logicsig.js.map +1 -1
  49. package/dist/esm/src/main.js +1 -1
  50. package/dist/esm/src/main.js.map +1 -1
  51. package/dist/esm/src/multisig.js +92 -23
  52. package/dist/esm/src/multisig.js.map +1 -1
  53. package/dist/esm/src/nacl/naclWrappers.js +3 -0
  54. package/dist/esm/src/nacl/naclWrappers.js.map +1 -1
  55. package/dist/esm/src/transaction.js +97 -0
  56. package/dist/esm/src/transaction.js.map +1 -1
  57. package/dist/esm/src/types/transactions/base.js +6 -1
  58. package/dist/esm/src/types/transactions/base.js.map +1 -1
  59. package/dist/esm/src/types/transactions/index.js.map +1 -1
  60. package/dist/esm/src/types/transactions/stateproof.js +2 -0
  61. package/dist/esm/src/types/transactions/stateproof.js.map +1 -0
  62. package/dist/types/src/client/v2/algod/algod.d.ts +32 -4
  63. package/dist/types/src/client/v2/algod/getTransactionProof.d.ts +27 -0
  64. package/dist/types/src/client/v2/algod/{proof.d.ts → lightBlockHeaderProof.d.ts} +2 -3
  65. package/dist/types/src/client/v2/algod/models/types.d.ts +119 -30
  66. package/dist/types/src/client/v2/algod/stateproof.d.ts +8 -0
  67. package/dist/types/src/client/v2/indexer/lookupAccountTransactions.d.ts +1 -1
  68. package/dist/types/src/client/v2/indexer/searchForTransactions.d.ts +1 -1
  69. package/dist/types/src/logic/logic.d.ts +19 -0
  70. package/dist/types/src/logicsig.d.ts +6 -0
  71. package/dist/types/src/main.d.ts +1 -1
  72. package/dist/types/src/multisig.d.ts +36 -2
  73. package/dist/types/src/nacl/naclWrappers.d.ts +1 -0
  74. package/dist/types/src/transaction.d.ts +7 -0
  75. package/dist/types/src/types/blockHeader.d.ts +9 -1
  76. package/dist/types/src/types/transactions/base.d.ts +17 -1
  77. package/dist/types/src/types/transactions/encoded.d.ts +12 -0
  78. package/dist/types/src/types/transactions/index.d.ts +3 -1
  79. package/dist/types/src/types/transactions/stateproof.d.ts +8 -0
  80. package/package.json +1 -1
  81. package/dist/cjs/src/client/v2/algod/proof.js.map +0 -1
  82. package/dist/esm/src/client/v2/algod/proof.js +0 -14
  83. package/dist/esm/src/client/v2/algod/proof.js.map +0 -1
@@ -23,14 +23,37 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.tealSignFromProgram = exports.tealSign = exports.logicSigFromByte = exports.signLogicSigTransaction = exports.signLogicSigTransactionObject = exports.makeLogicSig = exports.LogicSigAccount = exports.LogicSig = void 0;
26
+ exports.tealSignFromProgram = exports.tealSign = exports.logicSigFromByte = exports.signLogicSigTransaction = exports.signLogicSigTransactionObject = exports.makeLogicSig = exports.LogicSigAccount = exports.LogicSig = exports.sanityCheckProgram = void 0;
27
27
  const nacl = __importStar(require("./nacl/naclWrappers"));
28
28
  const address = __importStar(require("./encoding/address"));
29
29
  const encoding = __importStar(require("./encoding/encoding"));
30
- const logic = __importStar(require("./logic/logic"));
31
30
  const multisig_1 = require("./multisig");
32
31
  const utils = __importStar(require("./utils/utils"));
33
32
  const txnBuilder = __importStar(require("./transaction"));
33
+ const address_1 = require("./encoding/address");
34
+ /** sanityCheckProgram performs heuristic program validation:
35
+ * check if passed in bytes are Algorand address or is B64 encoded, rather than Teal bytes
36
+ *
37
+ * @param program - Program bytes to check
38
+ */
39
+ function sanityCheckProgram(program) {
40
+ if (!program || program.length === 0)
41
+ throw new Error('empty program');
42
+ const lineBreakOrd = '\n'.charCodeAt(0);
43
+ const blankSpaceOrd = ' '.charCodeAt(0);
44
+ const tildeOrd = '~'.charCodeAt(0);
45
+ const isPrintable = (x) => blankSpaceOrd <= x && x <= tildeOrd;
46
+ const isAsciiPrintable = program.every((x) => x === lineBreakOrd || isPrintable(x));
47
+ if (isAsciiPrintable) {
48
+ const programStr = Buffer.from(program).toString();
49
+ if ((0, address_1.isValidAddress)(programStr))
50
+ throw new Error('requesting program bytes, get Algorand address');
51
+ if (Buffer.from(programStr, 'base64').toString('base64') === programStr)
52
+ throw new Error('program should not be b64 encoded');
53
+ throw new Error('program bytes are all ASCII printable characters, not looking like Teal byte code');
54
+ }
55
+ }
56
+ exports.sanityCheckProgram = sanityCheckProgram;
34
57
  /**
35
58
  LogicSig implementation
36
59
  */
@@ -45,9 +68,7 @@ class LogicSig {
45
68
  let args;
46
69
  if (programArgs != null)
47
70
  args = programArgs.map((arg) => new Uint8Array(arg));
48
- if (!logic.checkProgram(program, args)) {
49
- throw new Error('Invalid program');
50
- }
71
+ sanityCheckProgram(program);
51
72
  this.logic = program;
52
73
  this.args = args;
53
74
  this.sig = undefined;
@@ -85,7 +106,7 @@ class LogicSig {
85
106
  return false;
86
107
  }
87
108
  try {
88
- logic.checkProgram(this.logic, this.args);
109
+ sanityCheckProgram(this.logic);
89
110
  }
90
111
  catch (e) {
91
112
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"logicsig.js","sourceRoot":"","sources":["../../../src/logicsig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logicsig.js","sourceRoot":"","sources":["../../../src/logicsig.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
29
29
  return (mod && mod.__esModule) ? mod : { "default": mod };
30
30
  };
31
31
  Object.defineProperty(exports, "__esModule", { value: true });
32
- exports.LogicTemplates = exports.SourceMap = exports.multisigAddress = exports.appendSignMultisigTransaction = exports.mergeMultisigTransactions = exports.signMultisigTransaction = exports.tealSignFromProgram = exports.tealSign = exports.logicSigFromByte = exports.signLogicSigTransactionObject = exports.signLogicSigTransaction = exports.makeLogicSig = exports.LogicSigAccount = exports.assignGroupID = exports.computeGroupID = exports.INVALID_MICROALGOS_ERROR_MSG = exports.algosToMicroalgos = exports.microalgosToAlgos = exports.mnemonicFromSeed = exports.seedFromMnemonic = exports.mnemonicToSecretKey = exports.secretKeyToMnemonic = exports.masterDerivationKeyToMnemonic = exports.mnemonicToMasterDerivationKey = exports.modelsv2 = exports.generateAccount = exports.decodeUint64 = exports.encodeUint64 = exports.bigIntToBytes = exports.bytesToBigInt = exports.getApplicationAddress = exports.decodeAddress = exports.encodeAddress = exports.isValidAddress = exports.waitForConfirmation = exports.Indexer = exports.IntDecoding = exports.Kmd = exports.Algodv2 = exports.ERROR_INVALID_MICROALGOS = exports.ERROR_MULTISIG_BAD_SENDER = exports.decodeObj = exports.encodeObj = exports.verifyBytes = exports.signBytes = exports.signBid = exports.signTransaction = exports.MULTISIG_BAD_SENDER_ERROR_MSG = void 0;
32
+ exports.SourceMap = exports.multisigAddress = exports.verifyMultisig = exports.appendSignRawMultisigSignature = exports.createMultisigTransaction = exports.appendSignMultisigTransaction = exports.mergeMultisigTransactions = exports.signMultisigTransaction = exports.tealSignFromProgram = exports.tealSign = exports.logicSigFromByte = exports.signLogicSigTransactionObject = exports.signLogicSigTransaction = exports.makeLogicSig = exports.LogicSigAccount = exports.assignGroupID = exports.computeGroupID = exports.INVALID_MICROALGOS_ERROR_MSG = exports.algosToMicroalgos = exports.microalgosToAlgos = exports.mnemonicFromSeed = exports.seedFromMnemonic = exports.mnemonicToSecretKey = exports.secretKeyToMnemonic = exports.masterDerivationKeyToMnemonic = exports.mnemonicToMasterDerivationKey = exports.modelsv2 = exports.generateAccount = exports.decodeUint64 = exports.encodeUint64 = exports.bigIntToBytes = exports.bytesToBigInt = exports.getApplicationAddress = exports.decodeAddress = exports.encodeAddress = exports.isValidAddress = exports.waitForConfirmation = exports.Indexer = exports.IntDecoding = exports.Kmd = exports.Algodv2 = exports.ERROR_INVALID_MICROALGOS = exports.ERROR_MULTISIG_BAD_SENDER = exports.decodeObj = exports.encodeObj = exports.verifyBytes = exports.signBytes = exports.signBid = exports.signTransaction = exports.MULTISIG_BAD_SENDER_ERROR_MSG = void 0;
33
+ exports.LogicTemplates = void 0;
33
34
  const nacl = __importStar(require("./nacl/naclWrappers"));
34
35
  const address = __importStar(require("./encoding/address"));
35
36
  const encoding = __importStar(require("./encoding/encoding"));
@@ -181,6 +182,9 @@ var multisig_1 = require("./multisig");
181
182
  Object.defineProperty(exports, "signMultisigTransaction", { enumerable: true, get: function () { return multisig_1.signMultisigTransaction; } });
182
183
  Object.defineProperty(exports, "mergeMultisigTransactions", { enumerable: true, get: function () { return multisig_1.mergeMultisigTransactions; } });
183
184
  Object.defineProperty(exports, "appendSignMultisigTransaction", { enumerable: true, get: function () { return multisig_1.appendSignMultisigTransaction; } });
185
+ Object.defineProperty(exports, "createMultisigTransaction", { enumerable: true, get: function () { return multisig_1.createMultisigTransaction; } });
186
+ Object.defineProperty(exports, "appendSignRawMultisigSignature", { enumerable: true, get: function () { return multisig_1.appendSignRawMultisigSignature; } });
187
+ Object.defineProperty(exports, "verifyMultisig", { enumerable: true, get: function () { return multisig_1.verifyMultisig; } });
184
188
  Object.defineProperty(exports, "multisigAddress", { enumerable: true, get: function () { return multisig_1.multisigAddress; } });
185
189
  var sourcemap_1 = require("./logic/sourcemap");
186
190
  Object.defineProperty(exports, "SourceMap", { enumerable: true, get: function () { return sourcemap_1.SourceMap; } });
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/main.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4C;AAC5C,4DAA8C;AAC9C,8DAAgD;AAChD,0DAA4C;AAC5C,+EAAiE;AACjE,gDAAwC;AACxC,mDAAqC;AACrC,qDAAuC;AAEvC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;AAExD,SAAS;AACI,QAAA,6BAA6B,GACxC,oEAAoE,CAAC;AAEvE;;;;;;;;;;;;;;GAcG;AACH,SAAgB,eAAe,CAC7B,GAA+B,EAC/B,EAAc;IAEd,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE;QACnC,wCAAwC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAC1C,6CAA6C;QAC7C,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;KACjD;IACD,MAAM,OAAO,GAAG,UAAU,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAEvD,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAC/B,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;KAC1B,CAAC;AACJ,CAAC;AAhBD,0CAgBC;AAED;;;;;;GAMG;AACH,SAAgB,OAAO,CAAC,GAAe,EAAE,EAAc;IACrD,MAAM,SAAS,GAAG,IAAI,aAAG,CAAC,GAAG,CAAC,CAAC;IAC/B,OAAO,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAC/B,CAAC;AAHD,0BAGC;AAED;;;;;;GAMG;AACH,SAAgB,SAAS,CAAC,KAAiB,EAAE,EAAc;IACzD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACtC,OAAO,GAAG,CAAC;AACb,CAAC;AAJD,8BAIC;AAED;;;;;;;GAOG;AACH,SAAgB,WAAW,CACzB,KAAiB,EACjB,SAAqB,EACrB,IAAY;IAEZ,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAC9B,KAAK,CAAC,YAAY,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAC7C,CAAC;IACF,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;IACjD,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAVD,kCAUC;AAED;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,CAAwC;IAChE,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;AAFD,8BAEC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CAAC,CAAoB;IAC5C,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC;AAFD,8BAEC;AAEY,QAAA,yBAAyB,GAAG,IAAI,KAAK,CAChD,qCAA6B,CAC9B,CAAC;AACW,QAAA,wBAAwB,GAAG,IAAI,KAAK,CAC/C,OAAO,CAAC,4BAA4B,CACrC,CAAC;AAEF,iDAA+B;AAC/B,iDAA6D;AAApD,iHAAA,OAAO,OAAW;AAC3B,oCAA8C;AAArC,2GAAA,OAAO,OAAO;AACvB,mDAA6D;AAApD,2HAAA,OAAO,OAAe;AAE/B,uDAAiE;AAAxD,mHAAA,OAAO,OAAW;AAM3B,+BAA6C;AAApC,2GAAA,mBAAmB,OAAA;AAC5B,8CAK4B;AAJ1B,yGAAA,cAAc,OAAA;AACd,wGAAA,aAAa,OAAA;AACb,wGAAA,aAAa,OAAA;AACb,gHAAA,qBAAqB,OAAA;AAEvB,4CAAiE;AAAxD,uGAAA,aAAa,OAAA;AAAE,uGAAA,aAAa,OAAA;AACrC,4CAA+D;AAAtD,sGAAA,YAAY,OAAA;AAAE,sGAAA,YAAY,OAAA;AACnC,qCAAuD;AAA9C,2HAAA,OAAO,OAAmB;AACnC,2EAA2D;AAC3D,gDAO6B;AAN3B,yHAAA,6BAA6B,OAAA;AAC7B,yHAAA,6BAA6B,OAAA;AAC7B,+GAAA,mBAAmB,OAAA;AACnB,+GAAA,mBAAmB,OAAA;AACnB,4GAAA,gBAAgB,OAAA;AAChB,4GAAA,gBAAgB,OAAA;AAElB,qCAImB;AAHjB,4GAAA,iBAAiB,OAAA;AACjB,4GAAA,iBAAiB,OAAA;AACjB,uHAAA,4BAA4B,OAAA;AAE9B,iCAAwD;AAA/C,uGAAA,cAAc,OAAA;AAAE,sGAAA,aAAa,OAAA;AACtC,uCAQoB;AAPlB,2GAAA,eAAe,OAAA;AACf,wGAAA,YAAY,OAAA;AACZ,mHAAA,uBAAuB,OAAA;AACvB,yHAAA,6BAA6B,OAAA;AAC7B,4GAAA,gBAAgB,OAAA;AAChB,oGAAA,QAAQ,OAAA;AACR,+GAAA,mBAAmB,OAAA;AAErB,uCAQoB;AAPlB,mHAAA,uBAAuB,OAAA;AACvB,qHAAA,yBAAyB,OAAA;AACzB,yHAAA,6BAA6B,OAAA;AAC7B,qHAAA,yBAAyB,OAAA;AACzB,0HAAA,8BAA8B,OAAA;AAC9B,0GAAA,cAAc,OAAA;AACd,2GAAA,eAAe,OAAA;AAEjB,+CAA8C;AAArC,sGAAA,SAAS,OAAA;AAEL,QAAA,cAAc,GAAG,4BAA4B,CAAC,OAAO,CAAC;AAEnE,2CAAyB;AACzB,4CAA0B;AAC1B,gDAA8B;AAC9B,2CAAyB;AACzB,6CAA2B;AAC3B,0CAAwB;AACxB,wCAAsB"}
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.multisigAddress = exports.appendSignMultisigTransaction = exports.signMultisigTransaction = exports.verifyMultisig = exports.mergeMultisigTransactions = exports.MultisigTransaction = exports.MULTISIG_USE_PARTIAL_SIGN_ERROR_MSG = exports.MULTISIG_NO_MUTATE_ERROR_MSG = exports.MULTISIG_MERGE_SIG_MISMATCH_ERROR_MSG = exports.MULTISIG_MERGE_WRONG_PREIMAGE_ERROR_MSG = exports.MULTISIG_MERGE_MISMATCH_AUTH_ADDR_MSG = exports.MULTISIG_MERGE_MISMATCH_ERROR_MSG = exports.MULTISIG_MERGE_LESSTHANTWO_ERROR_MSG = void 0;
26
+ exports.multisigAddress = exports.appendSignRawMultisigSignature = exports.appendSignMultisigTransaction = exports.signMultisigTransaction = exports.verifyMultisig = exports.mergeMultisigTransactions = exports.MultisigTransaction = exports.createMultisigTransaction = exports.MULTISIG_SIGNATURE_LENGTH_ERROR_MSG = exports.MULTISIG_USE_PARTIAL_SIGN_ERROR_MSG = exports.MULTISIG_NO_MUTATE_ERROR_MSG = exports.MULTISIG_MERGE_SIG_MISMATCH_ERROR_MSG = exports.MULTISIG_MERGE_WRONG_PREIMAGE_ERROR_MSG = exports.MULTISIG_MERGE_MISMATCH_AUTH_ADDR_MSG = exports.MULTISIG_MERGE_MISMATCH_ERROR_MSG = exports.MULTISIG_MERGE_LESSTHANTWO_ERROR_MSG = void 0;
27
27
  const nacl = __importStar(require("./nacl/naclWrappers"));
28
28
  const address = __importStar(require("./encoding/address"));
29
29
  const encoding = __importStar(require("./encoding/encoding"));
@@ -40,37 +40,25 @@ exports.MULTISIG_MERGE_SIG_MISMATCH_ERROR_MSG = 'Cannot merge txs. subsigs are m
40
40
  const MULTISIG_KEY_NOT_EXIST_ERROR_MSG = 'Key does not exist';
41
41
  exports.MULTISIG_NO_MUTATE_ERROR_MSG = 'Cannot mutate a multisig field as it would invalidate all existing signatures.';
42
42
  exports.MULTISIG_USE_PARTIAL_SIGN_ERROR_MSG = 'Cannot sign a multisig transaction using `signTxn`. Use `partialSignTxn` instead.';
43
+ exports.MULTISIG_SIGNATURE_LENGTH_ERROR_MSG = 'Cannot add multisig signature. Signature is not of the correct length.';
43
44
  /**
44
- * createMultisigTransaction creates a multisig transaction blob.
45
- * @param txnForEncoding - the actual transaction to sign.
46
- * @param rawSig - a Buffer raw signature of that transaction
47
- * @param myPk - a public key that corresponds with rawSig
45
+ * createRawMultisigTransaction creates a raw, unsigned multisig transaction blob.
46
+ * @param txn - the actual transaction.
48
47
  * @param version - multisig version
49
- * @param threshold - mutlisig threshold
48
+ * @param threshold - multisig threshold
50
49
  * @param pks - ordered list of public keys in this multisig
51
50
  * @returns encoded multisig blob
52
51
  */
53
- function createMultisigTransaction(txnForEncoding, { rawSig, myPk }, { version, threshold, pks }) {
54
- let keyExist = false;
52
+ function createMultisigTransaction(txn, { version, threshold, addrs }) {
55
53
  // construct the appendable multisigned transaction format
56
- const subsigs = pks.map((pk) => {
57
- if (nacl.bytesEqual(pk, myPk)) {
58
- keyExist = true;
59
- return {
60
- pk: Buffer.from(pk),
61
- s: rawSig,
62
- };
63
- }
64
- return { pk: Buffer.from(pk) };
65
- });
66
- if (keyExist === false) {
67
- throw new Error(MULTISIG_KEY_NOT_EXIST_ERROR_MSG);
68
- }
54
+ const pks = addrs.map((addr) => address.decodeAddress(addr).publicKey);
55
+ const subsigs = pks.map((pk) => ({ pk: Buffer.from(pk) }));
69
56
  const msig = {
70
57
  v: version,
71
58
  thr: threshold,
72
59
  subsig: subsigs,
73
60
  };
61
+ const txnForEncoding = txn.get_obj_for_encoding();
74
62
  const signedTxn = {
75
63
  msig,
76
64
  txn: txnForEncoding,
@@ -88,6 +76,49 @@ function createMultisigTransaction(txnForEncoding, { rawSig, myPk }, { version,
88
76
  }
89
77
  return new Uint8Array(encoding.encode(signedTxn));
90
78
  }
79
+ exports.createMultisigTransaction = createMultisigTransaction;
80
+ /**
81
+ * createMultisigTransactionWithSignature creates a multisig transaction blob with an included signature.
82
+ * @param txn - the actual transaction to sign.
83
+ * @param rawSig - a Buffer raw signature of that transaction
84
+ * @param myPk - a public key that corresponds with rawSig
85
+ * @param version - multisig version
86
+ * @param threshold - multisig threshold
87
+ * @param pks - ordered list of public keys in this multisig
88
+ * @returns encoded multisig blob
89
+ */
90
+ function createMultisigTransactionWithSignature(txn, { rawSig, myPk }, { version, threshold, pks }) {
91
+ // Create an empty encoded multisig transaction
92
+ const encodedMsig = createMultisigTransaction(txn, {
93
+ version,
94
+ threshold,
95
+ addrs: pks.map((pk) => address.encodeAddress(pk)),
96
+ });
97
+ // note: this is not signed yet, but will be shortly
98
+ const signedTxn = encoding.decode(encodedMsig);
99
+ let keyExist = false;
100
+ // append the multisig signature to the corresponding public key in the multisig blob
101
+ signedTxn.msig.subsig.forEach((subsig, i) => {
102
+ if (nacl.bytesEqual(subsig.pk, myPk)) {
103
+ keyExist = true;
104
+ signedTxn.msig.subsig[i].s = rawSig;
105
+ }
106
+ });
107
+ if (keyExist === false) {
108
+ throw new Error(MULTISIG_KEY_NOT_EXIST_ERROR_MSG);
109
+ }
110
+ // if the address of this multisig is different from the transaction sender,
111
+ // we need to add the auth-addr field
112
+ const msigAddr = address.fromMultisigPreImg({
113
+ version,
114
+ threshold,
115
+ pks,
116
+ });
117
+ if (address.encodeAddress(signedTxn.txn.snd) !== address.encodeAddress(msigAddr)) {
118
+ signedTxn.sgnr = Buffer.from(msigAddr);
119
+ }
120
+ return new Uint8Array(encoding.encode(signedTxn));
121
+ }
91
122
  /**
92
123
  * MultisigTransaction is a Transaction that also supports creating partially-signed multisig transactions.
93
124
  */
@@ -121,7 +152,24 @@ class MultisigTransaction extends txnBuilder.Transaction {
121
152
  partialSignTxn({ version, threshold, pks }, sk) {
122
153
  // get signature verifier
123
154
  const myPk = nacl.keyPairFromSecretKey(sk).publicKey;
124
- return createMultisigTransaction(this.get_obj_for_encoding(), { rawSig: this.rawSignTxn(sk), myPk }, { version, threshold, pks });
155
+ return createMultisigTransactionWithSignature(this, { rawSig: this.rawSignTxn(sk), myPk }, { version, threshold, pks });
156
+ }
157
+ /**
158
+ * partialSignWithMultisigSignature partially signs this transaction with an external raw multisig signature and returns
159
+ * a partially-signed multisig transaction, encoded with msgpack as a typed array.
160
+ * @param metadata - multisig metadata
161
+ * @param signerAddr - address of the signer
162
+ * @param signature - raw multisig signature
163
+ * @returns an encoded, partially signed multisig transaction.
164
+ */
165
+ partialSignWithMultisigSignature(metadata, signerAddr, signature) {
166
+ if (!nacl.isValidSignatureLength(signature.length)) {
167
+ throw new Error(exports.MULTISIG_SIGNATURE_LENGTH_ERROR_MSG);
168
+ }
169
+ return createMultisigTransactionWithSignature(this, {
170
+ rawSig: signature,
171
+ myPk: address.decodeAddress(signerAddr).publicKey,
172
+ }, metadata);
125
173
  }
126
174
  // eslint-disable-next-line camelcase
127
175
  static from_obj_for_encoding(txnForEnc) {
@@ -261,7 +309,7 @@ exports.verifyMultisig = verifyMultisig;
261
309
  /**
262
310
  * signMultisigTransaction takes a raw transaction (see signTransaction), a multisig preimage, a secret key, and returns
263
311
  * a multisig transaction, which is a blob representing a transaction and multisignature account preimage. The returned
264
- * multisig txn can accumulate additional signatures through mergeMultisigTransactions or appendMultisigTransaction.
312
+ * multisig txn can accumulate additional signatures through mergeMultisigTransactions or appendSignMultisigTransaction.
265
313
  * @param txn - object with either payment or key registration fields
266
314
  * @param version - multisig version
267
315
  * @param threshold - multisig threshold
@@ -324,9 +372,32 @@ function appendSignMultisigTransaction(multisigTxnBlob, { version, threshold, ad
324
372
  };
325
373
  }
326
374
  exports.appendSignMultisigTransaction = appendSignMultisigTransaction;
375
+ /**
376
+ * appendMultisigTransactionSignature takes a multisig transaction blob, and appends a given raw signature to it.
377
+ * This makes it possible to compile a multisig signature using only raw signatures from external methods.
378
+ * @param multisigTxnBlob - an encoded multisig txn. Supports non-payment txn types.
379
+ * @param version - multisig version
380
+ * @param threshold - multisig threshold
381
+ * @param addrs - a list of Algorand addresses representing possible signers for this multisig. Order is important.
382
+ * @param signerAddr - address of the signer
383
+ * @param signature - raw multisig signature
384
+ * @returns object containing txID, and blob representing encoded multisig txn
385
+ */
386
+ function appendSignRawMultisigSignature(multisigTxnBlob, { version, threshold, addrs }, signerAddr, signature) {
387
+ const pks = addrs.map((addr) => address.decodeAddress(addr).publicKey);
388
+ // obtain underlying txn, sign it, and merge it
389
+ const multisigTxObj = encoding.decode(multisigTxnBlob);
390
+ const msigTxn = MultisigTransaction.from_obj_for_encoding(multisigTxObj.txn);
391
+ const partialSignedBlob = msigTxn.partialSignWithMultisigSignature({ version, threshold, pks }, signerAddr, signature);
392
+ return {
393
+ txID: msigTxn.txID().toString(),
394
+ blob: mergeMultisigTransactions([multisigTxnBlob, partialSignedBlob]),
395
+ };
396
+ }
397
+ exports.appendSignRawMultisigSignature = appendSignRawMultisigSignature;
327
398
  /**
328
399
  * multisigAddress takes multisig metadata (preimage) and returns the corresponding human readable Algorand address.
329
- * @param version - mutlisig version
400
+ * @param version - multisig version
330
401
  * @param threshold - multisig threshold
331
402
  * @param addrs - list of Algorand addresses
332
403
  */
@@ -1 +1 @@
1
- {"version":3,"file":"multisig.js","sourceRoot":"","sources":["../../../src/multisig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multisig.js","sourceRoot":"","sources":["../../../src/multisig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4C;AAC5C,4DAA8C;AAC9C,8DAAgD;AAChD,0DAA4C;AAC5C,qDAAuC;AAQvC;;GAEG;AAEU,QAAA,oCAAoC,GAC/C,8DAA8D,CAAC;AACpD,QAAA,iCAAiC,GAC5C,gCAAgC,CAAC;AACtB,QAAA,qCAAqC,GAChD,qCAAqC,CAAC;AAC3B,QAAA,uCAAuC,GAClD,6CAA6C,CAAC;AACnC,QAAA,qCAAqC,GAChD,2CAA2C,CAAC;AAC9C,MAAM,gCAAgC,GAAG,oBAAoB,CAAC;AACjD,QAAA,4BAA4B,GACvC,gFAAgF,CAAC;AACtE,QAAA,mCAAmC,GAC9C,mFAAmF,CAAC;AACzE,QAAA,mCAAmC,GAC9C,wEAAwE,CAAC;AAW3E;;;;;;;GAOG;AACH,SAAgB,yBAAyB,CACvC,GAA2B,EAC3B,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAoB;IAE/C,0DAA0D;IAC1D,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IACvE,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE3D,MAAM,IAAI,GAAoB;QAC5B,CAAC,EAAE,OAAO;QACV,GAAG,EAAE,SAAS;QACd,MAAM,EAAE,OAAO;KAChB,CAAC;IACF,MAAM,cAAc,GAAG,GAAG,CAAC,oBAAoB,EAAE,CAAC;IAClD,MAAM,SAAS,GAA6B;QAC1C,IAAI;QACJ,GAAG,EAAE,cAAc;KACpB,CAAC;IAEF,4EAA4E;IAC5E,qCAAqC;IACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,kBAAkB,CAAC;QAC1C,OAAO;QACP,SAAS;QACT,GAAG;KACJ,CAAC,CAAC;IACH,IACE,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC;QACzC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,EAC/B;QACA,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACxC;IAED,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;AACpD,CAAC;AAlCD,8DAkCC;AAED;;;;;;;;;GASG;AACH,SAAS,sCAAsC,CAC7C,GAA2B,EAC3B,EAAE,MAAM,EAAE,IAAI,EAAmB,EACjC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAA2B;IAEpD,+CAA+C;IAC/C,MAAM,WAAW,GAAG,yBAAyB,CAAC,GAAG,EAAE;QACjD,OAAO;QACP,SAAS;QACT,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;KAClD,CAAC,CAAC;IACH,oDAAoD;IACpD,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,CAA6B,CAAC;IAE3E,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,qFAAqF;IACrF,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE;YACpC,QAAQ,GAAG,IAAI,CAAC;YAChB,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;SACrC;IACH,CAAC,CAAC,CAAC;IACH,IAAI,QAAQ,KAAK,KAAK,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;KACnD;IAED,4EAA4E;IAC5E,qCAAqC;IACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,kBAAkB,CAAC;QAC1C,OAAO;QACP,SAAS;QACT,GAAG;KACJ,CAAC,CAAC;IACH,IACE,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,EAC5E;QACA,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACxC;IAED,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,MAAa,mBAAoB,SAAQ,UAAU,CAAC,WAAW;IAC7D,mGAAmG;IACnG;;OAEG;IACH,QAAQ;QACN,MAAM,IAAI,KAAK,CAAC,oCAA4B,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,MAAM,IAAI,KAAK,CAAC,oCAA4B,CAAC,CAAC;IAChD,CAAC;IAMD,OAAO,CAAC,EAAO;QACb,MAAM,IAAI,KAAK,CAAC,2CAAmC,CAAC,CAAC;IACvD,CAAC;IACD,kGAAkG;IAElG;;;;;;;;OAQG;IACH,cAAc,CACZ,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAA2B,EACpD,EAAc;QAEd,yBAAyB;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;QACrD,OAAO,sCAAsC,CAC3C,IAAI,EACJ,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EACrC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAC5B,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,gCAAgC,CAC9B,QAAiC,EACjC,UAAkB,EAClB,SAAqB;QAErB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YAClD,MAAM,IAAI,KAAK,CAAC,2CAAmC,CAAC,CAAC;SACtD;QACD,OAAO,sCAAsC,CAC3C,IAAI,EACJ;YACE,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,SAAS;SAClD,EACD,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,qCAAqC;IACrC,MAAM,CAAC,qBAAqB,CAC1B,SAA6B;QAE7B,OAAO,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAwB,CAAC;IACvE,CAAC;CACF;AA/ED,kDA+EC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,gBAA8B;IACtE,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,4CAAoC,CAAC,CAAC;KACvD;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAC9B,gBAAgB,CAAC,CAAC,CAAC,CACQ,CAAC;IAC9B,MAAM,OAAO,GAAG,mBAAmB,CAAC,qBAAqB,CACvD,QAAQ,CAAC,GAAG,CACb,CAAC,IAAI,EAAE,CAAC;IACT,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI;QAC/B,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC;QACtC,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,WAAW,GAAG;QAClB,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxB,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG;QAC5B,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;KACrD,CAAC;IACF,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,CACvC,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,CACxC,CAAC;IAEF,IAAI,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAC5B,gBAAgB,CAAC,CAAC,CAAC,CACQ,CAAC;QAE9B,MAAM,aAAa,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5E,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE;YACpC,MAAM,IAAI,KAAK,CAAC,yCAAiC,CAAC,CAAC;SACpD;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI;YAC1B,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC;YACpC,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,WAAW,KAAK,QAAQ,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,6CAAqC,CAAC,CAAC;SACxD;QAED,gDAAgD;QAChD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAC7D,MAAM,IAAI,KAAK,CAAC,+CAAuC,CAAC,CAAC;SAC1D;QACD,MAAM,MAAM,GAA4B;YACtC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACtB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;YAC1B,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SACnD,CAAC;QACF,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5E,IAAI,WAAW,KAAK,SAAS,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,+CAAuC,CAAC,CAAC;SAC1D;QAED,oBAAoB;QACpB,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;YACvD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,OAAO,CAAC,CAAC,EAAE;gBACb,mFAAmF;gBACnF,kFAAkF;gBAClF,+EAA+E;gBAC/E,+DAA+D;gBAC/D,IACE,SAAS,CAAC,CAAC;oBACX,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EACtE;oBACA,WAAW;oBACX,MAAM,IAAI,KAAK,CAAC,6CAAqC,CAAC,CAAC;iBACxD;gBACD,OAAO;oBACL,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,CAAC,EAAE,OAAO,CAAC,CAAC;iBACb,CAAC;aACH;YACD,IAAI,SAAS,CAAC,CAAC,EAAE;gBACf,OAAO;oBACL,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,CAAC,EAAE,SAAS,CAAC,CAAC;iBACf,CAAC;aACH;YACD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;KACJ;IACD,MAAM,IAAI,GAAoB;QAC5B,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAClB,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG;QACtB,MAAM,EAAE,UAAU;KACnB,CAAC;IACF,MAAM,SAAS,GAA6B;QAC1C,IAAI;QACJ,GAAG,EAAE,QAAQ,CAAC,GAAG;KAClB,CAAC;IACF,IAAI,OAAO,WAAW,KAAK,WAAW,EAAE;QACtC,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC;KAC5E;IACD,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;AACpD,CAAC;AAhGD,8DAgGC;AAED,SAAgB,cAAc,CAC5B,YAAwB,EACxB,IAAqB,EACrB,SAAqB;IAErB,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC;IACvB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC;IAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;IAE5B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/C,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE;QAClC,OAAO,KAAK,CAAC;KACd;IAED,IAAI,EAAc,CAAC;IACnB,IAAI;QACF,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;KAC9D;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,KAAK,CAAC;KACd;IAED,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE;QACpC,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,MAAM,CAAC,CAAC,KAAK,SAAS,EAAE;YAC1B,OAAO,IAAI,CAAC,CAAC;SACd;KACF;IACD,IAAI,OAAO,GAAG,SAAS,EAAE;QACvB,OAAO,KAAK,CAAC;KACd;IAED,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,MAAM,CAAC,CAAC,KAAK,SAAS,EAAE;YAC1B,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE;gBAClD,eAAe,IAAI,CAAC,CAAC;aACtB;SACF;KACF;IAED,IAAI,eAAe,GAAG,SAAS,EAAE;QAC/B,OAAO,KAAK,CAAC;KACd;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAjDD,wCAiDC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,uBAAuB,CACrC,GAA+B,EAC/B,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAoB,EAC/C,EAAc;IAEd,kGAAkG;IAClG,MAAM,eAAe,GAAG,OAAO,CAAC,uBAAuB,CAAC;QACtD,OAAO;QACP,SAAS;QACT,KAAK;KACN,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE;QACtD,6CAA6C;QAC7C,GAAG,CAAC,IAAI,GAAG,eAAe,CAAC;KAC5B;IACD,4BAA4B;IAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IACvE,0GAA0G;IAC1G,MAAM,eAAe,GAAG,GAAG,YAAY,UAAU,CAAC,WAAW,CAAC;IAC9D,IAAI,OAA4B,CAAC;IACjC,IAAI,IAAgB,CAAC;IACrB,IAAI,eAAe,EAAE;QACnB,OAAO,GAAI,GAAsC,CAAC;QAClD,IAAI,GAAG,mBAAmB,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CACtD,OAAO,EACP,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAC3B,EAAE,CACH,CAAC;KACH;SAAM;QACL,OAAO,GAAG,IAAI,mBAAmB,CAAC,GAAqB,CAAC,CAAC;QACzD,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;KAChE;IACD,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAC/B,IAAI;KACL,CAAC;AACJ,CAAC;AApCD,0DAoCC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,6BAA6B,CAC3C,eAA2B,EAC3B,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAoB,EAC/C,EAAc;IAEd,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IACvE,+CAA+C;IAC/C,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CACnC,eAAe,CACY,CAAC;IAC9B,MAAM,OAAO,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC7E,MAAM,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAC9C,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAC3B,EAAE,CACH,CAAC;IACF,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAC/B,IAAI,EAAE,yBAAyB,CAAC,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;KACtE,CAAC;AACJ,CAAC;AAnBD,sEAmBC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,8BAA8B,CAC5C,eAA2B,EAC3B,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAoB,EAC/C,UAAkB,EAClB,SAAqB;IAErB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IACvE,+CAA+C;IAC/C,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CACnC,eAAe,CACY,CAAC;IAC9B,MAAM,OAAO,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC7E,MAAM,iBAAiB,GAAG,OAAO,CAAC,gCAAgC,CAChE,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAC3B,UAAU,EACV,SAAS,CACV,CAAC;IACF,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAC/B,IAAI,EAAE,yBAAyB,CAAC,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;KACtE,CAAC;AACJ,CAAC;AArBD,wEAqBC;AAED;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,SAAS,EACT,KAAK,GACY;IACjB,OAAO,OAAO,CAAC,uBAAuB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AACxE,CAAC;AAND,0CAMC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.SEED_BTYES_LENGTH = exports.HASH_BYTES_LENGTH = exports.SECRET_KEY_LENGTH = exports.PUBLIC_KEY_LENGTH = exports.verify = exports.bytesEqual = exports.sign = exports.keyPairFromSecretKey = exports.keyPair = exports.keyPairFromSeed = exports.randomBytes = exports.genericHash = void 0;
6
+ exports.SEED_BTYES_LENGTH = exports.HASH_BYTES_LENGTH = exports.SECRET_KEY_LENGTH = exports.PUBLIC_KEY_LENGTH = exports.verify = exports.bytesEqual = exports.sign = exports.keyPairFromSecretKey = exports.isValidSignatureLength = exports.keyPair = exports.keyPairFromSeed = exports.randomBytes = exports.genericHash = void 0;
7
7
  const tweetnacl_1 = __importDefault(require("tweetnacl"));
8
8
  const js_sha512_1 = __importDefault(require("js-sha512"));
9
9
  function genericHash(arr) {
@@ -23,6 +23,10 @@ function keyPair() {
23
23
  return keyPairFromSeed(seed);
24
24
  }
25
25
  exports.keyPair = keyPair;
26
+ function isValidSignatureLength(len) {
27
+ return len === tweetnacl_1.default.sign.signatureLength;
28
+ }
29
+ exports.isValidSignatureLength = isValidSignatureLength;
26
30
  function keyPairFromSecretKey(sk) {
27
31
  return tweetnacl_1.default.sign.keyPair.fromSecretKey(sk);
28
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"naclWrappers.js","sourceRoot":"","sources":["../../../../src/nacl/naclWrappers.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAC7B,0DAA+B;AAE/B,SAAgB,WAAW,CAAC,GAAmB;IAC7C,OAAO,mBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACtC,CAAC;AAFD,kCAEC;AAED,SAAgB,WAAW,CAAC,MAAc;IACxC,OAAO,mBAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAFD,kCAEC;AAED,SAAgB,eAAe,CAAC,IAAgB;IAC9C,OAAO,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC;AAFD,0CAEC;AAED,SAAgB,OAAO;IACrB,MAAM,IAAI,GAAG,WAAW,CAAC,mBAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAHD,0BAGC;AAED,SAAgB,oBAAoB,CAAC,EAAc;IACjD,OAAO,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;AAC7C,CAAC;AAFD,oDAEC;AAED,SAAgB,IAAI,CAAC,GAAe,EAAE,SAAqB;IACzD,OAAO,mBAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AAC5C,CAAC;AAFD,oBAEC;AAED,SAAgB,UAAU,CAAC,CAAa,EAAE,CAAa;IACrD,OAAO,mBAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3B,CAAC;AAFD,gCAEC;AAED,SAAgB,MAAM,CACpB,OAAmB,EACnB,SAAqB,EACrB,SAAqB;IAErB,OAAO,mBAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAClE,CAAC;AAND,wBAMC;AAED,YAAY;AACC,QAAA,iBAAiB,GAAG,mBAAI,CAAC,IAAI,CAAC,eAAe,CAAC;AAC9C,QAAA,iBAAiB,GAAG,mBAAI,CAAC,IAAI,CAAC,eAAe,CAAC;AAC9C,QAAA,iBAAiB,GAAG,EAAE,CAAC;AACvB,QAAA,iBAAiB,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"naclWrappers.js","sourceRoot":"","sources":["../../../../src/nacl/naclWrappers.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAC7B,0DAA+B;AAE/B,SAAgB,WAAW,CAAC,GAAmB;IAC7C,OAAO,mBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACtC,CAAC;AAFD,kCAEC;AAED,SAAgB,WAAW,CAAC,MAAc;IACxC,OAAO,mBAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAFD,kCAEC;AAED,SAAgB,eAAe,CAAC,IAAgB;IAC9C,OAAO,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC;AAFD,0CAEC;AAED,SAAgB,OAAO;IACrB,MAAM,IAAI,GAAG,WAAW,CAAC,mBAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAHD,0BAGC;AAED,SAAgB,sBAAsB,CAAC,GAAW;IAChD,OAAO,GAAG,KAAK,mBAAI,CAAC,IAAI,CAAC,eAAe,CAAC;AAC3C,CAAC;AAFD,wDAEC;AAED,SAAgB,oBAAoB,CAAC,EAAc;IACjD,OAAO,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;AAC7C,CAAC;AAFD,oDAEC;AAED,SAAgB,IAAI,CAAC,GAAe,EAAE,SAAqB;IACzD,OAAO,mBAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AAC5C,CAAC;AAFD,oBAEC;AAED,SAAgB,UAAU,CAAC,CAAa,EAAE,CAAa;IACrD,OAAO,mBAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3B,CAAC;AAFD,gCAEC;AAED,SAAgB,MAAM,CACpB,OAAmB,EACnB,SAAqB,EACrB,SAAqB;IAErB,OAAO,mBAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAClE,CAAC;AAND,wBAMC;AAED,YAAY;AACC,QAAA,iBAAiB,GAAG,mBAAI,CAAC,IAAI,CAAC,eAAe,CAAC;AAC9C,QAAA,iBAAiB,GAAG,mBAAI,CAAC,IAAI,CAAC,eAAe,CAAC;AAC9C,QAAA,iBAAiB,GAAG,EAAE,CAAC;AACvB,QAAA,iBAAiB,GAAG,EAAE,CAAC"}
@@ -308,6 +308,24 @@ class Transaction {
308
308
  }
309
309
  // say we are aware of groups
310
310
  this.group = undefined;
311
+ // stpf fields
312
+ if (txn.stateProofType !== undefined &&
313
+ (!Number.isSafeInteger(txn.stateProofType) || txn.stateProofType < 0))
314
+ throw Error('State Proof type must be a positive number and smaller than 2^53-1');
315
+ if (txn.stateProofMessage !== undefined) {
316
+ if (txn.stateProofMessage.constructor !== Uint8Array)
317
+ throw Error('stateProofMessage must be a Uint8Array.');
318
+ }
319
+ else {
320
+ txn.stateProofMessage = new Uint8Array(0);
321
+ }
322
+ if (txn.stateProof !== undefined) {
323
+ if (txn.stateProof.constructor !== Uint8Array)
324
+ throw Error('stateProof must be a Uint8Array.');
325
+ }
326
+ else {
327
+ txn.stateProof = new Uint8Array(0);
328
+ }
311
329
  }
312
330
  // eslint-disable-next-line camelcase
313
331
  get_obj_for_encoding() {
@@ -680,6 +698,59 @@ class Transaction {
680
698
  delete txn.grp;
681
699
  return txn;
682
700
  }
701
+ if (this.type === 'stpf') {
702
+ // state proof txn
703
+ const txn = {
704
+ fee: this.fee,
705
+ fv: this.firstRound,
706
+ lv: this.lastRound,
707
+ note: Buffer.from(this.note),
708
+ snd: Buffer.from(this.from.publicKey),
709
+ type: this.type,
710
+ gen: this.genesisID,
711
+ gh: this.genesisHash,
712
+ lx: Buffer.from(this.lease),
713
+ sptype: this.stateProofType,
714
+ spmsg: Buffer.from(this.stateProofMessage),
715
+ sp: Buffer.from(this.stateProof),
716
+ };
717
+ // allowed zero values
718
+ if (!txn.sptype)
719
+ delete txn.sptype;
720
+ if (!txn.note.length)
721
+ delete txn.note;
722
+ if (!txn.lx.length)
723
+ delete txn.lx;
724
+ if (!txn.amt)
725
+ delete txn.amt;
726
+ if (!txn.fee)
727
+ delete txn.fee;
728
+ if (!txn.fv)
729
+ delete txn.fv;
730
+ if (!txn.gen)
731
+ delete txn.gen;
732
+ if (!txn.apid)
733
+ delete txn.apid;
734
+ if (!txn.apaa || !txn.apaa.length)
735
+ delete txn.apaa;
736
+ if (!txn.apap)
737
+ delete txn.apap;
738
+ if (!txn.apsu)
739
+ delete txn.apsu;
740
+ if (!txn.apan)
741
+ delete txn.apan;
742
+ if (!txn.apfa || !txn.apfa.length)
743
+ delete txn.apfa;
744
+ if (!txn.apas || !txn.apas.length)
745
+ delete txn.apas;
746
+ if (!txn.apat || !txn.apat.length)
747
+ delete txn.apat;
748
+ if (!txn.apep)
749
+ delete txn.apep;
750
+ if (txn.grp === undefined)
751
+ delete txn.grp;
752
+ return txn;
753
+ }
683
754
  return undefined;
684
755
  }
685
756
  // eslint-disable-next-line camelcase
@@ -825,6 +896,17 @@ class Transaction {
825
896
  txn.appForeignAssets = txnForEnc.apas;
826
897
  }
827
898
  }
899
+ else if (txnForEnc.type === 'stpf') {
900
+ if (txnForEnc.sptype !== undefined) {
901
+ txn.stateProofType = txnForEnc.sptype;
902
+ }
903
+ if (txnForEnc.sp !== undefined) {
904
+ txn.stateProof = txnForEnc.sp;
905
+ }
906
+ if (txnForEnc.spmsg !== undefined) {
907
+ txn.stateProofMessage = txnForEnc.spmsg;
908
+ }
909
+ }
828
910
  return txn;
829
911
  }
830
912
  estimateSize() {
@@ -858,6 +940,21 @@ class Transaction {
858
940
  }
859
941
  return new Uint8Array(encoding.encode(sTxn));
860
942
  }
943
+ attachSignature(signerAddr, signature) {
944
+ if (!nacl.isValidSignatureLength(signature.length)) {
945
+ throw new Error('Invalid signature length');
946
+ }
947
+ const sTxn = {
948
+ sig: Buffer.from(signature),
949
+ txn: this.get_obj_for_encoding(),
950
+ };
951
+ // add AuthAddr if signing with a different key than From indicates
952
+ if (signerAddr !== address.encodeAddress(this.from.publicKey)) {
953
+ const signerPublicKey = address.decodeAddress(signerAddr).publicKey;
954
+ sTxn.sgnr = Buffer.from(signerPublicKey);
955
+ }
956
+ return new Uint8Array(encoding.encode(sTxn));
957
+ }
861
958
  rawTxID() {
862
959
  const enMsg = this.toByte();
863
960
  const gh = Buffer.from(utils.concatArrays(this.tag, enMsg));