@inco/js 0.8.0-devnet-3 → 0.8.0-devnet-4

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.
@@ -1,4 +1,4 @@
1
- import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
1
+ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
2
2
  import type { ACLProof } from "../../../kms/lite/v1/types_pb";
3
3
  import type { Message } from "@bufbuild/protobuf";
4
4
  /**
@@ -25,6 +25,10 @@ export type InputContext = Message<"inco.covalidator.compute.v1.InputContext"> &
25
25
  * @generated from field: string contract_address = 4;
26
26
  */
27
27
  contractAddress: string;
28
+ /**
29
+ * @generated from field: inco.covalidator.compute.v1.InputVersion version = 5;
30
+ */
31
+ version: InputVersion;
28
32
  };
29
33
  /**
30
34
  * Describes the message inco.covalidator.compute.v1.InputContext.
@@ -64,7 +68,7 @@ export declare const InputCryptogramSchema: GenMessage<InputCryptogram>;
64
68
  export type InputPayload = Message<"inco.covalidator.compute.v1.InputPayload"> & {
65
69
  /**
66
70
  * A canonical hash of the InputContext defined as:
67
- * keccak256(abi.encodePacked("evm/", hostChainId, aclAddress, userAddress, contractAddress))
71
+ * keccak256(abi.encodePacked("evm/", hostChainId, aclAddress, userAddress, contractAddress, version))
68
72
  *
69
73
  * @generated from field: bytes context_hash = 1;
70
74
  */
@@ -204,3 +208,40 @@ export type CryptogramWithProof = Message<"inco.covalidator.compute.v1.Cryptogra
204
208
  * Use `create(CryptogramWithProofSchema)` to create a new message.
205
209
  */
206
210
  export declare const CryptogramWithProofSchema: GenMessage<CryptogramWithProof>;
211
+ /**
212
+ * InputVersion determines how to interpret the InputCryptogram payload.
213
+ * Each version specifies the payload contents, encryption, and key version.
214
+ *
215
+ * @generated from enum inco.covalidator.compute.v1.InputVersion
216
+ */
217
+ export declare enum InputVersion {
218
+ /**
219
+ * INPUT_VERSION_UNSPECIFIED indicates an unspecified input version
220
+ *
221
+ * @generated from enum value: INPUT_VERSION_UNSPECIFIED = 0;
222
+ */
223
+ UNSPECIFIED = 0,
224
+ /**
225
+ * INPUT_VERSION_ECIES is the InputPayload message encrypted using ECIES with the primary key version.
226
+ *
227
+ * @generated from enum value: INPUT_VERSION_ECIES = 1;
228
+ */
229
+ ECIES = 1,
230
+ /**
231
+ * INPUT_VERSION_XWING is the InputPayload message encrypted using HPKE-XWING-CHACHA20POLY1305-SHA256 with the primary key version.
232
+ *
233
+ * @generated from enum value: INPUT_VERSION_XWING = 2;
234
+ */
235
+ XWING = 2,
236
+ /**
237
+ * INPUT_VERSION_CAESAR is the InputPayload message encrypted using a Caesar cipher.
238
+ * This is meant for tests, and no guidance is given on the rotation amount (i.e. the key).
239
+ *
240
+ * @generated from enum value: INPUT_VERSION_CAESAR = 3;
241
+ */
242
+ CAESAR = 3
243
+ }
244
+ /**
245
+ * Describes the enum inco.covalidator.compute.v1.InputVersion.
246
+ */
247
+ export declare const InputVersionSchema: GenEnum<InputVersion>;
@@ -1,12 +1,12 @@
1
1
  // @generated by protoc-gen-es v2.10.0 with parameter "target=ts"
2
2
  // @generated from file inco/covalidator/compute/v1/types.proto (package inco.covalidator.compute.v1, syntax proto3)
3
3
  /* eslint-disable */
4
- import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
4
+ import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
5
5
  import { file_inco_kms_lite_v1_types } from "../../../kms/lite/v1/types_pb";
6
6
  /**
7
7
  * Describes the file inco/covalidator/compute/v1/types.proto.
8
8
  */
9
- export const file_inco_covalidator_compute_v1_types = /*@__PURE__*/ fileDesc("CidpbmNvL2NvdmFsaWRhdG9yL2NvbXB1dGUvdjEvdHlwZXMucHJvdG8SG2luY28uY292YWxpZGF0b3IuY29tcHV0ZS52MSJqCgxJbnB1dENvbnRleHQSFQoNaG9zdF9jaGFpbl9pZBgBIAEoCRITCgthY2xfYWRkcmVzcxgCIAEoCRIUCgx1c2VyX2FkZHJlc3MYAyABKAkSGAoQY29udHJhY3RfYWRkcmVzcxgEIAEoCSJeCg9JbnB1dENyeXB0b2dyYW0SOgoHY29udGV4dBgBIAEoCzIpLmluY28uY292YWxpZGF0b3IuY29tcHV0ZS52MS5JbnB1dENvbnRleHQSDwoHcGF5bG9hZBgCIAEoDCKXAQoMSW5wdXRQYXlsb2FkEhQKDGNvbnRleHRfaGFzaBgBIAEoDBI1CgZzY2FsYXIYAiABKAsyIy5pbmNvLmNvdmFsaWRhdG9yLmNvbXB1dGUudjEuU2NhbGFySAASMQoEbGlzdBgDIAEoCzIhLmluY28uY292YWxpZGF0b3IuY29tcHV0ZS52MS5MaXN0SABCBwoFdmFsdWUiJQoGU2NhbGFyEgwKBHR5cGUYASABKAUSDQoFdmFsdWUYAiABKAwiKwoETGlzdBITCgtlbGVtZW50VHlwZRgBIAEoBRIOCgZ2YWx1ZXMYAiADKAwiMwoQU3RvcmVkQ3J5cHRvZ3JhbRIOCgZoYW5kbGUYASABKAwSDwoHcGF5bG9hZBgCIAEoDCKHAQoTQ3J5cHRvZ3JhbVdpdGhQcm9vZhJBCgpjcnlwdG9ncmFtGAEgASgLMi0uaW5jby5jb3ZhbGlkYXRvci5jb21wdXRlLnYxLlN0b3JlZENyeXB0b2dyYW0SLQoJYWNsX3Byb29mGAIgASgLMhouaW5jby5rbXMubGl0ZS52MS5BQ0xQcm9vZkI3WjVnaXRodWIuY29tL2luY28tZmhldm0vaW5jby1tb25vcmVwby9jb3ZhbGlkYXRvci90eXBlc2IGcHJvdG8z", [file_inco_kms_lite_v1_types]);
9
+ export const file_inco_covalidator_compute_v1_types = /*@__PURE__*/ fileDesc("CidpbmNvL2NvdmFsaWRhdG9yL2NvbXB1dGUvdjEvdHlwZXMucHJvdG8SG2luY28uY292YWxpZGF0b3IuY29tcHV0ZS52MSKmAQoMSW5wdXRDb250ZXh0EhUKDWhvc3RfY2hhaW5faWQYASABKAkSEwoLYWNsX2FkZHJlc3MYAiABKAkSFAoMdXNlcl9hZGRyZXNzGAMgASgJEhgKEGNvbnRyYWN0X2FkZHJlc3MYBCABKAkSOgoHdmVyc2lvbhgFIAEoDjIpLmluY28uY292YWxpZGF0b3IuY29tcHV0ZS52MS5JbnB1dFZlcnNpb24iXgoPSW5wdXRDcnlwdG9ncmFtEjoKB2NvbnRleHQYASABKAsyKS5pbmNvLmNvdmFsaWRhdG9yLmNvbXB1dGUudjEuSW5wdXRDb250ZXh0Eg8KB3BheWxvYWQYAiABKAwilwEKDElucHV0UGF5bG9hZBIUCgxjb250ZXh0X2hhc2gYASABKAwSNQoGc2NhbGFyGAIgASgLMiMuaW5jby5jb3ZhbGlkYXRvci5jb21wdXRlLnYxLlNjYWxhckgAEjEKBGxpc3QYAyABKAsyIS5pbmNvLmNvdmFsaWRhdG9yLmNvbXB1dGUudjEuTGlzdEgAQgcKBXZhbHVlIiUKBlNjYWxhchIMCgR0eXBlGAEgASgFEg0KBXZhbHVlGAIgASgMIisKBExpc3QSEwoLZWxlbWVudFR5cGUYASABKAUSDgoGdmFsdWVzGAIgAygMIjMKEFN0b3JlZENyeXB0b2dyYW0SDgoGaGFuZGxlGAEgASgMEg8KB3BheWxvYWQYAiABKAwihwEKE0NyeXB0b2dyYW1XaXRoUHJvb2YSQQoKY3J5cHRvZ3JhbRgBIAEoCzItLmluY28uY292YWxpZGF0b3IuY29tcHV0ZS52MS5TdG9yZWRDcnlwdG9ncmFtEi0KCWFjbF9wcm9vZhgCIAEoCzIaLmluY28ua21zLmxpdGUudjEuQUNMUHJvb2YqeQoMSW5wdXRWZXJzaW9uEh0KGUlOUFVUX1ZFUlNJT05fVU5TUEVDSUZJRUQQABIXChNJTlBVVF9WRVJTSU9OX0VDSUVTEAESFwoTSU5QVVRfVkVSU0lPTl9YV0lORxACEhgKFElOUFVUX1ZFUlNJT05fQ0FFU0FSEANCN1o1Z2l0aHViLmNvbS9pbmNvLWZoZXZtL2luY28tbW9ub3JlcG8vY292YWxpZGF0b3IvdHlwZXNiBnByb3RvMw", [file_inco_kms_lite_v1_types]);
10
10
  /**
11
11
  * Describes the message inco.covalidator.compute.v1.InputContext.
12
12
  * Use `create(InputContextSchema)` to create a new message.
@@ -42,4 +42,42 @@ export const StoredCryptogramSchema = /*@__PURE__*/ messageDesc(file_inco_covali
42
42
  * Use `create(CryptogramWithProofSchema)` to create a new message.
43
43
  */
44
44
  export const CryptogramWithProofSchema = /*@__PURE__*/ messageDesc(file_inco_covalidator_compute_v1_types, 6);
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNfcGIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvZ2VuZXJhdGVkL2VzL2luY28vY292YWxpZGF0b3IvY29tcHV0ZS92MS90eXBlc19wYi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpRUFBaUU7QUFDakUsb0hBQW9IO0FBQ3BILG9CQUFvQjtBQUdwQixPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXJFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRzVFOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sc0NBQXNDLEdBQVksYUFBYSxDQUMxRSxRQUFRLENBQUMsa2dDQUFrZ0MsRUFBRSxDQUFDLDJCQUEyQixDQUFDLENBQUMsQ0FBQztBQTJCOWlDOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUE2QixhQUFhLENBQ3ZFLFdBQVcsQ0FBQyxzQ0FBc0MsRUFBRSxDQUFDLENBQUMsQ0FBQztBQXdCekQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQWdDLGFBQWEsQ0FDN0UsV0FBVyxDQUFDLHNDQUFzQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBb0N6RDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBNkIsYUFBYSxDQUN2RSxXQUFXLENBQUMsc0NBQXNDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFxQ3pEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBdUIsYUFBYSxDQUMzRCxXQUFXLENBQUMsc0NBQXNDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUF1QnpEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBcUIsYUFBYSxDQUN2RCxXQUFXLENBQUMsc0NBQXNDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUF3QnpEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFpQyxhQUFhLENBQy9FLFdBQVcsQ0FBQyxzQ0FBc0MsRUFBRSxDQUFDLENBQUMsQ0FBQztBQW9CekQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQW9DLGFBQWEsQ0FDckYsV0FBVyxDQUFDLHNDQUFzQyxFQUFFLENBQUMsQ0FBQyxDQUFDIn0=
45
+ /**
46
+ * InputVersion determines how to interpret the InputCryptogram payload.
47
+ * Each version specifies the payload contents, encryption, and key version.
48
+ *
49
+ * @generated from enum inco.covalidator.compute.v1.InputVersion
50
+ */
51
+ export var InputVersion;
52
+ (function (InputVersion) {
53
+ /**
54
+ * INPUT_VERSION_UNSPECIFIED indicates an unspecified input version
55
+ *
56
+ * @generated from enum value: INPUT_VERSION_UNSPECIFIED = 0;
57
+ */
58
+ InputVersion[InputVersion["UNSPECIFIED"] = 0] = "UNSPECIFIED";
59
+ /**
60
+ * INPUT_VERSION_ECIES is the InputPayload message encrypted using ECIES with the primary key version.
61
+ *
62
+ * @generated from enum value: INPUT_VERSION_ECIES = 1;
63
+ */
64
+ InputVersion[InputVersion["ECIES"] = 1] = "ECIES";
65
+ /**
66
+ * INPUT_VERSION_XWING is the InputPayload message encrypted using HPKE-XWING-CHACHA20POLY1305-SHA256 with the primary key version.
67
+ *
68
+ * @generated from enum value: INPUT_VERSION_XWING = 2;
69
+ */
70
+ InputVersion[InputVersion["XWING"] = 2] = "XWING";
71
+ /**
72
+ * INPUT_VERSION_CAESAR is the InputPayload message encrypted using a Caesar cipher.
73
+ * This is meant for tests, and no guidance is given on the rotation amount (i.e. the key).
74
+ *
75
+ * @generated from enum value: INPUT_VERSION_CAESAR = 3;
76
+ */
77
+ InputVersion[InputVersion["CAESAR"] = 3] = "CAESAR";
78
+ })(InputVersion || (InputVersion = {}));
79
+ /**
80
+ * Describes the enum inco.covalidator.compute.v1.InputVersion.
81
+ */
82
+ export const InputVersionSchema = /*@__PURE__*/ enumDesc(file_inco_covalidator_compute_v1_types, 0);
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNfcGIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvZ2VuZXJhdGVkL2VzL2luY28vY292YWxpZGF0b3IvY29tcHV0ZS92MS90eXBlc19wYi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpRUFBaUU7QUFDakUsb0hBQW9IO0FBQ3BILG9CQUFvQjtBQUdwQixPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUUvRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUc1RTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNDQUFzQyxHQUFZLGFBQWEsQ0FDMUUsUUFBUSxDQUFDLHd2Q0FBd3ZDLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUM7QUFnQ3B5Qzs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBNkIsYUFBYSxDQUN2RSxXQUFXLENBQUMsc0NBQXNDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUF3QnpEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFnQyxhQUFhLENBQzdFLFdBQVcsQ0FBQyxzQ0FBc0MsRUFBRSxDQUFDLENBQUMsQ0FBQztBQW9DekQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQTZCLGFBQWEsQ0FDdkUsV0FBVyxDQUFDLHNDQUFzQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBcUN6RDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQXVCLGFBQWEsQ0FDM0QsV0FBVyxDQUFDLHNDQUFzQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBdUJ6RDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQXFCLGFBQWEsQ0FDdkQsV0FBVyxDQUFDLHNDQUFzQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBd0J6RDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBaUMsYUFBYSxDQUMvRSxXQUFXLENBQUMsc0NBQXNDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFvQnpEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFvQyxhQUFhLENBQ3JGLFdBQVcsQ0FBQyxzQ0FBc0MsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUV6RDs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBTixJQUFZLFlBNkJYO0FBN0JELFdBQVksWUFBWTtJQUN0Qjs7OztPQUlHO0lBQ0gsNkRBQWUsQ0FBQTtJQUVmOzs7O09BSUc7SUFDSCxpREFBUyxDQUFBO0lBRVQ7Ozs7T0FJRztJQUNILGlEQUFTLENBQUE7SUFFVDs7Ozs7T0FLRztJQUNILG1EQUFVLENBQUE7QUFDWixDQUFDLEVBN0JXLFlBQVksS0FBWixZQUFZLFFBNkJ2QjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQTBCLGFBQWEsQ0FDcEUsUUFBUSxDQUFDLHNDQUFzQyxFQUFFLENBQUMsQ0FBQyxDQUFDIn0=
@@ -25,6 +25,7 @@ export declare const InputContext: Schema.Struct<{
25
25
  aclAddress: Schema.TemplateLiteral<`0x${string}`>;
26
26
  userAddress: Schema.TemplateLiteral<`0x${string}`>;
27
27
  contractAddress: Schema.TemplateLiteral<`0x${string}`>;
28
+ version: typeof Schema.Number;
28
29
  }>;
29
30
  export type InputContext = typeof InputContext.Type;
30
31
  export type Handle = HexString;
@@ -31,6 +31,7 @@ export const InputContext = Schema.Struct({
31
31
  aclAddress: HexString,
32
32
  userAddress: HexString,
33
33
  contractAddress: HexString,
34
+ version: Schema.Number,
34
35
  });
35
36
  // Returns the FheType of the handle. See:
36
37
  // https://github.com/Inco-fhevm/inco-monorepo/blob/636756f512ae16535bdcb9a43df76bf14fbd6ba7/pkg/fhe/handle.md
@@ -83,7 +84,7 @@ export function computeHandle({ prehandle, context, }) {
83
84
  if (prehandle.length !== 32) {
84
85
  throw new Error(`prehandle should be 32 bytes but is: ${prehandle.length}`);
85
86
  }
86
- const packed = encodePacked(['bytes32', 'string', 'uint256', 'address', 'address', 'address'], [
87
+ const packed = encodePacked(['bytes32', 'string', 'uint256', 'address', 'address', 'address', 'int32'], [
87
88
  toHex(prehandle),
88
89
  // Note: The x/hostchain spec requires the chain ID to be prefixed with 'evm/' for EVM chains
89
90
  'evm/',
@@ -91,6 +92,7 @@ export function computeHandle({ prehandle, context, }) {
91
92
  context.aclAddress,
92
93
  context.userAddress,
93
94
  context.contractAddress,
95
+ context.version,
94
96
  ]);
95
97
  return Buffer.concat([
96
98
  new Keccak(256)
@@ -102,13 +104,14 @@ export function computeHandle({ prehandle, context, }) {
102
104
  ]);
103
105
  }
104
106
  export function hashInputContext(context) {
105
- const packed = encodePacked(['string', 'uint256', 'address', 'address', 'address'], [
107
+ const packed = encodePacked(['string', 'uint256', 'address', 'address', 'address', 'int32'], [
106
108
  // Note: The x/hostchain spec requires the chain ID to be prefixed with 'evm/' for EVM chains
107
109
  'evm/',
108
110
  context.hostChainId,
109
111
  context.aclAddress,
110
112
  context.userAddress,
111
113
  context.contractAddress,
114
+ context.version,
112
115
  ]);
113
116
  return new Keccak(256).update(Buffer.from(hexToBytes(packed))).digest();
114
117
  }
@@ -117,4 +120,4 @@ function assertUint8(value) {
117
120
  throw new Error(`Invalid uint8 value: ${value}`);
118
121
  }
119
122
  }
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhbmRsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1SEFBdUg7QUFDdkgsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNoQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXhDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQUM7QUFFaEMsbUhBQW1IO0FBQ25ILHdIQUF3SDtBQUN4SCwyQkFBMkI7QUFDM0IsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDdkMsS0FBSyxFQUFFLENBQUM7SUFDUixNQUFNLEVBQUUsQ0FBQztJQUNULE1BQU0sRUFBRSxDQUFDO0lBQ1QsT0FBTyxFQUFFLENBQUM7SUFDVixPQUFPLEVBQUUsQ0FBQztJQUNWLE9BQU8sRUFBRSxDQUFDO0lBQ1YsUUFBUSxFQUFFLENBQUM7SUFDWCxRQUFRLEVBQUUsQ0FBQztJQUNYLFFBQVEsRUFBRSxDQUFDO0lBQ1gsUUFBUSxFQUFFLENBQUM7SUFDWCxTQUFTLEVBQUUsRUFBRTtJQUNiLFNBQVMsRUFBRSxFQUFFO0NBQ2QsQ0FBQyxDQUFDO0FBRUgsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQWlDLENBQUM7QUFFN0UsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQztBQVE3RCxNQUFNLFVBQVUsU0FBUyxDQUFDLEtBQWE7SUFDckMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFnQixDQUFDLENBQUM7QUFDL0QsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQ3hDLFdBQVcsRUFBRSxNQUFNLENBQUMsTUFBTTtJQUMxQixVQUFVLEVBQUUsU0FBUztJQUNyQixXQUFXLEVBQUUsU0FBUztJQUN0QixlQUFlLEVBQUUsU0FBUztDQUMzQixDQUFDLENBQUM7QUFlSCwwQ0FBMEM7QUFDMUMsOEdBQThHO0FBQzlHLE1BQU0sVUFBVSxhQUFhLENBQUMsTUFBaUI7SUFDN0MsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNuQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsVUFBVSxlQUFlLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUNELE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUM7QUFFRCwwSUFBMEk7QUFDMUksdUpBQXVKO0FBQ3ZKLDRKQUE0SjtBQUM1SixrTEFBa0w7QUFFbEw7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxFQUMvQixVQUFVLEVBQ1YsV0FBVyxFQUNYLFVBQVUsRUFDVixhQUFhLEdBTWQ7SUFDQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDekIsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3hCLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMzQixNQUFNLGNBQWMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUM7U0FDbkMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDL0IsTUFBTSxFQUFFLENBQUM7SUFDWixNQUFNLG1CQUFtQixHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQztTQUN4QyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNuQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7U0FDbEMsTUFBTSxFQUFFLENBQUM7SUFDWixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2hDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMzQyxNQUFNLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNuQyxNQUFNLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsQyxNQUFNLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyQyxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxFQUM1QixTQUFTLEVBQ1QsT0FBTyxHQUlSO0lBQ0MsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMsd0NBQXdDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFDRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQ3pCLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsRUFDakU7UUFDRSxLQUFLLENBQUMsU0FBUyxDQUFDO1FBQ2hCLDZGQUE2RjtRQUM3RixNQUFNO1FBQ04sT0FBTyxDQUFDLFdBQVc7UUFDbkIsT0FBTyxDQUFDLFVBQVU7UUFDbEIsT0FBTyxDQUFDLFdBQVc7UUFDbkIsT0FBTyxDQUFDLGVBQWU7S0FDeEIsQ0FDRixDQUFDO0lBQ0YsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ25CLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQzthQUNaLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2FBQ3ZDLE1BQU0sRUFBRTthQUNSLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ2xCLG9EQUFvRDtRQUNwRCxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7S0FDeEIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxPQUFxQjtJQUNwRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQ3pCLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxFQUN0RDtRQUNFLDZGQUE2RjtRQUM3RixNQUFNO1FBQ04sT0FBTyxDQUFDLFdBQVc7UUFDbkIsT0FBTyxDQUFDLFVBQVU7UUFDbEIsT0FBTyxDQUFDLFdBQVc7UUFDbkIsT0FBTyxDQUFDLGVBQWU7S0FDeEIsQ0FDRixDQUFDO0lBQ0YsT0FBTyxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO0FBQzFFLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxLQUFhO0lBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksS0FBSyxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBQ3pELE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbkQsQ0FBQztBQUNILENBQUMifQ==
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhbmRsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1SEFBdUg7QUFDdkgsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNoQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXhDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQUM7QUFFaEMsbUhBQW1IO0FBQ25ILHdIQUF3SDtBQUN4SCwyQkFBMkI7QUFDM0IsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDdkMsS0FBSyxFQUFFLENBQUM7SUFDUixNQUFNLEVBQUUsQ0FBQztJQUNULE1BQU0sRUFBRSxDQUFDO0lBQ1QsT0FBTyxFQUFFLENBQUM7SUFDVixPQUFPLEVBQUUsQ0FBQztJQUNWLE9BQU8sRUFBRSxDQUFDO0lBQ1YsUUFBUSxFQUFFLENBQUM7SUFDWCxRQUFRLEVBQUUsQ0FBQztJQUNYLFFBQVEsRUFBRSxDQUFDO0lBQ1gsUUFBUSxFQUFFLENBQUM7SUFDWCxTQUFTLEVBQUUsRUFBRTtJQUNiLFNBQVMsRUFBRSxFQUFFO0NBQ2QsQ0FBQyxDQUFDO0FBRUgsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQWlDLENBQUM7QUFFN0UsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQztBQVE3RCxNQUFNLFVBQVUsU0FBUyxDQUFDLEtBQWE7SUFDckMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FB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
@@ -96,8 +96,9 @@ export function getEciesEncryptor({ pubKeyA, privKeyB, }) {
96
96
  ciphertext: {
97
97
  scheme: encryptionSchemes.ecies,
98
98
  type: plaintext.type,
99
+ // The prepended version keeps the bundle self-describing, avoiding a loose parameter.
99
100
  // The prepended handle serves as a checksum on the encrypted payload, so we can fail early on an accidental mismatch
100
- value: encodeCiphertextInput(bytesToHex(handle), bytesToHex(ct)),
101
+ value: encodeCiphertextInput(context.version, bytesToHex(handle), bytesToHex(ct)),
101
102
  },
102
103
  };
103
104
  };
@@ -116,7 +117,9 @@ export function getEciesDecryptor({ privKeyA, }) {
116
117
  if (scheme !== encryptionSchemes.ecies) {
117
118
  throw new Error(`Ciphertext with scheme ${getEncryptionSchemeName(scheme)} cannot be decrypted with ECIES`);
118
119
  }
119
- // remove the prepended handle
120
+ // remove the prepended version and handle
121
+ // We could verify or dispatch on the version here,
122
+ // but the intention is for the SDK to only support one input version at a time.
120
123
  const { ciphertext } = decodeCiphertextInput(value);
121
124
  const ptBuf = await eciesDecrypt(privKeyABuffer, bytesFromHexString(ciphertext));
122
125
  const payload = decodeInput(ptBuf);
@@ -128,4 +131,4 @@ export function getEciesDecryptor({ privKeyA, }) {
128
131
  return bytesToPlaintext(computable.value.value, encryptionSchemes.ecies, typ);
129
132
  };
130
133
  }
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGl0ZS9lY2llcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxJQUFJLFlBQVksRUFBRSxPQUFPLElBQUksWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzlFLE9BQU8sS0FBSyxXQUFXLE1BQU0sVUFBVSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pFLE9BQU8sRUFDTCxnQkFBZ0IsRUFFaEIscUJBQXFCLEVBR3JCLHFCQUFxQixFQUNyQixpQkFBaUIsRUFHakIsdUJBQXVCLEVBR3ZCLGdCQUFnQixHQUNqQixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVyRCxNQUFNLFNBQVMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUM7QUFFbEQsNENBQTRDO0FBQzVDLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUM5QixzRUFBc0UsQ0FBQztBQUN6RSxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FDbkMsb0VBQW9FLENBQUM7QUFVdkUsb0ZBQW9GO0FBQ3BGLDBEQUEwRDtBQUMxRCxNQUFNLFVBQVUsa0JBQWtCLENBQ2hDLEVBQTBCO0lBRTFCLE9BQU87UUFDTCxNQUFNLEVBQUUsaUJBQWlCLENBQUMsS0FBSztRQUMvQixFQUFFO1FBQ0YsZUFBZTtZQUNiLE9BQU8sSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFB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
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGl0ZS9lY2llcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxJQUFJLFlBQVksRUFBRSxPQUFPLElBQUksWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzlFLE9BQU8sS0FBSyxXQUFXLE1BQU0sVUFBVSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pFLE9BQU8sRUFDTCxnQkFBZ0IsRUFFaEIscUJBQXFCLEVBR3JCLHFCQUFxQixFQUNyQixpQkFBaUIsRUFHakIsdUJBQXVCLEVBR3ZCLGdCQUFnQixHQUNqQixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVyRCxNQUFNLFNBQVMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUM7QUFFbEQsNENBQTRDO0FBQzVDLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUM5QixzRUFBc0UsQ0FBQztBQUN6RSxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FDbkMsb0VBQW9FLENBQUM7QUFVdkUsb0ZBQW9GO0FBQ3BGLDBEQUEwRDtBQUMxRCxNQUFNLFVBQVUsa0JBQWtCLENBQ2hDLEVBQTBCO0lBRTFCLE9BQU87UUFDTCxNQUFNLEVBQUUsaUJBQWlCLENBQUMsS0FBSztRQUMvQixFQUFFO1FBQ0YsZUFBZTtZQUNiLE9BQU8sSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFB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
@@ -224,6 +224,7 @@ export class Lightning {
224
224
  aclAddress: this.executorAddress,
225
225
  userAddress: parseAddress(accountAddress),
226
226
  contractAddress: parseAddress(dappAddress),
227
+ version: 1, // ECIES
227
228
  },
228
229
  });
229
230
  return ciphertext.value;
@@ -692,4 +693,4 @@ export class Lightning {
692
693
  };
693
694
  }
694
695
  }
695
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpdGUvbGlnaHRuaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxrQkFBa0IsRUFDbEIsV0FBVyxFQUVYLFVBQVUsRUFDVixJQUFJLEVBSUosV0FBVyxHQUNaLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMxQyxPQUFPLEVBQ0wsZUFBZSxFQUNmLDZCQUE2QixFQUM3Qix5QkFBeUIsRUFDekIseUJBQXlCLEVBQ3pCLGdDQUFnQyxHQUNqQyxNQUFNLCtCQUErQixDQUFDO0FBRXZDLE9BQU8sRUFBRSxlQUFlLElBQUksc0JBQXNCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVuRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFLekUsT0FBTyxFQUFXLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFaEUsT0FBTyxFQUVMLGlCQUFpQixHQUlsQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RSxPQUFPLEVBQVcsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBZ0IsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFaEUsT0FBTyxFQUFFLEtBQUss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
696
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpdGUvbGlnaHRuaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxrQkFBa0IsRUFDbEIsV0FBVyxFQUVYLFVBQVUsRUFDVixJQUFJLEVBSUosV0FBVyxHQUNaLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMxQyxPQUFPLEVBQ0wsZUFBZSxFQUNmLDZCQUE2QixFQUM3Qix5QkFBeUIsRUFDekIseUJBQXlCLEVBQ3pCLGdDQUFnQyxHQUNqQyxNQUFNLCtCQUErQixDQUFDO0FBRXZDLE9BQU8sRUFBRSxlQUFlLElBQUksc0JBQXNCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVuRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFLekUsT0FBTyxFQUFXLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFaEUsT0FBTyxFQUVMLGlCQUFpQixHQUlsQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RSxPQUFPLEVBQVcsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBZ0IsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFaEUsT0FBTyxFQUFFLEtBQUss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
@@ -43,6 +43,7 @@ export declare const CiphertextWithContext: Schema.Struct<{
43
43
  aclAddress: Schema.TemplateLiteral<`0x${string}`>;
44
44
  userAddress: Schema.TemplateLiteral<`0x${string}`>;
45
45
  contractAddress: Schema.TemplateLiteral<`0x${string}`>;
46
+ version: typeof Schema.Number;
46
47
  }>;
47
48
  }>;
48
49
  export type CiphertextWithContext = typeof CiphertextWithContext.Type;
@@ -60,6 +61,7 @@ export declare const EncryptResult: Schema.Struct<{
60
61
  aclAddress: Schema.TemplateLiteral<`0x${string}`>;
61
62
  userAddress: Schema.TemplateLiteral<`0x${string}`>;
62
63
  contractAddress: Schema.TemplateLiteral<`0x${string}`>;
64
+ version: typeof Schema.Number;
63
65
  }>;
64
66
  prehandle: Schema.brand<Schema.filter<Schema.transformOrFail<Schema.Union<[typeof Schema.String, Schema.refine<object & Uint8Array<ArrayBufferLike>, Schema.Schema<object, object, never>>]>, Schema.TemplateLiteral<`0x${string}`>, never>>, "Bytes32">;
65
67
  handle: Schema.brand<Schema.filter<Schema.transformOrFail<Schema.Union<[typeof Schema.String, Schema.refine<object & Uint8Array<ArrayBufferLike>, Schema.Schema<object, object, never>>]>, Schema.TemplateLiteral<`0x${string}`>, never>>, "Bytes32">;
@@ -94,6 +96,7 @@ export declare const PlaintextWithContext: Schema.Struct<{
94
96
  aclAddress: Schema.TemplateLiteral<`0x${string}`>;
95
97
  userAddress: Schema.TemplateLiteral<`0x${string}`>;
96
98
  contractAddress: Schema.TemplateLiteral<`0x${string}`>;
99
+ version: typeof Schema.Number;
97
100
  }>;
98
101
  }>;
99
102
  export type PlaintextWithContext = typeof PlaintextWithContext.Type;
@@ -102,10 +105,11 @@ export type PlaintextWithContextOf<S extends EncryptionScheme, T extends Support
102
105
  };
103
106
  export declare function bigintToPlaintext<S extends EncryptionScheme, T extends SupportedFheType>(scheme: S, type: T, bigPt: bigint): PlaintextOf<S, T>;
104
107
  export declare function decodeCiphertextInput(input: ByteArray | Hex): {
108
+ version: number;
105
109
  handle: Hex;
106
110
  ciphertext: Hex;
107
111
  };
108
- export declare function encodeCiphertextInput(handle: Hex, ciphertext: Hex): Hex;
112
+ export declare function encodeCiphertextInput(version: number, handle: Hex, ciphertext: Hex): Hex;
109
113
  export declare function plaintextToBigint(plaintext: Plaintext): bigint;
110
114
  export declare function plaintextToBytes32(plaintext: Plaintext): Bytes32;
111
115
  export declare function plaintextToBytes(plaintext: Plaintext): Buffer;
@@ -1629,6 +1629,11 @@ export declare const incoLightningAbi: readonly [{
1629
1629
  readonly internalType: "address";
1630
1630
  readonly type: "address";
1631
1631
  readonly indexed: true;
1632
+ }, {
1633
+ readonly name: "version";
1634
+ readonly internalType: "int32";
1635
+ readonly type: "int32";
1636
+ readonly indexed: false;
1632
1637
  }, {
1633
1638
  readonly name: "ciphertext";
1634
1639
  readonly internalType: "bytes";
@@ -1752,6 +1757,10 @@ export declare const incoLightningAbi: readonly [{
1752
1757
  readonly name: "contractAddress";
1753
1758
  readonly internalType: "address";
1754
1759
  readonly type: "address";
1760
+ }, {
1761
+ readonly name: "version";
1762
+ readonly internalType: "int32";
1763
+ readonly type: "int32";
1755
1764
  }];
1756
1765
  readonly name: "ExternalHandleDoesNotMatchComputedHandle";
1757
1766
  }, {
@@ -1,4 +1,4 @@
1
- import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
1
+ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
2
2
  import type { ACLProof } from "../../../kms/lite/v1/types_pb";
3
3
  import type { Message } from "@bufbuild/protobuf";
4
4
  /**
@@ -25,6 +25,10 @@ export type InputContext = Message<"inco.covalidator.compute.v1.InputContext"> &
25
25
  * @generated from field: string contract_address = 4;
26
26
  */
27
27
  contractAddress: string;
28
+ /**
29
+ * @generated from field: inco.covalidator.compute.v1.InputVersion version = 5;
30
+ */
31
+ version: InputVersion;
28
32
  };
29
33
  /**
30
34
  * Describes the message inco.covalidator.compute.v1.InputContext.
@@ -64,7 +68,7 @@ export declare const InputCryptogramSchema: GenMessage<InputCryptogram>;
64
68
  export type InputPayload = Message<"inco.covalidator.compute.v1.InputPayload"> & {
65
69
  /**
66
70
  * A canonical hash of the InputContext defined as:
67
- * keccak256(abi.encodePacked("evm/", hostChainId, aclAddress, userAddress, contractAddress))
71
+ * keccak256(abi.encodePacked("evm/", hostChainId, aclAddress, userAddress, contractAddress, version))
68
72
  *
69
73
  * @generated from field: bytes context_hash = 1;
70
74
  */
@@ -204,3 +208,40 @@ export type CryptogramWithProof = Message<"inco.covalidator.compute.v1.Cryptogra
204
208
  * Use `create(CryptogramWithProofSchema)` to create a new message.
205
209
  */
206
210
  export declare const CryptogramWithProofSchema: GenMessage<CryptogramWithProof>;
211
+ /**
212
+ * InputVersion determines how to interpret the InputCryptogram payload.
213
+ * Each version specifies the payload contents, encryption, and key version.
214
+ *
215
+ * @generated from enum inco.covalidator.compute.v1.InputVersion
216
+ */
217
+ export declare enum InputVersion {
218
+ /**
219
+ * INPUT_VERSION_UNSPECIFIED indicates an unspecified input version
220
+ *
221
+ * @generated from enum value: INPUT_VERSION_UNSPECIFIED = 0;
222
+ */
223
+ UNSPECIFIED = 0,
224
+ /**
225
+ * INPUT_VERSION_ECIES is the InputPayload message encrypted using ECIES with the primary key version.
226
+ *
227
+ * @generated from enum value: INPUT_VERSION_ECIES = 1;
228
+ */
229
+ ECIES = 1,
230
+ /**
231
+ * INPUT_VERSION_XWING is the InputPayload message encrypted using HPKE-XWING-CHACHA20POLY1305-SHA256 with the primary key version.
232
+ *
233
+ * @generated from enum value: INPUT_VERSION_XWING = 2;
234
+ */
235
+ XWING = 2,
236
+ /**
237
+ * INPUT_VERSION_CAESAR is the InputPayload message encrypted using a Caesar cipher.
238
+ * This is meant for tests, and no guidance is given on the rotation amount (i.e. the key).
239
+ *
240
+ * @generated from enum value: INPUT_VERSION_CAESAR = 3;
241
+ */
242
+ CAESAR = 3
243
+ }
244
+ /**
245
+ * Describes the enum inco.covalidator.compute.v1.InputVersion.
246
+ */
247
+ export declare const InputVersionSchema: GenEnum<InputVersion>;
@@ -25,6 +25,7 @@ export declare const InputContext: Schema.Struct<{
25
25
  aclAddress: Schema.TemplateLiteral<`0x${string}`>;
26
26
  userAddress: Schema.TemplateLiteral<`0x${string}`>;
27
27
  contractAddress: Schema.TemplateLiteral<`0x${string}`>;
28
+ version: typeof Schema.Number;
28
29
  }>;
29
30
  export type InputContext = typeof InputContext.Type;
30
31
  export type Handle = HexString;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inco/js",
3
- "version": "0.8.0-devnet-3",
3
+ "version": "0.8.0-devnet-4",
4
4
  "repository": "https://github.com/Inco-fhevm/inco-monorepo",
5
5
  "license": "Apache-2.0",
6
6
  "sideEffects": false,