@fhevm/sdk 1.1.0-alpha.6 → 1.1.0-alpha.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- 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/encrypt/encryptValue.js +2 -1
- package/_cjs/core/actions/encrypt/encryptValue.js.map +1 -1
- package/_cjs/core/actions/encrypt/encryptValues.js +2 -1
- package/_cjs/core/actions/encrypt/encryptValues.js.map +1 -1
- package/_cjs/core/actions/encrypt/generateZkProof.js +2 -1
- package/_cjs/core/actions/encrypt/generateZkProof.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/actions/host/readKmsVerifierContractData.js +1 -1
- package/_cjs/core/actions/host/readKmsVerifierContractData.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/uint.js +7 -0
- package/_cjs/core/base/uint.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/handle/FheType.js +4 -0
- package/_cjs/core/handle/FheType.js.map +1 -1
- package/_cjs/core/host-contracts/HostContractVersion-p.js +4 -0
- package/_cjs/core/host-contracts/HostContractVersion-p.js.map +1 -1
- package/_cjs/core/host-contracts/KmsSignersContext-p.js +15 -25
- package/_cjs/core/host-contracts/KmsSignersContext-p.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/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js +7 -6
- package/_cjs/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js.map +1 -1
- package/_cjs/core/host-contracts/readKmsSignersContext-p.js +54 -66
- package/_cjs/core/host-contracts/readKmsSignersContext-p.js.map +1 -1
- package/_cjs/core/kms/KmsSigncryptedShares-p.js +40 -4
- package/_cjs/core/kms/KmsSigncryptedShares-p.js.map +1 -1
- package/_cjs/core/kms/PublicDecryptionProof-p.js +8 -7
- package/_cjs/core/kms/PublicDecryptionProof-p.js.map +1 -1
- 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 +204 -0
- package/_cjs/core/kms/SignedDecryptionPermitV1-p.js.map +1 -0
- package/_cjs/core/kms/SignedDecryptionPermitV2-p.js +172 -0
- package/_cjs/core/kms/SignedDecryptionPermitV2-p.js.map +1 -0
- package/_cjs/core/kms/{createKmsDelegatedUserDecryptEip712.js → createKmsDelegatedUserDecryptEip712V1.js} +12 -13
- package/_cjs/core/kms/createKmsDelegatedUserDecryptEip712V1.js.map +1 -0
- package/_cjs/core/kms/{createKmsUserDecryptEip712.js → createKmsUserDecryptEip712V1.js} +22 -21
- package/_cjs/core/kms/createKmsUserDecryptEip712V1.js.map +1 -0
- package/_cjs/core/kms/createKmsUserDecryptEip712V2.js +4 -5
- package/_cjs/core/kms/createKmsUserDecryptEip712V2.js.map +1 -1
- 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} +19 -9
- 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/kmsExtraData-p.js +234 -0
- package/_cjs/core/kms/kmsExtraData-p.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 +5 -5
- package/_cjs/core/kms/publicDecrypt.js.map +1 -1
- package/_cjs/core/kms/utils.js +0 -19
- package/_cjs/core/kms/utils.js.map +1 -1
- package/_cjs/core/kms/verifyKmsPublicDecryptEip712-p.js +6 -5
- package/_cjs/core/kms/verifyKmsPublicDecryptEip712-p.js.map +1 -1
- package/_cjs/core/modules/decrypt/mock.js +6 -6
- package/_cjs/core/modules/decrypt/mock.js.map +1 -1
- package/_cjs/core/modules/decrypt/module/api-p.js +12 -12
- package/_cjs/core/modules/decrypt/module/api-p.js.map +1 -1
- package/_cjs/core/modules/decrypt/module/init-p.js +6 -7
- package/_cjs/core/modules/decrypt/module/init-p.js.map +1 -1
- package/_cjs/core/modules/encrypt/module/init-p.js +12 -11
- package/_cjs/core/modules/encrypt/module/init-p.js.map +1 -1
- package/_cjs/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js +53 -3
- package/_cjs/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js.map +1 -1
- package/_cjs/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +67 -21
- package/_cjs/core/modules/relayer/cleartext/fetchDelegatedUserDecryptV1.js.map +1 -0
- package/_cjs/core/modules/relayer/cleartext/fetchPublicDecrypt.js +64 -7
- package/_cjs/core/modules/relayer/cleartext/fetchPublicDecrypt.js.map +1 -1
- package/_cjs/core/modules/relayer/cleartext/fetchUserDecrypt.js +9 -108
- package/_cjs/core/modules/relayer/cleartext/fetchUserDecrypt.js.map +1 -1
- package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV1.js +163 -0
- package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV1.js.map +1 -0
- package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV2.js +7 -0
- package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV2.js.map +1 -0
- package/_cjs/core/modules/relayer/cleartext/forgeFhevmV1.js +83 -0
- package/_cjs/core/modules/relayer/cleartext/forgeFhevmV1.js.map +1 -0
- package/_cjs/core/modules/relayer/cleartext/mock.js +2 -2
- package/_cjs/core/modules/relayer/cleartext/mock.js.map +1 -1
- package/_cjs/core/modules/relayer/cleartext/signers.js +14 -0
- package/_cjs/core/modules/relayer/cleartext/signers.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 +1 -6
- package/_cjs/core/runtime/HyperWasmSolver-p.js.map +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/ethers/internal/ethereum-ct.js +11 -0
- package/_cjs/ethers/internal/ethereum-ct.js.map +1 -1
- package/_cjs/ethers/internal/runtime-ct.js +9 -7
- package/_cjs/ethers/internal/runtime-ct.js.map +1 -1
- package/_cjs/viem/internal/ethereum-ct.js +8 -0
- package/_cjs/viem/internal/ethereum-ct.js.map +1 -1
- package/_cjs/viem/internal/runtime-ct.js +9 -7
- package/_cjs/viem/internal/runtime-ct.js.map +1 -1
- package/_cjs/wasm/tfhe/loadTfheLib.js.map +1 -1
- package/_cjs/wasm/tkms/loadKmsLib.js.map +1 -1
- 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/encrypt/encryptValue.js +2 -1
- package/_esm/core/actions/encrypt/encryptValue.js.map +1 -1
- package/_esm/core/actions/encrypt/encryptValues.js +2 -1
- package/_esm/core/actions/encrypt/encryptValues.js.map +1 -1
- package/_esm/core/actions/encrypt/generateZkProof.js +2 -1
- package/_esm/core/actions/encrypt/generateZkProof.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/actions/host/readKmsVerifierContractData.js +2 -2
- package/_esm/core/actions/host/readKmsVerifierContractData.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/uint.js +7 -0
- package/_esm/core/base/uint.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/handle/FheType.js +10 -0
- package/_esm/core/handle/FheType.js.map +1 -1
- package/_esm/core/host-contracts/HostContractVersion-p.js +6 -0
- package/_esm/core/host-contracts/HostContractVersion-p.js.map +1 -1
- package/_esm/core/host-contracts/KmsSignersContext-p.js +16 -25
- package/_esm/core/host-contracts/KmsSignersContext-p.js.map +1 -1
- 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/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js +6 -5
- package/_esm/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js.map +1 -1
- package/_esm/core/host-contracts/readKmsSignersContext-p.js +132 -68
- package/_esm/core/host-contracts/readKmsSignersContext-p.js.map +1 -1
- package/_esm/core/kms/KmsSigncryptedShares-p.js +70 -4
- package/_esm/core/kms/KmsSigncryptedShares-p.js.map +1 -1
- package/_esm/core/kms/PublicDecryptionProof-p.js +8 -7
- package/_esm/core/kms/PublicDecryptionProof-p.js.map +1 -1
- 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 +228 -0
- package/_esm/core/kms/SignedDecryptionPermitV1-p.js.map +1 -0
- package/_esm/core/kms/SignedDecryptionPermitV2-p.js +192 -0
- package/_esm/core/kms/SignedDecryptionPermitV2-p.js.map +1 -0
- package/_esm/core/kms/{createKmsDelegatedUserDecryptEip712.js → createKmsDelegatedUserDecryptEip712V1.js} +11 -12
- 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} +23 -22
- package/_esm/core/kms/createKmsUserDecryptEip712V1.js.map +1 -0
- package/_esm/core/kms/createKmsUserDecryptEip712V2.js +4 -5
- package/_esm/core/kms/createKmsUserDecryptEip712V2.js.map +1 -1
- 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} +49 -15
- 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/kmsExtraData-p.js +298 -0
- package/_esm/core/kms/kmsExtraData-p.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 +6 -6
- package/_esm/core/kms/publicDecrypt.js.map +1 -1
- package/_esm/core/kms/utils.js +0 -18
- package/_esm/core/kms/utils.js.map +1 -1
- package/_esm/core/kms/verifyKmsPublicDecryptEip712-p.js +7 -6
- package/_esm/core/kms/verifyKmsPublicDecryptEip712-p.js.map +1 -1
- package/_esm/core/modules/decrypt/mock.js +6 -6
- package/_esm/core/modules/decrypt/mock.js.map +1 -1
- package/_esm/core/modules/decrypt/module/api-p.js +13 -13
- package/_esm/core/modules/decrypt/module/api-p.js.map +1 -1
- package/_esm/core/modules/decrypt/module/init-p.js +7 -7
- package/_esm/core/modules/decrypt/module/init-p.js.map +1 -1
- package/_esm/core/modules/encrypt/module/init-p.js +13 -11
- package/_esm/core/modules/encrypt/module/init-p.js.map +1 -1
- package/_esm/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js +69 -12
- package/_esm/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js.map +1 -1
- package/_esm/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +76 -22
- package/_esm/core/modules/relayer/cleartext/fetchDelegatedUserDecryptV1.js.map +1 -0
- package/_esm/core/modules/relayer/cleartext/fetchPublicDecrypt.js +80 -7
- package/_esm/core/modules/relayer/cleartext/fetchPublicDecrypt.js.map +1 -1
- package/_esm/core/modules/relayer/cleartext/fetchUserDecrypt.js +13 -114
- package/_esm/core/modules/relayer/cleartext/fetchUserDecrypt.js.map +1 -1
- package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV1.js +173 -0
- package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV1.js.map +1 -0
- package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV2.js +6 -0
- package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV2.js.map +1 -0
- package/_esm/core/modules/relayer/cleartext/forgeFhevmV1.js +140 -0
- package/_esm/core/modules/relayer/cleartext/forgeFhevmV1.js.map +1 -0
- package/_esm/core/modules/relayer/cleartext/mock.js +1 -1
- package/_esm/core/modules/relayer/cleartext/mock.js.map +1 -1
- package/_esm/core/modules/relayer/cleartext/signers.js +26 -0
- package/_esm/core/modules/relayer/cleartext/signers.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 +1 -6
- package/_esm/core/runtime/HyperWasmSolver-p.js.map +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/ethers/internal/ethereum-ct.js +12 -1
- package/_esm/ethers/internal/ethereum-ct.js.map +1 -1
- package/_esm/ethers/internal/runtime-ct.js +9 -7
- package/_esm/ethers/internal/runtime-ct.js.map +1 -1
- package/_esm/viem/internal/ethereum-ct.js +10 -2
- package/_esm/viem/internal/ethereum-ct.js.map +1 -1
- package/_esm/viem/internal/runtime-ct.js +9 -7
- package/_esm/viem/internal/runtime-ct.js.map +1 -1
- 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/encrypt/encryptValue.d.ts.map +1 -1
- package/_types/core/actions/encrypt/encryptValues.d.ts.map +1 -1
- package/_types/core/actions/encrypt/generateZkProof.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/cachedFetch.d.ts +1 -0
- package/_types/core/base/cachedFetch.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/clients/decorators/base.d.ts +12 -23
- package/_types/core/clients/decorators/base.d.ts.map +1 -1
- package/_types/core/handle/FheType.d.ts +8 -0
- package/_types/core/handle/FheType.d.ts.map +1 -1
- package/_types/core/host-contracts/HostContractVersion-p.d.ts +8 -0
- package/_types/core/host-contracts/HostContractVersion-p.d.ts.map +1 -1
- package/_types/core/host-contracts/KmsSignersContext-p.d.ts +3 -2
- package/_types/core/host-contracts/KmsSignersContext-p.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/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.d.ts +3 -2
- package/_types/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.d.ts.map +1 -1
- package/_types/core/host-contracts/readKmsSignersContext-p.d.ts +43 -26
- package/_types/core/host-contracts/readKmsSignersContext-p.d.ts.map +1 -1
- package/_types/core/kms/KmsSigncryptedShares-p.d.ts +18 -0
- package/_types/core/kms/KmsSigncryptedShares-p.d.ts.map +1 -1
- package/_types/core/kms/PublicDecryptionProof-p.d.ts +1 -1
- package/_types/core/kms/PublicDecryptionProof-p.d.ts.map +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/createKmsDelegatedUserDecryptEip712V1.d.ts +16 -0
- package/_types/core/kms/createKmsDelegatedUserDecryptEip712V1.d.ts.map +1 -0
- package/_types/core/kms/createKmsUserDecryptEip712V1.d.ts +27 -0
- package/_types/core/kms/createKmsUserDecryptEip712V1.d.ts.map +1 -0
- package/_types/core/kms/createKmsUserDecryptEip712V2.d.ts +3 -2
- 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/kmsExtraData-p.d.ts +66 -0
- package/_types/core/kms/kmsExtraData-p.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/publicDecrypt.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/kms/verifyKmsPublicDecryptEip712-p.d.ts.map +1 -1
- package/_types/core/modules/encrypt/module/init-p.d.ts.map +1 -1
- package/_types/core/modules/ethereum/types-ct.d.ts +20 -2
- package/_types/core/modules/ethereum/types-ct.d.ts.map +1 -1
- package/_types/core/modules/relayer/cleartext/fetchCoprocessorSignatures.d.ts.map +1 -1
- package/_types/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.d.ts → fetchDelegatedUserDecryptV1.d.ts} +1 -1
- package/_types/core/modules/relayer/cleartext/fetchDelegatedUserDecryptV1.d.ts.map +1 -0
- package/_types/core/modules/relayer/cleartext/fetchPublicDecrypt.d.ts.map +1 -1
- package/_types/core/modules/relayer/cleartext/fetchUserDecrypt.d.ts.map +1 -1
- package/_types/core/modules/relayer/cleartext/fetchUserDecryptV1.d.ts +3 -0
- package/_types/core/modules/relayer/cleartext/fetchUserDecryptV1.d.ts.map +1 -0
- package/_types/core/modules/relayer/cleartext/fetchUserDecryptV2.d.ts +3 -0
- package/_types/core/modules/relayer/cleartext/fetchUserDecryptV2.d.ts.map +1 -0
- package/_types/core/modules/relayer/cleartext/forgeFhevmV1.d.ts +29 -0
- package/_types/core/modules/relayer/cleartext/forgeFhevmV1.d.ts.map +1 -0
- package/_types/core/modules/relayer/cleartext/signers.d.ts +1 -0
- package/_types/core/modules/relayer/cleartext/signers.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-p.d.ts +7 -1
- package/_types/core/types/kms-p.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/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/ethers/internal/ethereum-ct.d.ts.map +1 -1
- package/_types/ethers/internal/runtime-ct.d.ts.map +1 -1
- package/_types/viem/internal/ethereum-ct.d.ts.map +1 -1
- package/_types/viem/internal/runtime-ct.d.ts.map +1 -1
- 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/encrypt/encryptValue.ts +4 -1
- package/core/actions/encrypt/encryptValues.ts +5 -1
- package/core/actions/encrypt/generateZkProof.ts +2 -1
- package/core/actions/host/index.ts +0 -20
- package/core/actions/host/readKmsVerifierContractData.ts +2 -2
- package/core/base/cachedFetch.ts +1 -0
- package/core/base/uint.ts +18 -1
- package/core/clients/decorators/base.ts +13 -37
- package/core/coprocessor/coprocessorEip712Types.ts +2 -2
- package/core/handle/FheType.ts +11 -0
- package/core/host-contracts/HostContractVersion-p.ts +12 -0
- package/core/host-contracts/KmsSignersContext-p.ts +29 -36
- 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 +3 -2
- package/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.ts +10 -7
- package/core/host-contracts/readKmsSignersContext-p.ts +156 -115
- package/core/kms/KmsSigncryptedShares-p.ts +87 -4
- package/core/kms/PublicDecryptionProof-p.ts +11 -9
- package/core/kms/SignedDecryptionPermit-p.ts +67 -357
- package/core/kms/SignedDecryptionPermitV1-p.ts +308 -0
- package/core/kms/SignedDecryptionPermitV2-p.ts +275 -0
- package/core/kms/{createKmsDelegatedUserDecryptEip712.ts → createKmsDelegatedUserDecryptEip712V1.ts} +21 -21
- package/core/kms/createKmsPublicDecryptEip712.ts +1 -1
- package/core/kms/{createKmsUserDecryptEip712.ts → createKmsUserDecryptEip712V1.ts} +35 -31
- package/core/kms/createKmsUserDecryptEip712V2.ts +7 -7
- package/core/kms/decryptValuesFromPairs.ts +34 -22
- package/core/kms/{fetchKmsSigncryptedShares-p.ts → fetchKmsSigncryptedSharesV1-p.ts} +62 -45
- package/core/kms/fetchKmsSigncryptedSharesV2-p.ts +176 -0
- package/core/kms/{kmsDelegatedUserDecryptEip712Types.ts → kmsDelegatedUserDecryptEip712V1Types.ts} +9 -8
- package/core/kms/kmsExtraData-p.ts +374 -0
- 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 +10 -9
- package/core/kms/utils.ts +0 -32
- package/core/kms/verifyKmsPublicDecryptEip712-p.ts +10 -8
- package/core/modules/decrypt/mock.ts +6 -6
- package/core/modules/decrypt/module/api-p.ts +15 -15
- package/core/modules/decrypt/module/init-p.ts +7 -7
- package/core/modules/encrypt/module/init-p.ts +16 -11
- package/core/modules/ethereum/types-ct.ts +25 -2
- package/core/modules/relayer/cleartext/fetchCoprocessorSignatures.ts +98 -15
- package/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.ts → fetchDelegatedUserDecryptV1.ts} +115 -27
- package/core/modules/relayer/cleartext/fetchPublicDecrypt.ts +115 -9
- package/core/modules/relayer/cleartext/fetchUserDecrypt.ts +23 -131
- package/core/modules/relayer/cleartext/fetchUserDecryptV1.ts +229 -0
- package/core/modules/relayer/cleartext/fetchUserDecryptV2.ts +11 -0
- package/core/modules/relayer/cleartext/forgeFhevmV1.ts +185 -0
- package/core/modules/relayer/cleartext/mock.ts +1 -1
- package/core/modules/relayer/cleartext/signers.ts +35 -0
- 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 +1 -5
- package/core/types/kms-p.ts +16 -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/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/ethers/internal/ethereum-ct.ts +15 -1
- package/ethers/internal/runtime-ct.ts +9 -7
- package/package.json +1 -1
- package/viem/internal/ethereum-ct.ts +14 -2
- package/viem/internal/runtime-ct.ts +9 -7
- 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/kmsExtraData.js +0 -82
- package/_cjs/core/kms/kmsExtraData.js.map +0 -1
- package/_cjs/core/kms/kmsUserDecryptEip712Types.js.map +0 -1
- package/_cjs/core/modules/relayer/cleartext/fetchDelegatedUserDecrypt.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/_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/kmsExtraData.js +0 -99
- package/_esm/core/kms/kmsExtraData.js.map +0 -1
- package/_esm/core/kms/kmsUserDecryptEip712Types.js.map +0 -1
- package/_esm/core/modules/relayer/cleartext/fetchDelegatedUserDecrypt.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/_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/kmsExtraData.d.ts +0 -25
- package/_types/core/kms/kmsExtraData.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/cleartext/fetchDelegatedUserDecrypt.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/core/kms/kmsExtraData.ts +0 -127
- /package/core/modules/relayer/module/{fetchDelegatedUserDecrypt.ts → fetchDelegatedUserDecryptV1.ts} +0 -0
package/core/kms/{createKmsDelegatedUserDecryptEip712.ts → createKmsDelegatedUserDecryptEip712V1.ts}
RENAMED
|
@@ -1,40 +1,41 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { KmsDelegatedUserDecryptEip712V1 } from '../types/kms.js';
|
|
2
2
|
import type { BytesHex } from '../types/primitives.js';
|
|
3
3
|
import type { ErrorMetadataParams } from '../base/errors/ErrorBase.js';
|
|
4
|
+
import type { KmsExtraData } from '../types/kms-p.js';
|
|
4
5
|
import {
|
|
5
6
|
addressToChecksummedAddress,
|
|
6
7
|
assertIsAddress,
|
|
7
8
|
assertIsAddressArray,
|
|
8
9
|
assertRecordChecksummedAddressProperty,
|
|
9
10
|
} from '../base/address.js';
|
|
10
|
-
import { asBytesHex,
|
|
11
|
+
import { asBytesHex, bytesToHexLarge } from '../base/bytes.js';
|
|
11
12
|
import { ensure0x } from '../base/string.js';
|
|
12
13
|
import { assertIsUintNumber } from '../base/uint.js';
|
|
13
14
|
import { createKmsEip712Domain } from './createKmsEip712Domain.js';
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import { assertIsKmsExtraData } from './kmsExtraData.js';
|
|
15
|
+
import { _assertIsKmsUserDecryptEip712V1Base } from './createKmsUserDecryptEip712V1.js';
|
|
16
|
+
import { kmsDelegatedUserDecryptEip712V1Types } from './kmsDelegatedUserDecryptEip712V1Types.js';
|
|
17
|
+
import { assertIsKmsExtraData } from './kmsExtraData-p.js';
|
|
17
18
|
|
|
18
19
|
////////////////////////////////////////////////////////////////////////////////
|
|
19
20
|
|
|
20
|
-
export type
|
|
21
|
+
export type CreateKmsDelegatedUserDecryptEip712V1Parameters = {
|
|
21
22
|
readonly verifyingContractAddressDecryption: string;
|
|
22
23
|
readonly chainId: number | bigint;
|
|
23
24
|
readonly publicKey: string | Uint8Array;
|
|
24
25
|
readonly contractAddresses: readonly string[];
|
|
25
26
|
readonly startTimestamp: number;
|
|
26
27
|
readonly durationDays: number;
|
|
27
|
-
readonly extraData:
|
|
28
|
+
readonly extraData: KmsExtraData;
|
|
28
29
|
readonly delegatorAddress: string;
|
|
29
30
|
};
|
|
30
31
|
|
|
31
32
|
////////////////////////////////////////////////////////////////////////////////
|
|
32
|
-
//
|
|
33
|
+
// createKmsDelegatedUserDecryptEip712V1
|
|
33
34
|
////////////////////////////////////////////////////////////////////////////////
|
|
34
35
|
|
|
35
|
-
export function
|
|
36
|
-
parameters:
|
|
37
|
-
):
|
|
36
|
+
export function createKmsDelegatedUserDecryptEip712V1(
|
|
37
|
+
parameters: CreateKmsDelegatedUserDecryptEip712V1Parameters,
|
|
38
|
+
): KmsDelegatedUserDecryptEip712V1 {
|
|
38
39
|
const {
|
|
39
40
|
verifyingContractAddressDecryption,
|
|
40
41
|
chainId,
|
|
@@ -50,7 +51,6 @@ export function createKmsDelegatedUserDecryptEip712(
|
|
|
50
51
|
assertIsAddressArray(contractAddresses, {});
|
|
51
52
|
assertIsUintNumber(startTimestamp, {});
|
|
52
53
|
assertIsUintNumber(durationDays, {});
|
|
53
|
-
assertIsBytesHex(extraData, {});
|
|
54
54
|
assertIsAddress(delegatorAddress, {});
|
|
55
55
|
assertIsKmsExtraData(extraData, {});
|
|
56
56
|
|
|
@@ -58,15 +58,15 @@ export function createKmsDelegatedUserDecryptEip712(
|
|
|
58
58
|
|
|
59
59
|
const checksummedDelegatorAddress = addressToChecksummedAddress(delegatorAddress);
|
|
60
60
|
|
|
61
|
-
const primaryType:
|
|
61
|
+
const primaryType: KmsDelegatedUserDecryptEip712V1['primaryType'] = 'DelegatedUserDecryptRequestVerification';
|
|
62
62
|
|
|
63
63
|
const domain = createKmsEip712Domain({
|
|
64
64
|
chainId,
|
|
65
65
|
verifyingContractAddressDecryption,
|
|
66
66
|
});
|
|
67
67
|
|
|
68
|
-
const eip712:
|
|
69
|
-
types:
|
|
68
|
+
const eip712: KmsDelegatedUserDecryptEip712V1 = {
|
|
69
|
+
types: kmsDelegatedUserDecryptEip712V1Types,
|
|
70
70
|
primaryType,
|
|
71
71
|
domain,
|
|
72
72
|
message: {
|
|
@@ -75,7 +75,7 @@ export function createKmsDelegatedUserDecryptEip712(
|
|
|
75
75
|
delegatorAddress: checksummedDelegatorAddress,
|
|
76
76
|
startTimestamp: startTimestamp.toString(),
|
|
77
77
|
durationDays: durationDays.toString(),
|
|
78
|
-
extraData,
|
|
78
|
+
extraData: extraData.toBytesHex(),
|
|
79
79
|
},
|
|
80
80
|
};
|
|
81
81
|
|
|
@@ -92,21 +92,21 @@ export function createKmsDelegatedUserDecryptEip712(
|
|
|
92
92
|
|
|
93
93
|
////////////////////////////////////////////////////////////////////////////////
|
|
94
94
|
|
|
95
|
-
export function
|
|
95
|
+
export function assertIsKmsDelegatedUserDecryptEip712V1(
|
|
96
96
|
value: unknown,
|
|
97
97
|
name: string,
|
|
98
98
|
options: ErrorMetadataParams,
|
|
99
|
-
): asserts value is
|
|
100
|
-
|
|
99
|
+
): asserts value is KmsDelegatedUserDecryptEip712V1 {
|
|
100
|
+
_assertIsKmsUserDecryptEip712V1Base(
|
|
101
101
|
value,
|
|
102
102
|
name,
|
|
103
|
-
'DelegatedUserDecryptRequestVerification' satisfies
|
|
103
|
+
'DelegatedUserDecryptRequestVerification' satisfies KmsDelegatedUserDecryptEip712V1['primaryType'],
|
|
104
104
|
options,
|
|
105
105
|
);
|
|
106
106
|
|
|
107
107
|
assertRecordChecksummedAddressProperty(
|
|
108
108
|
value.message,
|
|
109
|
-
'delegatorAddress' satisfies keyof
|
|
109
|
+
'delegatorAddress' satisfies keyof KmsDelegatedUserDecryptEip712V1['message'],
|
|
110
110
|
`${name}.message`,
|
|
111
111
|
options,
|
|
112
112
|
);
|
|
@@ -16,7 +16,7 @@ export type CreateKmsPublicDecryptEip712Parameters = {
|
|
|
16
16
|
};
|
|
17
17
|
|
|
18
18
|
////////////////////////////////////////////////////////////////////////////////
|
|
19
|
-
//
|
|
19
|
+
// createKmsPublicDecryptEip712
|
|
20
20
|
////////////////////////////////////////////////////////////////////////////////
|
|
21
21
|
|
|
22
22
|
export function createKmsPublicDecryptEip712(
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { ErrorMetadataParams } from '../base/errors/ErrorBase.js';
|
|
2
|
-
import type { KmsEip712Domain,
|
|
2
|
+
import type { KmsEip712Domain, KmsUserDecryptEip712V1 } from '../types/kms.js';
|
|
3
3
|
import type { BytesHex } from '../types/primitives.js';
|
|
4
|
-
import type {
|
|
4
|
+
import type { KmsUserDecryptEip712V1Message } from '../types/kms.js';
|
|
5
|
+
import type { KmsExtraData } from '../types/kms-p.js';
|
|
5
6
|
import {
|
|
6
7
|
addressToChecksummedAddress,
|
|
7
8
|
assertIsAddress,
|
|
@@ -9,32 +10,34 @@ import {
|
|
|
9
10
|
assertRecordChecksummedAddressArrayProperty,
|
|
10
11
|
} from '../base/address.js';
|
|
11
12
|
import { assertIsKmsEip712Domain, createKmsEip712Domain } from './createKmsEip712Domain.js';
|
|
12
|
-
import { asBytesHex,
|
|
13
|
+
import { asBytesHex, assertRecordBytesHexProperty, bytesToHexLarge } from '../base/bytes.js';
|
|
13
14
|
import { assertRecordNonNullableProperty } from '../base/record.js';
|
|
14
15
|
import { assertRecordStringProperty, ensure0x } from '../base/string.js';
|
|
15
|
-
import { assertIsUint64, assertIsUintNumber } from '../base/uint.js';
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
16
|
+
import { assertIsUint64, assertIsUintNumber, assertIsUintString, MAX_UINT256 } from '../base/uint.js';
|
|
17
|
+
import { kmsUserDecryptEip712V1Types } from './kmsUserDecryptEip712V1Types.js';
|
|
18
|
+
import { kmsDelegatedUserDecryptEip712V1Types } from './kmsDelegatedUserDecryptEip712V1Types.js';
|
|
18
19
|
import { isDeepEqual } from '../base/object.js';
|
|
19
|
-
import {
|
|
20
|
+
import { assertIsKmsExtraData, assertIsKmsExtraDataBytesHex } from './kmsExtraData-p.js';
|
|
20
21
|
|
|
21
22
|
////////////////////////////////////////////////////////////////////////////////
|
|
22
23
|
|
|
23
|
-
export type
|
|
24
|
+
export type CreateKmsUserDecryptEip712V1Parameters = {
|
|
24
25
|
readonly verifyingContractAddressDecryption: string;
|
|
25
26
|
readonly chainId: number | bigint;
|
|
26
27
|
readonly publicKey: string | Uint8Array;
|
|
27
28
|
readonly contractAddresses: readonly string[];
|
|
28
29
|
readonly startTimestamp: number;
|
|
29
30
|
readonly durationDays: number;
|
|
30
|
-
readonly extraData:
|
|
31
|
+
readonly extraData: KmsExtraData;
|
|
31
32
|
};
|
|
32
33
|
|
|
33
34
|
////////////////////////////////////////////////////////////////////////////////
|
|
34
|
-
//
|
|
35
|
+
// createKmsUserDecryptEip712V1
|
|
35
36
|
////////////////////////////////////////////////////////////////////////////////
|
|
36
37
|
|
|
37
|
-
export function
|
|
38
|
+
export function createKmsUserDecryptEip712V1(
|
|
39
|
+
parameters: CreateKmsUserDecryptEip712V1Parameters,
|
|
40
|
+
): KmsUserDecryptEip712V1 {
|
|
38
41
|
const {
|
|
39
42
|
verifyingContractAddressDecryption,
|
|
40
43
|
chainId,
|
|
@@ -51,12 +54,11 @@ export function createKmsUserDecryptEip712(parameters: CreateKmsUserDecryptEip71
|
|
|
51
54
|
assertIsAddressArray(contractAddresses, {});
|
|
52
55
|
assertIsUintNumber(startTimestamp, {});
|
|
53
56
|
assertIsUintNumber(durationDays, {});
|
|
54
|
-
assertIsBytesHex(extraData, {});
|
|
55
57
|
assertIsKmsExtraData(extraData, {});
|
|
56
58
|
|
|
57
59
|
const checksummedContractAddresses = contractAddresses.map(addressToChecksummedAddress);
|
|
58
60
|
|
|
59
|
-
const primaryType:
|
|
61
|
+
const primaryType: KmsUserDecryptEip712V1['primaryType'] = 'UserDecryptRequestVerification';
|
|
60
62
|
|
|
61
63
|
const domain = createKmsEip712Domain({
|
|
62
64
|
chainId,
|
|
@@ -65,14 +67,14 @@ export function createKmsUserDecryptEip712(parameters: CreateKmsUserDecryptEip71
|
|
|
65
67
|
|
|
66
68
|
const eip712 = {
|
|
67
69
|
domain,
|
|
68
|
-
types:
|
|
70
|
+
types: kmsUserDecryptEip712V1Types,
|
|
69
71
|
primaryType,
|
|
70
72
|
message: {
|
|
71
73
|
publicKey: publicKeyBytesHex,
|
|
72
74
|
contractAddresses: checksummedContractAddresses,
|
|
73
75
|
startTimestamp: startTimestamp.toString(),
|
|
74
76
|
durationDays: durationDays.toString(),
|
|
75
|
-
extraData,
|
|
77
|
+
extraData: extraData.toBytesHex(),
|
|
76
78
|
},
|
|
77
79
|
};
|
|
78
80
|
|
|
@@ -89,25 +91,25 @@ export function createKmsUserDecryptEip712(parameters: CreateKmsUserDecryptEip71
|
|
|
89
91
|
|
|
90
92
|
////////////////////////////////////////////////////////////////////////////////
|
|
91
93
|
|
|
92
|
-
export function
|
|
94
|
+
export function assertIsKmsUserDecryptEip712V1(
|
|
93
95
|
value: unknown,
|
|
94
96
|
name: string,
|
|
95
97
|
options: ErrorMetadataParams,
|
|
96
|
-
): asserts value is
|
|
97
|
-
|
|
98
|
+
): asserts value is KmsUserDecryptEip712V1 {
|
|
99
|
+
_assertIsKmsUserDecryptEip712V1Base(
|
|
98
100
|
value,
|
|
99
101
|
name,
|
|
100
|
-
'UserDecryptRequestVerification' satisfies
|
|
102
|
+
'UserDecryptRequestVerification' satisfies KmsUserDecryptEip712V1['primaryType'],
|
|
101
103
|
options,
|
|
102
104
|
);
|
|
103
105
|
}
|
|
104
106
|
|
|
105
107
|
/**
|
|
106
108
|
* Validates the common structure shared by both
|
|
107
|
-
* {@link
|
|
109
|
+
* {@link KmsUserDecryptEip712V1} and {@link KmsDelegatedUserDecryptEip712V1}:
|
|
108
110
|
* domain, types, primaryType, and base message fields.
|
|
109
111
|
*/
|
|
110
|
-
export function
|
|
112
|
+
export function _assertIsKmsUserDecryptEip712V1Base(
|
|
111
113
|
value: unknown,
|
|
112
114
|
name: string,
|
|
113
115
|
primaryType: string,
|
|
@@ -116,7 +118,7 @@ export function _assertIsKmsUserDecryptEip712Base(
|
|
|
116
118
|
readonly domain: KmsEip712Domain;
|
|
117
119
|
readonly types: object;
|
|
118
120
|
readonly primaryType: string;
|
|
119
|
-
readonly message:
|
|
121
|
+
readonly message: KmsUserDecryptEip712V1Message;
|
|
120
122
|
} {
|
|
121
123
|
assertRecordNonNullableProperty(value, 'domain', name, options);
|
|
122
124
|
assertIsKmsEip712Domain((value as Record<string, unknown>).domain, `${name}.domain`, options);
|
|
@@ -125,11 +127,11 @@ export function _assertIsKmsUserDecryptEip712Base(
|
|
|
125
127
|
|
|
126
128
|
const expectedTypes =
|
|
127
129
|
primaryType === 'DelegatedUserDecryptRequestVerification'
|
|
128
|
-
?
|
|
129
|
-
:
|
|
130
|
+
? kmsDelegatedUserDecryptEip712V1Types
|
|
131
|
+
: kmsUserDecryptEip712V1Types;
|
|
130
132
|
|
|
131
133
|
if (!isDeepEqual(value.types, expectedTypes)) {
|
|
132
|
-
throw new Error('Unexpected
|
|
134
|
+
throw new Error('Unexpected KmsUserDecryptEip712V1Types');
|
|
133
135
|
}
|
|
134
136
|
|
|
135
137
|
assertRecordStringProperty(value, 'primaryType', name, {
|
|
@@ -139,25 +141,27 @@ export function _assertIsKmsUserDecryptEip712Base(
|
|
|
139
141
|
|
|
140
142
|
assertRecordNonNullableProperty(value, 'message', name, options);
|
|
141
143
|
const msg = (value as Record<string, unknown>).message as Record<string, unknown>;
|
|
142
|
-
|
|
144
|
+
_assertIsKmsUserDecryptEip712V1Message(msg, `${name}.message`, options);
|
|
143
145
|
}
|
|
144
146
|
|
|
145
147
|
/**
|
|
146
148
|
* Validates the common message fields shared by both
|
|
147
|
-
* {@link
|
|
149
|
+
* {@link KmsUserDecryptEip712V1} and {@link KmsDelegatedUserDecryptEip712V1}.
|
|
148
150
|
*/
|
|
149
|
-
function
|
|
151
|
+
function _assertIsKmsUserDecryptEip712V1Message(
|
|
150
152
|
msg: unknown,
|
|
151
153
|
msgName: string,
|
|
152
154
|
options: ErrorMetadataParams,
|
|
153
|
-
): asserts msg is
|
|
154
|
-
type MessageType =
|
|
155
|
+
): asserts msg is KmsUserDecryptEip712V1Message {
|
|
156
|
+
type MessageType = KmsUserDecryptEip712V1['message'];
|
|
155
157
|
assertRecordBytesHexProperty(msg, 'publicKey' satisfies keyof MessageType, msgName, options);
|
|
156
158
|
assertRecordChecksummedAddressArrayProperty(msg, 'contractAddresses' satisfies keyof MessageType, msgName, options);
|
|
157
159
|
assertRecordStringProperty(msg, 'startTimestamp' satisfies keyof MessageType, msgName, options);
|
|
158
160
|
assertRecordStringProperty(msg, 'durationDays' satisfies keyof MessageType, msgName, options);
|
|
159
161
|
assertRecordBytesHexProperty(msg, 'extraData' satisfies keyof MessageType, msgName, options);
|
|
160
|
-
|
|
162
|
+
assertIsKmsExtraDataBytesHex(msg.extraData, options);
|
|
163
|
+
assertIsUintString(msg.startTimestamp, { max: MAX_UINT256 });
|
|
164
|
+
assertIsUintString(msg.durationDays, { max: MAX_UINT256 });
|
|
161
165
|
}
|
|
162
166
|
|
|
163
167
|
////////////////////////////////////////////////////////////////////////////////
|
|
@@ -2,6 +2,7 @@ import type { ErrorMetadataParams } from '../base/errors/ErrorBase.js';
|
|
|
2
2
|
import type { KmsUserDecryptEip712V2 } from '../types/kms.js';
|
|
3
3
|
import type { BytesHex } from '../types/primitives.js';
|
|
4
4
|
import type { KmsUserDecryptEip712V2Message } from '../types/kms.js';
|
|
5
|
+
import type { KmsExtraData } from '../types/kms-p.js';
|
|
5
6
|
import {
|
|
6
7
|
addressToChecksummedAddress,
|
|
7
8
|
assertIsAddress,
|
|
@@ -10,13 +11,13 @@ import {
|
|
|
10
11
|
assertRecordChecksummedAddressArrayProperty,
|
|
11
12
|
} from '../base/address.js';
|
|
12
13
|
import { assertIsKmsEip712Domain, createKmsEip712Domain } from './createKmsEip712Domain.js';
|
|
13
|
-
import { asBytesHex,
|
|
14
|
+
import { asBytesHex, assertRecordBytesHexProperty, bytesToHexLarge } from '../base/bytes.js';
|
|
14
15
|
import { isDeepEqual } from '../base/object.js';
|
|
15
16
|
import { assertRecordNonNullableProperty } from '../base/record.js';
|
|
16
17
|
import { assertRecordStringProperty, ensure0x } from '../base/string.js';
|
|
17
18
|
import { assertIsUint256, assertIsUint64, assertIsUintString, MAX_UINT256 } from '../base/uint.js';
|
|
18
|
-
import { assertIsKmsExtraData } from './kmsExtraData.js';
|
|
19
19
|
import { kmsUserDecryptEip712V2Types } from './kmsUserDecryptEip712V2Types.js';
|
|
20
|
+
import { assertIsKmsExtraData, assertIsKmsExtraDataBytesHex } from './kmsExtraData-p.js';
|
|
20
21
|
|
|
21
22
|
////////////////////////////////////////////////////////////////////////////////
|
|
22
23
|
|
|
@@ -27,8 +28,8 @@ export type CreateKmsUserDecryptEip712V2Parameters = {
|
|
|
27
28
|
readonly publicKey: string | Uint8Array;
|
|
28
29
|
readonly allowedContracts: readonly string[];
|
|
29
30
|
readonly startTimestamp: number | bigint;
|
|
30
|
-
readonly durationSeconds:
|
|
31
|
-
readonly extraData:
|
|
31
|
+
readonly durationSeconds: bigint;
|
|
32
|
+
readonly extraData: KmsExtraData;
|
|
32
33
|
};
|
|
33
34
|
|
|
34
35
|
////////////////////////////////////////////////////////////////////////////////
|
|
@@ -56,7 +57,6 @@ export function createKmsUserDecryptEip712V2(
|
|
|
56
57
|
assertIsAddressArray(allowedContracts, {});
|
|
57
58
|
assertIsUint256(startTimestamp, {});
|
|
58
59
|
assertIsUint256(durationSeconds, {});
|
|
59
|
-
assertIsBytesHex(extraData, {});
|
|
60
60
|
assertIsKmsExtraData(extraData, {});
|
|
61
61
|
|
|
62
62
|
const checksummedUserAddress = addressToChecksummedAddress(userAddress);
|
|
@@ -79,7 +79,7 @@ export function createKmsUserDecryptEip712V2(
|
|
|
79
79
|
allowedContracts: checksummedContractAddresses,
|
|
80
80
|
startTimestamp: startTimestamp.toString(),
|
|
81
81
|
durationSeconds: durationSeconds.toString(),
|
|
82
|
-
extraData,
|
|
82
|
+
extraData: extraData.toBytesHex(),
|
|
83
83
|
} satisfies KmsUserDecryptEip712V2Message,
|
|
84
84
|
};
|
|
85
85
|
|
|
@@ -131,7 +131,7 @@ function _assertIsKmsUserDecryptEip712V2Message(
|
|
|
131
131
|
assertRecordStringProperty(msg, 'startTimestamp' satisfies keyof MessageType, msgName, options);
|
|
132
132
|
assertRecordStringProperty(msg, 'durationSeconds' satisfies keyof MessageType, msgName, options);
|
|
133
133
|
assertRecordBytesHexProperty(msg, 'extraData' satisfies keyof MessageType, msgName, options);
|
|
134
|
-
|
|
134
|
+
assertIsKmsExtraDataBytesHex(msg.extraData, options);
|
|
135
135
|
assertIsUintString(msg.startTimestamp, { max: MAX_UINT256 });
|
|
136
136
|
assertIsUintString(msg.durationSeconds, { max: MAX_UINT256 });
|
|
137
137
|
}
|
|
@@ -7,10 +7,13 @@ import type { FhevmChain } from '../types/fhevmChain.js';
|
|
|
7
7
|
import type { KmsSigncryptedShares } from '../types/kms.js';
|
|
8
8
|
import type { ChecksummedAddress, TypedValue } from '../types/primitives.js';
|
|
9
9
|
import type { RelayerDelegatedUserDecryptOptions, RelayerUserDecryptOptions } from '../types/relayer.js';
|
|
10
|
-
import type {
|
|
10
|
+
import type { SignedDecryptionPermit } from '../types/signedDecryptionPermit.js';
|
|
11
11
|
import type { TransportKeyPair } from './TransportKeyPair-p.js';
|
|
12
|
+
import { isSemverStrictlyBefore } from '../base/semver.js';
|
|
13
|
+
import { getResolvedProtocolVersion } from '../runtime/CoreFhevm-p.js';
|
|
12
14
|
import { decryptKmsSigncryptedShares } from './decryptKmsSigncryptedShares-p.js';
|
|
13
|
-
import {
|
|
15
|
+
import { fetchKmsSigncryptedSharesV1 } from './fetchKmsSigncryptedSharesV1-p.js';
|
|
16
|
+
import { fetchKmsSigncryptedSharesV2 } from './fetchKmsSigncryptedSharesV2-p.js';
|
|
14
17
|
|
|
15
18
|
////////////////////////////////////////////////////////////////////////////////
|
|
16
19
|
|
|
@@ -22,25 +25,19 @@ type Context = {
|
|
|
22
25
|
readonly options: { readonly batchRpcCalls: boolean };
|
|
23
26
|
};
|
|
24
27
|
|
|
25
|
-
type Parameters =
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
readonly contractAddress: ChecksummedAddress;
|
|
39
|
-
}>;
|
|
40
|
-
readonly signedPermit: SignedDelegatedDecryptionPermit;
|
|
41
|
-
readonly transportKeyPair: TransportKeyPair;
|
|
42
|
-
readonly options?: RelayerDelegatedUserDecryptOptions | undefined;
|
|
43
|
-
};
|
|
28
|
+
type Parameters = {
|
|
29
|
+
readonly pairs: ReadonlyArray<{
|
|
30
|
+
readonly handle: Handle;
|
|
31
|
+
readonly contractAddress: ChecksummedAddress;
|
|
32
|
+
// ownerAddress is only relevant for V2 (protocol >= 0.14.0). When omitted,
|
|
33
|
+
// fetchKmsSigncryptedSharesV2 defaults to userAddress (direct-access path).
|
|
34
|
+
// Provide it explicitly only for delegated handles where ownerAddress !== userAddress.
|
|
35
|
+
readonly ownerAddress?: ChecksummedAddress | undefined;
|
|
36
|
+
}>;
|
|
37
|
+
readonly signedPermit: SignedDecryptionPermit;
|
|
38
|
+
readonly transportKeyPair: TransportKeyPair;
|
|
39
|
+
readonly options?: RelayerUserDecryptOptions | RelayerDelegatedUserDecryptOptions | undefined;
|
|
40
|
+
};
|
|
44
41
|
|
|
45
42
|
export type ReturnType = readonly TypedValue[];
|
|
46
43
|
|
|
@@ -49,7 +46,22 @@ export type ReturnType = readonly TypedValue[];
|
|
|
49
46
|
export async function decryptValuesFromPairs(fhevm: Context, parameters: Parameters): Promise<ReturnType> {
|
|
50
47
|
const { transportKeyPair: transportKeyPair } = parameters;
|
|
51
48
|
|
|
52
|
-
const
|
|
49
|
+
const protocolVersion = getResolvedProtocolVersion(fhevm);
|
|
50
|
+
if (protocolVersion === undefined) {
|
|
51
|
+
throw new Error(
|
|
52
|
+
'Unable to resolve protocol version from context, ensure proper initialization of the FhevmRuntime and FhevmChain.',
|
|
53
|
+
);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
let kmsSigncryptedShares: KmsSigncryptedShares;
|
|
57
|
+
if (isSemverStrictlyBefore(protocolVersion.version, '0.14.0')) {
|
|
58
|
+
kmsSigncryptedShares = await fetchKmsSigncryptedSharesV1(fhevm, parameters);
|
|
59
|
+
} else {
|
|
60
|
+
kmsSigncryptedShares = await fetchKmsSigncryptedSharesV2(fhevm, {
|
|
61
|
+
...parameters,
|
|
62
|
+
options: parameters.options as RelayerUserDecryptOptions | undefined,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
53
65
|
|
|
54
66
|
// Using the `KmsSigncryptedShares` decrypt and reconstruct clear values
|
|
55
67
|
return decryptKmsSigncryptedShares(fhevm, {
|
|
@@ -5,12 +5,12 @@ import type { KmsSignersContext } from '../types/kmsSignersContext.js';
|
|
|
5
5
|
import type { ChecksummedAddress, Uint64BigInt } from '../types/primitives.js';
|
|
6
6
|
import type { FhevmChain } from '../types/fhevmChain.js';
|
|
7
7
|
import type { RelayerDelegatedUserDecryptOptions, RelayerUserDecryptOptions } from '../types/relayer.js';
|
|
8
|
-
import type {
|
|
8
|
+
import type { SignedDecryptionPermit, SignedDecryptionPermitV1 } from '../types/signedDecryptionPermit.js';
|
|
9
9
|
import type { Handle } from '../types/encryptedTypes-p.js';
|
|
10
10
|
import { assertHandlesBelongToSameChainId } from '../handle/FhevmHandle.js';
|
|
11
|
-
import { createKmsSigncryptedShares } from '
|
|
12
|
-
import {
|
|
13
|
-
import { assertIsSignedDecryptionPermit
|
|
11
|
+
import { createKmsSigncryptedShares } from './KmsSigncryptedShares-p.js';
|
|
12
|
+
import { readCurrentKmsSignersContext } from '../host-contracts/readKmsSignersContext-p.js';
|
|
13
|
+
import { assertIsSignedDecryptionPermit } from './SignedDecryptionPermit-p.js';
|
|
14
14
|
import { assertKmsDecryptionBitLimit } from './utils.js';
|
|
15
15
|
import { checkPersistAllowed } from '../host-contracts/checkPersistAllowed.js';
|
|
16
16
|
import { assertExtraDataMatchesKmsSingersContext } from '../host-contracts/KmsSignersContext-p.js';
|
|
@@ -18,19 +18,6 @@ import { createKmsEip712Domain } from './createKmsEip712Domain.js';
|
|
|
18
18
|
import { checkDelegation } from '../host-contracts/checkDelegation.js';
|
|
19
19
|
import { resolveFhevmTkmsVersion } from '../runtime/resolveFhevmVersions-p.js';
|
|
20
20
|
|
|
21
|
-
/*
|
|
22
|
-
See: in KMS (eip712Domain)
|
|
23
|
-
json.response[i].signature is an eip712 sig potentially on this message:
|
|
24
|
-
|
|
25
|
-
struct UserDecryptResponseVerification {
|
|
26
|
-
bytes publicKey;
|
|
27
|
-
bytes32[] ctHandles;
|
|
28
|
-
bytes userDecryptedShare;
|
|
29
|
-
bytes extraData;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
*/
|
|
33
|
-
|
|
34
21
|
////////////////////////////////////////////////////////////////////////////////
|
|
35
22
|
|
|
36
23
|
type Context = {
|
|
@@ -40,23 +27,14 @@ type Context = {
|
|
|
40
27
|
readonly options: { readonly batchRpcCalls: boolean };
|
|
41
28
|
};
|
|
42
29
|
|
|
43
|
-
type Parameters =
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
| {
|
|
53
|
-
readonly pairs: ReadonlyArray<{
|
|
54
|
-
readonly handle: Handle;
|
|
55
|
-
readonly contractAddress: ChecksummedAddress;
|
|
56
|
-
}>;
|
|
57
|
-
readonly signedPermit: SignedDelegatedDecryptionPermit;
|
|
58
|
-
readonly options?: RelayerDelegatedUserDecryptOptions | undefined;
|
|
59
|
-
};
|
|
30
|
+
type Parameters = {
|
|
31
|
+
readonly pairs: ReadonlyArray<{
|
|
32
|
+
readonly handle: Handle;
|
|
33
|
+
readonly contractAddress: ChecksummedAddress;
|
|
34
|
+
}>;
|
|
35
|
+
readonly signedPermit: SignedDecryptionPermit;
|
|
36
|
+
readonly options?: RelayerUserDecryptOptions | RelayerDelegatedUserDecryptOptions | undefined;
|
|
37
|
+
};
|
|
60
38
|
|
|
61
39
|
type ReturnType = KmsSigncryptedShares;
|
|
62
40
|
|
|
@@ -64,19 +42,36 @@ type ReturnType = KmsSigncryptedShares;
|
|
|
64
42
|
|
|
65
43
|
const MAX_USER_DECRYPT_CONTRACT_ADDRESSES = 10;
|
|
66
44
|
|
|
45
|
+
/**
|
|
46
|
+
* Asserts that every address in {@link contractAddresses} is listed in the
|
|
47
|
+
* permit's `contractAddresses` (case-insensitive comparison).
|
|
48
|
+
*/
|
|
49
|
+
export function assertPermitV1IncludesContractAddresses(
|
|
50
|
+
permit: SignedDecryptionPermitV1,
|
|
51
|
+
contractAddresses: readonly string[],
|
|
52
|
+
): void {
|
|
53
|
+
const permitAddresses = permit.eip712.message.contractAddresses;
|
|
54
|
+
for (const address of contractAddresses) {
|
|
55
|
+
if (!permitAddresses.some((a) => a.toLowerCase() === address.toLowerCase())) {
|
|
56
|
+
throw Error(`contract address ${address} is not listed in the permit's contractAddresses`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
67
61
|
////////////////////////////////////////////////////////////////////////////////
|
|
68
|
-
//
|
|
62
|
+
// fetchKmsSigncryptedSharesV1
|
|
69
63
|
////////////////////////////////////////////////////////////////////////////////
|
|
70
64
|
|
|
71
|
-
export async function
|
|
72
|
-
const {
|
|
65
|
+
export async function fetchKmsSigncryptedSharesV1(context: Context, parameters: Parameters): Promise<ReturnType> {
|
|
66
|
+
const { options, pairs } = parameters;
|
|
67
|
+
const signedPermit = parameters.signedPermit as SignedDecryptionPermitV1;
|
|
73
68
|
|
|
74
69
|
// This helper must support base clients, where TKMS is not mandatory
|
|
75
70
|
// and tkmsVersion may not be initialized in the CoreFhevm instance yet.
|
|
76
71
|
const tkmsVersion = await resolveFhevmTkmsVersion(context);
|
|
77
72
|
|
|
78
73
|
// Check: every requested contractAddress is listed in the permit
|
|
79
|
-
|
|
74
|
+
assertPermitV1IncludesContractAddresses(
|
|
80
75
|
signedPermit,
|
|
81
76
|
pairs.map((p) => p.contractAddress),
|
|
82
77
|
);
|
|
@@ -124,7 +119,7 @@ export async function fetchKmsSigncryptedShares(context: Context, parameters: Pa
|
|
|
124
119
|
signedPermit.assertNotExpired();
|
|
125
120
|
|
|
126
121
|
// 7. Check: ACL permissions (user is signer or delegatorAddress)
|
|
127
|
-
if (signedPermit.
|
|
122
|
+
if (signedPermit.eip712.primaryType === 'DelegatedUserDecryptRequestVerification') {
|
|
128
123
|
await checkDelegation(context, {
|
|
129
124
|
aclAddress: context.chain.fhevm.contracts.acl.address as ChecksummedAddress,
|
|
130
125
|
delegate: signerAddress,
|
|
@@ -139,7 +134,7 @@ export async function fetchKmsSigncryptedShares(context: Context, parameters: Pa
|
|
|
139
134
|
});
|
|
140
135
|
}
|
|
141
136
|
|
|
142
|
-
// 8. Verify the
|
|
137
|
+
// 8. Verify the Eip712 signature
|
|
143
138
|
// Not required because a signedPermit is guaranteed to be verified.
|
|
144
139
|
|
|
145
140
|
// 9. Fetch `KmsSignersContext` on-chain (cached)
|
|
@@ -156,7 +151,7 @@ export async function fetchKmsSigncryptedShares(context: Context, parameters: Pa
|
|
|
156
151
|
// (e.g. a version change in the serialization scheme) will be rejected even
|
|
157
152
|
// though the context ID matches. Consider comparing the decoded `kmsContextId`
|
|
158
153
|
// instead of the raw `extraData` bytes.
|
|
159
|
-
const requestedKmsSignersContext: KmsSignersContext = await
|
|
154
|
+
const requestedKmsSignersContext: KmsSignersContext = await readCurrentKmsSignersContext(context, {
|
|
160
155
|
kmsVerifierAddress: context.chain.fhevm.contracts.kmsVerifier.address as ChecksummedAddress,
|
|
161
156
|
protocolConfigAddress: context.chain.fhevm.contracts.protocolConfig?.address as ChecksummedAddress | undefined,
|
|
162
157
|
});
|
|
@@ -170,12 +165,9 @@ export async function fetchKmsSigncryptedShares(context: Context, parameters: Pa
|
|
|
170
165
|
);
|
|
171
166
|
|
|
172
167
|
// 10. Fetch `KmsSigncryptedShares` from the relayer
|
|
173
|
-
// Safe casts: the discriminated union on parameters guarantees
|
|
174
|
-
// that options type matches signedPermit type, but TS can't prove
|
|
175
|
-
// it after destructuring (nested discriminant limitation).
|
|
176
168
|
let shares: readonly KmsSigncryptedShare[];
|
|
177
169
|
|
|
178
|
-
if (signedPermit.
|
|
170
|
+
if (signedPermit.eip712.primaryType === 'DelegatedUserDecryptRequestVerification') {
|
|
179
171
|
shares = await context.runtime.relayer.fetchDelegatedUserDecrypt(context, {
|
|
180
172
|
payload: {
|
|
181
173
|
handleContractPairs,
|
|
@@ -210,6 +202,31 @@ export async function fetchKmsSigncryptedShares(context: Context, parameters: Pa
|
|
|
210
202
|
tkmsVersion,
|
|
211
203
|
};
|
|
212
204
|
|
|
205
|
+
/*
|
|
206
|
+
|
|
207
|
+
----------------------------------------------------------------------------
|
|
208
|
+
KMS response-signature verification.
|
|
209
|
+
|
|
210
|
+
Each share's signature is an EIP-712 signature over the
|
|
211
|
+
`UserDecryptResponseVerification` struct (see `verifyKmsSigncryptedShare` and
|
|
212
|
+
gateway `Decryption.sol`). This check is already performed inside the tkms WASM
|
|
213
|
+
during reconstruction (verify=true); the call below is an equivalent JS-only
|
|
214
|
+
pass, kept for testing / debugging. To fully check, loop over every share.
|
|
215
|
+
----------------------------------------------------------------------------
|
|
216
|
+
|
|
217
|
+
for (const share of shares) {
|
|
218
|
+
await verifyKmsSigncryptedShare(
|
|
219
|
+
context,
|
|
220
|
+
{
|
|
221
|
+
metadata: sharesMetadata,
|
|
222
|
+
share,
|
|
223
|
+
transportPublicKey: signedPermit.transportPublicKey,
|
|
224
|
+
}
|
|
225
|
+
);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
*/
|
|
229
|
+
|
|
213
230
|
// 12. The returned KmsSigncryptedShares is guaranteed to be fully verified:
|
|
214
231
|
// uniform extraData across shares, valid extraData format, and consistency
|
|
215
232
|
// with the KmsSignersContext (see KmsSigncryptedSharesImpl invariants).
|