tkms 0.12.7 → 0.12.8
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.
- package/kms_lib.d.ts +30 -30
- package/kms_lib.js +191 -191
- package/kms_lib_bg.wasm +0 -0
- package/package.json +1 -1
package/kms_lib.d.ts
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
/* tslint:disable */
|
|
2
2
|
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* This function is *not* used by relayer-sdk because the encryption
|
|
5
|
+
* happens on the KMS side. It's just here for completeness and tests.
|
|
6
|
+
*/
|
|
7
|
+
export function ml_kem_pke_encrypt(msg: Uint8Array, their_pk: PublicEncKeyMlKem512): Uint8Array;
|
|
8
|
+
export function u8vec_to_public_sig_key(v: Uint8Array): PublicSigKey;
|
|
9
|
+
export function ml_kem_pke_pk_len(): number;
|
|
10
|
+
export function u8vec_to_private_sig_key(v: Uint8Array): PrivateSigKey;
|
|
3
11
|
/**
|
|
4
12
|
* Process the user_decryption response from JavaScript objects.
|
|
5
13
|
* The returned result is a byte array representing a plaintext of any length,
|
|
@@ -62,32 +70,7 @@
|
|
|
62
70
|
* It is insecure if `verify = false`!
|
|
63
71
|
*/
|
|
64
72
|
export function process_user_decryption_resp_from_js(client: Client, request: any, eip712_domain: any, agg_resp: any, enc_pk: PublicEncKeyMlKem512, enc_sk: PrivateEncKeyMlKem512, verify: boolean): TypedPlaintext[];
|
|
65
|
-
export function ml_kem_pke_keygen(): PrivateEncKeyMlKem512;
|
|
66
|
-
/**
|
|
67
|
-
* Create a new [ServerIdAddr] structure that holds an ID and an address
|
|
68
|
-
* which must be a valid EIP-55 address, notably prefixed with "0x".
|
|
69
|
-
*/
|
|
70
|
-
export function new_server_id_addr(id: number, addr: string): ServerIdAddr;
|
|
71
73
|
export function private_sig_key_to_u8vec(sk: PrivateSigKey): Uint8Array;
|
|
72
|
-
export function ml_kem_pke_get_pk(sk: PrivateEncKeyMlKem512): PublicEncKeyMlKem512;
|
|
73
|
-
export function u8vec_to_ml_kem_pke_pk(v: Uint8Array): PublicEncKeyMlKem512;
|
|
74
|
-
export function ml_kem_pke_sk_len(): number;
|
|
75
|
-
/**
|
|
76
|
-
* This function is *not* used by relayer-sdk because the decryption
|
|
77
|
-
* is handled by [process_user_decryption_resp].
|
|
78
|
-
* It's just here for completeness and tests.
|
|
79
|
-
*/
|
|
80
|
-
export function ml_kem_pke_decrypt(ct: Uint8Array, my_sk: PrivateEncKeyMlKem512): Uint8Array;
|
|
81
|
-
export function u8vec_to_public_sig_key(v: Uint8Array): PublicSigKey;
|
|
82
|
-
export function ml_kem_pke_sk_to_u8vec(sk: PrivateEncKeyMlKem512): Uint8Array;
|
|
83
|
-
export function ml_kem_pke_pk_to_u8vec(pk: PublicEncKeyMlKem512): Uint8Array;
|
|
84
|
-
export function u8vec_to_ml_kem_pke_sk(v: Uint8Array): PrivateEncKeyMlKem512;
|
|
85
|
-
export function ml_kem_pke_pk_len(): number;
|
|
86
|
-
/**
|
|
87
|
-
* This function is *not* used by relayer-sdk because the encryption
|
|
88
|
-
* happens on the KMS side. It's just here for completeness and tests.
|
|
89
|
-
*/
|
|
90
|
-
export function ml_kem_pke_encrypt(msg: Uint8Array, their_pk: PublicEncKeyMlKem512): Uint8Array;
|
|
91
74
|
/**
|
|
92
75
|
* Process the user_decryption response from Rust objects.
|
|
93
76
|
* Consider using [process_user_decryption_resp_from_js]
|
|
@@ -112,10 +95,27 @@ export function ml_kem_pke_encrypt(msg: Uint8Array, their_pk: PublicEncKeyMlKem5
|
|
|
112
95
|
* It is insecure if `verify = false`!
|
|
113
96
|
*/
|
|
114
97
|
export function process_user_decryption_resp(client: Client, request: ParsedUserDecryptionRequest | null | undefined, eip712_domain: Eip712DomainMsg | null | undefined, agg_resp: UserDecryptionResponse[], enc_pk: PublicEncKeyMlKem512, enc_sk: PrivateEncKeyMlKem512, verify: boolean): TypedPlaintext[];
|
|
98
|
+
/**
|
|
99
|
+
* Create a new [ServerIdAddr] structure that holds an ID and an address
|
|
100
|
+
* which must be a valid EIP-55 address, notably prefixed with "0x".
|
|
101
|
+
*/
|
|
102
|
+
export function new_server_id_addr(id: number, addr: string): ServerIdAddr;
|
|
103
|
+
export function ml_kem_pke_pk_to_u8vec(pk: PublicEncKeyMlKem512): Uint8Array;
|
|
104
|
+
export function get_client_secret_key(client: Client): PrivateSigKey | undefined;
|
|
115
105
|
export function public_sig_key_to_u8vec(pk: PublicSigKey): Uint8Array;
|
|
116
|
-
export function
|
|
117
|
-
export function u8vec_to_private_sig_key(v: Uint8Array): PrivateSigKey;
|
|
106
|
+
export function ml_kem_pke_keygen(): PrivateEncKeyMlKem512;
|
|
118
107
|
export function get_client_address(client: Client): string;
|
|
108
|
+
export function ml_kem_pke_sk_to_u8vec(sk: PrivateEncKeyMlKem512): Uint8Array;
|
|
109
|
+
export function get_server_addrs(client: Client): ServerIdAddr[];
|
|
110
|
+
export function u8vec_to_ml_kem_pke_pk(v: Uint8Array): PublicEncKeyMlKem512;
|
|
111
|
+
export function u8vec_to_ml_kem_pke_sk(v: Uint8Array): PrivateEncKeyMlKem512;
|
|
112
|
+
export function ml_kem_pke_sk_len(): number;
|
|
113
|
+
/**
|
|
114
|
+
* This function is *not* used by relayer-sdk because the decryption
|
|
115
|
+
* is handled by [process_user_decryption_resp].
|
|
116
|
+
* It's just here for completeness and tests.
|
|
117
|
+
*/
|
|
118
|
+
export function ml_kem_pke_decrypt(ct: Uint8Array, my_sk: PrivateEncKeyMlKem512): Uint8Array;
|
|
119
119
|
/**
|
|
120
120
|
* Instantiate a new client.
|
|
121
121
|
*
|
|
@@ -129,7 +129,7 @@ export function get_client_address(client: Client): string;
|
|
|
129
129
|
* The "default" parameter choice is selected if no matching string is found.
|
|
130
130
|
*/
|
|
131
131
|
export function new_client(server_addrs: ServerIdAddr[], client_address_hex: string, fhe_parameter: string): Client;
|
|
132
|
-
export function
|
|
132
|
+
export function ml_kem_pke_get_pk(sk: PrivateEncKeyMlKem512): PublicEncKeyMlKem512;
|
|
133
133
|
export class CiphertextHandle {
|
|
134
134
|
private constructor();
|
|
135
135
|
free(): void;
|
|
@@ -425,13 +425,11 @@ export interface InitOutput {
|
|
|
425
425
|
readonly __wbg_get_eip712domainmsg_salt: (a: number) => [number, number];
|
|
426
426
|
readonly __wbg_get_eip712domainmsg_verifying_contract: (a: number) => [number, number];
|
|
427
427
|
readonly __wbg_get_eip712domainmsg_version: (a: number) => [number, number];
|
|
428
|
-
readonly __wbg_get_requestid_request_id: (a: number) => [number, number];
|
|
429
428
|
readonly __wbg_get_typedciphertext_ciphertext: (a: number) => [number, number];
|
|
430
429
|
readonly __wbg_get_typedciphertext_ciphertext_format: (a: number) => number;
|
|
431
430
|
readonly __wbg_get_typedciphertext_external_handle: (a: number) => [number, number];
|
|
432
431
|
readonly __wbg_get_typedciphertext_fhe_type: (a: number) => number;
|
|
433
432
|
readonly __wbg_get_typedplaintext_fhe_type: (a: number) => number;
|
|
434
|
-
readonly __wbg_get_userdecryptionrequest_client_address: (a: number) => [number, number];
|
|
435
433
|
readonly __wbg_get_userdecryptionrequest_context_id: (a: number) => number;
|
|
436
434
|
readonly __wbg_get_userdecryptionrequest_domain: (a: number) => number;
|
|
437
435
|
readonly __wbg_get_userdecryptionrequest_epoch_id: (a: number) => number;
|
|
@@ -468,6 +466,8 @@ export interface InitOutput {
|
|
|
468
466
|
readonly __wbg_userdecryptionrequest_free: (a: number, b: number) => void;
|
|
469
467
|
readonly __wbg_userdecryptionresponse_free: (a: number, b: number) => void;
|
|
470
468
|
readonly __wbg_userdecryptionresponsepayload_free: (a: number, b: number) => void;
|
|
469
|
+
readonly __wbg_get_requestid_request_id: (a: number) => [number, number];
|
|
470
|
+
readonly __wbg_get_userdecryptionrequest_client_address: (a: number) => [number, number];
|
|
471
471
|
readonly __wbg_set_typedsigncryptedciphertext_fhe_type: (a: number, b: number) => void;
|
|
472
472
|
readonly __wbg_set_typedsigncryptedciphertext_packing_factor: (a: number, b: number) => void;
|
|
473
473
|
readonly __wbg_set_requestid_request_id: (a: number, b: number, c: number) => void;
|
package/kms_lib.js
CHANGED
|
@@ -167,17 +167,80 @@ function debugString(val) {
|
|
|
167
167
|
return className;
|
|
168
168
|
}
|
|
169
169
|
|
|
170
|
+
function passArray8ToWasm0(arg, malloc) {
|
|
171
|
+
const ptr = malloc(arg.length * 1, 1) >>> 0;
|
|
172
|
+
getUint8ArrayMemory0().set(arg, ptr / 1);
|
|
173
|
+
WASM_VECTOR_LEN = arg.length;
|
|
174
|
+
return ptr;
|
|
175
|
+
}
|
|
176
|
+
|
|
170
177
|
function _assertClass(instance, klass) {
|
|
171
178
|
if (!(instance instanceof klass)) {
|
|
172
179
|
throw new Error(`expected instance of ${klass.name}`);
|
|
173
180
|
}
|
|
174
181
|
}
|
|
175
182
|
|
|
183
|
+
function getArrayU8FromWasm0(ptr, len) {
|
|
184
|
+
ptr = ptr >>> 0;
|
|
185
|
+
return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* This function is *not* used by relayer-sdk because the encryption
|
|
189
|
+
* happens on the KMS side. It's just here for completeness and tests.
|
|
190
|
+
* @param {Uint8Array} msg
|
|
191
|
+
* @param {PublicEncKeyMlKem512} their_pk
|
|
192
|
+
* @returns {Uint8Array}
|
|
193
|
+
*/
|
|
194
|
+
export function ml_kem_pke_encrypt(msg, their_pk) {
|
|
195
|
+
const ptr0 = passArray8ToWasm0(msg, wasm.__wbindgen_malloc);
|
|
196
|
+
const len0 = WASM_VECTOR_LEN;
|
|
197
|
+
_assertClass(their_pk, PublicEncKeyMlKem512);
|
|
198
|
+
const ret = wasm.ml_kem_pke_encrypt(ptr0, len0, their_pk.__wbg_ptr);
|
|
199
|
+
var v2 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
200
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
201
|
+
return v2;
|
|
202
|
+
}
|
|
203
|
+
|
|
176
204
|
function takeFromExternrefTable0(idx) {
|
|
177
205
|
const value = wasm.__wbindgen_export_4.get(idx);
|
|
178
206
|
wasm.__externref_table_dealloc(idx);
|
|
179
207
|
return value;
|
|
180
208
|
}
|
|
209
|
+
/**
|
|
210
|
+
* @param {Uint8Array} v
|
|
211
|
+
* @returns {PublicSigKey}
|
|
212
|
+
*/
|
|
213
|
+
export function u8vec_to_public_sig_key(v) {
|
|
214
|
+
const ptr0 = passArray8ToWasm0(v, wasm.__wbindgen_malloc);
|
|
215
|
+
const len0 = WASM_VECTOR_LEN;
|
|
216
|
+
const ret = wasm.u8vec_to_public_sig_key(ptr0, len0);
|
|
217
|
+
if (ret[2]) {
|
|
218
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
219
|
+
}
|
|
220
|
+
return PublicSigKey.__wrap(ret[0]);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* @returns {number}
|
|
225
|
+
*/
|
|
226
|
+
export function ml_kem_pke_pk_len() {
|
|
227
|
+
const ret = wasm.ml_kem_pke_pk_len();
|
|
228
|
+
return ret >>> 0;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* @param {Uint8Array} v
|
|
233
|
+
* @returns {PrivateSigKey}
|
|
234
|
+
*/
|
|
235
|
+
export function u8vec_to_private_sig_key(v) {
|
|
236
|
+
const ptr0 = passArray8ToWasm0(v, wasm.__wbindgen_malloc);
|
|
237
|
+
const len0 = WASM_VECTOR_LEN;
|
|
238
|
+
const ret = wasm.u8vec_to_private_sig_key(ptr0, len0);
|
|
239
|
+
if (ret[2]) {
|
|
240
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
241
|
+
}
|
|
242
|
+
return PrivateSigKey.__wrap(ret[0]);
|
|
243
|
+
}
|
|
181
244
|
|
|
182
245
|
function getArrayJsValueFromWasm0(ptr, len) {
|
|
183
246
|
ptr = ptr >>> 0;
|
|
@@ -271,35 +334,6 @@ export function process_user_decryption_resp_from_js(client, request, eip712_dom
|
|
|
271
334
|
return v1;
|
|
272
335
|
}
|
|
273
336
|
|
|
274
|
-
/**
|
|
275
|
-
* @returns {PrivateEncKeyMlKem512}
|
|
276
|
-
*/
|
|
277
|
-
export function ml_kem_pke_keygen() {
|
|
278
|
-
const ret = wasm.ml_kem_pke_keygen();
|
|
279
|
-
return PrivateEncKeyMlKem512.__wrap(ret);
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
/**
|
|
283
|
-
* Create a new [ServerIdAddr] structure that holds an ID and an address
|
|
284
|
-
* which must be a valid EIP-55 address, notably prefixed with "0x".
|
|
285
|
-
* @param {number} id
|
|
286
|
-
* @param {string} addr
|
|
287
|
-
* @returns {ServerIdAddr}
|
|
288
|
-
*/
|
|
289
|
-
export function new_server_id_addr(id, addr) {
|
|
290
|
-
const ptr0 = passStringToWasm0(addr, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
291
|
-
const len0 = WASM_VECTOR_LEN;
|
|
292
|
-
const ret = wasm.new_server_id_addr(id, ptr0, len0);
|
|
293
|
-
if (ret[2]) {
|
|
294
|
-
throw takeFromExternrefTable0(ret[1]);
|
|
295
|
-
}
|
|
296
|
-
return ServerIdAddr.__wrap(ret[0]);
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
function getArrayU8FromWasm0(ptr, len) {
|
|
300
|
-
ptr = ptr >>> 0;
|
|
301
|
-
return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
|
|
302
|
-
}
|
|
303
337
|
/**
|
|
304
338
|
* @param {PrivateSigKey} sk
|
|
305
339
|
* @returns {Uint8Array}
|
|
@@ -315,145 +349,6 @@ export function private_sig_key_to_u8vec(sk) {
|
|
|
315
349
|
return v1;
|
|
316
350
|
}
|
|
317
351
|
|
|
318
|
-
/**
|
|
319
|
-
* @param {PrivateEncKeyMlKem512} sk
|
|
320
|
-
* @returns {PublicEncKeyMlKem512}
|
|
321
|
-
*/
|
|
322
|
-
export function ml_kem_pke_get_pk(sk) {
|
|
323
|
-
_assertClass(sk, PrivateEncKeyMlKem512);
|
|
324
|
-
const ret = wasm.ml_kem_pke_get_pk(sk.__wbg_ptr);
|
|
325
|
-
return PublicEncKeyMlKem512.__wrap(ret);
|
|
326
|
-
}
|
|
327
|
-
|
|
328
|
-
function passArray8ToWasm0(arg, malloc) {
|
|
329
|
-
const ptr = malloc(arg.length * 1, 1) >>> 0;
|
|
330
|
-
getUint8ArrayMemory0().set(arg, ptr / 1);
|
|
331
|
-
WASM_VECTOR_LEN = arg.length;
|
|
332
|
-
return ptr;
|
|
333
|
-
}
|
|
334
|
-
/**
|
|
335
|
-
* @param {Uint8Array} v
|
|
336
|
-
* @returns {PublicEncKeyMlKem512}
|
|
337
|
-
*/
|
|
338
|
-
export function u8vec_to_ml_kem_pke_pk(v) {
|
|
339
|
-
const ptr0 = passArray8ToWasm0(v, wasm.__wbindgen_malloc);
|
|
340
|
-
const len0 = WASM_VECTOR_LEN;
|
|
341
|
-
const ret = wasm.u8vec_to_ml_kem_pke_pk(ptr0, len0);
|
|
342
|
-
if (ret[2]) {
|
|
343
|
-
throw takeFromExternrefTable0(ret[1]);
|
|
344
|
-
}
|
|
345
|
-
return PublicEncKeyMlKem512.__wrap(ret[0]);
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
/**
|
|
349
|
-
* @returns {number}
|
|
350
|
-
*/
|
|
351
|
-
export function ml_kem_pke_sk_len() {
|
|
352
|
-
const ret = wasm.ml_kem_pke_sk_len();
|
|
353
|
-
return ret >>> 0;
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
/**
|
|
357
|
-
* This function is *not* used by relayer-sdk because the decryption
|
|
358
|
-
* is handled by [process_user_decryption_resp].
|
|
359
|
-
* It's just here for completeness and tests.
|
|
360
|
-
* @param {Uint8Array} ct
|
|
361
|
-
* @param {PrivateEncKeyMlKem512} my_sk
|
|
362
|
-
* @returns {Uint8Array}
|
|
363
|
-
*/
|
|
364
|
-
export function ml_kem_pke_decrypt(ct, my_sk) {
|
|
365
|
-
const ptr0 = passArray8ToWasm0(ct, wasm.__wbindgen_malloc);
|
|
366
|
-
const len0 = WASM_VECTOR_LEN;
|
|
367
|
-
_assertClass(my_sk, PrivateEncKeyMlKem512);
|
|
368
|
-
const ret = wasm.ml_kem_pke_decrypt(ptr0, len0, my_sk.__wbg_ptr);
|
|
369
|
-
var v2 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
370
|
-
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
371
|
-
return v2;
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
/**
|
|
375
|
-
* @param {Uint8Array} v
|
|
376
|
-
* @returns {PublicSigKey}
|
|
377
|
-
*/
|
|
378
|
-
export function u8vec_to_public_sig_key(v) {
|
|
379
|
-
const ptr0 = passArray8ToWasm0(v, wasm.__wbindgen_malloc);
|
|
380
|
-
const len0 = WASM_VECTOR_LEN;
|
|
381
|
-
const ret = wasm.u8vec_to_public_sig_key(ptr0, len0);
|
|
382
|
-
if (ret[2]) {
|
|
383
|
-
throw takeFromExternrefTable0(ret[1]);
|
|
384
|
-
}
|
|
385
|
-
return PublicSigKey.__wrap(ret[0]);
|
|
386
|
-
}
|
|
387
|
-
|
|
388
|
-
/**
|
|
389
|
-
* @param {PrivateEncKeyMlKem512} sk
|
|
390
|
-
* @returns {Uint8Array}
|
|
391
|
-
*/
|
|
392
|
-
export function ml_kem_pke_sk_to_u8vec(sk) {
|
|
393
|
-
_assertClass(sk, PrivateEncKeyMlKem512);
|
|
394
|
-
const ret = wasm.ml_kem_pke_sk_to_u8vec(sk.__wbg_ptr);
|
|
395
|
-
if (ret[3]) {
|
|
396
|
-
throw takeFromExternrefTable0(ret[2]);
|
|
397
|
-
}
|
|
398
|
-
var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
399
|
-
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
400
|
-
return v1;
|
|
401
|
-
}
|
|
402
|
-
|
|
403
|
-
/**
|
|
404
|
-
* @param {PublicEncKeyMlKem512} pk
|
|
405
|
-
* @returns {Uint8Array}
|
|
406
|
-
*/
|
|
407
|
-
export function ml_kem_pke_pk_to_u8vec(pk) {
|
|
408
|
-
_assertClass(pk, PublicEncKeyMlKem512);
|
|
409
|
-
const ret = wasm.ml_kem_pke_pk_to_u8vec(pk.__wbg_ptr);
|
|
410
|
-
if (ret[3]) {
|
|
411
|
-
throw takeFromExternrefTable0(ret[2]);
|
|
412
|
-
}
|
|
413
|
-
var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
414
|
-
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
415
|
-
return v1;
|
|
416
|
-
}
|
|
417
|
-
|
|
418
|
-
/**
|
|
419
|
-
* @param {Uint8Array} v
|
|
420
|
-
* @returns {PrivateEncKeyMlKem512}
|
|
421
|
-
*/
|
|
422
|
-
export function u8vec_to_ml_kem_pke_sk(v) {
|
|
423
|
-
const ptr0 = passArray8ToWasm0(v, wasm.__wbindgen_malloc);
|
|
424
|
-
const len0 = WASM_VECTOR_LEN;
|
|
425
|
-
const ret = wasm.u8vec_to_ml_kem_pke_sk(ptr0, len0);
|
|
426
|
-
if (ret[2]) {
|
|
427
|
-
throw takeFromExternrefTable0(ret[1]);
|
|
428
|
-
}
|
|
429
|
-
return PrivateEncKeyMlKem512.__wrap(ret[0]);
|
|
430
|
-
}
|
|
431
|
-
|
|
432
|
-
/**
|
|
433
|
-
* @returns {number}
|
|
434
|
-
*/
|
|
435
|
-
export function ml_kem_pke_pk_len() {
|
|
436
|
-
const ret = wasm.ml_kem_pke_pk_len();
|
|
437
|
-
return ret >>> 0;
|
|
438
|
-
}
|
|
439
|
-
|
|
440
|
-
/**
|
|
441
|
-
* This function is *not* used by relayer-sdk because the encryption
|
|
442
|
-
* happens on the KMS side. It's just here for completeness and tests.
|
|
443
|
-
* @param {Uint8Array} msg
|
|
444
|
-
* @param {PublicEncKeyMlKem512} their_pk
|
|
445
|
-
* @returns {Uint8Array}
|
|
446
|
-
*/
|
|
447
|
-
export function ml_kem_pke_encrypt(msg, their_pk) {
|
|
448
|
-
const ptr0 = passArray8ToWasm0(msg, wasm.__wbindgen_malloc);
|
|
449
|
-
const len0 = WASM_VECTOR_LEN;
|
|
450
|
-
_assertClass(their_pk, PublicEncKeyMlKem512);
|
|
451
|
-
const ret = wasm.ml_kem_pke_encrypt(ptr0, len0, their_pk.__wbg_ptr);
|
|
452
|
-
var v2 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
453
|
-
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
454
|
-
return v2;
|
|
455
|
-
}
|
|
456
|
-
|
|
457
352
|
function passArrayJsValueToWasm0(array, malloc) {
|
|
458
353
|
const ptr = malloc(array.length * 4, 4) >>> 0;
|
|
459
354
|
for (let i = 0; i < array.length; i++) {
|
|
@@ -519,6 +414,48 @@ export function process_user_decryption_resp(client, request, eip712_domain, agg
|
|
|
519
414
|
return v4;
|
|
520
415
|
}
|
|
521
416
|
|
|
417
|
+
/**
|
|
418
|
+
* Create a new [ServerIdAddr] structure that holds an ID and an address
|
|
419
|
+
* which must be a valid EIP-55 address, notably prefixed with "0x".
|
|
420
|
+
* @param {number} id
|
|
421
|
+
* @param {string} addr
|
|
422
|
+
* @returns {ServerIdAddr}
|
|
423
|
+
*/
|
|
424
|
+
export function new_server_id_addr(id, addr) {
|
|
425
|
+
const ptr0 = passStringToWasm0(addr, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
426
|
+
const len0 = WASM_VECTOR_LEN;
|
|
427
|
+
const ret = wasm.new_server_id_addr(id, ptr0, len0);
|
|
428
|
+
if (ret[2]) {
|
|
429
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
430
|
+
}
|
|
431
|
+
return ServerIdAddr.__wrap(ret[0]);
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
/**
|
|
435
|
+
* @param {PublicEncKeyMlKem512} pk
|
|
436
|
+
* @returns {Uint8Array}
|
|
437
|
+
*/
|
|
438
|
+
export function ml_kem_pke_pk_to_u8vec(pk) {
|
|
439
|
+
_assertClass(pk, PublicEncKeyMlKem512);
|
|
440
|
+
const ret = wasm.ml_kem_pke_pk_to_u8vec(pk.__wbg_ptr);
|
|
441
|
+
if (ret[3]) {
|
|
442
|
+
throw takeFromExternrefTable0(ret[2]);
|
|
443
|
+
}
|
|
444
|
+
var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
445
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
446
|
+
return v1;
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
/**
|
|
450
|
+
* @param {Client} client
|
|
451
|
+
* @returns {PrivateSigKey | undefined}
|
|
452
|
+
*/
|
|
453
|
+
export function get_client_secret_key(client) {
|
|
454
|
+
_assertClass(client, Client);
|
|
455
|
+
const ret = wasm.get_client_secret_key(client.__wbg_ptr);
|
|
456
|
+
return ret === 0 ? undefined : PrivateSigKey.__wrap(ret);
|
|
457
|
+
}
|
|
458
|
+
|
|
522
459
|
/**
|
|
523
460
|
* @param {PublicSigKey} pk
|
|
524
461
|
* @returns {Uint8Array}
|
|
@@ -531,6 +468,47 @@ export function public_sig_key_to_u8vec(pk) {
|
|
|
531
468
|
return v1;
|
|
532
469
|
}
|
|
533
470
|
|
|
471
|
+
/**
|
|
472
|
+
* @returns {PrivateEncKeyMlKem512}
|
|
473
|
+
*/
|
|
474
|
+
export function ml_kem_pke_keygen() {
|
|
475
|
+
const ret = wasm.ml_kem_pke_keygen();
|
|
476
|
+
return PrivateEncKeyMlKem512.__wrap(ret);
|
|
477
|
+
}
|
|
478
|
+
|
|
479
|
+
/**
|
|
480
|
+
* @param {Client} client
|
|
481
|
+
* @returns {string}
|
|
482
|
+
*/
|
|
483
|
+
export function get_client_address(client) {
|
|
484
|
+
let deferred1_0;
|
|
485
|
+
let deferred1_1;
|
|
486
|
+
try {
|
|
487
|
+
_assertClass(client, Client);
|
|
488
|
+
const ret = wasm.get_client_address(client.__wbg_ptr);
|
|
489
|
+
deferred1_0 = ret[0];
|
|
490
|
+
deferred1_1 = ret[1];
|
|
491
|
+
return getStringFromWasm0(ret[0], ret[1]);
|
|
492
|
+
} finally {
|
|
493
|
+
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
/**
|
|
498
|
+
* @param {PrivateEncKeyMlKem512} sk
|
|
499
|
+
* @returns {Uint8Array}
|
|
500
|
+
*/
|
|
501
|
+
export function ml_kem_pke_sk_to_u8vec(sk) {
|
|
502
|
+
_assertClass(sk, PrivateEncKeyMlKem512);
|
|
503
|
+
const ret = wasm.ml_kem_pke_sk_to_u8vec(sk.__wbg_ptr);
|
|
504
|
+
if (ret[3]) {
|
|
505
|
+
throw takeFromExternrefTable0(ret[2]);
|
|
506
|
+
}
|
|
507
|
+
var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
508
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
509
|
+
return v1;
|
|
510
|
+
}
|
|
511
|
+
|
|
534
512
|
/**
|
|
535
513
|
* @param {Client} client
|
|
536
514
|
* @returns {ServerIdAddr[]}
|
|
@@ -545,34 +523,56 @@ export function get_server_addrs(client) {
|
|
|
545
523
|
|
|
546
524
|
/**
|
|
547
525
|
* @param {Uint8Array} v
|
|
548
|
-
* @returns {
|
|
526
|
+
* @returns {PublicEncKeyMlKem512}
|
|
549
527
|
*/
|
|
550
|
-
export function
|
|
528
|
+
export function u8vec_to_ml_kem_pke_pk(v) {
|
|
551
529
|
const ptr0 = passArray8ToWasm0(v, wasm.__wbindgen_malloc);
|
|
552
530
|
const len0 = WASM_VECTOR_LEN;
|
|
553
|
-
const ret = wasm.
|
|
531
|
+
const ret = wasm.u8vec_to_ml_kem_pke_pk(ptr0, len0);
|
|
554
532
|
if (ret[2]) {
|
|
555
533
|
throw takeFromExternrefTable0(ret[1]);
|
|
556
534
|
}
|
|
557
|
-
return
|
|
535
|
+
return PublicEncKeyMlKem512.__wrap(ret[0]);
|
|
558
536
|
}
|
|
559
537
|
|
|
560
538
|
/**
|
|
561
|
-
* @param {
|
|
562
|
-
* @returns {
|
|
539
|
+
* @param {Uint8Array} v
|
|
540
|
+
* @returns {PrivateEncKeyMlKem512}
|
|
563
541
|
*/
|
|
564
|
-
export function
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
deferred1_0 = ret[0];
|
|
571
|
-
deferred1_1 = ret[1];
|
|
572
|
-
return getStringFromWasm0(ret[0], ret[1]);
|
|
573
|
-
} finally {
|
|
574
|
-
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
542
|
+
export function u8vec_to_ml_kem_pke_sk(v) {
|
|
543
|
+
const ptr0 = passArray8ToWasm0(v, wasm.__wbindgen_malloc);
|
|
544
|
+
const len0 = WASM_VECTOR_LEN;
|
|
545
|
+
const ret = wasm.u8vec_to_ml_kem_pke_sk(ptr0, len0);
|
|
546
|
+
if (ret[2]) {
|
|
547
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
575
548
|
}
|
|
549
|
+
return PrivateEncKeyMlKem512.__wrap(ret[0]);
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
/**
|
|
553
|
+
* @returns {number}
|
|
554
|
+
*/
|
|
555
|
+
export function ml_kem_pke_sk_len() {
|
|
556
|
+
const ret = wasm.ml_kem_pke_sk_len();
|
|
557
|
+
return ret >>> 0;
|
|
558
|
+
}
|
|
559
|
+
|
|
560
|
+
/**
|
|
561
|
+
* This function is *not* used by relayer-sdk because the decryption
|
|
562
|
+
* is handled by [process_user_decryption_resp].
|
|
563
|
+
* It's just here for completeness and tests.
|
|
564
|
+
* @param {Uint8Array} ct
|
|
565
|
+
* @param {PrivateEncKeyMlKem512} my_sk
|
|
566
|
+
* @returns {Uint8Array}
|
|
567
|
+
*/
|
|
568
|
+
export function ml_kem_pke_decrypt(ct, my_sk) {
|
|
569
|
+
const ptr0 = passArray8ToWasm0(ct, wasm.__wbindgen_malloc);
|
|
570
|
+
const len0 = WASM_VECTOR_LEN;
|
|
571
|
+
_assertClass(my_sk, PrivateEncKeyMlKem512);
|
|
572
|
+
const ret = wasm.ml_kem_pke_decrypt(ptr0, len0, my_sk.__wbg_ptr);
|
|
573
|
+
var v2 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
574
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
575
|
+
return v2;
|
|
576
576
|
}
|
|
577
577
|
|
|
578
578
|
/**
|
|
@@ -606,13 +606,13 @@ export function new_client(server_addrs, client_address_hex, fhe_parameter) {
|
|
|
606
606
|
}
|
|
607
607
|
|
|
608
608
|
/**
|
|
609
|
-
* @param {
|
|
610
|
-
* @returns {
|
|
609
|
+
* @param {PrivateEncKeyMlKem512} sk
|
|
610
|
+
* @returns {PublicEncKeyMlKem512}
|
|
611
611
|
*/
|
|
612
|
-
export function
|
|
613
|
-
_assertClass(
|
|
614
|
-
const ret = wasm.
|
|
615
|
-
return
|
|
612
|
+
export function ml_kem_pke_get_pk(sk) {
|
|
613
|
+
_assertClass(sk, PrivateEncKeyMlKem512);
|
|
614
|
+
const ret = wasm.ml_kem_pke_get_pk(sk.__wbg_ptr);
|
|
615
|
+
return PublicEncKeyMlKem512.__wrap(ret);
|
|
616
616
|
}
|
|
617
617
|
|
|
618
618
|
const CiphertextHandleFinalization = (typeof FinalizationRegistry === 'undefined')
|
package/kms_lib_bg.wasm
CHANGED
|
Binary file
|