ox 0.13.2 → 0.14.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 (61) hide show
  1. package/Bech32m/package.json +6 -0
  2. package/CHANGELOG.md +19 -0
  3. package/_cjs/core/Bech32m.js +205 -0
  4. package/_cjs/core/Bech32m.js.map +1 -0
  5. package/_cjs/index.js +3 -2
  6. package/_cjs/index.js.map +1 -1
  7. package/_cjs/tempo/KeyAuthorization.js +4 -4
  8. package/_cjs/tempo/KeyAuthorization.js.map +1 -1
  9. package/_cjs/tempo/SignatureEnvelope.js +18 -3
  10. package/_cjs/tempo/SignatureEnvelope.js.map +1 -1
  11. package/_cjs/tempo/TempoAddress.js +40 -39
  12. package/_cjs/tempo/TempoAddress.js.map +1 -1
  13. package/_cjs/tempo/TxEnvelopeTempo.js +5 -2
  14. package/_cjs/tempo/TxEnvelopeTempo.js.map +1 -1
  15. package/_cjs/tempo/index.js.map +1 -1
  16. package/_cjs/version.js +1 -1
  17. package/_esm/core/Bech32m.js +238 -0
  18. package/_esm/core/Bech32m.js.map +1 -0
  19. package/_esm/index.js +24 -0
  20. package/_esm/index.js.map +1 -1
  21. package/_esm/tempo/KeyAuthorization.js +19 -9
  22. package/_esm/tempo/KeyAuthorization.js.map +1 -1
  23. package/_esm/tempo/SignatureEnvelope.js +22 -5
  24. package/_esm/tempo/SignatureEnvelope.js.map +1 -1
  25. package/_esm/tempo/TempoAddress.js +47 -46
  26. package/_esm/tempo/TempoAddress.js.map +1 -1
  27. package/_esm/tempo/TxEnvelopeTempo.js +42 -2
  28. package/_esm/tempo/TxEnvelopeTempo.js.map +1 -1
  29. package/_esm/tempo/index.js +2 -2
  30. package/_esm/tempo/index.js.map +1 -1
  31. package/_esm/version.js +1 -1
  32. package/_types/core/Bech32m.d.ts +93 -0
  33. package/_types/core/Bech32m.d.ts.map +1 -0
  34. package/_types/index.d.ts +24 -0
  35. package/_types/index.d.ts.map +1 -1
  36. package/_types/tempo/KeyAuthorization.d.ts +17 -7
  37. package/_types/tempo/KeyAuthorization.d.ts.map +1 -1
  38. package/_types/tempo/SignatureEnvelope.d.ts +19 -5
  39. package/_types/tempo/SignatureEnvelope.d.ts.map +1 -1
  40. package/_types/tempo/TempoAddress.d.ts +19 -11
  41. package/_types/tempo/TempoAddress.d.ts.map +1 -1
  42. package/_types/tempo/TxEnvelopeTempo.d.ts +47 -1
  43. package/_types/tempo/TxEnvelopeTempo.d.ts.map +1 -1
  44. package/_types/tempo/index.d.ts +2 -2
  45. package/_types/tempo/index.d.ts.map +1 -1
  46. package/_types/version.d.ts +1 -1
  47. package/core/Bech32m.ts +263 -0
  48. package/index.ts +24 -2
  49. package/package.json +6 -1
  50. package/tempo/KeyAuthorization.test.ts +70 -23
  51. package/tempo/KeyAuthorization.ts +21 -18
  52. package/tempo/SignatureEnvelope.test.ts +15 -8
  53. package/tempo/SignatureEnvelope.ts +43 -8
  54. package/tempo/TempoAddress.test.ts +49 -14
  55. package/tempo/TempoAddress.ts +56 -59
  56. package/tempo/Transaction.test.ts +4 -2
  57. package/tempo/TxEnvelopeTempo.test.ts +7 -3
  58. package/tempo/TxEnvelopeTempo.ts +52 -1
  59. package/tempo/e2e.test.ts +45 -10
  60. package/tempo/index.ts +6 -2
  61. package/version.ts +1 -1
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/core/Bech32m.d.ts",
4
+ "main": "../_cjs/core/Bech32m.js",
5
+ "module": "../_esm/core/Bech32m.js"
6
+ }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # ox
2
2
 
3
+ ## 0.14.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#178](https://github.com/wevm/ox/pull/178) [`4a79ac5`](https://github.com/wevm/ox/commit/4a79ac540c05796ebc92a0d54ce0049a6ff5e195) Thanks [@jxom](https://github.com/jxom)! - **Breaking (`ox/tempo`):** `KeyAuthorization.chainId` is now required.
8
+
9
+ ```diff
10
+ const authorization = KeyAuthorization.from({
11
+ address,
12
+ + chainId: 1n,
13
+ expiry: 1234567890,
14
+ type: 'secp256k1',
15
+ })
16
+ ```
17
+
18
+ ### Patch Changes
19
+
20
+ - [#178](https://github.com/wevm/ox/pull/178) [`4a79ac5`](https://github.com/wevm/ox/commit/4a79ac540c05796ebc92a0d54ce0049a6ff5e195) Thanks [@jxom](https://github.com/jxom)! - **`ox/tempo`:** Added support for V2 keychain signature type (`0x04`) which binds the inner signature to the user account via `keccak256(0x04 || sigHash || userAddress)`.
21
+
3
22
  ## 0.13.2
4
23
 
5
24
  ### Patch Changes
@@ -0,0 +1,205 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExceedsLengthError = exports.InvalidHrpError = exports.MixedCaseError = exports.InvalidPaddingError = exports.InvalidCharacterError = exports.InvalidChecksumError = exports.NoSeparatorError = void 0;
4
+ exports.encode = encode;
5
+ exports.decode = decode;
6
+ const Errors_js_1 = require("./Errors.js");
7
+ function encode(hrp, data, options = {}) {
8
+ const { limit = 90 } = options;
9
+ hrp = hrp.toLowerCase();
10
+ if (hrp.length === 0)
11
+ throw new InvalidHrpError();
12
+ for (let i = 0; i < hrp.length; i++) {
13
+ const c = hrp.charCodeAt(i);
14
+ if (c < 33 || c > 126)
15
+ throw new InvalidHrpError();
16
+ }
17
+ const data5 = convertBits(data, 8, 5, true);
18
+ if (hrp.length + 1 + data5.length + 6 > limit)
19
+ throw new ExceedsLengthError({ limit });
20
+ const checksum = createChecksum(hrp, data5);
21
+ let result = hrp + '1';
22
+ for (const d of data5.concat(checksum))
23
+ result += alphabet[d];
24
+ return result;
25
+ }
26
+ function decode(str, options = {}) {
27
+ const { limit = 90 } = options;
28
+ if (str.length > limit)
29
+ throw new ExceedsLengthError({ limit });
30
+ if (str !== str.toLowerCase() && str !== str.toUpperCase())
31
+ throw new MixedCaseError();
32
+ const lower = str.toLowerCase();
33
+ const pos = lower.lastIndexOf('1');
34
+ if (pos === -1)
35
+ throw new NoSeparatorError();
36
+ if (pos === 0)
37
+ throw new InvalidHrpError();
38
+ if (pos + 7 > lower.length)
39
+ throw new InvalidChecksumError();
40
+ const hrp = lower.slice(0, pos);
41
+ for (let i = 0; i < hrp.length; i++) {
42
+ const c = hrp.charCodeAt(i);
43
+ if (c < 33 || c > 126)
44
+ throw new InvalidHrpError();
45
+ }
46
+ const dataChars = lower.slice(pos + 1);
47
+ const data5 = [];
48
+ for (const c of dataChars) {
49
+ const v = alphabetMap[c];
50
+ if (v === undefined)
51
+ throw new InvalidCharacterError({ character: c });
52
+ data5.push(v);
53
+ }
54
+ if (!verifyChecksum(hrp, data5))
55
+ throw new InvalidChecksumError();
56
+ const data8 = convertBits(data5.slice(0, -6), 5, 8, false);
57
+ return { hrp, data: new Uint8Array(data8) };
58
+ }
59
+ class NoSeparatorError extends Errors_js_1.BaseError {
60
+ constructor() {
61
+ super('Bech32m string has no separator.');
62
+ Object.defineProperty(this, "name", {
63
+ enumerable: true,
64
+ configurable: true,
65
+ writable: true,
66
+ value: 'Bech32m.NoSeparatorError'
67
+ });
68
+ }
69
+ }
70
+ exports.NoSeparatorError = NoSeparatorError;
71
+ class InvalidChecksumError extends Errors_js_1.BaseError {
72
+ constructor() {
73
+ super('Invalid bech32m checksum.');
74
+ Object.defineProperty(this, "name", {
75
+ enumerable: true,
76
+ configurable: true,
77
+ writable: true,
78
+ value: 'Bech32m.InvalidChecksumError'
79
+ });
80
+ }
81
+ }
82
+ exports.InvalidChecksumError = InvalidChecksumError;
83
+ class InvalidCharacterError extends Errors_js_1.BaseError {
84
+ constructor({ character }) {
85
+ super(`Invalid bech32m character: "${character}".`);
86
+ Object.defineProperty(this, "name", {
87
+ enumerable: true,
88
+ configurable: true,
89
+ writable: true,
90
+ value: 'Bech32m.InvalidCharacterError'
91
+ });
92
+ }
93
+ }
94
+ exports.InvalidCharacterError = InvalidCharacterError;
95
+ class InvalidPaddingError extends Errors_js_1.BaseError {
96
+ constructor() {
97
+ super('Invalid padding in bech32m data.');
98
+ Object.defineProperty(this, "name", {
99
+ enumerable: true,
100
+ configurable: true,
101
+ writable: true,
102
+ value: 'Bech32m.InvalidPaddingError'
103
+ });
104
+ }
105
+ }
106
+ exports.InvalidPaddingError = InvalidPaddingError;
107
+ class MixedCaseError extends Errors_js_1.BaseError {
108
+ constructor() {
109
+ super('Bech32m string must not contain mixed case.');
110
+ Object.defineProperty(this, "name", {
111
+ enumerable: true,
112
+ configurable: true,
113
+ writable: true,
114
+ value: 'Bech32m.MixedCaseError'
115
+ });
116
+ }
117
+ }
118
+ exports.MixedCaseError = MixedCaseError;
119
+ class InvalidHrpError extends Errors_js_1.BaseError {
120
+ constructor() {
121
+ super('Invalid bech32m human-readable part (HRP). Must be 1+ characters in ASCII range 33-126.');
122
+ Object.defineProperty(this, "name", {
123
+ enumerable: true,
124
+ configurable: true,
125
+ writable: true,
126
+ value: 'Bech32m.InvalidHrpError'
127
+ });
128
+ }
129
+ }
130
+ exports.InvalidHrpError = InvalidHrpError;
131
+ class ExceedsLengthError extends Errors_js_1.BaseError {
132
+ constructor({ limit }) {
133
+ super(`Bech32m string exceeds length limit of ${limit}.`);
134
+ Object.defineProperty(this, "name", {
135
+ enumerable: true,
136
+ configurable: true,
137
+ writable: true,
138
+ value: 'Bech32m.ExceedsLengthError'
139
+ });
140
+ }
141
+ }
142
+ exports.ExceedsLengthError = ExceedsLengthError;
143
+ const alphabet = 'qpzry9x8gf2tvdw0s3jn54khce6mua7l';
144
+ const alphabetMap = (() => {
145
+ const map = {};
146
+ for (let i = 0; i < alphabet.length; i++)
147
+ map[alphabet[i]] = i;
148
+ return map;
149
+ })();
150
+ const BECH32M_CONST = 0x2bc830a3;
151
+ const GEN = [0x3b6a57b2, 0x26508e6d, 0x1ea119fa, 0x3d4233dd, 0x2a1462b3];
152
+ function polymod(values) {
153
+ let chk = 1;
154
+ for (const v of values) {
155
+ const b = chk >> 25;
156
+ chk = ((chk & 0x1ffffff) << 5) ^ v;
157
+ for (let i = 0; i < 5; i++)
158
+ if ((b >> i) & 1)
159
+ chk ^= GEN[i];
160
+ }
161
+ return chk;
162
+ }
163
+ function hrpExpand(hrp) {
164
+ const ret = [];
165
+ for (let i = 0; i < hrp.length; i++)
166
+ ret.push(hrp.charCodeAt(i) >> 5);
167
+ ret.push(0);
168
+ for (let i = 0; i < hrp.length; i++)
169
+ ret.push(hrp.charCodeAt(i) & 31);
170
+ return ret;
171
+ }
172
+ function createChecksum(hrp, data) {
173
+ const values = hrpExpand(hrp).concat(data).concat([0, 0, 0, 0, 0, 0]);
174
+ const mod = polymod(values) ^ BECH32M_CONST;
175
+ const ret = [];
176
+ for (let i = 0; i < 6; i++)
177
+ ret.push((mod >> (5 * (5 - i))) & 31);
178
+ return ret;
179
+ }
180
+ function verifyChecksum(hrp, data) {
181
+ return polymod(hrpExpand(hrp).concat(data)) === BECH32M_CONST;
182
+ }
183
+ function convertBits(data, fromBits, toBits, pad) {
184
+ let acc = 0;
185
+ let bits = 0;
186
+ const maxv = (1 << toBits) - 1;
187
+ const ret = [];
188
+ for (const value of data) {
189
+ acc = (acc << fromBits) | value;
190
+ bits += fromBits;
191
+ while (bits >= toBits) {
192
+ bits -= toBits;
193
+ ret.push((acc >> bits) & maxv);
194
+ }
195
+ }
196
+ if (pad) {
197
+ if (bits > 0)
198
+ ret.push((acc << (toBits - bits)) & maxv);
199
+ }
200
+ else if (bits >= fromBits || (acc << (toBits - bits)) & maxv) {
201
+ throw new InvalidPaddingError();
202
+ }
203
+ return ret;
204
+ }
205
+ //# sourceMappingURL=Bech32m.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Bech32m.js","sourceRoot":"","sources":["../../core/Bech32m.ts"],"names":[],"mappings":"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"}
package/_cjs/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RpcTransport = exports.RpcSchema = exports.RpcResponse = exports.RpcRequest = exports.Rlp = exports.PublicKey = exports.Provider = exports.PersonalMessage = exports.P256 = exports.Mnemonic = exports.Log = exports.Kzg = exports.Keystore = exports.Json = exports.Hex = exports.HdKey = exports.Hash = exports.Filter = exports.Fee = exports.Errors = exports.Ens = exports.Ed25519 = exports.CoseKey = exports.ContractAddress = exports.CompactSize = exports.Cbor = exports.Caches = exports.Bytes = exports.BlsPoint = exports.Bls = exports.Bloom = exports.BlockOverrides = exports.Block = exports.Blobs = exports.BinaryStateTree = exports.Base64 = exports.Base58 = exports.Base32 = exports.Authorization = exports.AesGcm = exports.Address = exports.AccountProof = exports.AccessList = exports.AbiParameters = exports.AbiItem = exports.AbiFunction = exports.AbiEvent = exports.AbiError = exports.AbiConstructor = exports.Abi = void 0;
4
- exports.X25519 = exports.Withdrawal = exports.WebCryptoP256 = exports.WebAuthnP256 = exports.Value = exports.ValidatorData = exports.TypedData = exports.TxEnvelopeLegacy = exports.TxEnvelopeEip7702 = exports.TxEnvelopeEip4844 = exports.TxEnvelopeEip2930 = exports.TxEnvelopeEip1559 = exports.TransactionEnvelope = exports.TransactionRequest = exports.TransactionReceipt = exports.Transaction = exports.StateOverrides = exports.Solidity = exports.Siwe = exports.Signature = exports.Secp256k1 = void 0;
3
+ exports.RpcSchema = exports.RpcResponse = exports.RpcRequest = exports.Rlp = exports.PublicKey = exports.Provider = exports.PersonalMessage = exports.P256 = exports.Mnemonic = exports.Log = exports.Kzg = exports.Keystore = exports.Json = exports.Hex = exports.HdKey = exports.Hash = exports.Filter = exports.Fee = exports.Errors = exports.Ens = exports.Ed25519 = exports.CoseKey = exports.ContractAddress = exports.CompactSize = exports.Cbor = exports.Caches = exports.Bytes = exports.BlsPoint = exports.Bls = exports.Bloom = exports.BlockOverrides = exports.Block = exports.Blobs = exports.BinaryStateTree = exports.Bech32m = exports.Base64 = exports.Base58 = exports.Base32 = exports.Authorization = exports.AesGcm = exports.Address = exports.AccountProof = exports.AccessList = exports.AbiParameters = exports.AbiItem = exports.AbiFunction = exports.AbiEvent = exports.AbiError = exports.AbiConstructor = exports.Abi = void 0;
4
+ exports.X25519 = exports.Withdrawal = exports.WebCryptoP256 = exports.WebAuthnP256 = exports.Value = exports.ValidatorData = exports.TypedData = exports.TxEnvelopeLegacy = exports.TxEnvelopeEip7702 = exports.TxEnvelopeEip4844 = exports.TxEnvelopeEip2930 = exports.TxEnvelopeEip1559 = exports.TransactionEnvelope = exports.TransactionRequest = exports.TransactionReceipt = exports.Transaction = exports.StateOverrides = exports.Solidity = exports.Siwe = exports.Signature = exports.Secp256k1 = exports.RpcTransport = void 0;
5
5
  exports.Abi = require("./core/Abi.js");
6
6
  exports.AbiConstructor = require("./core/AbiConstructor.js");
7
7
  exports.AbiError = require("./core/AbiError.js");
@@ -17,6 +17,7 @@ exports.Authorization = require("./core/Authorization.js");
17
17
  exports.Base32 = require("./core/Base32.js");
18
18
  exports.Base58 = require("./core/Base58.js");
19
19
  exports.Base64 = require("./core/Base64.js");
20
+ exports.Bech32m = require("./core/Bech32m.js");
20
21
  exports.BinaryStateTree = require("./core/BinaryStateTree.js");
21
22
  exports.Blobs = require("./core/Blobs.js");
22
23
  exports.Block = require("./core/Block.js");
package/_cjs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;AAuHA,uCAAoC;AA4EpC,6DAA0D;AAwE1D,iDAA8C;AAmH9C,iDAA8C;AA8F9C,uDAAoD;AA8EpD,+CAA4C;AAwG5C,2DAAwD;AAOxD,qDAAkD;AAOlD,yDAAsD;AAuDtD,+CAA4C;AAqC5C,6CAA0C;AA0E1C,2DAAwD;AAyBxD,6CAA0C;AAuD1C,6CAA0C;AAsD1C,6CAA0C;AAO1C,+DAA4D;AAO5D,2CAAwC;AAgCxC,2CAAwC;AAOxC,6DAA0D;AAO1D,2CAAwC;AAoHxC,uCAAoC;AA6CpC,iDAA8C;AAgI9C,2CAAwC;AAExC,6CAA0C;AAiC1C,yCAAsC;AAyBtC,uDAAoD;AAsCpD,+DAA4D;AAgC5D,+CAA4C;AAgC5C,+CAA4C;AA+B5C,uCAAoC;AAEpC,6CAA0C;AAI1C,uCAAoC;AAMpC,6CAA0C;AAc1C,yCAAsC;AAatC,2CAAwC;AAkHxC,uCAAoC;AAkCpC,yCAAsC;AA+DtC,iDAA8C;AAQ9C,uCAAoC;AA0DpC,uCAAoC;AA4DpC,iDAA8C;AAwE9C,yCAAsC;AAmBtC,+DAA4D;AAoF5D,iDAA8C;AAwC9C,mDAAgD;AAiBhD,uCAAoC;AAmCpC,qDAAkD;AAmFlD,uDAAoD;AAMpD,mDAAgD;AAyBhD,yDAAsD;AAwEtD,mDAAgD;AAmChD,mDAAgD;AAqGhD,yCAAsC;AAEtC,iDAA8C;AAO9C,6DAA0D;AAuC1D,uDAAoD;AA4CpD,qEAAkE;AAwBlE,qEAAkE;AAelE,8DAA2D;AAsK3D,mEAAgE;AA8JhE,mEAAgE;AAuLhE,mEAAgE;AAoIhE,mEAAgE;AA0JhE,iEAA8D;AAkD9D,mDAAgD;AAOhD,2DAAwD;AAsBxD,2CAAwC;AAkFxC,yDAAsD;AAiEtD,2DAAwD;AAOxD,qDAAkD;AAmClD,6CAA0C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;AAuHA,uCAAoC;AA4EpC,6DAA0D;AAwE1D,iDAA8C;AAmH9C,iDAA8C;AA8F9C,uDAAoD;AA8EpD,+CAA4C;AAwG5C,2DAAwD;AAOxD,qDAAkD;AAOlD,yDAAsD;AAuDtD,+CAA4C;AAqC5C,6CAA0C;AA0E1C,2DAAwD;AAyBxD,6CAA0C;AAsD1C,6CAA0C;AAqD1C,6CAA0C;AAwB1C,+CAA4C;AAO5C,+DAA4D;AAO5D,2CAAwC;AAgCxC,2CAAwC;AAOxC,6DAA0D;AAO1D,2CAAwC;AAoHxC,uCAAoC;AA6CpC,iDAA8C;AAgI9C,2CAAwC;AAExC,6CAA0C;AAiC1C,yCAAsC;AAyBtC,uDAAoD;AAsCpD,+DAA4D;AAgC5D,+CAA4C;AAgC5C,+CAA4C;AA+B5C,uCAAoC;AAEpC,6CAA0C;AAI1C,uCAAoC;AAMpC,6CAA0C;AAc1C,yCAAsC;AAatC,2CAAwC;AAkHxC,uCAAoC;AAkCpC,yCAAsC;AA+DtC,iDAA8C;AAQ9C,uCAAoC;AA0DpC,uCAAoC;AA4DpC,iDAA8C;AAwE9C,yCAAsC;AAmBtC,+DAA4D;AAoF5D,iDAA8C;AAwC9C,mDAAgD;AAiBhD,uCAAoC;AAmCpC,qDAAkD;AAmFlD,uDAAoD;AAMpD,mDAAgD;AAyBhD,yDAAsD;AAwEtD,mDAAgD;AAmChD,mDAAgD;AAqGhD,yCAAsC;AAEtC,iDAA8C;AAO9C,6DAA0D;AAuC1D,uDAAoD;AA4CpD,qEAAkE;AAwBlE,qEAAkE;AAelE,8DAA2D;AAsK3D,mEAAgE;AA8JhE,mEAAgE;AAuLhE,mEAAgE;AAoIhE,mEAAgE;AA0JhE,iEAA8D;AAkD9D,mDAAgD;AAOhD,2DAAwD;AAsBxD,2CAAwC;AAkFxC,yDAAsD;AAiEtD,2DAAwD;AAOxD,qDAAkD;AAmClD,6CAA0C"}
@@ -24,7 +24,7 @@ function from(authorization, options = {}) {
24
24
  return authorization;
25
25
  }
26
26
  function fromRpc(authorization) {
27
- const { chainId = '0x0', keyId, expiry = 0, limits, keyType } = authorization;
27
+ const { chainId, keyId, expiry = 0, limits, keyType } = authorization;
28
28
  const signature = SignatureEnvelope.fromRpc(authorization.signature);
29
29
  return {
30
30
  address: keyId,
@@ -58,7 +58,7 @@ function fromTuple(tuple) {
58
58
  address: keyId,
59
59
  expiry: typeof expiry !== 'undefined' ? hexToNumber(expiry) : undefined,
60
60
  type: keyType,
61
- ...(chainId !== '0x' ? { chainId: Hex.toBigInt(chainId) } : {}),
61
+ chainId: chainId === '0x' ? 0n : Hex.toBigInt(chainId),
62
62
  ...(typeof expiry !== 'undefined' ? { expiry: hexToNumber(expiry) } : {}),
63
63
  ...(typeof limits !== 'undefined'
64
64
  ? {
@@ -90,7 +90,7 @@ function serialize(authorization) {
90
90
  return Rlp.fromHex(tuple);
91
91
  }
92
92
  function toRpc(authorization) {
93
- const { address, chainId = 0n, expiry, limits, type, signature, } = authorization;
93
+ const { address, chainId, expiry, limits, type, signature } = authorization;
94
94
  return {
95
95
  chainId: chainId === 0n ? '0x' : Hex.fromNumber(chainId),
96
96
  expiry: typeof expiry === 'number' ? Hex.fromNumber(expiry) : null,
@@ -104,7 +104,7 @@ function toRpc(authorization) {
104
104
  };
105
105
  }
106
106
  function toTuple(authorization) {
107
- const { address, chainId = 0n, expiry, limits } = authorization;
107
+ const { address, chainId, expiry, limits } = authorization;
108
108
  const signature = authorization.signature
109
109
  ? SignatureEnvelope.serialize(authorization.signature)
110
110
  : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"KeyAuthorization.js","sourceRoot":"","sources":["../../tempo/KeyAuthorization.ts"],"names":[],"mappings":";;AAsPA,oBAeC;AAqDD,0BAcC;AA6CD,8BAoCC;AA2CD,wCAEC;AA+BD,kCAGC;AAiCD,oBAIC;AAmCD,8BAGC;AAuCD,sBAqBC;AAoCD,0BAkCC;AAnrBD,wCAAuC;AACvC,sCAAqC;AAErC,sCAAqC;AACrC,4DAA2D;AAgP3D,SAAgB,IAAI,CAIlB,aAA+C,EAC/C,UAAmC,EAAE;IAErC,IAAI,OAAO,aAAa,CAAC,MAAM,KAAK,QAAQ;QAC1C,OAAO,OAAO,CAAC,aAAoB,CAAU,CAAA;IAC/C,IAAI,OAAO,CAAC,SAAS;QACnB,OAAO;YACL,GAAG,aAAa;YAChB,SAAS,EAAE,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;SAC5C,CAAA;IACZ,OAAO,aAAsB,CAAA;AAC/B,CAAC;AAqDD,SAAgB,OAAO,CAAC,aAAkB;IACxC,MAAM,EAAE,OAAO,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,CAAA;IAC7E,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;IACpE,OAAO;QACL,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;QACtD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;SAC3B,CAAC,CAAC;QACH,SAAS;QACT,IAAI,EAAE,OAAO;KACd,CAAA;AACH,CAAC;AA6CD,SAAgB,SAAS,CACvB,KAAY;IAEZ,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC,GAAG,KAAK,CAAA;IAClD,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,aAAa,CAAA;IACnE,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE;QACpB,QAAQ,WAAW,EAAE,CAAC;YACpB,KAAK,IAAI,CAAC;YACV,KAAK,MAAM;gBACT,OAAO,WAAW,CAAA;YACpB,KAAK,MAAM;gBACT,OAAO,MAAM,CAAA;YACf,KAAK,MAAM;gBACT,OAAO,UAAU,CAAA;YACnB;gBACE,MAAM,IAAI,KAAK,CAAC,qBAAqB,WAAW,EAAE,CAAC,CAAA;QACvD,CAAC;IACH,CAAC,CAAC,EAAE,CAAA;IACJ,MAAM,IAAI,GAAqB;QAC7B,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;QACvE,IAAI,EAAE,OAAO;QACb,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,OAAO,MAAM,KAAK,WAAW;YAC/B,CAAC,CAAC;gBACE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;oBACtC,KAAK;oBACL,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;iBAC1B,CAAC,CAAC;aACJ;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAA;IACD,IAAI,mBAAmB;QACrB,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAA;IACrE,OAAO,IAAI,CAAC,IAAI,CAAU,CAAA;AAC5B,CAAC;AA2CD,SAAgB,cAAc,CAAC,aAA+B;IAC5D,OAAO,IAAI,CAAC,aAAa,CAAC,CAAA;AAC5B,CAAC;AA+BD,SAAgB,WAAW,CAAC,UAAmB;IAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAqB,CAAA;IACvD,OAAO,SAAS,CAAC,KAAK,CAAC,CAAA;AACzB,CAAC;AAiCD,SAAgB,IAAI,CAAC,aAA+B;IAClD,MAAM,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;IACnD,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAClD,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;AACnC,CAAC;AAmCD,SAAgB,SAAS,CAAC,aAA+B;IACvD,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;IACpC,OAAO,GAAG,CAAC,OAAO,CAAC,KAAY,CAAC,CAAA;AAClC,CAAC;AAuCD,SAAgB,KAAK,CAAC,aAAqB;IACzC,MAAM,EACJ,OAAO,EACP,OAAO,GAAG,EAAE,EACZ,MAAM,EACN,MAAM,EACN,IAAI,EACJ,SAAS,GACV,GAAG,aAAa,CAAA;IAEjB,OAAO;QACL,OAAO,EAAE,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;QACxD,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;QAClE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YACzC,KAAK;YACL,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;QACH,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC;QAC7C,OAAO,EAAE,IAAI;KACd,CAAA;AACH,CAAC;AAoCD,SAAgB,OAAO,CACrB,aAA4B;IAE5B,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAAA;IAC/D,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS;QACvC,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC;QACtD,CAAC,CAAC,SAAS,CAAA;IACb,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE;QACjB,QAAQ,aAAa,CAAC,IAAI,EAAE,CAAC;YAC3B,KAAK,WAAW;gBACd,OAAO,IAAI,CAAA;YACb,KAAK,MAAM;gBACT,OAAO,MAAM,CAAA;YACf,KAAK,UAAU;gBACb,OAAO,MAAM,CAAA;YACf;gBACE,MAAM,IAAI,KAAK,CAAC,qBAAqB,aAAa,CAAC,IAAI,EAAE,CAAC,CAAA;QAC9D,CAAC;IACH,CAAC,CAAC,EAAE,CAAA;IACJ,MAAM,WAAW,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;QACzC,KAAK,CAAC,KAAK;QACX,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;KACzB,CAAC,CAAA;IACF,MAAM,kBAAkB,GAAG;QACzB,WAAW,CAAC,OAAO,CAAC;QACpB,IAAI;QACJ,OAAO;QAEP,OAAO,MAAM,KAAK,QAAQ,IAAI,WAAW;YACvC,CAAC,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,CAAC;YAC1B,CAAC,CAAC,SAAS;QACb,WAAW;KACZ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACjB,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAU,CAAA;AACzE,CAAC;AASD,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;AACpD,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;AACnD,CAAC;AAED,SAAS,WAAW,CAAC,GAAY;IAC/B,OAAO,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,WAAW,CAAC,GAAY;IAC/B,OAAO,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;AAC7C,CAAC"}
1
+ {"version":3,"file":"KeyAuthorization.js","sourceRoot":"","sources":["../../tempo/KeyAuthorization.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ const ox_WebAuthnP256 = require("../core/WebAuthnP256.js");
23
23
  const serializedP256Type = '0x01';
24
24
  const serializedWebAuthnType = '0x02';
25
25
  const serializedKeychainType = '0x03';
26
+ const serializedKeychainV2Type = '0x04';
26
27
  exports.magicBytes = '0x7777777777777777777777777777777777777777777777777777777777777777';
27
28
  exports.types = ['secp256k1', 'p256', 'webAuthn'];
28
29
  function assert(envelope) {
@@ -187,17 +188,19 @@ function deserialize(value) {
187
188
  type: 'webAuthn',
188
189
  };
189
190
  }
190
- if (typeId === serializedKeychainType) {
191
+ if (typeId === serializedKeychainType ||
192
+ typeId === serializedKeychainV2Type) {
191
193
  const userAddress = Hex.slice(data, 0, 20);
192
194
  const inner = deserialize(Hex.slice(data, 20));
193
195
  return {
194
196
  userAddress,
195
197
  inner,
196
198
  type: 'keychain',
199
+ version: typeId === serializedKeychainV2Type ? 'v2' : 'v1',
197
200
  };
198
201
  }
199
202
  throw new InvalidSerializedError({
200
- reason: `Unknown signature type identifier: ${typeId}. Expected ${serializedP256Type} (P256) or ${serializedWebAuthnType} (WebAuthn)`,
203
+ reason: `Unknown signature type identifier: ${typeId}. Expected ${serializedP256Type} (P256), ${serializedWebAuthnType} (WebAuthn), ${serializedKeychainType} (Keychain V1), or ${serializedKeychainV2Type} (Keychain V2)`,
201
204
  serialized,
202
205
  });
203
206
  }
@@ -214,6 +217,13 @@ function from(value) {
214
217
  return {
215
218
  ...value,
216
219
  ...(type === 'p256' ? { prehash: value.prehash } : {}),
220
+ ...(type === 'keychain' &&
221
+ !(typeof value === 'object' &&
222
+ value !== null &&
223
+ 'version' in value &&
224
+ value.version)
225
+ ? { version: 'v1' }
226
+ : {}),
217
227
  type,
218
228
  };
219
229
  }
@@ -283,6 +293,7 @@ function fromRpc(envelope) {
283
293
  type: 'keychain',
284
294
  userAddress: envelope.userAddress,
285
295
  inner: fromRpc(envelope.signature),
296
+ ...(envelope.version ? { version: envelope.version } : {}),
286
297
  };
287
298
  throw new CoercionError({ envelope });
288
299
  }
@@ -333,7 +344,10 @@ function serialize(envelope, options = {}) {
333
344
  }
334
345
  if (type === 'keychain') {
335
346
  const keychain = envelope;
336
- return Hex.concat(serializedKeychainType, keychain.userAddress, serialize(keychain.inner), options.magic ? exports.magicBytes : '0x');
347
+ const keychainTypeId = keychain.version === 'v1'
348
+ ? serializedKeychainType
349
+ : serializedKeychainV2Type;
350
+ return Hex.concat(keychainTypeId, keychain.userAddress, serialize(keychain.inner), options.magic ? exports.magicBytes : '0x');
337
351
  }
338
352
  throw new CoercionError({ envelope });
339
353
  }
@@ -375,6 +389,7 @@ function toRpc(envelope) {
375
389
  type: 'keychain',
376
390
  userAddress: keychain.userAddress,
377
391
  signature: toRpc(keychain.inner),
392
+ ...(keychain.version ? { version: keychain.version } : {}),
378
393
  };
379
394
  }
380
395
  throw new CoercionError({ envelope });
@@ -1 +1 @@
1
- {"version":3,"file":"SignatureEnvelope.js","sourceRoot":"","sources":["../../tempo/SignatureEnvelope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SignatureEnvelope.js","sourceRoot":"","sources":["../../tempo/SignatureEnvelope.ts"],"names":[],"mappings":"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"}
@@ -1,70 +1,59 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InvalidChecksumError = exports.InvalidLengthError = exports.InvalidPrefixError = void 0;
3
+ exports.InvalidChecksumError = exports.InvalidLengthError = exports.InvalidVersionError = exports.InvalidPrefixError = void 0;
4
4
  exports.format = format;
5
5
  exports.parse = parse;
6
6
  exports.validate = validate;
7
7
  const Address = require("../core/Address.js");
8
- const Base32 = require("../core/Base32.js");
8
+ const Bech32m = require("../core/Bech32m.js");
9
9
  const Bytes = require("../core/Bytes.js");
10
10
  const CompactSize = require("../core/CompactSize.js");
11
11
  const Errors = require("../core/Errors.js");
12
- const Hash = require("../core/Hash.js");
13
12
  const Hex = require("../core/Hex.js");
14
13
  function format(address, options = {}) {
15
14
  const { zoneId } = options;
16
- const prefix = zoneId != null ? 'tempoz1' : 'tempo1';
15
+ const hrp = zoneId != null ? 'tempoz' : 'tempo';
16
+ const version = new Uint8Array([0x00]);
17
17
  const zone = zoneId != null ? CompactSize.toBytes(zoneId) : new Uint8Array();
18
- const address_bytes = Bytes.fromHex(address);
19
- const input = Bytes.concat(Bytes.fromString(prefix), zone, address_bytes);
20
- const checksum = Hash.sha256(Hash.sha256(input, { as: 'Bytes' }), {
21
- as: 'Bytes',
22
- }).slice(0, 4);
23
- const payload = Bytes.concat(zone, address_bytes, checksum);
24
- return `${prefix}${Base32.fromBytes(payload)}`;
18
+ const data = Bytes.concat(version, zone, Bytes.fromHex(address));
19
+ return Bech32m.encode(hrp, data);
25
20
  }
26
21
  function parse(tempoAddress) {
27
- const lower = tempoAddress.toLowerCase();
28
- let prefix;
29
- let hasZone;
30
- if (lower.startsWith('tempoz1')) {
31
- prefix = 'tempoz1';
32
- hasZone = true;
22
+ let hrp;
23
+ let data;
24
+ try {
25
+ const decoded = Bech32m.decode(tempoAddress);
26
+ hrp = decoded.hrp;
27
+ data = decoded.data;
33
28
  }
34
- else if (lower.startsWith('tempo1')) {
35
- prefix = 'tempo1';
36
- hasZone = false;
29
+ catch {
30
+ throw new InvalidChecksumError({ address: tempoAddress });
37
31
  }
38
- else {
32
+ if (hrp !== 'tempo' && hrp !== 'tempoz')
39
33
  throw new InvalidPrefixError({ address: tempoAddress });
40
- }
41
- const payload = Base32.toBytes(lower.slice(prefix.length));
34
+ if (data.length < 1 || data[0] !== 0x00)
35
+ throw new InvalidVersionError({
36
+ address: tempoAddress,
37
+ version: data.length > 0 ? data[0] : undefined,
38
+ });
39
+ const payload = data.slice(1);
42
40
  let zoneId;
43
- let remaining;
44
- if (hasZone) {
41
+ let rawAddress;
42
+ if (hrp === 'tempoz') {
45
43
  const { value, size } = CompactSize.fromBytes(payload);
46
44
  zoneId = value;
47
- remaining = payload.slice(size);
45
+ rawAddress = payload.slice(size);
48
46
  }
49
47
  else {
50
48
  zoneId = undefined;
51
- remaining = payload;
49
+ rawAddress = payload;
52
50
  }
53
- if (remaining.length !== 24)
51
+ if (rawAddress.length !== 20)
54
52
  throw new InvalidLengthError({
55
53
  address: tempoAddress,
56
- expected: 24,
57
- actual: remaining.length,
54
+ expected: 20,
55
+ actual: rawAddress.length,
58
56
  });
59
- const rawAddress = remaining.slice(0, 20);
60
- const checksum = remaining.slice(20, 24);
61
- const zoneBytes = zoneId != null ? CompactSize.toBytes(zoneId) : new Uint8Array();
62
- const checksumInput = Bytes.concat(Bytes.fromString(prefix), zoneBytes, rawAddress);
63
- const expected = Hash.sha256(Hash.sha256(checksumInput, { as: 'Bytes' }), {
64
- as: 'Bytes',
65
- }).slice(0, 4);
66
- if (!Bytes.isEqual(checksum, expected))
67
- throw new InvalidChecksumError({ address: tempoAddress });
68
57
  const address = Address.checksum(Hex.fromBytes(rawAddress));
69
58
  return { address, zoneId };
70
59
  }
@@ -89,6 +78,18 @@ class InvalidPrefixError extends Errors.BaseError {
89
78
  }
90
79
  }
91
80
  exports.InvalidPrefixError = InvalidPrefixError;
81
+ class InvalidVersionError extends Errors.BaseError {
82
+ constructor({ address, version, }) {
83
+ super(`Tempo address "${address}" has unsupported version ${version === undefined ? '(missing)' : `0x${version.toString(16).padStart(2, '0')}`}. Only version 0x00 is supported.`);
84
+ Object.defineProperty(this, "name", {
85
+ enumerable: true,
86
+ configurable: true,
87
+ writable: true,
88
+ value: 'TempoAddress.InvalidVersionError'
89
+ });
90
+ }
91
+ }
92
+ exports.InvalidVersionError = InvalidVersionError;
92
93
  class InvalidLengthError extends Errors.BaseError {
93
94
  constructor({ address, expected, actual, }) {
94
95
  super(`Tempo address "${address}" has an invalid payload length. Expected ${expected} bytes, got ${actual}.`);
@@ -1 +1 @@
1
- {"version":3,"file":"TempoAddress.js","sourceRoot":"","sources":["../../tempo/TempoAddress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TempoAddress.js","sourceRoot":"","sources":["../../tempo/TempoAddress.ts"],"names":[],"mappings":"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"}