algosdk 3.6.0 → 3.7.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 (153) 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/appAccess.js +4 -0
  5. package/dist/cjs/appAccess.js.map +1 -1
  6. package/dist/cjs/client/v2/algod/algod.js +0 -18
  7. package/dist/cjs/client/v2/algod/algod.js.map +1 -1
  8. package/dist/cjs/client/v2/algod/models/types.js +153 -437
  9. package/dist/cjs/client/v2/algod/models/types.js.map +1 -1
  10. package/dist/cjs/client/v2/indexer/models/types.js +163 -12
  11. package/dist/cjs/client/v2/indexer/models/types.js.map +1 -1
  12. package/dist/cjs/composer.js +4 -6
  13. package/dist/cjs/composer.js.map +1 -1
  14. package/dist/cjs/ed25519-signer.js +76 -0
  15. package/dist/cjs/ed25519-signer.js.map +1 -0
  16. package/dist/cjs/encoding/address.js +61 -1
  17. package/dist/cjs/encoding/address.js.map +1 -1
  18. package/dist/cjs/falcon-signer.js +17 -0
  19. package/dist/cjs/falcon-signer.js.map +1 -0
  20. package/dist/cjs/heartbeat.js +7 -0
  21. package/dist/cjs/heartbeat.js.map +1 -1
  22. package/dist/cjs/logicsig.js +201 -16
  23. package/dist/cjs/logicsig.js.map +1 -1
  24. package/dist/cjs/main.js +32 -63
  25. package/dist/cjs/main.js.map +1 -1
  26. package/dist/cjs/makeTxn.js +11 -2
  27. package/dist/cjs/makeTxn.js.map +1 -1
  28. package/dist/cjs/mnemonic/mnemonic.js +26 -1
  29. package/dist/cjs/mnemonic/mnemonic.js.map +1 -1
  30. package/dist/cjs/multisigSigning.js +78 -1
  31. package/dist/cjs/multisigSigning.js.map +1 -1
  32. package/dist/cjs/pq-signer.js +80 -0
  33. package/dist/cjs/pq-signer.js.map +1 -0
  34. package/dist/cjs/signedTransaction.js +15 -1
  35. package/dist/cjs/signedTransaction.js.map +1 -1
  36. package/dist/cjs/signer.js.map +1 -1
  37. package/dist/cjs/signing.js +94 -7
  38. package/dist/cjs/signing.js.map +1 -1
  39. package/dist/cjs/transaction.js +17 -1
  40. package/dist/cjs/transaction.js.map +1 -1
  41. package/dist/cjs/types/statedelta.js +17 -0
  42. package/dist/cjs/types/statedelta.js.map +1 -1
  43. package/dist/cjs/types/transactions/encoded.js +51 -1
  44. package/dist/cjs/types/transactions/encoded.js.map +1 -1
  45. package/dist/cjs/utils/ed25519-check.js +69 -0
  46. package/dist/cjs/utils/ed25519-check.js.map +1 -0
  47. package/dist/cjs/utils/utils.js +14 -1
  48. package/dist/cjs/utils/utils.js.map +1 -1
  49. package/dist/esm/appAccess.js +4 -0
  50. package/dist/esm/appAccess.js.map +1 -1
  51. package/dist/esm/client/v2/algod/algod.js +0 -18
  52. package/dist/esm/client/v2/algod/algod.js.map +1 -1
  53. package/dist/esm/client/v2/algod/models/types.js +149 -430
  54. package/dist/esm/client/v2/algod/models/types.js.map +1 -1
  55. package/dist/esm/client/v2/indexer/models/types.js +161 -11
  56. package/dist/esm/client/v2/indexer/models/types.js.map +1 -1
  57. package/dist/esm/composer.js +4 -6
  58. package/dist/esm/composer.js.map +1 -1
  59. package/dist/esm/ed25519-signer.js +72 -0
  60. package/dist/esm/ed25519-signer.js.map +1 -0
  61. package/dist/esm/encoding/address.js +58 -0
  62. package/dist/esm/encoding/address.js.map +1 -1
  63. package/dist/esm/falcon-signer.js +13 -0
  64. package/dist/esm/falcon-signer.js.map +1 -0
  65. package/dist/esm/heartbeat.js +8 -1
  66. package/dist/esm/heartbeat.js.map +1 -1
  67. package/dist/esm/logicsig.js +200 -15
  68. package/dist/esm/logicsig.js.map +1 -1
  69. package/dist/esm/main.js +8 -56
  70. package/dist/esm/main.js.map +1 -1
  71. package/dist/esm/makeTxn.js +11 -2
  72. package/dist/esm/makeTxn.js.map +1 -1
  73. package/dist/esm/mnemonic/mnemonic.js +25 -1
  74. package/dist/esm/mnemonic/mnemonic.js.map +1 -1
  75. package/dist/esm/multisigSigning.js +75 -0
  76. package/dist/esm/multisigSigning.js.map +1 -1
  77. package/dist/esm/pq-signer.js +76 -0
  78. package/dist/esm/pq-signer.js.map +1 -0
  79. package/dist/esm/signedTransaction.js +16 -2
  80. package/dist/esm/signedTransaction.js.map +1 -1
  81. package/dist/esm/signer.js.map +1 -1
  82. package/dist/esm/signing.js +91 -8
  83. package/dist/esm/signing.js.map +1 -1
  84. package/dist/esm/transaction.js +17 -1
  85. package/dist/esm/transaction.js.map +1 -1
  86. package/dist/esm/types/statedelta.js +17 -0
  87. package/dist/esm/types/statedelta.js.map +1 -1
  88. package/dist/esm/types/transactions/encoded.js +49 -1
  89. package/dist/esm/types/transactions/encoded.js.map +1 -1
  90. package/dist/esm/utils/ed25519-check.js +65 -0
  91. package/dist/esm/utils/ed25519-check.js.map +1 -0
  92. package/dist/esm/utils/utils.js +12 -0
  93. package/dist/esm/utils/utils.js.map +1 -1
  94. package/dist/types/client/v2/algod/algod.d.ts +0 -16
  95. package/dist/types/client/v2/algod/models/types.d.ts +90 -220
  96. package/dist/types/client/v2/indexer/models/types.d.ts +114 -7
  97. package/dist/types/composer.d.ts +3 -3
  98. package/dist/types/ed25519-signer.d.ts +7 -0
  99. package/dist/types/encoding/address.d.ts +37 -0
  100. package/dist/types/falcon-signer.d.ts +11 -0
  101. package/dist/types/heartbeat.d.ts +2 -0
  102. package/dist/types/logicsig.d.ts +72 -1
  103. package/dist/types/main.d.ts +8 -44
  104. package/dist/types/makeTxn.d.ts +8 -2
  105. package/dist/types/mnemonic/mnemonic.d.ts +13 -0
  106. package/dist/types/multisigSigning.d.ts +49 -0
  107. package/dist/types/pq-signer.d.ts +8 -0
  108. package/dist/types/signedTransaction.d.ts +7 -2
  109. package/dist/types/signer.d.ts +46 -0
  110. package/dist/types/signing.d.ts +45 -0
  111. package/dist/types/transaction.d.ts +10 -0
  112. package/dist/types/types/statedelta.d.ts +18 -0
  113. package/dist/types/types/transactions/base.d.ts +10 -0
  114. package/dist/types/types/transactions/encoded.d.ts +27 -0
  115. package/dist/types/utils/ed25519-check.d.ts +10 -0
  116. package/dist/types/utils/utils.d.ts +1 -0
  117. package/package.json +2 -1
  118. package/src/appAccess.ts +5 -0
  119. package/src/client/v2/algod/algod.ts +0 -19
  120. package/src/client/v2/algod/models/types.ts +324 -790
  121. package/src/client/v2/indexer/models/types.ts +280 -8
  122. package/src/composer.ts +7 -11
  123. package/src/ed25519-signer.ts +125 -0
  124. package/src/encoding/address.ts +80 -0
  125. package/src/falcon-signer.ts +33 -0
  126. package/src/heartbeat.ts +11 -0
  127. package/src/logicsig.ts +258 -16
  128. package/src/main.ts +30 -60
  129. package/src/makeTxn.ts +13 -4
  130. package/src/mnemonic/mnemonic.ts +34 -1
  131. package/src/multisigSigning.ts +111 -0
  132. package/src/pq-signer.ts +123 -0
  133. package/src/signedTransaction.ts +24 -0
  134. package/src/signer.ts +62 -0
  135. package/src/signing.ts +109 -8
  136. package/src/transaction.ts +19 -1
  137. package/src/types/statedelta.ts +34 -0
  138. package/src/types/transactions/base.ts +11 -0
  139. package/src/types/transactions/encoded.ts +88 -0
  140. package/src/utils/ed25519-check.ts +67 -0
  141. package/src/utils/utils.ts +13 -0
  142. package/dist/cjs/client/v2/algod/dryrun.js +0 -34
  143. package/dist/cjs/client/v2/algod/dryrun.js.map +0 -1
  144. package/dist/cjs/dryrun.js +0 -214
  145. package/dist/cjs/dryrun.js.map +0 -1
  146. package/dist/esm/client/v2/algod/dryrun.js +0 -28
  147. package/dist/esm/client/v2/algod/dryrun.js.map +0 -1
  148. package/dist/esm/dryrun.js +0 -208
  149. package/dist/esm/dryrun.js.map +0 -1
  150. package/dist/types/client/v2/algod/dryrun.d.ts +0 -11
  151. package/dist/types/dryrun.d.ts +0 -28
  152. package/src/client/v2/algod/dryrun.ts +0 -38
  153. package/src/dryrun.ts +0 -292
@@ -139,12 +139,10 @@ export class AtomicTransactionComposer {
139
139
  if (approvalProgram == null || clearProgram == null) {
140
140
  throw new Error('One of the following required parameters for OnApplicationComplete.UpdateApplicationOC is missing: approvalProgram, clearProgram');
141
141
  }
142
- if (numGlobalInts != null ||
143
- numGlobalByteSlices != null ||
144
- numLocalInts != null ||
145
- numLocalByteSlices != null ||
146
- extraPages != null) {
147
- throw new Error('One of the following application creation parameters were set on a non-creation call: numGlobalInts, numGlobalByteSlices, numLocalInts, numLocalByteSlices, extraPages');
142
+ // The local state schema cannot be changed after application creation. The global state
143
+ // schema (numGlobalInts, numGlobalByteSlices) and extraPages may be changed during an update.
144
+ if (numLocalInts != null || numLocalByteSlices != null) {
145
+ throw new Error('The local state schema cannot be changed on an update call: numLocalInts, numLocalByteSlices');
148
146
  }
149
147
  }
150
148
  else if (approvalProgram != null ||
@@ -1 +1 @@
1
- {"version":3,"file":"composer.js","sourceRoot":"","sources":["../../src/composer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"composer.js","sourceRoot":"","sources":["../../src/composer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import { Address } from './encoding/address.js';
2
+ import { encodeMsgpack } from './encoding/encoding.js';
3
+ import { MSIG_PROGRAM_TAG, PROGRAM_TAG, SIGN_PROGRAM_DATA_PREFIX, } from './logicsig.js';
4
+ import { addressFromMultisigPreImg, pksFromAddresses } from './multisig.js';
5
+ import { SignedTransaction } from './signedTransaction.js';
6
+ import { SIGN_BYTES_PREFIX } from './signing.js';
7
+ import { arrayEqual, concatArrays } from './utils/utils.js';
8
+ export function addressWithSignersFromRawEd25519Signer(ed25519SigningKey, sendingAddress = new Address(ed25519SigningKey.ed25519PublicKey)) {
9
+ const authAddress = new Address(ed25519SigningKey.ed25519PublicKey);
10
+ const { ed25519Signer: rawSigner } = ed25519SigningKey;
11
+ const txnSigner = async (txnGroup, indexesToSign) => {
12
+ const stxns = [];
13
+ for (const index of indexesToSign) {
14
+ const txn = txnGroup[index];
15
+ // eslint-disable-next-line no-await-in-loop
16
+ const sig = await rawSigner(txn.bytesToSign());
17
+ const stxn = new SignedTransaction({
18
+ txn,
19
+ sig,
20
+ sgnr: txn.sender.equals(authAddress) ? undefined : authAddress,
21
+ });
22
+ stxns.push(stxn);
23
+ }
24
+ return stxns.map((stxn) => encodeMsgpack(stxn));
25
+ };
26
+ const delegatedLsigSigner = async (lsig, msig) => {
27
+ if (msig) {
28
+ const pks = pksFromAddresses(msig.addrs);
29
+ const multisigAddr = addressFromMultisigPreImg({
30
+ version: msig.version,
31
+ threshold: msig.threshold,
32
+ pks,
33
+ });
34
+ const toBeSigned = concatArrays(MSIG_PROGRAM_TAG, multisigAddr.publicKey, lsig.logic);
35
+ const subsigs = pks.map((pk) => ({ pk }));
36
+ const ourSubsig = subsigs.find((subsig) => arrayEqual(subsig.pk, authAddress.publicKey));
37
+ if (ourSubsig === undefined) {
38
+ throw Error(`DelegatedLsigSigner could not find ${authAddress} as a signer in the multisig`);
39
+ }
40
+ const sig = await rawSigner(toBeSigned);
41
+ ourSubsig.s = sig;
42
+ return {
43
+ address: authAddress,
44
+ lmsig: {
45
+ v: msig.version,
46
+ thr: msig.threshold,
47
+ subsig: subsigs,
48
+ },
49
+ };
50
+ }
51
+ const toBeSigned = concatArrays(PROGRAM_TAG, lsig.logic);
52
+ const sig = await rawSigner(toBeSigned);
53
+ return { address: authAddress, sig };
54
+ };
55
+ const mxBytesSigner = async (bytes) => {
56
+ const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes);
57
+ return rawSigner(bytesToSign);
58
+ };
59
+ const programDataSigner = async (data, lsig) => {
60
+ const parts = concatArrays(lsig.address().publicKey, data);
61
+ const toBeSigned = concatArrays(SIGN_PROGRAM_DATA_PREFIX, parts);
62
+ return rawSigner(toBeSigned);
63
+ };
64
+ return {
65
+ address: sendingAddress,
66
+ programDataSigner,
67
+ txnSigner,
68
+ delegatedLsigSigner,
69
+ mxBytesSigner,
70
+ };
71
+ }
72
+ //# sourceMappingURL=ed25519-signer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ed25519-signer.js","sourceRoot":"","sources":["../../src/ed25519-signer.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,27 @@ import * as nacl from '../nacl/naclWrappers.js';
3
3
  import * as utils from '../utils/utils.js';
4
4
  import { encodeUint64 } from './uint64.js';
5
5
  import { bytesToHex } from './binarydata.js';
6
+ import { couldBeCurvePoint } from '../utils/ed25519-check.js';
6
7
  export const ALGORAND_ADDRESS_BYTE_LENGTH = 36;
7
8
  export const ALGORAND_CHECKSUM_BYTE_LENGTH = 4;
8
9
  export const ALGORAND_ADDRESS_LENGTH = 58;
9
10
  export const ALGORAND_ZERO_ADDRESS_STRING = 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY5HFKQ';
10
11
  export const MALFORMED_ADDRESS_ERROR_MSG = 'address seems to be malformed';
11
12
  export const CHECKSUM_ADDRESS_ERROR_MSG = 'wrong checksum for address';
13
+ /**
14
+ * The domain-separation prefix prepended to a post-quantum address preimage
15
+ * before hashing. Matches go-algorand's protocol.PostQuantumAddress HashID.
16
+ */
17
+ const PQ_ADDRESS_PREFIX = new TextEncoder().encode('PQA');
18
+ /**
19
+ * The required byte length of a post-quantum signature scheme identifier.
20
+ */
21
+ export const PQ_SCHEME_SIZE = 2;
22
+ /**
23
+ * The largest value a post-quantum address salt may take. The salt occupies a
24
+ * single byte of the address preimage.
25
+ */
26
+ export const PQ_SALT_MAX = 0xff;
12
27
  function checksumFromPublicKey(pk) {
13
28
  return Uint8Array.from(nacl
14
29
  .genericHash(pk)
@@ -124,4 +139,47 @@ export function getApplicationAddress(appID) {
124
139
  const hash = nacl.genericHash(toBeSigned);
125
140
  return new Address(Uint8Array.from(hash));
126
141
  }
142
+ /**
143
+ * Derive a post-quantum (PQ) account address together with the canonical salt
144
+ * used to derive it.
145
+ *
146
+ * @param schemeBytes - The 2-byte ASCII PQ scheme identifier (e.g. "f1" for Falcon-1024).
147
+ * @param key - The scheme's canonical public key.
148
+ * @returns The derived Address and the canonical 1-byte salt.
149
+ */
150
+ export function addressFromPQKey(schemeBytes, key) {
151
+ if (schemeBytes.length !== PQ_SCHEME_SIZE)
152
+ throw new Error(`invalid PQ scheme length: expected ${PQ_SCHEME_SIZE} bytes, got ${schemeBytes.length}`);
153
+ // Rejection-sample the lowest salt that yields a PQ-compliant (non-Ed25519)
154
+ // address. The probability of exhausting the range is ~2^-256.
155
+ for (let salt = 0; salt <= PQ_SALT_MAX; salt++) {
156
+ const toBeHashed = utils.concatArrays(PQ_ADDRESS_PREFIX, schemeBytes, Uint8Array.of(salt), key);
157
+ const publicKey = Uint8Array.from(nacl.genericHash(toBeHashed));
158
+ if (!couldBeCurvePoint(publicKey)) {
159
+ return { address: new Address(publicKey), salt };
160
+ }
161
+ }
162
+ throw new Error('no canonical salt exists for this PQ public key and scheme');
163
+ }
164
+ /**
165
+ * Derive the account address that a post-quantum signature authorizes.
166
+ *
167
+ * Unlike an Ed25519 signature, a PQ signature carries the scheme, salt and
168
+ * public key of the signing account, so the address it authorizes is fully
169
+ * determined by the signature and does not have to be supplied out of band.
170
+ *
171
+ * This also validates the signature's self-consistency: the salt must be the
172
+ * canonical one for the given scheme and public key, which is what the network
173
+ * requires.
174
+ *
175
+ * @param pqsig - The post-quantum signature to derive the address from.
176
+ * @returns The address of the account the signature authorizes.
177
+ */
178
+ export function addressFromPQSig(pqsig) {
179
+ const { address, salt } = addressFromPQKey(pqsig.sch, pqsig.pk);
180
+ if (salt !== pqsig.slt) {
181
+ throw new Error(`invalid PQ signature salt: expected the canonical salt ${salt}, got ${pqsig.slt}`);
182
+ }
183
+ return address;
184
+ }
127
185
  //# sourceMappingURL=address.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"address.js","sourceRoot":"","sources":["../../../src/encoding/address.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"address.js","sourceRoot":"","sources":["../../../src/encoding/address.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { addressWithSignersFromRawPQSigner } from './pq-signer.js';
2
+ /**
3
+ * The 2-byte ASCII identifier of the Falcon-1024 post-quantum signature scheme.
4
+ */
5
+ export const FALCON_1024_SCHEME = new TextEncoder().encode('f1');
6
+ export function addressWithSignersFromRawFalcon1024Signer(falconSigningKey, sendingAddress) {
7
+ return addressWithSignersFromRawPQSigner({
8
+ pqScheme: FALCON_1024_SCHEME,
9
+ pqPublicKey: falconSigningKey.falcon1024PublicKey,
10
+ pqSigner: falconSigningKey.falcon1024Signer,
11
+ }, sendingAddress);
12
+ }
13
+ //# sourceMappingURL=falcon-signer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"falcon-signer.js","sourceRoot":"","sources":["../../src/falcon-signer.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iCAAiC,EAAE,MAAM,gBAAgB,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAOjE,MAAM,UAAU,yCAAyC,CACvD,gBAAsC,EACtC,cAAwB;IAIxB,OAAO,iCAAiC,CACtC;QACE,QAAQ,EAAE,kBAAkB;QAC5B,WAAW,EAAE,gBAAgB,CAAC,mBAAmB;QACjD,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB;KAC5C,EACD,cAAc,CACf,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import { AddressSchema, Uint64Schema, ByteArraySchema, FixedLengthByteArraySchema, NamedMapSchema, allOmitEmpty, } from './encoding/schema/index.js';
1
+ import { AddressSchema, BooleanSchema, Uint64Schema, ByteArraySchema, FixedLengthByteArraySchema, NamedMapSchema, allOmitEmpty, } from './encoding/schema/index.js';
2
2
  export class HeartbeatProof {
3
3
  constructor(params) {
4
4
  this.sig = params.sig;
@@ -62,6 +62,7 @@ export class Heartbeat {
62
62
  this.seed = params.seed;
63
63
  this.voteID = params.voteID;
64
64
  this.keyDilution = params.keyDilution;
65
+ this.challengeDiscount = params.challengeDiscount ?? false;
65
66
  }
66
67
  // eslint-disable-next-line class-methods-use-this
67
68
  getEncodingSchema() {
@@ -74,6 +75,7 @@ export class Heartbeat {
74
75
  ['sd', this.seed],
75
76
  ['vid', this.voteID],
76
77
  ['kd', this.keyDilution],
78
+ ['c', this.challengeDiscount],
77
79
  ]);
78
80
  }
79
81
  static fromEncodingData(data) {
@@ -86,6 +88,7 @@ export class Heartbeat {
86
88
  seed: data.get('sd'),
87
89
  voteID: data.get('vid'),
88
90
  keyDilution: data.get('kd'),
91
+ challengeDiscount: data.get('c'),
89
92
  });
90
93
  }
91
94
  }
@@ -110,5 +113,9 @@ Heartbeat.encodingSchema = new NamedMapSchema(allOmitEmpty([
110
113
  key: 'kd', // HbKeyDilution
111
114
  valueSchema: new Uint64Schema(),
112
115
  },
116
+ {
117
+ key: 'c', // HbChallengeDiscount
118
+ valueSchema: new BooleanSchema(),
119
+ },
113
120
  ]));
114
121
  //# sourceMappingURL=heartbeat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../../src/heartbeat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../../src/heartbeat.ts"],"names":[],"mappings":"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"}