@fhevm/sdk 1.1.0-alpha.5 → 1.1.0-alpha.7
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/actions/base/index.js +1 -17
- package/_cjs/core/actions/base/index.js.map +1 -1
- package/_cjs/core/actions/base/signDecryptionPermit.js +0 -3
- package/_cjs/core/actions/base/signDecryptionPermit.js.map +1 -1
- package/_cjs/core/actions/chain/index.js +1 -13
- package/_cjs/core/actions/chain/index.js.map +1 -1
- package/_cjs/core/actions/chain/parseSignedDecryptionPermit.js.map +1 -1
- package/_cjs/core/actions/chain/serializeSignedDecryptionPermit.js.map +1 -1
- package/_cjs/core/actions/decrypt/canDecryptValue.js.map +1 -1
- package/_cjs/core/actions/decrypt/canDecryptValues.js.map +1 -1
- package/_cjs/core/actions/decrypt/canDecryptValuesFromPairs.js.map +1 -1
- package/_cjs/core/actions/decrypt/decryptValue.js +1 -0
- package/_cjs/core/actions/decrypt/decryptValue.js.map +1 -1
- package/_cjs/core/actions/decrypt/decryptValues.js +2 -0
- package/_cjs/core/actions/decrypt/decryptValues.js.map +1 -1
- package/_cjs/core/actions/decrypt/decryptValuesFromPairs.js +2 -0
- package/_cjs/core/actions/decrypt/decryptValuesFromPairs.js.map +1 -1
- package/_cjs/core/actions/decrypt/index.js +1 -3
- package/_cjs/core/actions/decrypt/index.js.map +1 -1
- package/_cjs/core/actions/host/index.js +1 -9
- package/_cjs/core/actions/host/index.js.map +1 -1
- package/_cjs/core/base/bytes.js +2 -1
- package/_cjs/core/base/bytes.js.map +1 -1
- package/_cjs/core/base/cachedFetch.js +2 -1
- package/_cjs/core/base/cachedFetch.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/uint.js +7 -0
- package/_cjs/core/base/uint.js.map +1 -1
- package/_cjs/core/base/wasm.js +15 -55
- package/_cjs/core/base/wasm.js.map +1 -1
- package/_cjs/core/clients/decorators/base.js +1 -1
- package/_cjs/core/clients/decorators/base.js.map +1 -1
- package/_cjs/core/host-contracts/canDecryptValuesFromPairs.js +4 -1
- package/_cjs/core/host-contracts/canDecryptValuesFromPairs.js.map +1 -1
- package/_cjs/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js +1 -1
- package/_cjs/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js.map +1 -1
- package/_cjs/core/host-contracts/getCurrentKmsContextAndEpoch-p.js +1 -1
- package/_cjs/core/host-contracts/getCurrentKmsContextAndEpoch-p.js.map +1 -1
- package/_cjs/core/host-contracts/getCurrentKmsContextId-p.js +1 -1
- package/_cjs/core/host-contracts/getCurrentKmsContextId-p.js.map +1 -1
- package/_cjs/core/host-contracts/getKmsContextSignersAndThreshold-p.js +1 -1
- package/_cjs/core/host-contracts/getKmsContextSignersAndThreshold-p.js.map +1 -1
- package/_cjs/core/kms/PublicDecryptionProof-p.js +4 -4
- package/_cjs/core/kms/SignedDecryptionPermit-p.js +33 -199
- package/_cjs/core/kms/SignedDecryptionPermit-p.js.map +1 -1
- package/_cjs/core/kms/SignedDecryptionPermitV1-p.js +217 -0
- package/_cjs/core/kms/SignedDecryptionPermitV1-p.js.map +1 -0
- package/_cjs/core/kms/SignedDecryptionPermitV2-p.js +184 -0
- package/_cjs/core/kms/SignedDecryptionPermitV2-p.js.map +1 -0
- package/_cjs/core/kms/TransportKeyPair-p.js +0 -4
- package/_cjs/core/kms/TransportKeyPair-p.js.map +1 -1
- package/_cjs/core/kms/{createKmsDelegatedUserDecryptEip712.js → createKmsDelegatedUserDecryptEip712V1.js} +9 -9
- package/_cjs/core/kms/createKmsDelegatedUserDecryptEip712V1.js.map +1 -0
- package/_cjs/core/kms/{createKmsUserDecryptEip712.js → createKmsUserDecryptEip712V1.js} +18 -14
- package/_cjs/core/kms/createKmsUserDecryptEip712V1.js.map +1 -0
- package/_cjs/core/kms/decryptValuesFromPairs.js +18 -2
- package/_cjs/core/kms/decryptValuesFromPairs.js.map +1 -1
- package/_cjs/core/kms/{fetchKmsSigncryptedShares-p.js → fetchKmsSigncryptedSharesV1-p.js} +18 -8
- package/_cjs/core/kms/fetchKmsSigncryptedSharesV1-p.js.map +1 -0
- package/_cjs/core/kms/fetchKmsSigncryptedSharesV2-p.js +95 -0
- package/_cjs/core/kms/fetchKmsSigncryptedSharesV2-p.js.map +1 -0
- package/_cjs/core/kms/{kmsDelegatedUserDecryptEip712Types.js → kmsDelegatedUserDecryptEip712V1Types.js} +8 -8
- package/_cjs/core/kms/kmsDelegatedUserDecryptEip712V1Types.js.map +1 -0
- package/_cjs/core/kms/{kmsUserDecryptEip712Types.js → kmsUserDecryptEip712V1Types.js} +8 -8
- package/_cjs/core/kms/kmsUserDecryptEip712V1Types.js.map +1 -0
- package/_cjs/core/kms/kmsUserDecryptEip712V2Types.js.map +1 -1
- package/_cjs/core/kms/publicDecrypt.js +2 -2
- package/_cjs/core/kms/utils.js +0 -19
- package/_cjs/core/kms/utils.js.map +1 -1
- package/_cjs/core/kms/verifyKmsPublicDecryptEip712-p.js +1 -1
- package/_cjs/core/modules/decrypt/module/api-p.js +5 -5
- package/_cjs/core/modules/decrypt/module/init-p.js +124 -40
- package/_cjs/core/modules/decrypt/module/init-p.js.map +1 -1
- package/_cjs/core/modules/encrypt/module/init-p.js +153 -49
- package/_cjs/core/modules/encrypt/module/init-p.js.map +1 -1
- package/_cjs/core/modules/relayer/cleartext/fetchPublicDecrypt.js +3 -3
- package/_cjs/core/modules/relayer/cleartext/fetchUserDecrypt.js.map +1 -1
- package/_cjs/core/modules/relayer/module/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +1 -1
- package/_cjs/core/modules/relayer/module/fetchDelegatedUserDecryptV1.js.map +1 -0
- package/_cjs/core/modules/relayer/module/fetchPublicDecrypt.js +1 -1
- package/_cjs/core/modules/relayer/module/fetchUserDecrypt.js +11 -45
- package/_cjs/core/modules/relayer/module/fetchUserDecrypt.js.map +1 -1
- package/_cjs/core/modules/relayer/module/fetchUserDecryptV1.js +52 -0
- package/_cjs/core/modules/relayer/module/fetchUserDecryptV1.js.map +1 -0
- package/_cjs/core/modules/relayer/module/fetchUserDecryptV2.js +54 -0
- package/_cjs/core/modules/relayer/module/fetchUserDecryptV2.js.map +1 -0
- package/_cjs/core/modules/relayer/module/guards/RelayerResponseFailed.js +10 -2
- package/_cjs/core/modules/relayer/module/guards/RelayerResponseFailed.js.map +1 -1
- package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js +5 -2
- package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js.map +1 -1
- package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js +2 -0
- package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js.map +1 -1
- package/_cjs/core/modules/relayer/module/index.js +2 -2
- package/_cjs/core/modules/relayer/module/index.js.map +1 -1
- package/_cjs/core/runtime/HyperWasmSolver-p.js +5 -10
- package/_cjs/core/runtime/HyperWasmSolver-p.js.map +1 -1
- package/_cjs/core/runtime/initFhevmEncryptRuntime-p.js +1 -1
- package/_cjs/core/runtime/initFhevmRuntime-p.js +1 -1
- package/_cjs/core/utils-p/decrypt/{verifyKmsDelegatedUserDecryptEip712.js → verifyKmsDelegatedUserDecryptEip712V1.js} +5 -5
- package/_cjs/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712V1.js.map +1 -0
- package/_cjs/core/utils-p/decrypt/{verifyKmsUserDecryptEip712.js → verifyKmsUserDecryptEip712V1.js} +5 -5
- package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712V1.js.map +1 -0
- package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js +30 -0
- package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js.map +1 -0
- 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/_cjs/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe-worker.mjs +40 -40
- package/_cjs/wasm/tfhe/{v1.6.1 → 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/actions/base/index.js +0 -8
- package/_esm/core/actions/base/index.js.map +1 -1
- package/_esm/core/actions/base/signDecryptionPermit.js +0 -6
- package/_esm/core/actions/base/signDecryptionPermit.js.map +1 -1
- package/_esm/core/actions/chain/index.js +0 -6
- package/_esm/core/actions/chain/index.js.map +1 -1
- package/_esm/core/actions/chain/parseSignedDecryptionPermit.js.map +1 -1
- package/_esm/core/actions/chain/serializeSignedDecryptionPermit.js.map +1 -1
- package/_esm/core/actions/decrypt/canDecryptValue.js +40 -0
- package/_esm/core/actions/decrypt/canDecryptValue.js.map +1 -1
- package/_esm/core/actions/decrypt/canDecryptValues.js +1 -0
- package/_esm/core/actions/decrypt/canDecryptValues.js.map +1 -1
- package/_esm/core/actions/decrypt/canDecryptValuesFromPairs.js +1 -0
- package/_esm/core/actions/decrypt/canDecryptValuesFromPairs.js.map +1 -1
- package/_esm/core/actions/decrypt/decryptValue.js +1 -0
- package/_esm/core/actions/decrypt/decryptValue.js.map +1 -1
- package/_esm/core/actions/decrypt/decryptValues.js +2 -0
- package/_esm/core/actions/decrypt/decryptValues.js.map +1 -1
- package/_esm/core/actions/decrypt/decryptValuesFromPairs.js +2 -0
- package/_esm/core/actions/decrypt/decryptValuesFromPairs.js.map +1 -1
- package/_esm/core/actions/decrypt/index.js +0 -1
- package/_esm/core/actions/decrypt/index.js.map +1 -1
- package/_esm/core/actions/host/index.js +0 -4
- package/_esm/core/actions/host/index.js.map +1 -1
- package/_esm/core/base/bytes.js +2 -1
- package/_esm/core/base/bytes.js.map +1 -1
- package/_esm/core/base/cachedFetch.js +1 -0
- package/_esm/core/base/cachedFetch.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/uint.js +7 -0
- package/_esm/core/base/uint.js.map +1 -1
- package/_esm/core/base/wasm.js +25 -31
- package/_esm/core/base/wasm.js.map +1 -1
- package/_esm/core/clients/decorators/base.js +2 -4
- package/_esm/core/clients/decorators/base.js.map +1 -1
- package/_esm/core/coprocessor/coprocessorEip712Types.js +2 -2
- package/_esm/core/host-contracts/canDecryptValuesFromPairs.js +5 -2
- package/_esm/core/host-contracts/canDecryptValuesFromPairs.js.map +1 -1
- package/_esm/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js +2 -2
- package/_esm/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js.map +1 -1
- package/_esm/core/host-contracts/getCurrentKmsContextAndEpoch-p.js +2 -2
- package/_esm/core/host-contracts/getCurrentKmsContextAndEpoch-p.js.map +1 -1
- package/_esm/core/host-contracts/getCurrentKmsContextId-p.js +2 -2
- package/_esm/core/host-contracts/getCurrentKmsContextId-p.js.map +1 -1
- package/_esm/core/host-contracts/getKmsContextSignersAndThreshold-p.js +2 -2
- package/_esm/core/host-contracts/getKmsContextSignersAndThreshold-p.js.map +1 -1
- package/_esm/core/kms/PublicDecryptionProof-p.js +4 -4
- package/_esm/core/kms/SignedDecryptionPermit-p.js +48 -245
- package/_esm/core/kms/SignedDecryptionPermit-p.js.map +1 -1
- package/_esm/core/kms/SignedDecryptionPermitV1-p.js +258 -0
- package/_esm/core/kms/SignedDecryptionPermitV1-p.js.map +1 -0
- package/_esm/core/kms/SignedDecryptionPermitV2-p.js +204 -0
- package/_esm/core/kms/SignedDecryptionPermitV2-p.js.map +1 -0
- package/_esm/core/kms/TransportKeyPair-p.js +0 -4
- package/_esm/core/kms/TransportKeyPair-p.js.map +1 -1
- package/_esm/core/kms/{createKmsDelegatedUserDecryptEip712.js → createKmsDelegatedUserDecryptEip712V1.js} +8 -8
- package/_esm/core/kms/createKmsDelegatedUserDecryptEip712V1.js.map +1 -0
- package/_esm/core/kms/createKmsPublicDecryptEip712.js +1 -1
- package/_esm/core/kms/{createKmsUserDecryptEip712.js → createKmsUserDecryptEip712V1.js} +18 -14
- package/_esm/core/kms/createKmsUserDecryptEip712V1.js.map +1 -0
- package/_esm/core/kms/decryptValuesFromPairs.js +18 -2
- package/_esm/core/kms/decryptValuesFromPairs.js.map +1 -1
- package/_esm/core/kms/{fetchKmsSigncryptedShares-p.js → fetchKmsSigncryptedSharesV1-p.js} +23 -13
- package/_esm/core/kms/fetchKmsSigncryptedSharesV1-p.js.map +1 -0
- package/_esm/core/kms/fetchKmsSigncryptedSharesV2-p.js +119 -0
- package/_esm/core/kms/fetchKmsSigncryptedSharesV2-p.js.map +1 -0
- package/_esm/core/kms/{kmsDelegatedUserDecryptEip712Types.js → kmsDelegatedUserDecryptEip712V1Types.js} +9 -8
- package/_esm/core/kms/kmsDelegatedUserDecryptEip712V1Types.js.map +1 -0
- package/_esm/core/kms/kmsPublicDecryptEip712Types.js +1 -1
- package/_esm/core/kms/{kmsUserDecryptEip712Types.js → kmsUserDecryptEip712V1Types.js} +9 -8
- package/_esm/core/kms/kmsUserDecryptEip712V1Types.js.map +1 -0
- package/_esm/core/kms/kmsUserDecryptEip712V2Types.js +2 -1
- package/_esm/core/kms/kmsUserDecryptEip712V2Types.js.map +1 -1
- package/_esm/core/kms/publicDecrypt.js +2 -2
- package/_esm/core/kms/utils.js +0 -18
- package/_esm/core/kms/utils.js.map +1 -1
- package/_esm/core/kms/verifyKmsPublicDecryptEip712-p.js +2 -2
- package/_esm/core/modules/decrypt/module/api-p.js +6 -6
- package/_esm/core/modules/decrypt/module/init-p.js +110 -55
- package/_esm/core/modules/decrypt/module/init-p.js.map +1 -1
- package/_esm/core/modules/encrypt/module/init-p.js +306 -57
- package/_esm/core/modules/encrypt/module/init-p.js.map +1 -1
- package/_esm/core/modules/relayer/cleartext/fetchPublicDecrypt.js +3 -3
- package/_esm/core/modules/relayer/cleartext/fetchUserDecrypt.js.map +1 -1
- package/_esm/core/modules/relayer/module/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +1 -1
- package/_esm/core/modules/relayer/module/fetchDelegatedUserDecryptV1.js.map +1 -0
- package/_esm/core/modules/relayer/module/fetchPublicDecrypt.js +1 -1
- package/_esm/core/modules/relayer/module/fetchUserDecrypt.js +11 -46
- package/_esm/core/modules/relayer/module/fetchUserDecrypt.js.map +1 -1
- package/_esm/core/modules/relayer/module/fetchUserDecryptV1.js +53 -0
- package/_esm/core/modules/relayer/module/fetchUserDecryptV1.js.map +1 -0
- package/_esm/core/modules/relayer/module/fetchUserDecryptV2.js +56 -0
- package/_esm/core/modules/relayer/module/fetchUserDecryptV2.js.map +1 -0
- package/_esm/core/modules/relayer/module/guards/RelayerResponseFailed.js +10 -2
- package/_esm/core/modules/relayer/module/guards/RelayerResponseFailed.js.map +1 -1
- package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js +6 -3
- package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js.map +1 -1
- package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js +2 -0
- package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js.map +1 -1
- package/_esm/core/modules/relayer/module/index.js +1 -1
- package/_esm/core/modules/relayer/module/index.js.map +1 -1
- package/_esm/core/runtime/HyperWasmSolver-p.js +5 -10
- package/_esm/core/runtime/HyperWasmSolver-p.js.map +1 -1
- package/_esm/core/runtime/initFhevmEncryptRuntime-p.js +1 -1
- package/_esm/core/runtime/initFhevmRuntime-p.js +1 -1
- package/_esm/core/utils-p/decrypt/{verifyKmsDelegatedUserDecryptEip712.js → verifyKmsDelegatedUserDecryptEip712V1.js} +5 -5
- package/_esm/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712V1.js.map +1 -0
- package/_esm/core/utils-p/decrypt/{verifyKmsUserDecryptEip712.js → verifyKmsUserDecryptEip712V1.js} +5 -5
- package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712V1.js.map +1 -0
- package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js +27 -0
- package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js.map +1 -0
- 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/_esm/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe-worker.mjs +40 -40
- package/_esm/wasm/tfhe/{v1.6.1 → 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/actions/base/index.d.ts +0 -8
- package/_types/core/actions/base/index.d.ts.map +1 -1
- package/_types/core/actions/base/signDecryptionPermit.d.ts +4 -5
- package/_types/core/actions/base/signDecryptionPermit.d.ts.map +1 -1
- package/_types/core/actions/chain/index.d.ts +1 -7
- package/_types/core/actions/chain/index.d.ts.map +1 -1
- package/_types/core/actions/chain/parseSignedDecryptionPermit.d.ts +1 -0
- package/_types/core/actions/chain/parseSignedDecryptionPermit.d.ts.map +1 -1
- package/_types/core/actions/chain/serializeSignedDecryptionPermit.d.ts +3 -2
- package/_types/core/actions/chain/serializeSignedDecryptionPermit.d.ts.map +1 -1
- package/_types/core/actions/decrypt/canDecryptValue.d.ts +3 -4
- package/_types/core/actions/decrypt/canDecryptValue.d.ts.map +1 -1
- package/_types/core/actions/decrypt/canDecryptValues.d.ts +3 -4
- package/_types/core/actions/decrypt/canDecryptValues.d.ts.map +1 -1
- package/_types/core/actions/decrypt/canDecryptValuesFromPairs.d.ts +3 -4
- package/_types/core/actions/decrypt/canDecryptValuesFromPairs.d.ts.map +1 -1
- package/_types/core/actions/decrypt/decryptValue.d.ts.map +1 -1
- package/_types/core/actions/decrypt/decryptValues.d.ts.map +1 -1
- package/_types/core/actions/decrypt/decryptValuesFromPairs.d.ts.map +1 -1
- package/_types/core/actions/decrypt/index.d.ts +0 -1
- package/_types/core/actions/decrypt/index.d.ts.map +1 -1
- package/_types/core/actions/host/index.d.ts +0 -4
- package/_types/core/actions/host/index.d.ts.map +1 -1
- package/_types/core/base/bytes.d.ts.map +1 -1
- package/_types/core/base/cachedFetch.d.ts +1 -0
- package/_types/core/base/cachedFetch.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/uint.d.ts +2 -1
- package/_types/core/base/uint.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/clients/decorators/base.d.ts +12 -23
- package/_types/core/clients/decorators/base.d.ts.map +1 -1
- package/_types/core/host-contracts/canDecryptValuesFromPairs.d.ts +2 -2
- package/_types/core/host-contracts/canDecryptValuesFromPairs.d.ts.map +1 -1
- package/_types/core/kms/PublicDecryptionProof-p.d.ts +1 -1
- package/_types/core/kms/SignedDecryptionPermit-p.d.ts +15 -29
- package/_types/core/kms/SignedDecryptionPermit-p.d.ts.map +1 -1
- package/_types/core/kms/SignedDecryptionPermitV1-p.d.ts +7 -0
- package/_types/core/kms/SignedDecryptionPermitV1-p.d.ts.map +1 -0
- package/_types/core/kms/SignedDecryptionPermitV2-p.d.ts +7 -0
- package/_types/core/kms/SignedDecryptionPermitV2-p.d.ts.map +1 -0
- package/_types/core/kms/TransportKeyPair-p.d.ts.map +1 -1
- package/_types/core/kms/createKmsDelegatedUserDecryptEip712V1.d.ts +15 -0
- package/_types/core/kms/createKmsDelegatedUserDecryptEip712V1.d.ts.map +1 -0
- package/_types/core/kms/createKmsUserDecryptEip712V1.d.ts +26 -0
- package/_types/core/kms/createKmsUserDecryptEip712V1.d.ts.map +1 -0
- package/_types/core/kms/createKmsUserDecryptEip712V2.d.ts +1 -1
- package/_types/core/kms/createKmsUserDecryptEip712V2.d.ts.map +1 -1
- package/_types/core/kms/decryptValuesFromPairs.d.ts +4 -11
- package/_types/core/kms/decryptValuesFromPairs.d.ts.map +1 -1
- package/_types/core/kms/{fetchKmsSigncryptedShares-p.d.ts → fetchKmsSigncryptedSharesV1-p.d.ts} +10 -12
- package/_types/core/kms/fetchKmsSigncryptedSharesV1-p.d.ts.map +1 -0
- package/_types/core/kms/fetchKmsSigncryptedSharesV2-p.d.ts +28 -0
- package/_types/core/kms/fetchKmsSigncryptedSharesV2-p.d.ts.map +1 -0
- package/_types/core/kms/kmsDelegatedUserDecryptEip712V1Types.d.ts +3 -0
- package/_types/core/kms/kmsDelegatedUserDecryptEip712V1Types.d.ts.map +1 -0
- package/_types/core/kms/kmsUserDecryptEip712V1Types.d.ts +3 -0
- package/_types/core/kms/kmsUserDecryptEip712V1Types.d.ts.map +1 -0
- package/_types/core/kms/kmsUserDecryptEip712V2Types.d.ts.map +1 -1
- package/_types/core/kms/utils.d.ts +0 -4
- package/_types/core/kms/utils.d.ts.map +1 -1
- package/_types/core/kms/verifyKmsPublicDecryptEip712-p.d.ts +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/modules/relayer/cleartext/fetchUserDecrypt.d.ts +2 -2
- package/_types/core/modules/relayer/cleartext/fetchUserDecrypt.d.ts.map +1 -1
- package/_types/core/modules/relayer/module/{fetchDelegatedUserDecrypt.d.ts → fetchDelegatedUserDecryptV1.d.ts} +1 -1
- package/_types/core/modules/relayer/module/fetchDelegatedUserDecryptV1.d.ts.map +1 -0
- package/_types/core/modules/relayer/module/fetchUserDecrypt.d.ts.map +1 -1
- package/_types/core/modules/relayer/module/fetchUserDecryptV1.d.ts +3 -0
- package/_types/core/modules/relayer/module/fetchUserDecryptV1.d.ts.map +1 -0
- package/_types/core/modules/relayer/module/fetchUserDecryptV2.d.ts +3 -0
- package/_types/core/modules/relayer/module/fetchUserDecryptV2.d.ts.map +1 -0
- package/_types/core/modules/relayer/module/guards/RelayerResponseFailed.d.ts.map +1 -1
- package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.d.ts +1 -1
- package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.d.ts.map +1 -1
- package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError503.d.ts.map +1 -1
- package/_types/core/modules/relayer/types.d.ts +18 -5
- package/_types/core/modules/relayer/types.d.ts.map +1 -1
- package/_types/core/types/kms.d.ts +18 -19
- package/_types/core/types/kms.d.ts.map +1 -1
- package/_types/core/types/logger.d.ts +3 -3
- package/_types/core/types/logger.d.ts.map +1 -1
- package/_types/core/types/record-p.d.ts +2 -1
- package/_types/core/types/record-p.d.ts.map +1 -1
- package/_types/core/types/relayer-p.d.ts +27 -5
- package/_types/core/types/relayer-p.d.ts.map +1 -1
- package/_types/core/types/signedDecryptionPermit.d.ts +37 -26
- package/_types/core/types/signedDecryptionPermit.d.ts.map +1 -1
- package/_types/core/types/wasmAssets.d.ts.map +1 -1
- package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712V1.d.ts +14 -0
- package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712V1.d.ts.map +1 -0
- package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V1.d.ts +14 -0
- package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V1.d.ts.map +1 -0
- package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.d.ts +14 -0
- package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.d.ts.map +1 -0
- package/_types/core/utils-p/runtime/recoverSigners.d.ts +2 -2
- package/_types/wasm/tfhe/TfheApi.d.ts +12 -12
- package/_types/wasm/tfhe/v1.5.3/tfhe.d.ts +3 -0
- package/_types/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe.d.ts +88 -85
- package/core/_version.ts +1 -1
- package/core/actions/base/index.ts +0 -42
- package/core/actions/base/signDecryptionPermit.ts +3 -31
- package/core/actions/chain/index.ts +0 -28
- package/core/actions/chain/parseSignedDecryptionPermit.ts +1 -0
- package/core/actions/chain/serializeSignedDecryptionPermit.ts +3 -2
- package/core/actions/decrypt/canDecryptValue.ts +2 -16
- package/core/actions/decrypt/canDecryptValues.ts +2 -16
- package/core/actions/decrypt/canDecryptValuesFromPairs.ts +2 -16
- package/core/actions/decrypt/decryptValue.ts +2 -1
- package/core/actions/decrypt/decryptValues.ts +3 -1
- package/core/actions/decrypt/decryptValuesFromPairs.ts +3 -1
- package/core/actions/decrypt/index.ts +0 -6
- package/core/actions/host/index.ts +0 -20
- package/core/base/bytes.ts +2 -1
- package/core/base/cachedFetch.ts +1 -0
- 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/uint.ts +18 -1
- package/core/base/wasm.ts +28 -35
- package/core/clients/decorators/base.ts +13 -37
- package/core/coprocessor/coprocessorEip712Types.ts +2 -2
- package/core/host-contracts/canDecryptValuesFromPairs.ts +7 -7
- package/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.ts +2 -2
- package/core/host-contracts/getCurrentKmsContextAndEpoch-p.ts +2 -2
- package/core/host-contracts/getCurrentKmsContextId-p.ts +2 -2
- package/core/host-contracts/getKmsContextSignersAndThreshold-p.ts +2 -2
- package/core/kms/PublicDecryptionProof-p.ts +5 -5
- package/core/kms/SignedDecryptionPermit-p.ts +67 -357
- package/core/kms/SignedDecryptionPermitV1-p.ts +350 -0
- package/core/kms/SignedDecryptionPermitV2-p.ts +292 -0
- package/core/kms/TransportKeyPair-p.ts +0 -5
- package/core/kms/{createKmsDelegatedUserDecryptEip712.ts → createKmsDelegatedUserDecryptEip712V1.ts} +16 -16
- package/core/kms/createKmsPublicDecryptEip712.ts +1 -1
- package/core/kms/{createKmsUserDecryptEip712.ts → createKmsUserDecryptEip712V1.ts} +31 -22
- package/core/kms/createKmsUserDecryptEip712V2.ts +1 -1
- package/core/kms/decryptValuesFromPairs.ts +34 -22
- package/core/kms/{fetchKmsSigncryptedShares-p.ts → fetchKmsSigncryptedSharesV1-p.ts} +35 -30
- package/core/kms/fetchKmsSigncryptedSharesV2-p.ts +176 -0
- package/core/kms/{kmsDelegatedUserDecryptEip712Types.ts → kmsDelegatedUserDecryptEip712V1Types.ts} +9 -8
- package/core/kms/kmsPublicDecryptEip712Types.ts +1 -1
- package/core/kms/{kmsUserDecryptEip712Types.ts → kmsUserDecryptEip712V1Types.ts} +9 -8
- package/core/kms/kmsUserDecryptEip712V2Types.ts +2 -1
- package/core/kms/publicDecrypt.ts +2 -2
- package/core/kms/utils.ts +0 -32
- package/core/kms/verifyKmsPublicDecryptEip712-p.ts +3 -3
- package/core/modules/decrypt/module/api-p.ts +8 -8
- package/core/modules/decrypt/module/init-p.ts +149 -60
- package/core/modules/encrypt/module/init-p.ts +377 -67
- package/core/modules/relayer/cleartext/fetchPublicDecrypt.ts +3 -3
- package/core/modules/relayer/cleartext/fetchUserDecrypt.ts +2 -2
- package/core/modules/relayer/module/fetchPublicDecrypt.ts +1 -1
- package/core/modules/relayer/module/fetchUserDecrypt.ts +20 -56
- package/core/modules/relayer/module/fetchUserDecryptV1.ts +69 -0
- package/core/modules/relayer/module/fetchUserDecryptV2.ts +71 -0
- package/core/modules/relayer/module/guards/RelayerResponseFailed.ts +10 -2
- package/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.ts +6 -3
- package/core/modules/relayer/module/guards/api-errors/RelayerApiError503.ts +2 -0
- package/core/modules/relayer/module/index.ts +1 -1
- package/core/modules/relayer/types.ts +24 -5
- package/core/runtime/HyperWasmSolver-p.ts +5 -9
- package/core/runtime/initFhevmEncryptRuntime-p.ts +1 -1
- package/core/runtime/initFhevmRuntime-p.ts +1 -1
- package/core/types/kms.ts +40 -28
- package/core/types/logger.ts +3 -3
- package/core/types/record-p.ts +2 -1
- package/core/types/relayer-p.ts +48 -5
- package/core/types/signedDecryptionPermit.ts +47 -26
- package/core/types/wasmAssets.ts +58 -0
- package/core/utils-p/decrypt/{verifyKmsDelegatedUserDecryptEip712.ts → verifyKmsDelegatedUserDecryptEip712V1.ts} +9 -9
- package/core/utils-p/decrypt/{verifyKmsUserDecryptEip712.ts → verifyKmsUserDecryptEip712V1.ts} +9 -9
- package/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.ts +43 -0
- package/core/utils-p/runtime/recoverSigners.ts +2 -2
- 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/wasm/tfhe/{v1.6.1 → 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/core/actions/base/createVerifiedInputProofFromRawBytes.js +0 -10
- package/_cjs/core/actions/base/createVerifiedInputProofFromRawBytes.js.map +0 -1
- package/_cjs/core/actions/base/fetchKmsSigncryptedShares.js +0 -19
- package/_cjs/core/actions/base/fetchKmsSigncryptedShares.js.map +0 -1
- package/_cjs/core/actions/base/fetchVerifiedInputProof.js +0 -11
- package/_cjs/core/actions/base/fetchVerifiedInputProof.js.map +0 -1
- package/_cjs/core/actions/base/readKmsSignersContext.js +0 -11
- package/_cjs/core/actions/base/readKmsSignersContext.js.map +0 -1
- package/_cjs/core/actions/base/verifyHandlesCoprocessorSignatures.js +0 -31
- package/_cjs/core/actions/base/verifyHandlesCoprocessorSignatures.js.map +0 -1
- package/_cjs/core/actions/base/verifyInputProof.js +0 -24
- package/_cjs/core/actions/base/verifyInputProof.js.map +0 -1
- package/_cjs/core/actions/base/verifyZkProofCoprocessorSignatures.js +0 -17
- package/_cjs/core/actions/base/verifyZkProofCoprocessorSignatures.js.map +0 -1
- package/_cjs/core/actions/chain/createCoprocessorEip712Domain.js +0 -11
- package/_cjs/core/actions/chain/createCoprocessorEip712Domain.js.map +0 -1
- package/_cjs/core/actions/chain/createKmsDelegatedUserDecryptEip712.js +0 -17
- package/_cjs/core/actions/chain/createKmsDelegatedUserDecryptEip712.js.map +0 -1
- package/_cjs/core/actions/chain/createKmsEip712Domain.js +0 -11
- package/_cjs/core/actions/chain/createKmsEip712Domain.js.map +0 -1
- package/_cjs/core/actions/chain/createKmsUserDecryptEip712.js +0 -16
- package/_cjs/core/actions/chain/createKmsUserDecryptEip712.js.map +0 -1
- package/_cjs/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js +0 -8
- package/_cjs/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js.map +0 -1
- package/_cjs/core/actions/chain/verifyKmsUserDecryptEip712.js +0 -8
- package/_cjs/core/actions/chain/verifyKmsUserDecryptEip712.js.map +0 -1
- package/_cjs/core/actions/decrypt/decryptKmsSigncryptedShares.js +0 -13
- package/_cjs/core/actions/decrypt/decryptKmsSigncryptedShares.js.map +0 -1
- package/_cjs/core/kms/createKmsDelegatedUserDecryptEip712.js.map +0 -1
- package/_cjs/core/kms/createKmsUserDecryptEip712.js.map +0 -1
- package/_cjs/core/kms/fetchKmsSigncryptedShares-p.js.map +0 -1
- package/_cjs/core/kms/kmsDelegatedUserDecryptEip712Types.js.map +0 -1
- package/_cjs/core/kms/kmsUserDecryptEip712Types.js.map +0 -1
- package/_cjs/core/modules/relayer/module/fetchDelegatedUserDecrypt.js.map +0 -1
- package/_cjs/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.js.map +0 -1
- package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712.js.map +0 -1
- 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/core/actions/base/createVerifiedInputProofFromRawBytes.js +0 -7
- package/_esm/core/actions/base/createVerifiedInputProofFromRawBytes.js.map +0 -1
- package/_esm/core/actions/base/fetchKmsSigncryptedShares.js +0 -17
- package/_esm/core/actions/base/fetchKmsSigncryptedShares.js.map +0 -1
- package/_esm/core/actions/base/fetchVerifiedInputProof.js +0 -8
- package/_esm/core/actions/base/fetchVerifiedInputProof.js.map +0 -1
- package/_esm/core/actions/base/readKmsSignersContext.js +0 -10
- package/_esm/core/actions/base/readKmsSignersContext.js.map +0 -1
- package/_esm/core/actions/base/verifyHandlesCoprocessorSignatures.js +0 -35
- package/_esm/core/actions/base/verifyHandlesCoprocessorSignatures.js.map +0 -1
- package/_esm/core/actions/base/verifyInputProof.js +0 -22
- package/_esm/core/actions/base/verifyInputProof.js.map +0 -1
- package/_esm/core/actions/base/verifyZkProofCoprocessorSignatures.js +0 -14
- package/_esm/core/actions/base/verifyZkProofCoprocessorSignatures.js.map +0 -1
- package/_esm/core/actions/chain/createCoprocessorEip712Domain.js +0 -8
- package/_esm/core/actions/chain/createCoprocessorEip712Domain.js.map +0 -1
- package/_esm/core/actions/chain/createKmsDelegatedUserDecryptEip712.js +0 -15
- package/_esm/core/actions/chain/createKmsDelegatedUserDecryptEip712.js.map +0 -1
- package/_esm/core/actions/chain/createKmsEip712Domain.js +0 -8
- package/_esm/core/actions/chain/createKmsEip712Domain.js.map +0 -1
- package/_esm/core/actions/chain/createKmsUserDecryptEip712.js +0 -14
- package/_esm/core/actions/chain/createKmsUserDecryptEip712.js.map +0 -1
- package/_esm/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js +0 -5
- package/_esm/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js.map +0 -1
- package/_esm/core/actions/chain/verifyKmsUserDecryptEip712.js +0 -5
- package/_esm/core/actions/chain/verifyKmsUserDecryptEip712.js.map +0 -1
- package/_esm/core/actions/decrypt/decryptKmsSigncryptedShares.js +0 -11
- package/_esm/core/actions/decrypt/decryptKmsSigncryptedShares.js.map +0 -1
- package/_esm/core/kms/createKmsDelegatedUserDecryptEip712.js.map +0 -1
- package/_esm/core/kms/createKmsUserDecryptEip712.js.map +0 -1
- package/_esm/core/kms/fetchKmsSigncryptedShares-p.js.map +0 -1
- package/_esm/core/kms/kmsDelegatedUserDecryptEip712Types.js.map +0 -1
- package/_esm/core/kms/kmsUserDecryptEip712Types.js.map +0 -1
- package/_esm/core/modules/relayer/module/fetchDelegatedUserDecrypt.js.map +0 -1
- package/_esm/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.js.map +0 -1
- package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712.js.map +0 -1
- 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/_types/core/actions/base/createVerifiedInputProofFromRawBytes.d.ts +0 -14
- package/_types/core/actions/base/createVerifiedInputProofFromRawBytes.d.ts.map +0 -1
- package/_types/core/actions/base/fetchKmsSigncryptedShares.d.ts +0 -41
- package/_types/core/actions/base/fetchKmsSigncryptedShares.d.ts.map +0 -1
- package/_types/core/actions/base/fetchVerifiedInputProof.d.ts +0 -14
- package/_types/core/actions/base/fetchVerifiedInputProof.d.ts.map +0 -1
- package/_types/core/actions/base/readKmsSignersContext.d.ts +0 -6
- package/_types/core/actions/base/readKmsSignersContext.d.ts.map +0 -1
- package/_types/core/actions/base/verifyHandlesCoprocessorSignatures.d.ts +0 -14
- package/_types/core/actions/base/verifyHandlesCoprocessorSignatures.d.ts.map +0 -1
- package/_types/core/actions/base/verifyInputProof.d.ts +0 -14
- package/_types/core/actions/base/verifyInputProof.d.ts.map +0 -1
- package/_types/core/actions/base/verifyZkProofCoprocessorSignatures.d.ts +0 -11
- package/_types/core/actions/base/verifyZkProofCoprocessorSignatures.d.ts.map +0 -1
- package/_types/core/actions/chain/createCoprocessorEip712Domain.d.ts +0 -7
- package/_types/core/actions/chain/createCoprocessorEip712Domain.d.ts.map +0 -1
- package/_types/core/actions/chain/createKmsDelegatedUserDecryptEip712.d.ts +0 -15
- package/_types/core/actions/chain/createKmsDelegatedUserDecryptEip712.d.ts.map +0 -1
- package/_types/core/actions/chain/createKmsEip712Domain.d.ts +0 -7
- package/_types/core/actions/chain/createKmsEip712Domain.d.ts.map +0 -1
- package/_types/core/actions/chain/createKmsUserDecryptEip712.d.ts +0 -14
- package/_types/core/actions/chain/createKmsUserDecryptEip712.d.ts.map +0 -1
- package/_types/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.d.ts +0 -7
- package/_types/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.d.ts.map +0 -1
- package/_types/core/actions/chain/verifyKmsUserDecryptEip712.d.ts +0 -7
- package/_types/core/actions/chain/verifyKmsUserDecryptEip712.d.ts.map +0 -1
- package/_types/core/actions/decrypt/decryptKmsSigncryptedShares.d.ts +0 -13
- package/_types/core/actions/decrypt/decryptKmsSigncryptedShares.d.ts.map +0 -1
- package/_types/core/kms/createKmsDelegatedUserDecryptEip712.d.ts +0 -15
- package/_types/core/kms/createKmsDelegatedUserDecryptEip712.d.ts.map +0 -1
- package/_types/core/kms/createKmsUserDecryptEip712.d.ts +0 -26
- package/_types/core/kms/createKmsUserDecryptEip712.d.ts.map +0 -1
- package/_types/core/kms/fetchKmsSigncryptedShares-p.d.ts.map +0 -1
- package/_types/core/kms/kmsDelegatedUserDecryptEip712Types.d.ts +0 -3
- package/_types/core/kms/kmsDelegatedUserDecryptEip712Types.d.ts.map +0 -1
- package/_types/core/kms/kmsUserDecryptEip712Types.d.ts +0 -3
- package/_types/core/kms/kmsUserDecryptEip712Types.d.ts.map +0 -1
- package/_types/core/modules/relayer/module/fetchDelegatedUserDecrypt.d.ts.map +0 -1
- package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.d.ts +0 -14
- package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.d.ts.map +0 -1
- package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712.d.ts +0 -14
- package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712.d.ts.map +0 -1
- package/core/actions/base/createVerifiedInputProofFromRawBytes.ts +0 -24
- package/core/actions/base/fetchKmsSigncryptedShares.ts +0 -83
- package/core/actions/base/fetchVerifiedInputProof.ts +0 -25
- package/core/actions/base/readKmsSignersContext.ts +0 -20
- package/core/actions/base/verifyHandlesCoprocessorSignatures.ts +0 -60
- package/core/actions/base/verifyInputProof.ts +0 -45
- package/core/actions/base/verifyZkProofCoprocessorSignatures.ts +0 -32
- package/core/actions/chain/createCoprocessorEip712Domain.ts +0 -16
- package/core/actions/chain/createKmsDelegatedUserDecryptEip712.ts +0 -36
- package/core/actions/chain/createKmsEip712Domain.ts +0 -16
- package/core/actions/chain/createKmsUserDecryptEip712.ts +0 -34
- package/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.ts +0 -16
- package/core/actions/chain/verifyKmsUserDecryptEip712.ts +0 -16
- package/core/actions/decrypt/decryptKmsSigncryptedShares.ts +0 -34
- 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/core/modules/relayer/module/{fetchDelegatedUserDecrypt.ts → fetchDelegatedUserDecryptV1.ts} +0 -0
- /package/wasm/tfhe/{v1.6.1 → v1.6.2}/tfhe_bg.wasm.base64.d.ts +0 -0
package/core/types/relayer-p.ts
CHANGED
|
@@ -51,7 +51,7 @@ export type RelayerFetchPublicDecryptPayload = {
|
|
|
51
51
|
};
|
|
52
52
|
|
|
53
53
|
// https://github.com/zama-ai/fhevm-relayer/blob/96151ef300f787658c5fbaf1b4471263160032d5/src/http/userdecrypt_http_listener.rs#L33
|
|
54
|
-
export type
|
|
54
|
+
export type HandleContractPairV1 = {
|
|
55
55
|
// Hex encoded bytes32 with 0x prefix.
|
|
56
56
|
readonly handle: HandleBytes32Hex;
|
|
57
57
|
// Hex encoded address with 0x prefix.
|
|
@@ -60,7 +60,7 @@ export type HandleContractPair = {
|
|
|
60
60
|
|
|
61
61
|
// https://github.com/zama-ai/fhevm-relayer/blob/96151ef300f787658c5fbaf1b4471263160032d5/src/http/userdecrypt_http_listener.rs#L20
|
|
62
62
|
export type FetchUserDecryptPayload = {
|
|
63
|
-
readonly handleContractPairs: readonly
|
|
63
|
+
readonly handleContractPairs: readonly HandleContractPairV1[];
|
|
64
64
|
readonly requestValidity: {
|
|
65
65
|
// Number as a string
|
|
66
66
|
readonly startTimestamp: string;
|
|
@@ -81,8 +81,45 @@ export type FetchUserDecryptPayload = {
|
|
|
81
81
|
readonly extraData: BytesHex;
|
|
82
82
|
};
|
|
83
83
|
|
|
84
|
+
// https://github.com/zama-ai/fhevm-relayer v3 HandleEntryJson (camelCase)
|
|
85
|
+
export type HandleContractPairV2 = {
|
|
86
|
+
// Hex encoded bytes32 with 0x prefix.
|
|
87
|
+
readonly ctHandle: HandleBytes32Hex;
|
|
88
|
+
// Hex encoded address with 0x prefix.
|
|
89
|
+
readonly contractAddress: ChecksummedAddress;
|
|
90
|
+
// Hex encoded address with 0x prefix.
|
|
91
|
+
readonly ownerAddress: ChecksummedAddress;
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
// https://github.com/zama-ai/fhevm-relayer — v3/user-decrypt (RFC-016 unified struct)
|
|
95
|
+
// POST body: AttestedUserDecryptRequestJson envelope
|
|
96
|
+
export type FetchUserDecryptPayloadV2 = {
|
|
97
|
+
readonly attestationType: 'eip712-unified-user-decrypt-v1';
|
|
98
|
+
readonly attestedPayload: {
|
|
99
|
+
readonly version: '2.0';
|
|
100
|
+
readonly type: 'user_decryption';
|
|
101
|
+
readonly handles: readonly HandleContractPairV2[];
|
|
102
|
+
// Hex encoded address with 0x prefix.
|
|
103
|
+
readonly userAddress: ChecksummedAddress;
|
|
104
|
+
// List of hex encoded addresses with 0x prefix (empty = permissive mode)
|
|
105
|
+
readonly allowedContracts: readonly ChecksummedAddress[];
|
|
106
|
+
readonly requestValidity: {
|
|
107
|
+
// Number as a string
|
|
108
|
+
readonly startTimestamp: string;
|
|
109
|
+
// Number as a string
|
|
110
|
+
readonly durationSeconds: string;
|
|
111
|
+
};
|
|
112
|
+
// Hex encoded key with 0x prefix.
|
|
113
|
+
readonly publicKey: BytesHex;
|
|
114
|
+
// Hex encoded bytes with 0x prefix. Default: 0x00
|
|
115
|
+
readonly extraData: BytesHex;
|
|
116
|
+
};
|
|
117
|
+
// Hex encoded signature with 0x prefix.
|
|
118
|
+
readonly signature: Bytes65Hex;
|
|
119
|
+
};
|
|
120
|
+
|
|
84
121
|
export type FetchDelegatedUserDecryptPayload = {
|
|
85
|
-
readonly handleContractPairs: readonly
|
|
122
|
+
readonly handleContractPairs: readonly HandleContractPairV1[];
|
|
86
123
|
// Hex encoded uint256 string without prefix
|
|
87
124
|
readonly contractsChainId: string;
|
|
88
125
|
// List of hex encoded addresses with 0x prefix
|
|
@@ -318,7 +355,7 @@ export type RelayerApiError400 = RelayerApiError400NoDetails | RelayerApiError40
|
|
|
318
355
|
* Status: 400 (no details)
|
|
319
356
|
*/
|
|
320
357
|
export type RelayerApiError400NoDetails = {
|
|
321
|
-
label: 'malformed_json' | 'request_error' | 'not_ready_for_decryption';
|
|
358
|
+
label: 'malformed_json' | 'request_error' | 'not_ready_for_decryption' | 'not_allowed_on_host_acl';
|
|
322
359
|
message: string;
|
|
323
360
|
};
|
|
324
361
|
|
|
@@ -372,7 +409,13 @@ export type RelayerApiError500 = {
|
|
|
372
409
|
* Status: 503
|
|
373
410
|
*/
|
|
374
411
|
export type RelayerApiError503 = {
|
|
375
|
-
label:
|
|
412
|
+
label:
|
|
413
|
+
| 'protocol_paused'
|
|
414
|
+
| 'insufficient_balance'
|
|
415
|
+
| 'insufficient_allowance'
|
|
416
|
+
| 'gateway_not_reachable'
|
|
417
|
+
| 'readiness_check_timed_out'
|
|
418
|
+
| 'response_timed_out';
|
|
376
419
|
message: string;
|
|
377
420
|
};
|
|
378
421
|
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { KmsDelegatedUserDecryptEip712V1, KmsUserDecryptEip712V1, KmsUserDecryptEip712V2 } from './kms.js';
|
|
2
2
|
import type { Bytes65Hex, BytesHex, ChecksummedAddress } from './primitives.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
6
|
-
* to request decryption of the signer's own FHE handles from the KMS.
|
|
7
|
-
*
|
|
8
|
-
* Created once, serializable, and reusable across multiple decrypt calls.
|
|
5
|
+
* Common fields shared by all signed decryption permit versions.
|
|
9
6
|
*/
|
|
10
7
|
export type SignedDecryptionPermitBase = {
|
|
11
8
|
/** The EIP-712 signature. */
|
|
@@ -15,36 +12,60 @@ export type SignedDecryptionPermitBase = {
|
|
|
15
12
|
/**
|
|
16
13
|
* The account that owns the encrypted data this permit covers.
|
|
17
14
|
*
|
|
18
|
-
* - **Self permit:** equals `signerAddress
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* - **Delegated permit:** differs from `signerAddress`. Step by step:
|
|
22
|
-
* 1. Alice owns encrypted values on-chain (ebool, euint8, etc.).
|
|
23
|
-
* 2. Alice calls the ACL contract to grant Bob permission to decrypt her data.
|
|
24
|
-
* 3. Bob signs an EIP-712 delegated decryption permit referencing Alice as the
|
|
25
|
-
* `encryptedDataOwnerAddress` (= `delegatorAddress` in the EIP-712 message).
|
|
26
|
-
* 4. The KMS verifies Bob's signature (`signerAddress`) and that Alice
|
|
27
|
-
* (`encryptedDataOwnerAddress`) has granted him on-chain permission.
|
|
28
|
-
* 5. Bob can now decrypt Alice's encrypted values using this permit.
|
|
15
|
+
* - **Self permit:** equals `signerAddress`.
|
|
16
|
+
* - **Delegated permit:** differs from `signerAddress`. The owner has granted
|
|
17
|
+
* the signer permission via `FHE.delegateUserDecryption()` on-chain.
|
|
29
18
|
*/
|
|
30
19
|
readonly encryptedDataOwnerAddress: ChecksummedAddress;
|
|
31
20
|
/** The E2E transport public key embedded in the EIP-712 message. */
|
|
32
21
|
readonly transportPublicKey: BytesHex;
|
|
22
|
+
/** `true` when the signer is decrypting on behalf of another account (delegated permit). */
|
|
23
|
+
readonly isDelegated: boolean;
|
|
33
24
|
|
|
34
|
-
/** @throws If the permit has expired
|
|
25
|
+
/** @throws If the permit has expired. */
|
|
35
26
|
assertNotExpired(): void;
|
|
36
27
|
};
|
|
37
28
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
29
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
30
|
+
// V1 — protocol v13 and below (two separate EIP-712 shapes)
|
|
31
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Signed decryption permit produced by protocol v13 and below.
|
|
35
|
+
*
|
|
36
|
+
* Narrow to self vs delegated via `eip712.primaryType`:
|
|
37
|
+
* - `'UserDecryptRequestVerification'` → self permit (`encryptedDataOwnerAddress === signerAddress`)
|
|
38
|
+
* - `'DelegatedUserDecryptRequestVerification'` → delegated permit
|
|
39
|
+
*/
|
|
40
|
+
export type SignedDecryptionPermitV1 = SignedDecryptionPermitBase & {
|
|
41
|
+
readonly version: 1;
|
|
42
|
+
readonly eip712: KmsUserDecryptEip712V1 | KmsDelegatedUserDecryptEip712V1;
|
|
42
43
|
};
|
|
43
44
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
46
|
+
// V2 — protocol v14 and above (unified EIP-712 shape)
|
|
47
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Signed decryption permit produced by protocol v14 and above.
|
|
51
|
+
*
|
|
52
|
+
* Uses the unified `KmsUserDecryptEip712V2` EIP-712 shape — there is no longer
|
|
53
|
+
* a separate delegated variant. The `encryptedDataOwnerAddress` is read from
|
|
54
|
+
* `eip712.message.userAddress` and may differ from `signerAddress`.
|
|
55
|
+
*
|
|
56
|
+
* Discriminate from {@link SignedDecryptionPermitV1} with `permit.version === 2`.
|
|
57
|
+
*/
|
|
58
|
+
export type SignedDecryptionPermitV2 = SignedDecryptionPermitBase & {
|
|
59
|
+
readonly version: 2;
|
|
60
|
+
readonly eip712: KmsUserDecryptEip712V2;
|
|
48
61
|
};
|
|
49
62
|
|
|
50
|
-
|
|
63
|
+
////////////////////////////////////////////////////////////////////////////////
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* A signed decryption permit, covering all protocol versions.
|
|
67
|
+
*
|
|
68
|
+
* Narrow by version: `permit.version === 1` → {@link SignedDecryptionPermitV1},
|
|
69
|
+
* `permit.version === 2` → {@link SignedDecryptionPermitV2}.
|
|
70
|
+
*/
|
|
71
|
+
export type SignedDecryptionPermit = SignedDecryptionPermitV1 | SignedDecryptionPermitV2;
|
package/core/types/wasmAssets.ts
CHANGED
|
@@ -1,3 +1,61 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* verified-blob:
|
|
3
|
+
* --------------
|
|
4
|
+
* Creates a worker from the configured URL after SHA-256 verification.
|
|
5
|
+
* 1. Reuse cached verified bytes.
|
|
6
|
+
* 2. Execute those exact bytes as a Blob worker in browsers.
|
|
7
|
+
* 3. Execute those exact bytes as an eval worker in Node.
|
|
8
|
+
*
|
|
9
|
+
* - Transport: url
|
|
10
|
+
* - Blob: yes
|
|
11
|
+
* - SHA256: yes
|
|
12
|
+
*
|
|
13
|
+
* precheck-direct-url:
|
|
14
|
+
* --------------------
|
|
15
|
+
* Creates a worker by passing the configured URL directly to the runtime, after a pre-flight SHA-256 probe.
|
|
16
|
+
*
|
|
17
|
+
* IMPORTANT: this is NOT an integrity check. The SDK fetches the URL once to validate
|
|
18
|
+
* the hash, then hands the URL to the runtime, which fetches it a SECOND time and
|
|
19
|
+
* executes those bytes. The two fetches are independent — the executed bytes are
|
|
20
|
+
* never verified. Use only for fail-fast on misconfigured URLs / build mismatches.
|
|
21
|
+
*
|
|
22
|
+
* For an actual integrity guarantee, use `verified-blob` (requires CSP allowing blob: workers).
|
|
23
|
+
*
|
|
24
|
+
* 1. Fetch the URL and verify its SHA-256 against __TFHE_WORKER_URL_SHA256_JSON__ — fails fast on mismatch.
|
|
25
|
+
* 2. Discard the verified bytes.
|
|
26
|
+
* 3. Let the runtime fetch the same URL again and execute it (no verification on this fetch).
|
|
27
|
+
*
|
|
28
|
+
* - Transport: url
|
|
29
|
+
* - Blob: no
|
|
30
|
+
* - SHA256: yes
|
|
31
|
+
*
|
|
32
|
+
* trusted-direct-url:
|
|
33
|
+
* -------------------
|
|
34
|
+
* Creates a worker by passing the configured URL directly to the runtime.
|
|
35
|
+
* 1. Require a configured worker URL.
|
|
36
|
+
* 2. Do not perform SDK byte verification.
|
|
37
|
+
* 3. Let the browser or Node runtime load and execute the URL directly.
|
|
38
|
+
*
|
|
39
|
+
* - Transport: url
|
|
40
|
+
* - Blob: no
|
|
41
|
+
* - SHA256: no
|
|
42
|
+
*
|
|
43
|
+
* embedded-base64:
|
|
44
|
+
* ----------------
|
|
45
|
+
* Creates a worker from the SDK-embedded base64 worker source.
|
|
46
|
+
* 1. Read the base64-encoded JavaScript source baked into this module.
|
|
47
|
+
* 2. Decode into a Blob URL and create a module Worker in browsers.
|
|
48
|
+
* 3. Decode into UTF-8 JavaScript and create a worker_threads eval Worker in Node.
|
|
49
|
+
*
|
|
50
|
+
* - Transport: base64
|
|
51
|
+
* - Blob: yes
|
|
52
|
+
* - SHA256: no
|
|
53
|
+
*
|
|
54
|
+
* auto:
|
|
55
|
+
* -----
|
|
56
|
+
* if workerUrl is defined, try it using `verified-blob`.
|
|
57
|
+
* if workerUrl failed or is undefined go for `embedded-base64`
|
|
58
|
+
*/
|
|
1
59
|
export type WasmAssetLoadMode =
|
|
2
60
|
| 'embedded-base64'
|
|
3
61
|
| 'verified-blob'
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import type { FhevmRuntime } from '../../types/coreFhevmRuntime.js';
|
|
2
2
|
import type { FhevmChain } from '../../types/fhevmChain.js';
|
|
3
|
-
import type {
|
|
3
|
+
import type { KmsDelegatedUserDecryptEip712V1, KmsDelegatedUserDecryptEip712V1Message } from '../../types/kms.js';
|
|
4
4
|
import type { Bytes65Hex, ChecksummedAddress } from '../../types/primitives.js';
|
|
5
|
-
import {
|
|
5
|
+
import { kmsDelegatedUserDecryptEip712V1Types } from '../../kms/kmsDelegatedUserDecryptEip712V1Types.js';
|
|
6
6
|
import { ThresholdSignerError, UnknownSignerError } from '../../errors/SignersError.js';
|
|
7
7
|
import { createKmsEip712Domain } from '../../kms/createKmsEip712Domain.js';
|
|
8
8
|
import { recoverSigners } from '../runtime/recoverSigners.js';
|
|
9
9
|
|
|
10
|
-
export type
|
|
10
|
+
export type VerifyKmsDelegatedUserDecryptEip712V1Parameters = {
|
|
11
11
|
readonly signer: ChecksummedAddress;
|
|
12
|
-
readonly message:
|
|
12
|
+
readonly message: KmsDelegatedUserDecryptEip712V1Message;
|
|
13
13
|
readonly signature: Bytes65Hex;
|
|
14
14
|
};
|
|
15
15
|
|
|
16
|
-
export async function
|
|
16
|
+
export async function verifyKmsDelegatedUserDecryptEip712V1(
|
|
17
17
|
context: { readonly chain: FhevmChain; readonly runtime: FhevmRuntime },
|
|
18
|
-
parameters:
|
|
18
|
+
parameters: VerifyKmsDelegatedUserDecryptEip712V1Parameters,
|
|
19
19
|
): Promise<void> {
|
|
20
|
-
// A 'DelegatedUserDecryptRequestVerification'
|
|
20
|
+
// A 'DelegatedUserDecryptRequestVerification' KmsEip712Domain (for signed permit)
|
|
21
21
|
// uses `chain.id` (NOT fhevm.gateway.id!!)
|
|
22
22
|
const domain = createKmsEip712Domain({
|
|
23
23
|
chainId: context.chain.id,
|
|
@@ -26,8 +26,8 @@ export async function verifyKmsDelegatedUserDecryptEip712(
|
|
|
26
26
|
|
|
27
27
|
const recoveredAddresses = await recoverSigners(context, {
|
|
28
28
|
domain,
|
|
29
|
-
types:
|
|
30
|
-
primaryType: 'DelegatedUserDecryptRequestVerification' satisfies
|
|
29
|
+
types: kmsDelegatedUserDecryptEip712V1Types,
|
|
30
|
+
primaryType: 'DelegatedUserDecryptRequestVerification' satisfies KmsDelegatedUserDecryptEip712V1['primaryType'],
|
|
31
31
|
signatures: [parameters.signature],
|
|
32
32
|
message: parameters.message,
|
|
33
33
|
});
|
package/core/utils-p/decrypt/{verifyKmsUserDecryptEip712.ts → verifyKmsUserDecryptEip712V1.ts}
RENAMED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import type { FhevmRuntime } from '../../types/coreFhevmRuntime.js';
|
|
2
2
|
import type { FhevmChain } from '../../types/fhevmChain.js';
|
|
3
|
-
import type {
|
|
3
|
+
import type { KmsUserDecryptEip712V1, KmsUserDecryptEip712V1Message } from '../../types/kms.js';
|
|
4
4
|
import type { Bytes65Hex, ChecksummedAddress } from '../../types/primitives.js';
|
|
5
5
|
import { ThresholdSignerError, UnknownSignerError } from '../../errors/SignersError.js';
|
|
6
6
|
import { createKmsEip712Domain } from '../../kms/createKmsEip712Domain.js';
|
|
7
|
-
import {
|
|
7
|
+
import { kmsUserDecryptEip712V1Types } from '../../kms/kmsUserDecryptEip712V1Types.js';
|
|
8
8
|
import { recoverSigners } from '../runtime/recoverSigners.js';
|
|
9
9
|
|
|
10
|
-
export type
|
|
10
|
+
export type VerifyKmsUserDecryptEip712V1Parameters = {
|
|
11
11
|
readonly signer: ChecksummedAddress;
|
|
12
|
-
readonly message:
|
|
12
|
+
readonly message: KmsUserDecryptEip712V1Message;
|
|
13
13
|
readonly signature: Bytes65Hex;
|
|
14
14
|
};
|
|
15
15
|
|
|
16
|
-
export async function
|
|
16
|
+
export async function verifyKmsUserDecryptEip712V1(
|
|
17
17
|
context: { readonly chain: FhevmChain; readonly runtime: FhevmRuntime },
|
|
18
|
-
parameters:
|
|
18
|
+
parameters: VerifyKmsUserDecryptEip712V1Parameters,
|
|
19
19
|
): Promise<void> {
|
|
20
|
-
// A 'UserDecryptRequestVerification'
|
|
20
|
+
// A 'UserDecryptRequestVerification' KmsEip712Domain (for signed permit)
|
|
21
21
|
// uses `chain.id` (NOT fhevm.gateway.id!!)
|
|
22
22
|
const domain = createKmsEip712Domain({
|
|
23
23
|
chainId: context.chain.id,
|
|
@@ -26,8 +26,8 @@ export async function verifyKmsUserDecryptEip712(
|
|
|
26
26
|
|
|
27
27
|
const recoveredAddresses = await recoverSigners(context, {
|
|
28
28
|
domain,
|
|
29
|
-
types:
|
|
30
|
-
primaryType: 'UserDecryptRequestVerification' satisfies
|
|
29
|
+
types: kmsUserDecryptEip712V1Types,
|
|
30
|
+
primaryType: 'UserDecryptRequestVerification' satisfies KmsUserDecryptEip712V1['primaryType'],
|
|
31
31
|
signatures: [parameters.signature],
|
|
32
32
|
message: parameters.message,
|
|
33
33
|
});
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { FhevmRuntime } from '../../types/coreFhevmRuntime.js';
|
|
2
|
+
import type { FhevmChain } from '../../types/fhevmChain.js';
|
|
3
|
+
import type { KmsUserDecryptEip712V2, KmsUserDecryptEip712V2Message } from '../../types/kms.js';
|
|
4
|
+
import type { Bytes65Hex, ChecksummedAddress } from '../../types/primitives.js';
|
|
5
|
+
import { ThresholdSignerError, UnknownSignerError } from '../../errors/SignersError.js';
|
|
6
|
+
import { createKmsEip712Domain } from '../../kms/createKmsEip712Domain.js';
|
|
7
|
+
import { kmsUserDecryptEip712V2Types } from '../../kms/kmsUserDecryptEip712V2Types.js';
|
|
8
|
+
import { recoverSigners } from '../runtime/recoverSigners.js';
|
|
9
|
+
|
|
10
|
+
export type VerifyKmsUserDecryptEip712V2Parameters = {
|
|
11
|
+
readonly signer: ChecksummedAddress;
|
|
12
|
+
readonly message: KmsUserDecryptEip712V2Message;
|
|
13
|
+
readonly signature: Bytes65Hex;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export async function verifyKmsUserDecryptEip712V2(
|
|
17
|
+
context: { readonly chain: FhevmChain; readonly runtime: FhevmRuntime },
|
|
18
|
+
parameters: VerifyKmsUserDecryptEip712V2Parameters,
|
|
19
|
+
): Promise<void> {
|
|
20
|
+
const domain = createKmsEip712Domain({
|
|
21
|
+
chainId: context.chain.id,
|
|
22
|
+
verifyingContractAddressDecryption: context.chain.fhevm.gateway.contracts.decryption.address,
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
const recoveredAddresses = await recoverSigners(context, {
|
|
26
|
+
domain,
|
|
27
|
+
types: kmsUserDecryptEip712V2Types,
|
|
28
|
+
primaryType: 'UserDecryptRequestVerification' satisfies KmsUserDecryptEip712V2['primaryType'],
|
|
29
|
+
signatures: [parameters.signature],
|
|
30
|
+
message: parameters.message,
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
if (recoveredAddresses.length !== 1) {
|
|
34
|
+
throw new ThresholdSignerError({ type: 'kms' });
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
if (recoveredAddresses[0] !== parameters.signer) {
|
|
38
|
+
throw new UnknownSignerError({
|
|
39
|
+
unknownAddress: recoveredAddresses[0] as unknown as ChecksummedAddress,
|
|
40
|
+
type: 'kms',
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -3,9 +3,9 @@ import type { FhevmRuntime } from '../../types/coreFhevmRuntime.js';
|
|
|
3
3
|
import type { Bytes65Hex, ChecksummedAddress } from '../../types/primitives.js';
|
|
4
4
|
import { assertIsBytes65HexArray } from '../../base/bytes.js';
|
|
5
5
|
|
|
6
|
-
type
|
|
6
|
+
type Eip712TypesType = Record<string, ReadonlyArray<{ name: string; type: string }>>;
|
|
7
7
|
|
|
8
|
-
export type RecoverSignersParameters<T extends
|
|
8
|
+
export type RecoverSignersParameters<T extends Eip712TypesType> = {
|
|
9
9
|
readonly domain: Parameters<RecoverTypedDataAddressModuleFunction['recoverTypedDataAddress']>[0]['domain'];
|
|
10
10
|
readonly types: T;
|
|
11
11
|
readonly primaryType: string & keyof T;
|
package/package.json
CHANGED
package/wasm/tfhe/TfheApi.d.ts
CHANGED
|
@@ -15,32 +15,32 @@ export type {
|
|
|
15
15
|
ProvenCompactCiphertextList,
|
|
16
16
|
TfheCompactPublicKey,
|
|
17
17
|
ZkComputeLoad,
|
|
18
|
-
} from './v1.6.
|
|
18
|
+
} from './v1.6.2/tfhe.js';
|
|
19
19
|
|
|
20
20
|
/** The subset you actually use - the runtime contract callers depend on. */
|
|
21
21
|
export interface TfheLibApi {
|
|
22
|
-
initAsync: typeof import('./v1.6.
|
|
22
|
+
initAsync: typeof import('./v1.6.2/tfhe.js').initAsync;
|
|
23
23
|
|
|
24
24
|
// --- Free functions used by encrypt/init-p.ts -----------------------------
|
|
25
|
-
init_panic_hook: typeof import('./v1.6.
|
|
26
|
-
initThreadPool: typeof import('./v1.6.
|
|
27
|
-
setWorkerUrlConfig: typeof import('./v1.6.
|
|
28
|
-
getWasmInfo: typeof import('./v1.6.
|
|
25
|
+
init_panic_hook: typeof import('./v1.6.2/tfhe.js').init_panic_hook;
|
|
26
|
+
initThreadPool: typeof import('./v1.6.2/tfhe.js').initThreadPool;
|
|
27
|
+
setWorkerUrlConfig: typeof import('./v1.6.2/tfhe.js').setWorkerUrlConfig;
|
|
28
|
+
getWasmInfo: typeof import('./v1.6.2/tfhe.js').getWasmInfo;
|
|
29
29
|
|
|
30
30
|
// --- Class constructors used as values in encrypt/api-p.ts ----------------
|
|
31
31
|
// These are imported as runtime values: instanceof checks, static methods
|
|
32
32
|
// (safe_deserialize), factory calls (CompactCiphertextList.builder()).
|
|
33
|
-
CompactCiphertextList: typeof import('./v1.6.
|
|
34
|
-
CompactPkeCrs: typeof import('./v1.6.
|
|
35
|
-
ProvenCompactCiphertextList: typeof import('./v1.6.
|
|
36
|
-
TfheCompactPublicKey: typeof import('./v1.6.
|
|
33
|
+
CompactCiphertextList: typeof import('./v1.6.2/tfhe.js').CompactCiphertextList;
|
|
34
|
+
CompactPkeCrs: typeof import('./v1.6.2/tfhe.js').CompactPkeCrs;
|
|
35
|
+
ProvenCompactCiphertextList: typeof import('./v1.6.2/tfhe.js').ProvenCompactCiphertextList;
|
|
36
|
+
TfheCompactPublicKey: typeof import('./v1.6.2/tfhe.js').TfheCompactPublicKey;
|
|
37
37
|
|
|
38
38
|
// --- Enum used as a value (e.g. ZkComputeLoad.Verify) ---------------------
|
|
39
|
-
ZkComputeLoad: typeof import('./v1.6.
|
|
39
|
+
ZkComputeLoad: typeof import('./v1.6.2/tfhe.js').ZkComputeLoad;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
// Default version
|
|
43
|
-
export type TfheVersion = '1.5.3' | '1.6.
|
|
43
|
+
export type TfheVersion = '1.5.3' | '1.6.2';
|
|
44
44
|
|
|
45
45
|
export type TfheWasmBase64 = {
|
|
46
46
|
readonly tfheWasmBase64: string;
|
package/wasm/tfhe/loadTfheLib.js
CHANGED
|
@@ -8,19 +8,19 @@
|
|
|
8
8
|
|
|
9
9
|
////////////////////////////////////////////////////////////////////////////////
|
|
10
10
|
|
|
11
|
-
export const TFHE_VERSIONS = Object.freeze(['1.5.3', '1.6.
|
|
12
|
-
export const DEFAULT_TFHE_VERSION = '1.6.
|
|
11
|
+
export const TFHE_VERSIONS = Object.freeze(['1.5.3', '1.6.2']);
|
|
12
|
+
export const DEFAULT_TFHE_VERSION = '1.6.2';
|
|
13
13
|
|
|
14
14
|
const _loaders = {
|
|
15
15
|
'1.5.3': () => import('./v1.5.3/tfhe.js'),
|
|
16
|
-
'1.6.
|
|
16
|
+
'1.6.2': () => import('./v1.6.2/tfhe.js'),
|
|
17
17
|
};
|
|
18
18
|
|
|
19
19
|
////////////////////////////////////////////////////////////////////////////////
|
|
20
20
|
|
|
21
21
|
const _wasmBase64Loaders = {
|
|
22
22
|
'1.5.3': () => import('./v1.5.3/tfhe_bg.wasm.base64.js'),
|
|
23
|
-
'1.6.
|
|
23
|
+
'1.6.2': () => import('./v1.6.2/tfhe_bg.wasm.base64.js'),
|
|
24
24
|
};
|
|
25
25
|
|
|
26
26
|
////////////////////////////////////////////////////////////////////////////////
|
|
@@ -38,16 +38,16 @@ const _assets = Object.freeze({
|
|
|
38
38
|
sha256: '3f93fe86a8dfa6e25ae5fcfe28d19833219cba8f45f81c6dd05c2f3cc5323c52',
|
|
39
39
|
}),
|
|
40
40
|
}),
|
|
41
|
-
'1.6.
|
|
41
|
+
'1.6.2': Object.freeze({
|
|
42
42
|
wasm: Object.freeze({
|
|
43
|
-
filename: 'tfhe_bg.v1.6.
|
|
44
|
-
localRelativePath: './v1.6.
|
|
45
|
-
sha256: '
|
|
43
|
+
filename: 'tfhe_bg.v1.6.2.wasm',
|
|
44
|
+
localRelativePath: './v1.6.2/tfhe_bg.wasm',
|
|
45
|
+
sha256: 'ecd1841ad42226629c1a665ba784e073f2e780137f7986b00088c9227acb9760',
|
|
46
46
|
}),
|
|
47
47
|
worker: Object.freeze({
|
|
48
|
-
filename: 'tfhe-worker.v1.6.
|
|
49
|
-
localRelativePath: './v1.6.
|
|
50
|
-
sha256: '
|
|
48
|
+
filename: 'tfhe-worker.v1.6.2.mjs',
|
|
49
|
+
localRelativePath: './v1.6.2/tfhe-worker.mjs',
|
|
50
|
+
sha256: '2c648dd89132bb63d37e8b47c6fe1f53b06abb1389faeb9b3f671eea9a0db5dd',
|
|
51
51
|
}),
|
|
52
52
|
}),
|
|
53
53
|
});
|
|
@@ -57,17 +57,13 @@
|
|
|
57
57
|
*/
|
|
58
58
|
|
|
59
59
|
////////////////////////////////////////////////////////////////////////////////
|
|
60
|
-
//
|
|
60
|
+
// Load modes
|
|
61
61
|
////////////////////////////////////////////////////////////////////////////////
|
|
62
62
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
typeof addEventListener === 'function' &&
|
|
68
|
-
typeof removeEventListener === 'function'
|
|
69
|
-
);
|
|
70
|
-
}
|
|
63
|
+
// Environment detection (browser vs Node) is NOT done here: the SDK resolves it
|
|
64
|
+
// once on the main thread (via environment.ts isBrowserLike, robust to bundler
|
|
65
|
+
// `process` shims) and injects it through setWorkerUrlConfig({ isBrowserLike }).
|
|
66
|
+
// See `_isBrowserLike` below.
|
|
71
67
|
|
|
72
68
|
const __wasmAssetLoadModes = ['embedded-base64', 'verified-blob', 'precheck-direct-url', 'trusted-direct-url', 'auto'];
|
|
73
69
|
|
|
@@ -89,7 +85,7 @@ function __bytesToHex(bytes) {
|
|
|
89
85
|
* @returns {Promise<string>} Lowercase hexadecimal SHA-256 digest without a `0x` prefix.
|
|
90
86
|
*/
|
|
91
87
|
async function __sha256(bytes) {
|
|
92
|
-
if (
|
|
88
|
+
if (_isBrowserLike) {
|
|
93
89
|
if (typeof crypto === 'undefined' || !crypto.subtle || typeof crypto.subtle.digest !== 'function') {
|
|
94
90
|
throw new Error('Web Crypto SHA-256 digest is not available');
|
|
95
91
|
}
|
|
@@ -100,7 +96,9 @@ async function __sha256(bytes) {
|
|
|
100
96
|
|
|
101
97
|
const nodeModuleName = 'crypto';
|
|
102
98
|
const nodeModuleId = `node:${nodeModuleName}`;
|
|
103
|
-
const { createHash } = await import(
|
|
99
|
+
const { createHash } = await import(
|
|
100
|
+
/* @vite-ignore */ /* webpackIgnore: true */ /* turbopackIgnore: true */ nodeModuleId
|
|
101
|
+
);
|
|
104
102
|
return createHash('sha256').update(new Uint8Array(bytes)).digest('hex');
|
|
105
103
|
}
|
|
106
104
|
|
|
@@ -152,13 +150,17 @@ async function __fetchAndVerifyWorkerUrlBytes(url, expectedSha256) {
|
|
|
152
150
|
* @returns {Promise<ArrayBuffer | Uint8Array>} Raw worker script bytes.
|
|
153
151
|
*/
|
|
154
152
|
async function __readWorkerUrlBytes(url) {
|
|
155
|
-
if (!
|
|
153
|
+
if (!_isBrowserLike && url.protocol === 'file:') {
|
|
156
154
|
const fsModuleName = 'fs/promises';
|
|
157
155
|
const fsModuleId = `node:${fsModuleName}`;
|
|
158
156
|
const urlModuleName = 'url';
|
|
159
157
|
const urlModuleId = `node:${urlModuleName}`;
|
|
160
|
-
const { readFile } = await import(
|
|
161
|
-
|
|
158
|
+
const { readFile } = await import(
|
|
159
|
+
/* @vite-ignore */ /* webpackIgnore: true */ /* turbopackIgnore: true */ fsModuleId
|
|
160
|
+
);
|
|
161
|
+
const { fileURLToPath } = await import(
|
|
162
|
+
/* @vite-ignore */ /* webpackIgnore: true */ /* turbopackIgnore: true */ urlModuleId
|
|
163
|
+
);
|
|
162
164
|
return await readFile(fileURLToPath(url));
|
|
163
165
|
}
|
|
164
166
|
|
|
@@ -203,7 +205,7 @@ async function __newBrowserWorkerFromBlob(blob) {
|
|
|
203
205
|
* @returns {Promise<Worker>} Created worker.
|
|
204
206
|
*/
|
|
205
207
|
async function __newIsomorphicWorkerFromUrl(url) {
|
|
206
|
-
if (
|
|
208
|
+
if (_isBrowserLike) {
|
|
207
209
|
return new Worker(url, {
|
|
208
210
|
type: 'module',
|
|
209
211
|
name: 'wasm_bindgen_worker',
|
|
@@ -212,14 +214,18 @@ async function __newIsomorphicWorkerFromUrl(url) {
|
|
|
212
214
|
|
|
213
215
|
const nodeModuleName = 'worker_threads';
|
|
214
216
|
const nodeModuleId = `node:${nodeModuleName}`;
|
|
215
|
-
const { Worker: NodeWorker } = await import(
|
|
217
|
+
const { Worker: NodeWorker } = await import(
|
|
218
|
+
/* @vite-ignore */ /* webpackIgnore: true */ /* turbopackIgnore: true */ nodeModuleId
|
|
219
|
+
);
|
|
216
220
|
return new NodeWorker(url);
|
|
217
221
|
}
|
|
218
222
|
|
|
219
223
|
async function __newNodeWorkerFromJsCode(jsCode) {
|
|
220
224
|
const nodeModuleName = 'worker_threads';
|
|
221
225
|
const nodeModuleId = `node:${nodeModuleName}`;
|
|
222
|
-
const { Worker: NodeWorker } = await import(
|
|
226
|
+
const { Worker: NodeWorker } = await import(
|
|
227
|
+
/* @vite-ignore */ /* webpackIgnore: true */ /* turbopackIgnore: true */ nodeModuleId
|
|
228
|
+
);
|
|
223
229
|
return { worker: new NodeWorker(jsCode, { eval: true }), blobUrl: undefined };
|
|
224
230
|
}
|
|
225
231
|
|
|
@@ -232,7 +238,7 @@ async function __newNodeWorkerFromJsCode(jsCode) {
|
|
|
232
238
|
* @returns {Promise<{ worker: Worker, blobUrl: string | undefined }>} Created worker and optional Blob URL to revoke.
|
|
233
239
|
*/
|
|
234
240
|
async function __newIsomorphicWorkerFromVerifiedJsCodeBytes(verifiedJsCodeBytes) {
|
|
235
|
-
if (
|
|
241
|
+
if (_isBrowserLike) {
|
|
236
242
|
return await __newBrowserWorkerFromBlob(
|
|
237
243
|
new Blob([verifiedJsCodeBytes], {
|
|
238
244
|
type: 'application/javascript',
|
|
@@ -251,7 +257,7 @@ async function __newIsomorphicWorkerFromVerifiedJsCodeBytes(verifiedJsCodeBytes)
|
|
|
251
257
|
* @returns {Promise<{ worker: Worker, blobUrl: string | undefined }>} Created worker and optional Blob URL to revoke.
|
|
252
258
|
*/
|
|
253
259
|
async function __newWorkerFromJsCodeBase64(jsCodeBase64) {
|
|
254
|
-
if (
|
|
260
|
+
if (_isBrowserLike) {
|
|
255
261
|
const blob = new Blob([atob(jsCodeBase64)], {
|
|
256
262
|
type: 'application/javascript',
|
|
257
263
|
});
|
|
@@ -338,6 +344,9 @@ let _terminating;
|
|
|
338
344
|
let _configSet = false;
|
|
339
345
|
let _workerUrl = undefined;
|
|
340
346
|
let _wasmAssetLoadMode = 'auto';
|
|
347
|
+
// Injected by the SDK (the main thread) via setWorkerUrlConfig — the single
|
|
348
|
+
// source of truth for browser-vs-Node, replacing local detection.
|
|
349
|
+
let _isBrowserLike = undefined;
|
|
341
350
|
const _workerUrlSha256 = "3f93fe86a8dfa6e25ae5fcfe28d19833219cba8f45f81c6dd05c2f3cc5323c52";
|
|
342
351
|
let _verifiedWorkerUrlBytesPromise = undefined;
|
|
343
352
|
let _logger = undefined;
|
|
@@ -381,7 +390,18 @@ function setWorkerUrlConfig(parameters = {}) {
|
|
|
381
390
|
throw new TypeError('setWorkerUrlConfig parameters must be an object');
|
|
382
391
|
}
|
|
383
392
|
|
|
384
|
-
const {
|
|
393
|
+
const {
|
|
394
|
+
workerUrl = undefined,
|
|
395
|
+
wasmAssetLoadMode = 'auto',
|
|
396
|
+
logger = undefined,
|
|
397
|
+
isBrowserLike = undefined,
|
|
398
|
+
} = parameters;
|
|
399
|
+
|
|
400
|
+
// Check `isBrowserLike` (required: the SDK injects the resolved runtime kind;
|
|
401
|
+
// the worker bootstrap never detects it itself).
|
|
402
|
+
if (typeof isBrowserLike !== 'boolean') {
|
|
403
|
+
throw new TypeError('setWorkerUrlConfig: isBrowserLike (boolean) is required');
|
|
404
|
+
}
|
|
385
405
|
|
|
386
406
|
// Check `wasmAssetLoadMode`
|
|
387
407
|
if (!__isWasmAssetLoadMode(wasmAssetLoadMode)) {
|
|
@@ -409,6 +429,7 @@ function setWorkerUrlConfig(parameters = {}) {
|
|
|
409
429
|
|
|
410
430
|
_wasmAssetLoadMode = wasmAssetLoadMode;
|
|
411
431
|
_logger = logger;
|
|
432
|
+
_isBrowserLike = isBrowserLike;
|
|
412
433
|
_configSet = true;
|
|
413
434
|
}
|
|
414
435
|
|