@enclave-e3/wasm 0.1.7 → 0.1.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.
Binary file
@@ -2,6 +2,7 @@
2
2
  /* eslint-disable */
3
3
  export const memory: WebAssembly.Memory;
4
4
  export const bfv_encrypt_number: (a: bigint, b: number, c: number, d: number, e: bigint, f: number, g: number) => [number, number, number, number];
5
+ export const compute_pk_commitment: (a: number, b: number, c: number, d: bigint, e: number, f: number) => [number, number, number, number];
5
6
  export const bfv_encrypt_vector: (a: number, b: number, c: number, d: number, e: number, f: bigint, g: number, h: number) => [number, number, number, number];
6
7
  export const bfv_verifiable_encrypt_number: (a: bigint, b: number, c: number, d: number, e: bigint, f: number, g: number) => [number, number, number, number];
7
8
  export const bfv_verifiable_encrypt_vector: (a: number, b: number, c: number, d: number, e: number, f: bigint, g: number, h: number) => [number, number, number, number];
@@ -1,5 +1,6 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
+
3
4
  /**
4
5
  * A function to encrypt a u64 value using BFV and default params.
5
6
  *
@@ -20,6 +21,7 @@
20
21
  * Panics if the data cannot be encrypted
21
22
  */
22
23
  export function bfv_encrypt_number(data: bigint, public_key: Uint8Array, degree: number, plaintext_modulus: bigint, moduli: BigUint64Array): Uint8Array;
24
+
23
25
  /**
24
26
  * A function to encrypt a Vec<u64> value using BFV and default params.
25
27
  *
@@ -40,6 +42,7 @@ export function bfv_encrypt_number(data: bigint, public_key: Uint8Array, degree:
40
42
  * Panics if the data cannot be encrypted
41
43
  */
42
44
  export function bfv_encrypt_vector(data: BigUint64Array, public_key: Uint8Array, degree: number, plaintext_modulus: bigint, moduli: BigUint64Array): Uint8Array;
45
+
43
46
  /**
44
47
  * A function to encrypt a u64 value using BFV and default params and
45
48
  * generate circuit inputs for Greco
@@ -61,6 +64,7 @@ export function bfv_encrypt_vector(data: BigUint64Array, public_key: Uint8Array,
61
64
  * Panics if the data cannot be encrypted
62
65
  */
63
66
  export function bfv_verifiable_encrypt_number(data: bigint, public_key: Uint8Array, degree: number, plaintext_modulus: bigint, moduli: BigUint64Array): any[];
67
+
64
68
  /**
65
69
  * A function to encrypt a Vec<u64> value using BFV and default params and
66
70
  * generate circuit inputs for Greco
@@ -82,11 +86,28 @@ export function bfv_verifiable_encrypt_number(data: bigint, public_key: Uint8Arr
82
86
  * Panics if the data cannot be encrypted
83
87
  */
84
88
  export function bfv_verifiable_encrypt_vector(data: BigUint64Array, public_key: Uint8Array, degree: number, plaintext_modulus: bigint, moduli: BigUint64Array): any[];
89
+
90
+ /**
91
+ * A function to compute the public key commitment for a given public key.
92
+ *
93
+ * # Arguments
94
+ *
95
+ * * `public_key` - The public key to compute the commitment for
96
+ *
97
+ * # Returns
98
+ * Returns a `Result<Vec<u8>, JsValue>` containing the commitment and any errors.
99
+ *
100
+ * # Panics
101
+ *
102
+ * Panics if the public key cannot be computed
103
+ */
104
+ export function compute_pk_commitment(public_key: Uint8Array, degree: number, plaintext_modulus: bigint, moduli: BigUint64Array): Uint8Array;
105
+
85
106
  /**
86
107
  * Retrieves a BFV parameter set by name.
87
108
  *
88
109
  * # Parameters
89
- * * `name` - Parameter set identifier (e.g., "SET_8192_1000_4")
110
+ * * `name` - Parameter set identifier (e.g., "SECURE_THRESHOLD_BFV_8192")
90
111
  *
91
112
  * # Returns
92
113
  * A JavaScript object with the following structure:
@@ -103,12 +124,13 @@ export function bfv_verifiable_encrypt_vector(data: BigUint64Array, public_key:
103
124
  * Returns error if the parameter set name is invalid or serialization fails.
104
125
  */
105
126
  export function get_bfv_params(name: string): any;
127
+
106
128
  /**
107
129
  * Returns all available BFV parameter set identifiers.
108
130
  *
109
131
  * # Returns
110
132
  * Array of parameter set names that can be passed to `get_bfv_params()`.
111
- * Includes both production-ready sets (e.g., "SET_8192_1000_4") and
133
+ * Includes both production-ready sets (e.g., "SECURE_THRESHOLD_BFV_8192") and
112
134
  * insecure sets for testing (prefixed with "INSECURE_").
113
135
  */
114
136
  export function get_bfv_params_list(): string[];
@@ -116,41 +138,43 @@ export function get_bfv_params_list(): string[];
116
138
  export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
117
139
 
118
140
  export interface InitOutput {
119
- readonly memory: WebAssembly.Memory;
120
- readonly bfv_encrypt_number: (a: bigint, b: number, c: number, d: number, e: bigint, f: number, g: number) => [number, number, number, number];
121
- readonly bfv_encrypt_vector: (a: number, b: number, c: number, d: number, e: number, f: bigint, g: number, h: number) => [number, number, number, number];
122
- readonly bfv_verifiable_encrypt_number: (a: bigint, b: number, c: number, d: number, e: bigint, f: number, g: number) => [number, number, number, number];
123
- readonly bfv_verifiable_encrypt_vector: (a: number, b: number, c: number, d: number, e: number, f: bigint, g: number, h: number) => [number, number, number, number];
124
- readonly get_bfv_params: (a: number, b: number) => [number, number, number];
125
- readonly get_bfv_params_list: () => [number, number];
126
- readonly __wbindgen_malloc: (a: number, b: number) => number;
127
- readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
128
- readonly __wbindgen_exn_store: (a: number) => void;
129
- readonly __externref_table_alloc: () => number;
130
- readonly __wbindgen_externrefs: WebAssembly.Table;
131
- readonly __wbindgen_free: (a: number, b: number, c: number) => void;
132
- readonly __externref_table_dealloc: (a: number) => void;
133
- readonly __externref_drop_slice: (a: number, b: number) => void;
134
- readonly __wbindgen_start: () => void;
141
+ readonly memory: WebAssembly.Memory;
142
+ readonly bfv_encrypt_number: (a: bigint, b: number, c: number, d: number, e: bigint, f: number, g: number) => [number, number, number, number];
143
+ readonly compute_pk_commitment: (a: number, b: number, c: number, d: bigint, e: number, f: number) => [number, number, number, number];
144
+ readonly bfv_encrypt_vector: (a: number, b: number, c: number, d: number, e: number, f: bigint, g: number, h: number) => [number, number, number, number];
145
+ readonly bfv_verifiable_encrypt_number: (a: bigint, b: number, c: number, d: number, e: bigint, f: number, g: number) => [number, number, number, number];
146
+ readonly bfv_verifiable_encrypt_vector: (a: number, b: number, c: number, d: number, e: number, f: bigint, g: number, h: number) => [number, number, number, number];
147
+ readonly get_bfv_params: (a: number, b: number) => [number, number, number];
148
+ readonly get_bfv_params_list: () => [number, number];
149
+ readonly __wbindgen_malloc: (a: number, b: number) => number;
150
+ readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
151
+ readonly __wbindgen_exn_store: (a: number) => void;
152
+ readonly __externref_table_alloc: () => number;
153
+ readonly __wbindgen_externrefs: WebAssembly.Table;
154
+ readonly __wbindgen_free: (a: number, b: number, c: number) => void;
155
+ readonly __externref_table_dealloc: (a: number) => void;
156
+ readonly __externref_drop_slice: (a: number, b: number) => void;
157
+ readonly __wbindgen_start: () => void;
135
158
  }
136
159
 
137
160
  export type SyncInitInput = BufferSource | WebAssembly.Module;
161
+
138
162
  /**
139
- * Instantiates the given `module`, which can either be bytes or
140
- * a precompiled `WebAssembly.Module`.
141
- *
142
- * @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
143
- *
144
- * @returns {InitOutput}
145
- */
163
+ * Instantiates the given `module`, which can either be bytes or
164
+ * a precompiled `WebAssembly.Module`.
165
+ *
166
+ * @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
167
+ *
168
+ * @returns {InitOutput}
169
+ */
146
170
  export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
147
171
 
148
172
  /**
149
- * If `module_or_path` is {RequestInfo} or {URL}, makes a request and
150
- * for everything else, calls `WebAssembly.instantiate` directly.
151
- *
152
- * @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
153
- *
154
- * @returns {Promise<InitOutput>}
155
- */
173
+ * If `module_or_path` is {RequestInfo} or {URL}, makes a request and
174
+ * for everything else, calls `WebAssembly.instantiate` directly.
175
+ *
176
+ * @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
177
+ *
178
+ * @returns {Promise<InitOutput>}
179
+ */
156
180
  export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;