@fhevm/sdk 1.1.0-alpha.5 → 1.1.0-alpha.6
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/_cjs/core/_version.js +1 -1
- package/_cjs/core/base/bytes.js +2 -1
- package/_cjs/core/base/bytes.js.map +1 -1
- package/_cjs/core/base/environment.js +122 -0
- package/_cjs/core/base/environment.js.map +1 -0
- package/_cjs/core/base/errors/Sha256VerificationError.js +15 -0
- package/_cjs/core/base/errors/Sha256VerificationError.js.map +1 -0
- package/_cjs/core/base/inflate.js +282 -0
- package/_cjs/core/base/inflate.js.map +1 -0
- package/_cjs/core/base/isomorphicFs.js +24 -0
- package/_cjs/core/base/isomorphicFs.js.map +1 -0
- package/_cjs/core/base/isomorphicWorker.js +42 -111
- package/_cjs/core/base/isomorphicWorker.js.map +1 -1
- package/_cjs/core/base/wasm.js +15 -55
- package/_cjs/core/base/wasm.js.map +1 -1
- package/_cjs/core/kms/TransportKeyPair-p.js +0 -4
- package/_cjs/core/kms/TransportKeyPair-p.js.map +1 -1
- package/_cjs/core/kms/createKmsUserDecryptEip712.js +5 -1
- package/_cjs/core/kms/createKmsUserDecryptEip712.js.map +1 -1
- package/_cjs/core/modules/decrypt/module/init-p.js +124 -39
- package/_cjs/core/modules/decrypt/module/init-p.js.map +1 -1
- package/_cjs/core/modules/encrypt/module/init-p.js +148 -45
- package/_cjs/core/modules/encrypt/module/init-p.js.map +1 -1
- package/_cjs/core/runtime/HyperWasmSolver-p.js +4 -4
- package/_cjs/core/runtime/initFhevmEncryptRuntime-p.js +1 -1
- package/_cjs/core/runtime/initFhevmRuntime-p.js +1 -1
- package/_cjs/wasm/tfhe/TfheApi.d.ts +12 -12
- package/_cjs/wasm/tfhe/loadTfheLib.js +11 -11
- package/_cjs/wasm/tfhe/loadTfheLib.js.map +2 -2
- package/_cjs/wasm/tfhe/v1.5.3/startWorkers.js +26 -9
- package/_cjs/wasm/tfhe/v1.5.3/startWorkers.js.map +2 -2
- package/_cjs/wasm/tfhe/v1.5.3/tfhe.d.ts +3 -0
- package/_cjs/wasm/tfhe/{v1.6.1 → v1.6.2}/startWorkers.js +28 -11
- package/_cjs/wasm/tfhe/v1.6.2/startWorkers.js.map +7 -0
- package/{_esm/wasm/tfhe/v1.6.1 → _cjs/wasm/tfhe/v1.6.2}/tfhe-worker.mjs +40 -40
- package/{_esm/wasm/tfhe/v1.6.1 → _cjs/wasm/tfhe/v1.6.2}/tfhe.d.ts +88 -85
- package/_cjs/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe.js +245 -442
- package/_cjs/wasm/tfhe/v1.6.2/tfhe.js.map +7 -0
- package/_cjs/wasm/tfhe/v1.6.2/tfhe_bg.wasm +0 -0
- package/_cjs/wasm/tfhe/v1.6.2/tfhe_bg.wasm.base64.js +35 -0
- package/_cjs/wasm/tfhe/v1.6.2/tfhe_bg.wasm.base64.js.map +7 -0
- package/_cjs/wasm/tkms/loadKmsLib.js.map +1 -1
- package/_cjs/wasm/wasmBaseUrl.js +8 -19
- package/_cjs/wasm/wasmBaseUrl.js.map +2 -2
- package/_esm/core/_version.js +1 -1
- package/_esm/core/base/bytes.js +2 -1
- package/_esm/core/base/bytes.js.map +1 -1
- package/_esm/core/base/environment.js +164 -0
- package/_esm/core/base/environment.js.map +1 -0
- package/_esm/core/base/errors/Sha256VerificationError.js +11 -0
- package/_esm/core/base/errors/Sha256VerificationError.js.map +1 -0
- package/_esm/core/base/inflate.js +337 -0
- package/_esm/core/base/inflate.js.map +1 -0
- package/_esm/core/base/isomorphicFs.js +21 -0
- package/_esm/core/base/isomorphicFs.js.map +1 -0
- package/_esm/core/base/isomorphicWorker.js +92 -85
- package/_esm/core/base/isomorphicWorker.js.map +1 -1
- package/_esm/core/base/wasm.js +25 -31
- package/_esm/core/base/wasm.js.map +1 -1
- package/_esm/core/kms/TransportKeyPair-p.js +0 -4
- package/_esm/core/kms/TransportKeyPair-p.js.map +1 -1
- package/_esm/core/kms/createKmsUserDecryptEip712.js +5 -1
- package/_esm/core/kms/createKmsUserDecryptEip712.js.map +1 -1
- package/_esm/core/modules/decrypt/module/init-p.js +109 -54
- package/_esm/core/modules/decrypt/module/init-p.js.map +1 -1
- package/_esm/core/modules/encrypt/module/init-p.js +300 -53
- package/_esm/core/modules/encrypt/module/init-p.js.map +1 -1
- package/_esm/core/runtime/HyperWasmSolver-p.js +4 -4
- package/_esm/core/runtime/initFhevmEncryptRuntime-p.js +1 -1
- package/_esm/core/runtime/initFhevmRuntime-p.js +1 -1
- package/_esm/wasm/tfhe/TfheApi.d.ts +12 -12
- package/_esm/wasm/tfhe/loadTfheLib.js +11 -11
- package/_esm/wasm/tfhe/v1.5.3/startWorkers.js +41 -20
- package/_esm/wasm/tfhe/v1.5.3/tfhe.d.ts +3 -0
- package/_esm/wasm/tfhe/{v1.6.1 → v1.6.2}/startWorkers.js +46 -25
- package/{_cjs/wasm/tfhe/v1.6.1 → _esm/wasm/tfhe/v1.6.2}/tfhe-worker.mjs +40 -40
- package/{_types/wasm/tfhe/v1.6.1 → _esm/wasm/tfhe/v1.6.2}/tfhe.d.ts +88 -85
- package/_esm/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe.js +245 -442
- package/_esm/wasm/tfhe/v1.6.2/tfhe_bg.wasm +0 -0
- package/_esm/wasm/tfhe/v1.6.2/tfhe_bg.wasm.base64.js +7 -0
- package/_esm/wasm/wasmBaseUrl.js +17 -54
- package/_types/core/base/bytes.d.ts.map +1 -1
- package/_types/core/base/environment.d.ts +92 -0
- package/_types/core/base/environment.d.ts.map +1 -0
- package/_types/core/base/errors/Sha256VerificationError.d.ts +14 -0
- package/_types/core/base/errors/Sha256VerificationError.d.ts.map +1 -0
- package/_types/core/base/inflate.d.ts +25 -0
- package/_types/core/base/inflate.d.ts.map +1 -0
- package/_types/core/base/isomorphicFs.d.ts +2 -0
- package/_types/core/base/isomorphicFs.d.ts.map +1 -0
- package/_types/core/base/isomorphicWorker.d.ts +27 -43
- package/_types/core/base/isomorphicWorker.d.ts.map +1 -1
- package/_types/core/base/wasm.d.ts +0 -8
- package/_types/core/base/wasm.d.ts.map +1 -1
- package/_types/core/kms/TransportKeyPair-p.d.ts.map +1 -1
- package/_types/core/kms/createKmsUserDecryptEip712.d.ts.map +1 -1
- package/_types/core/modules/decrypt/module/init-p.d.ts.map +1 -1
- package/_types/core/modules/encrypt/module/init-p.d.ts.map +1 -1
- package/_types/core/types/wasmAssets.d.ts.map +1 -1
- package/_types/wasm/tfhe/TfheApi.d.ts +12 -12
- package/_types/wasm/tfhe/v1.5.3/tfhe.d.ts +3 -0
- package/{wasm/tfhe/v1.6.1 → _types/wasm/tfhe/v1.6.2}/tfhe.d.ts +88 -85
- package/core/_version.ts +1 -1
- package/core/base/bytes.ts +2 -1
- package/core/base/environment.ts +210 -0
- package/core/base/errors/Sha256VerificationError.ts +22 -0
- package/core/base/inflate.ts +373 -0
- package/core/base/isomorphicFs.ts +23 -0
- package/core/base/isomorphicWorker.ts +96 -123
- package/core/base/wasm.ts +28 -35
- package/core/kms/TransportKeyPair-p.ts +0 -5
- package/core/kms/createKmsUserDecryptEip712.ts +8 -1
- package/core/modules/decrypt/module/init-p.ts +148 -59
- package/core/modules/encrypt/module/init-p.ts +368 -63
- package/core/runtime/HyperWasmSolver-p.ts +4 -4
- package/core/runtime/initFhevmEncryptRuntime-p.ts +1 -1
- package/core/runtime/initFhevmRuntime-p.ts +1 -1
- package/core/types/wasmAssets.ts +58 -0
- package/package.json +1 -1
- package/wasm/tfhe/TfheApi.d.ts +12 -12
- package/wasm/tfhe/loadTfheLib.js +11 -11
- package/wasm/tfhe/v1.5.3/startWorkers.js +41 -20
- package/wasm/tfhe/v1.5.3/tfhe.d.ts +3 -0
- package/wasm/tfhe/v1.6.0-dev/startWorkers.js +41 -20
- package/wasm/tfhe/v1.6.0-dev/tfhe.d.ts +3 -0
- package/wasm/tfhe/{v1.6.1 → v1.6.2}/startWorkers.js +46 -25
- package/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe-worker.mjs +40 -40
- package/{_cjs/wasm/tfhe/v1.6.1 → wasm/tfhe/v1.6.2}/tfhe.d.ts +88 -85
- package/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe.js +245 -442
- package/wasm/tfhe/v1.6.2/tfhe_bg.wasm +0 -0
- package/wasm/tfhe/v1.6.2/tfhe_bg.wasm.base64.js +7 -0
- package/wasm/wasmBaseUrl.js +17 -54
- package/_cjs/wasm/tfhe/v1.6.1/startWorkers.js.map +0 -7
- package/_cjs/wasm/tfhe/v1.6.1/tfhe.js.map +0 -7
- package/_cjs/wasm/tfhe/v1.6.1/tfhe_bg.wasm +0 -0
- package/_cjs/wasm/tfhe/v1.6.1/tfhe_bg.wasm.base64.js +0 -35
- package/_cjs/wasm/tfhe/v1.6.1/tfhe_bg.wasm.base64.js.map +0 -7
- package/_esm/wasm/tfhe/v1.6.1/tfhe_bg.wasm +0 -0
- package/_esm/wasm/tfhe/v1.6.1/tfhe_bg.wasm.base64.js +0 -7
- package/wasm/tfhe/v1.6.1/tfhe_bg.wasm +0 -0
- package/wasm/tfhe/v1.6.1/tfhe_bg.wasm.base64.js +0 -7
- /package/_cjs/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe_bg.wasm.base64.d.ts +0 -0
- /package/_esm/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe_bg.wasm.base64.d.ts +0 -0
- /package/_types/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe_bg.wasm.base64.d.ts +0 -0
- /package/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe_bg.wasm.base64.d.ts +0 -0
package/_esm/core/base/wasm.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { verifySha256 } from './bytes.js';
|
|
2
2
|
import { FetchError } from './errors/FetchError.js';
|
|
3
3
|
import { isDataUrlFetchSupported } from './fetch.js';
|
|
4
|
-
import { isBrowserLike } from './
|
|
4
|
+
import { getNodeBuffer, getNodeFs, getNodeUrl, isBrowserLike, supportsDecompressionStream } from './environment.js';
|
|
5
|
+
import { inflateDecompress } from './inflate.js';
|
|
5
6
|
/**
|
|
6
7
|
* Decodes a base64 string to bytes using the fastest available method.
|
|
7
8
|
*
|
|
@@ -11,8 +12,12 @@ import { isBrowserLike } from './isomorphicWorker.js';
|
|
|
11
12
|
*/
|
|
12
13
|
async function _isomorphicDecodeBase64(base64) {
|
|
13
14
|
if (!isBrowserLike()) {
|
|
14
|
-
const
|
|
15
|
-
|
|
15
|
+
const NodeBuffer = await getNodeBuffer();
|
|
16
|
+
if (NodeBuffer) {
|
|
17
|
+
return NodeBuffer.from(base64, 'base64');
|
|
18
|
+
}
|
|
19
|
+
// Not a browser, but no node:buffer either (edge runtime). Fall through to
|
|
20
|
+
// the web-standard data-URL fetch / atob paths below, which edge supports.
|
|
16
21
|
}
|
|
17
22
|
if (await isDataUrlFetchSupported()) {
|
|
18
23
|
const res = await fetch(`data:application/octet-stream;base64,${base64}`);
|
|
@@ -39,37 +44,19 @@ async function _isomorphicFetchWasmResponse(wasmUrl) {
|
|
|
39
44
|
}
|
|
40
45
|
async function _isomorphicReadWasmBytes(wasmUrl) {
|
|
41
46
|
if (!isBrowserLike() && wasmUrl.protocol === 'file:') {
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
47
|
+
const [fs, url] = await Promise.all([getNodeFs(), getNodeUrl()]);
|
|
48
|
+
if (fs && url) {
|
|
49
|
+
// The BufferSource-safe cast for Node's Buffer lives in getNodeFs's
|
|
50
|
+
// return type (see environment.ts), so the bytes can flow straight into
|
|
51
|
+
// WebAssembly.compile without copying.
|
|
52
|
+
return fs.readFile(url.fileURLToPath(wasmUrl));
|
|
53
|
+
}
|
|
54
|
+
// Not a browser, but no node:fs either (edge runtime). Fall through to
|
|
55
|
+
// fetch below — a file: URL will fail there, surfacing a clear error.
|
|
49
56
|
}
|
|
50
57
|
const res = await _isomorphicFetchWasmResponse(wasmUrl);
|
|
51
58
|
return res.arrayBuffer();
|
|
52
59
|
}
|
|
53
|
-
/**
|
|
54
|
-
* Compiles a WASM module from a URL, isomorphically (browser and Node.js).
|
|
55
|
-
*
|
|
56
|
-
* - Node + `file://`: uses `readFile` (Node `fetch` doesn't support `file://`)
|
|
57
|
-
* - Browser + streaming: uses `WebAssembly.compileStreaming` (fastest path)
|
|
58
|
-
* - Fallback: `fetch` + `arrayBuffer` + `WebAssembly.compile`
|
|
59
|
-
*/
|
|
60
|
-
export async function isomorphicCompileWasm(wasmUrl) {
|
|
61
|
-
const isBrowser = isBrowserLike();
|
|
62
|
-
if (isBrowser) {
|
|
63
|
-
const res = await _isomorphicFetchWasmResponse(wasmUrl);
|
|
64
|
-
if (typeof WebAssembly.compileStreaming === 'function') {
|
|
65
|
-
return await WebAssembly.compileStreaming(res);
|
|
66
|
-
}
|
|
67
|
-
return WebAssembly.compile(await res.arrayBuffer());
|
|
68
|
-
}
|
|
69
|
-
const bytes = await _isomorphicReadWasmBytes(wasmUrl);
|
|
70
|
-
// Safe cast: Node's Buffer is always backed by ArrayBuffer at runtime.
|
|
71
|
-
return WebAssembly.compile(bytes);
|
|
72
|
-
}
|
|
73
60
|
/**
|
|
74
61
|
* Fetches/reads a WASM module, verifies its SHA-256 digest, then compiles it.
|
|
75
62
|
*
|
|
@@ -101,10 +88,17 @@ export async function isomorphicCompileWasmFromBase64(wasmAsBase64, compressionF
|
|
|
101
88
|
if (compressionFormat === undefined) {
|
|
102
89
|
return WebAssembly.compile(bytes);
|
|
103
90
|
}
|
|
104
|
-
|
|
91
|
+
// Preferred: stream through the platform DecompressionStream (native, zero-copy).
|
|
92
|
+
if (supportsDecompressionStream()) {
|
|
105
93
|
const stream = new Blob([bytes]).stream().pipeThrough(new DecompressionStream(compressionFormat));
|
|
106
94
|
// compileStreaming requires Content-Type: application/wasm — supply it explicitly.
|
|
107
95
|
return WebAssembly.compileStreaming(new Response(stream, { headers: { 'Content-Type': 'application/wasm' } }));
|
|
108
96
|
}
|
|
97
|
+
// Fallback for runtimes without a usable DecompressionStream — older browsers
|
|
98
|
+
// (Firefox <113, Safari <16.4) and the Next.js Edge Runtime (whose stub throws on
|
|
99
|
+
// construction). Inflate in pure JS, then compile. Keeps the small compressed
|
|
100
|
+
// embedded payload working everywhere with no caller action.
|
|
101
|
+
const compressed = bytes instanceof Uint8Array ? bytes : new Uint8Array(bytes);
|
|
102
|
+
return WebAssembly.compile(inflateDecompress(compressed, compressionFormat));
|
|
109
103
|
}
|
|
110
104
|
//# sourceMappingURL=wasm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasm.js","sourceRoot":"","sources":["../../../core/base/wasm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"wasm.js","sourceRoot":"","sources":["../../../core/base/wasm.ts"],"names":[],"mappings":"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"}
|
|
@@ -169,10 +169,6 @@ export async function toTransportKeyPair(context, value) {
|
|
|
169
169
|
expectedType: 'Bytes | BytesHex',
|
|
170
170
|
...options,
|
|
171
171
|
});
|
|
172
|
-
assertRecordNonNullableProperty(value, 'tkmsVersion', name, {
|
|
173
|
-
expectedType: 'string',
|
|
174
|
-
...options,
|
|
175
|
-
});
|
|
176
172
|
const rawPublicKey = value.publicKey;
|
|
177
173
|
const rawPrivateKey = value.privateKey;
|
|
178
174
|
const rawTkmsVersion = value.tkmsVersion;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransportKeyPair-p.js","sourceRoot":"","sources":["../../../core/kms/TransportKeyPair-p.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TransportKeyPair-p.js","sourceRoot":"","sources":["../../../core/kms/TransportKeyPair-p.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ import { assertIsUint64, assertIsUintNumber } from '../base/uint.js';
|
|
|
7
7
|
import { assertIsKmsExtraData } from './kmsExtraData.js';
|
|
8
8
|
import { kmsUserDecryptEip712Types } from './kmsUserDecryptEip712Types.js';
|
|
9
9
|
import { isDeepEqual } from '../base/object.js';
|
|
10
|
+
import { kmsDelegatedUserDecryptEip712Types } from './kmsDelegatedUserDecryptEip712Types.js';
|
|
10
11
|
////////////////////////////////////////////////////////////////////////////////
|
|
11
12
|
// createKmsUserDecryptEip712
|
|
12
13
|
////////////////////////////////////////////////////////////////////////////////
|
|
@@ -60,7 +61,10 @@ export function _assertIsKmsUserDecryptEip712Base(value, name, primaryType, opti
|
|
|
60
61
|
assertRecordNonNullableProperty(value, 'domain', name, options);
|
|
61
62
|
assertIsKmsEip712Domain(value.domain, `${name}.domain`, options);
|
|
62
63
|
assertRecordNonNullableProperty(value, 'types', name, options);
|
|
63
|
-
|
|
64
|
+
const expectedTypes = primaryType === 'DelegatedUserDecryptRequestVerification'
|
|
65
|
+
? kmsDelegatedUserDecryptEip712Types
|
|
66
|
+
: kmsUserDecryptEip712Types;
|
|
67
|
+
if (!isDeepEqual(value.types, expectedTypes)) {
|
|
64
68
|
throw new Error('Unexpected KmsUserDecryptEip712Types');
|
|
65
69
|
}
|
|
66
70
|
assertRecordStringProperty(value, 'primaryType', name, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createKmsUserDecryptEip712.js","sourceRoot":"","sources":["../../../core/kms/createKmsUserDecryptEip712.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,2BAA2B,EAC3B,eAAe,EACf,oBAAoB,EACpB,2CAA2C,GAC5C,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC/G,OAAO,EAAE,+BAA+B,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"createKmsUserDecryptEip712.js","sourceRoot":"","sources":["../../../core/kms/createKmsUserDecryptEip712.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,67 +1,121 @@
|
|
|
1
|
-
import { isBrowserLike } from '../../../base/
|
|
1
|
+
import { isBrowserLike } from '../../../base/environment.js';
|
|
2
2
|
import { isomorphicCompileVerifiedWasm, isomorphicCompileWasmFromBase64 } from '../../../base/wasm.js';
|
|
3
3
|
import { assertIsFhevmRuntime } from '../../../runtime/CoreFhevmRuntime-p.js';
|
|
4
|
-
import { wasmBaseUrl } from '../../../../wasm/wasmBaseUrl.js';
|
|
5
4
|
import { kmsAssetsWithVersion, loadKmsLib, loadKmsWasmBase64 } from '../../../../wasm/tkms/loadKmsLib.js';
|
|
5
|
+
import { isomorphicFileUrlExists } from '../../../base/isomorphicFs.js';
|
|
6
6
|
////////////////////////////////////////////////////////////////////////////////
|
|
7
|
-
const ownerUidByVersion = new Map();
|
|
8
|
-
const cachedTkmsModulePromiseByVersion = new Map();
|
|
9
|
-
const moduleInfoByVersion = new Map();
|
|
10
|
-
////////////////////////////////////////////////////////////////////////////////
|
|
11
|
-
// Pure JS file (not compiled by tsc) — provides cross-platform base URL
|
|
12
|
-
// for resolving WASM paths. Uses import.meta.url in ESM, __filename in CJS.
|
|
13
7
|
// (Node only) Path relative to src/wasm/ where wasmBaseUrl is anchored
|
|
14
|
-
const nodeDefaultLocateFile = (file) => {
|
|
8
|
+
const nodeDefaultLocateFile = async (file) => {
|
|
9
|
+
// Pure JS file (not compiled by tsc) — provides cross-platform base URL
|
|
10
|
+
// for resolving WASM paths. Uses import.meta.url in ESM, __filename in CJS.
|
|
11
|
+
const { wasmBaseUrl } = await import('../../../../wasm/wasmBaseUrl.js');
|
|
15
12
|
return new URL(`./tkms/${file}`, wasmBaseUrl);
|
|
16
13
|
};
|
|
17
|
-
|
|
14
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
15
|
+
async function _resolveSingleKmsAsset(asset, locateFile) {
|
|
18
16
|
let url;
|
|
17
|
+
let resolution = 'none';
|
|
19
18
|
if (locateFile !== undefined) {
|
|
20
|
-
|
|
19
|
+
const located = locateFile(asset.filename);
|
|
20
|
+
if (located === null || located === undefined) {
|
|
21
|
+
url = undefined;
|
|
22
|
+
}
|
|
23
|
+
else if (located instanceof URL) {
|
|
24
|
+
url = located;
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
throw new TypeError(`Invalid locateFile result for TKMS asset '${asset.filename}': expected URL, null, or undefined.`);
|
|
28
|
+
}
|
|
29
|
+
resolution = 'user';
|
|
21
30
|
}
|
|
22
31
|
else if (!isBrowserLike()) {
|
|
23
|
-
url = nodeDefaultLocateFile(asset.localRelativePath);
|
|
32
|
+
url = await nodeDefaultLocateFile(asset.localRelativePath);
|
|
33
|
+
resolution = 'node';
|
|
34
|
+
}
|
|
35
|
+
return Object.freeze({ ...asset, url, resolution });
|
|
36
|
+
}
|
|
37
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
38
|
+
async function _resolveKmsAssets(assets, locateFile) {
|
|
39
|
+
let wasm = await _resolveSingleKmsAsset(assets.wasm, locateFile);
|
|
40
|
+
// Only auto-derived ('node') file:// URLs need on-disk validation; the mode is
|
|
41
|
+
// shared across all assets, so checking one is enough to know the set's mode.
|
|
42
|
+
if (wasm.resolution === 'node') {
|
|
43
|
+
const allExist = await isomorphicFileUrlExists(wasm.url);
|
|
44
|
+
if (!allExist) {
|
|
45
|
+
wasm = Object.freeze({ ...wasm, url: undefined });
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return { wasm };
|
|
49
|
+
}
|
|
50
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
51
|
+
function _logResolvedKmsAssets(resolvedAssets, logger) {
|
|
52
|
+
const { wasm } = resolvedAssets;
|
|
53
|
+
if (wasm.resolution === 'user') {
|
|
54
|
+
logger?.debug(`resolve tkms wasm filename using 'locateFile' function: ${wasm.filename} -> url: ${wasm.url}`);
|
|
55
|
+
}
|
|
56
|
+
else if (wasm.resolution === 'node') {
|
|
57
|
+
if (wasm.url === undefined) {
|
|
58
|
+
// Auto-derived assets were missing on disk (e.g. a bundler such as Turbopack
|
|
59
|
+
// relocated the package) and were cleared by _resolveTkmsAssets -> base64.
|
|
60
|
+
logger?.debug(`tkms auto-derived assets not found on disk (bundler relocation?); using embedded base64 ` +
|
|
61
|
+
`(wasm: ${wasm.localRelativePath})`);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
logger?.debug(`resolve tkms wasm local path: ${wasm.localRelativePath} -> url: ${wasm.url}`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
// 'none': browser zero-config (no 'locateFile', not Node) -> embedded base64.
|
|
69
|
+
logger?.debug(`resolve tkms assets using embedded base64 (browser, no 'locateFile')`);
|
|
24
70
|
}
|
|
25
|
-
return Object.freeze({ ...asset, url });
|
|
26
71
|
}
|
|
27
72
|
const resolvedTkmsModuleConfigByVersion = new Map();
|
|
73
|
+
const resolvingTkmsModuleConfigPromiseByVersion = new Map();
|
|
28
74
|
/**
|
|
29
75
|
* @internal
|
|
30
|
-
* Returns the existing resolved config, or resolves it from
|
|
76
|
+
* Returns the existing resolved config for a TKMS version, or resolves it from
|
|
77
|
+
* the runtime config.
|
|
31
78
|
*/
|
|
32
|
-
function _getOrResolveTkmsModuleConfig(runtime, tkmsVersion) {
|
|
33
|
-
|
|
79
|
+
async function _getOrResolveTkmsModuleConfig(runtime, tkmsVersion) {
|
|
80
|
+
const resolvedTkmsModuleConfig = resolvedTkmsModuleConfigByVersion.get(tkmsVersion);
|
|
34
81
|
if (resolvedTkmsModuleConfig !== undefined) {
|
|
35
82
|
return resolvedTkmsModuleConfig;
|
|
36
83
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
84
|
+
let resolvingTkmsModuleConfigPromise = resolvingTkmsModuleConfigPromiseByVersion.get(tkmsVersion);
|
|
85
|
+
if (resolvingTkmsModuleConfigPromise === undefined) {
|
|
86
|
+
resolvingTkmsModuleConfigPromise = _resolveTkmsModuleConfig(runtime.config, tkmsVersion)
|
|
87
|
+
.then((cfg) => {
|
|
88
|
+
resolvedTkmsModuleConfigByVersion.set(tkmsVersion, cfg);
|
|
89
|
+
return cfg;
|
|
90
|
+
})
|
|
91
|
+
.catch((error) => {
|
|
92
|
+
resolvingTkmsModuleConfigPromiseByVersion.delete(tkmsVersion);
|
|
93
|
+
throw error;
|
|
94
|
+
});
|
|
95
|
+
resolvingTkmsModuleConfigPromiseByVersion.set(tkmsVersion, resolvingTkmsModuleConfigPromise);
|
|
96
|
+
}
|
|
97
|
+
return resolvingTkmsModuleConfigPromise;
|
|
40
98
|
}
|
|
41
|
-
function _resolveTkmsModuleConfig(parameters, version) {
|
|
99
|
+
async function _resolveTkmsModuleConfig(parameters, version) {
|
|
42
100
|
const { locateFile } = parameters;
|
|
43
101
|
const assets = kmsAssetsWithVersion(version);
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
parameters.logger?.debug(`resolve kms wasm filename: ${wasm.filename} -> url: ${wasm.url}`);
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
/*
|
|
50
|
-
if run in Node only, use defaultLocateFile!
|
|
51
|
-
*/
|
|
52
|
-
if (!isBrowserLike()) {
|
|
53
|
-
parameters.logger?.debug(`resolve kms wasm local path: ${wasm.localRelativePath} -> url: ${wasm.url}`);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
102
|
+
const resolvedAssets = await _resolveKmsAssets(assets, locateFile);
|
|
103
|
+
_logResolvedKmsAssets(resolvedAssets, parameters.logger);
|
|
56
104
|
// if wasmUrl is undefined, use base64 code instead
|
|
57
105
|
const cfg = {
|
|
58
106
|
version,
|
|
59
|
-
|
|
107
|
+
assets: resolvedAssets,
|
|
60
108
|
logger: parameters.logger,
|
|
61
109
|
};
|
|
62
110
|
parameters.logger?.debug(JSON.stringify(cfg, null, 2));
|
|
63
111
|
return cfg;
|
|
64
112
|
}
|
|
113
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
114
|
+
// initTkmsModule
|
|
115
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
116
|
+
const ownerUidByVersion = new Map();
|
|
117
|
+
const cachedTkmsModulePromiseByVersion = new Map();
|
|
118
|
+
const moduleInfoByVersion = new Map();
|
|
65
119
|
export async function initTkmsModule(runtime, parameters) {
|
|
66
120
|
assertIsFhevmRuntime(runtime, {});
|
|
67
121
|
const ownerUid = ownerUidByVersion.get(parameters.tkmsVersion);
|
|
@@ -69,37 +123,38 @@ export async function initTkmsModule(runtime, parameters) {
|
|
|
69
123
|
throw new Error(`Decrypt WASM module is already owned by runtime '${ownerUid}' and cannot be shared with runtime '${runtime.uid}'`);
|
|
70
124
|
}
|
|
71
125
|
ownerUidByVersion.set(parameters.tkmsVersion, runtime.uid);
|
|
72
|
-
// Cache the
|
|
73
|
-
//
|
|
126
|
+
// Cache the whole initialization promise before the first await. Several
|
|
127
|
+
// clients may call initTkmsModule concurrently during startup.
|
|
74
128
|
//
|
|
75
|
-
// Retry is not supported
|
|
76
|
-
// -----------------------
|
|
77
|
-
// The underlying KMS/WASM bindings
|
|
78
|
-
// keep module-level state that cannot be reset reliably after a partial
|
|
79
|
-
// initialization failure; later callers should observe the original error
|
|
80
|
-
// instead of retrying against half-initialized state.
|
|
129
|
+
// Retry is not supported
|
|
81
130
|
let cachedTkmsModulePromise = cachedTkmsModulePromiseByVersion.get(parameters.tkmsVersion);
|
|
82
131
|
if (cachedTkmsModulePromise === undefined) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
132
|
+
cachedTkmsModulePromise = (async () => {
|
|
133
|
+
// resolve is async
|
|
134
|
+
const cfg = await _getOrResolveTkmsModuleConfig(runtime, parameters.tkmsVersion);
|
|
135
|
+
return await _initTkmsModule(cfg);
|
|
136
|
+
})();
|
|
86
137
|
cachedTkmsModulePromiseByVersion.set(parameters.tkmsVersion, cachedTkmsModulePromise);
|
|
87
138
|
}
|
|
88
139
|
return cachedTkmsModulePromise;
|
|
89
140
|
}
|
|
90
|
-
async function
|
|
91
|
-
const kmsLib = await loadKmsLib(cfg.version);
|
|
92
|
-
// Compile WASM module (see matrix in types.ts)
|
|
141
|
+
async function _compileWasmModule(cfg) {
|
|
93
142
|
let wasmModule;
|
|
94
|
-
if (cfg.wasm.url !== undefined) {
|
|
95
|
-
cfg.logger?.debug(`compile verified wasm at: ${cfg.wasm.url}`);
|
|
96
|
-
wasmModule = await isomorphicCompileVerifiedWasm(cfg.wasm.url, cfg.wasm.sha256);
|
|
143
|
+
if (cfg.assets.wasm.url !== undefined) {
|
|
144
|
+
cfg.logger?.debug(`compile tkms verified wasm at: ${cfg.assets.wasm.url}`);
|
|
145
|
+
wasmModule = await isomorphicCompileVerifiedWasm(cfg.assets.wasm.url, cfg.assets.wasm.sha256);
|
|
97
146
|
}
|
|
98
147
|
else {
|
|
99
|
-
const { tkmsWasmBase64,
|
|
100
|
-
cfg.logger?.debug(`compile wasm from embedded base64 (compression:${
|
|
101
|
-
wasmModule = await isomorphicCompileWasmFromBase64(tkmsWasmBase64,
|
|
148
|
+
const { tkmsWasmBase64, tkmsWasmBase64CompressionFormat } = await loadKmsWasmBase64(cfg.version);
|
|
149
|
+
cfg.logger?.debug(`compile tkms wasm from embedded base64 (compression:${tkmsWasmBase64CompressionFormat ?? 'none'})`);
|
|
150
|
+
wasmModule = await isomorphicCompileWasmFromBase64(tkmsWasmBase64, tkmsWasmBase64CompressionFormat);
|
|
102
151
|
}
|
|
152
|
+
return wasmModule;
|
|
153
|
+
}
|
|
154
|
+
async function _initTkmsModule(cfg) {
|
|
155
|
+
const kmsLib = await loadKmsLib(cfg.version);
|
|
156
|
+
// Compile WASM module (see matrix in types.ts)
|
|
157
|
+
const wasmModule = await _compileWasmModule(cfg);
|
|
103
158
|
const input = { module_or_path: wasmModule };
|
|
104
159
|
await kmsLib.initAsync(input);
|
|
105
160
|
// Note: init_panic_hook is not exposed by kms_lib
|
|
@@ -110,7 +165,7 @@ async function _initTkmsModule(cfg) {
|
|
|
110
165
|
memory.pages = wasmInfo.memory.pages;
|
|
111
166
|
}
|
|
112
167
|
moduleInfoByVersion.set(cfg.version, Object.freeze({
|
|
113
|
-
wasmUrl: cfg.wasm.url ? new URL(cfg.wasm.url) : undefined,
|
|
168
|
+
wasmUrl: cfg.assets.wasm.url ? new URL(cfg.assets.wasm.url) : undefined,
|
|
114
169
|
version: wasmInfo.version,
|
|
115
170
|
name: wasmInfo.name,
|
|
116
171
|
memory,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-p.js","sourceRoot":"","sources":["../../../../../core/modules/decrypt/module/init-p.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"init-p.js","sourceRoot":"","sources":["../../../../../core/modules/decrypt/module/init-p.ts"],"names":[],"mappings":"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"}
|