@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.
Files changed (670) hide show
  1. package/README.md +5 -5
  2. package/_cjs/core/_version.js +1 -1
  3. package/_cjs/core/actions/base/index.js +1 -17
  4. package/_cjs/core/actions/base/index.js.map +1 -1
  5. package/_cjs/core/actions/base/signDecryptionPermit.js +0 -3
  6. package/_cjs/core/actions/base/signDecryptionPermit.js.map +1 -1
  7. package/_cjs/core/actions/chain/index.js +1 -13
  8. package/_cjs/core/actions/chain/index.js.map +1 -1
  9. package/_cjs/core/actions/chain/parseSignedDecryptionPermit.js.map +1 -1
  10. package/_cjs/core/actions/chain/serializeSignedDecryptionPermit.js.map +1 -1
  11. package/_cjs/core/actions/decrypt/canDecryptValue.js.map +1 -1
  12. package/_cjs/core/actions/decrypt/canDecryptValues.js.map +1 -1
  13. package/_cjs/core/actions/decrypt/canDecryptValuesFromPairs.js.map +1 -1
  14. package/_cjs/core/actions/decrypt/decryptValue.js +1 -0
  15. package/_cjs/core/actions/decrypt/decryptValue.js.map +1 -1
  16. package/_cjs/core/actions/decrypt/decryptValues.js +2 -0
  17. package/_cjs/core/actions/decrypt/decryptValues.js.map +1 -1
  18. package/_cjs/core/actions/decrypt/decryptValuesFromPairs.js +2 -0
  19. package/_cjs/core/actions/decrypt/decryptValuesFromPairs.js.map +1 -1
  20. package/_cjs/core/actions/decrypt/index.js +1 -3
  21. package/_cjs/core/actions/decrypt/index.js.map +1 -1
  22. package/_cjs/core/actions/encrypt/encryptValue.js +2 -1
  23. package/_cjs/core/actions/encrypt/encryptValue.js.map +1 -1
  24. package/_cjs/core/actions/encrypt/encryptValues.js +2 -1
  25. package/_cjs/core/actions/encrypt/encryptValues.js.map +1 -1
  26. package/_cjs/core/actions/encrypt/generateZkProof.js +2 -1
  27. package/_cjs/core/actions/encrypt/generateZkProof.js.map +1 -1
  28. package/_cjs/core/actions/host/index.js +1 -9
  29. package/_cjs/core/actions/host/index.js.map +1 -1
  30. package/_cjs/core/actions/host/readKmsVerifierContractData.js +1 -1
  31. package/_cjs/core/actions/host/readKmsVerifierContractData.js.map +1 -1
  32. package/_cjs/core/base/cachedFetch.js +2 -1
  33. package/_cjs/core/base/cachedFetch.js.map +1 -1
  34. package/_cjs/core/base/uint.js +7 -0
  35. package/_cjs/core/base/uint.js.map +1 -1
  36. package/_cjs/core/clients/decorators/base.js +1 -1
  37. package/_cjs/core/clients/decorators/base.js.map +1 -1
  38. package/_cjs/core/handle/FheType.js +4 -0
  39. package/_cjs/core/handle/FheType.js.map +1 -1
  40. package/_cjs/core/host-contracts/HostContractVersion-p.js +4 -0
  41. package/_cjs/core/host-contracts/HostContractVersion-p.js.map +1 -1
  42. package/_cjs/core/host-contracts/KmsSignersContext-p.js +15 -25
  43. package/_cjs/core/host-contracts/KmsSignersContext-p.js.map +1 -1
  44. package/_cjs/core/host-contracts/canDecryptValuesFromPairs.js +4 -1
  45. package/_cjs/core/host-contracts/canDecryptValuesFromPairs.js.map +1 -1
  46. package/_cjs/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js +1 -1
  47. package/_cjs/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js.map +1 -1
  48. package/_cjs/core/host-contracts/getCurrentKmsContextAndEpoch-p.js +1 -1
  49. package/_cjs/core/host-contracts/getCurrentKmsContextAndEpoch-p.js.map +1 -1
  50. package/_cjs/core/host-contracts/getCurrentKmsContextId-p.js +1 -1
  51. package/_cjs/core/host-contracts/getCurrentKmsContextId-p.js.map +1 -1
  52. package/_cjs/core/host-contracts/getKmsContextSignersAndThreshold-p.js +1 -1
  53. package/_cjs/core/host-contracts/getKmsContextSignersAndThreshold-p.js.map +1 -1
  54. package/_cjs/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js +7 -6
  55. package/_cjs/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js.map +1 -1
  56. package/_cjs/core/host-contracts/readKmsSignersContext-p.js +54 -66
  57. package/_cjs/core/host-contracts/readKmsSignersContext-p.js.map +1 -1
  58. package/_cjs/core/kms/KmsSigncryptedShares-p.js +40 -4
  59. package/_cjs/core/kms/KmsSigncryptedShares-p.js.map +1 -1
  60. package/_cjs/core/kms/PublicDecryptionProof-p.js +8 -7
  61. package/_cjs/core/kms/PublicDecryptionProof-p.js.map +1 -1
  62. package/_cjs/core/kms/SignedDecryptionPermit-p.js +33 -199
  63. package/_cjs/core/kms/SignedDecryptionPermit-p.js.map +1 -1
  64. package/_cjs/core/kms/SignedDecryptionPermitV1-p.js +204 -0
  65. package/_cjs/core/kms/SignedDecryptionPermitV1-p.js.map +1 -0
  66. package/_cjs/core/kms/SignedDecryptionPermitV2-p.js +172 -0
  67. package/_cjs/core/kms/SignedDecryptionPermitV2-p.js.map +1 -0
  68. package/_cjs/core/kms/{createKmsDelegatedUserDecryptEip712.js → createKmsDelegatedUserDecryptEip712V1.js} +12 -13
  69. package/_cjs/core/kms/createKmsDelegatedUserDecryptEip712V1.js.map +1 -0
  70. package/_cjs/core/kms/{createKmsUserDecryptEip712.js → createKmsUserDecryptEip712V1.js} +22 -21
  71. package/_cjs/core/kms/createKmsUserDecryptEip712V1.js.map +1 -0
  72. package/_cjs/core/kms/createKmsUserDecryptEip712V2.js +4 -5
  73. package/_cjs/core/kms/createKmsUserDecryptEip712V2.js.map +1 -1
  74. package/_cjs/core/kms/decryptValuesFromPairs.js +18 -2
  75. package/_cjs/core/kms/decryptValuesFromPairs.js.map +1 -1
  76. package/_cjs/core/kms/{fetchKmsSigncryptedShares-p.js → fetchKmsSigncryptedSharesV1-p.js} +19 -9
  77. package/_cjs/core/kms/fetchKmsSigncryptedSharesV1-p.js.map +1 -0
  78. package/_cjs/core/kms/fetchKmsSigncryptedSharesV2-p.js +95 -0
  79. package/_cjs/core/kms/fetchKmsSigncryptedSharesV2-p.js.map +1 -0
  80. package/_cjs/core/kms/{kmsDelegatedUserDecryptEip712Types.js → kmsDelegatedUserDecryptEip712V1Types.js} +8 -8
  81. package/_cjs/core/kms/kmsDelegatedUserDecryptEip712V1Types.js.map +1 -0
  82. package/_cjs/core/kms/kmsExtraData-p.js +234 -0
  83. package/_cjs/core/kms/kmsExtraData-p.js.map +1 -0
  84. package/_cjs/core/kms/{kmsUserDecryptEip712Types.js → kmsUserDecryptEip712V1Types.js} +8 -8
  85. package/_cjs/core/kms/kmsUserDecryptEip712V1Types.js.map +1 -0
  86. package/_cjs/core/kms/kmsUserDecryptEip712V2Types.js.map +1 -1
  87. package/_cjs/core/kms/publicDecrypt.js +5 -5
  88. package/_cjs/core/kms/publicDecrypt.js.map +1 -1
  89. package/_cjs/core/kms/utils.js +0 -19
  90. package/_cjs/core/kms/utils.js.map +1 -1
  91. package/_cjs/core/kms/verifyKmsPublicDecryptEip712-p.js +6 -5
  92. package/_cjs/core/kms/verifyKmsPublicDecryptEip712-p.js.map +1 -1
  93. package/_cjs/core/modules/decrypt/mock.js +6 -6
  94. package/_cjs/core/modules/decrypt/mock.js.map +1 -1
  95. package/_cjs/core/modules/decrypt/module/api-p.js +12 -12
  96. package/_cjs/core/modules/decrypt/module/api-p.js.map +1 -1
  97. package/_cjs/core/modules/decrypt/module/init-p.js +6 -7
  98. package/_cjs/core/modules/decrypt/module/init-p.js.map +1 -1
  99. package/_cjs/core/modules/encrypt/module/init-p.js +12 -11
  100. package/_cjs/core/modules/encrypt/module/init-p.js.map +1 -1
  101. package/_cjs/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js +53 -3
  102. package/_cjs/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js.map +1 -1
  103. package/_cjs/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +67 -21
  104. package/_cjs/core/modules/relayer/cleartext/fetchDelegatedUserDecryptV1.js.map +1 -0
  105. package/_cjs/core/modules/relayer/cleartext/fetchPublicDecrypt.js +64 -7
  106. package/_cjs/core/modules/relayer/cleartext/fetchPublicDecrypt.js.map +1 -1
  107. package/_cjs/core/modules/relayer/cleartext/fetchUserDecrypt.js +9 -108
  108. package/_cjs/core/modules/relayer/cleartext/fetchUserDecrypt.js.map +1 -1
  109. package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV1.js +163 -0
  110. package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV1.js.map +1 -0
  111. package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV2.js +7 -0
  112. package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV2.js.map +1 -0
  113. package/_cjs/core/modules/relayer/cleartext/forgeFhevmV1.js +83 -0
  114. package/_cjs/core/modules/relayer/cleartext/forgeFhevmV1.js.map +1 -0
  115. package/_cjs/core/modules/relayer/cleartext/mock.js +2 -2
  116. package/_cjs/core/modules/relayer/cleartext/mock.js.map +1 -1
  117. package/_cjs/core/modules/relayer/cleartext/signers.js +14 -0
  118. package/_cjs/core/modules/relayer/cleartext/signers.js.map +1 -1
  119. package/_cjs/core/modules/relayer/module/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +1 -1
  120. package/_cjs/core/modules/relayer/module/fetchDelegatedUserDecryptV1.js.map +1 -0
  121. package/_cjs/core/modules/relayer/module/fetchPublicDecrypt.js +1 -1
  122. package/_cjs/core/modules/relayer/module/fetchUserDecrypt.js +11 -45
  123. package/_cjs/core/modules/relayer/module/fetchUserDecrypt.js.map +1 -1
  124. package/_cjs/core/modules/relayer/module/fetchUserDecryptV1.js +52 -0
  125. package/_cjs/core/modules/relayer/module/fetchUserDecryptV1.js.map +1 -0
  126. package/_cjs/core/modules/relayer/module/fetchUserDecryptV2.js +54 -0
  127. package/_cjs/core/modules/relayer/module/fetchUserDecryptV2.js.map +1 -0
  128. package/_cjs/core/modules/relayer/module/guards/RelayerResponseFailed.js +10 -2
  129. package/_cjs/core/modules/relayer/module/guards/RelayerResponseFailed.js.map +1 -1
  130. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js +5 -2
  131. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js.map +1 -1
  132. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js +2 -0
  133. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js.map +1 -1
  134. package/_cjs/core/modules/relayer/module/index.js +2 -2
  135. package/_cjs/core/modules/relayer/module/index.js.map +1 -1
  136. package/_cjs/core/runtime/HyperWasmSolver-p.js +1 -6
  137. package/_cjs/core/runtime/HyperWasmSolver-p.js.map +1 -1
  138. package/_cjs/core/utils-p/decrypt/{verifyKmsDelegatedUserDecryptEip712.js → verifyKmsDelegatedUserDecryptEip712V1.js} +5 -5
  139. package/_cjs/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712V1.js.map +1 -0
  140. package/_cjs/core/utils-p/decrypt/{verifyKmsUserDecryptEip712.js → verifyKmsUserDecryptEip712V1.js} +5 -5
  141. package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712V1.js.map +1 -0
  142. package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js +30 -0
  143. package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js.map +1 -0
  144. package/_cjs/ethers/internal/ethereum-ct.js +11 -0
  145. package/_cjs/ethers/internal/ethereum-ct.js.map +1 -1
  146. package/_cjs/ethers/internal/runtime-ct.js +9 -7
  147. package/_cjs/ethers/internal/runtime-ct.js.map +1 -1
  148. package/_cjs/viem/internal/ethereum-ct.js +8 -0
  149. package/_cjs/viem/internal/ethereum-ct.js.map +1 -1
  150. package/_cjs/viem/internal/runtime-ct.js +9 -7
  151. package/_cjs/viem/internal/runtime-ct.js.map +1 -1
  152. package/_cjs/wasm/tfhe/loadTfheLib.js.map +1 -1
  153. package/_cjs/wasm/tkms/loadKmsLib.js.map +1 -1
  154. package/_esm/core/_version.js +1 -1
  155. package/_esm/core/actions/base/index.js +0 -8
  156. package/_esm/core/actions/base/index.js.map +1 -1
  157. package/_esm/core/actions/base/signDecryptionPermit.js +0 -6
  158. package/_esm/core/actions/base/signDecryptionPermit.js.map +1 -1
  159. package/_esm/core/actions/chain/index.js +0 -6
  160. package/_esm/core/actions/chain/index.js.map +1 -1
  161. package/_esm/core/actions/chain/parseSignedDecryptionPermit.js.map +1 -1
  162. package/_esm/core/actions/chain/serializeSignedDecryptionPermit.js.map +1 -1
  163. package/_esm/core/actions/decrypt/canDecryptValue.js +40 -0
  164. package/_esm/core/actions/decrypt/canDecryptValue.js.map +1 -1
  165. package/_esm/core/actions/decrypt/canDecryptValues.js +1 -0
  166. package/_esm/core/actions/decrypt/canDecryptValues.js.map +1 -1
  167. package/_esm/core/actions/decrypt/canDecryptValuesFromPairs.js +1 -0
  168. package/_esm/core/actions/decrypt/canDecryptValuesFromPairs.js.map +1 -1
  169. package/_esm/core/actions/decrypt/decryptValue.js +1 -0
  170. package/_esm/core/actions/decrypt/decryptValue.js.map +1 -1
  171. package/_esm/core/actions/decrypt/decryptValues.js +2 -0
  172. package/_esm/core/actions/decrypt/decryptValues.js.map +1 -1
  173. package/_esm/core/actions/decrypt/decryptValuesFromPairs.js +2 -0
  174. package/_esm/core/actions/decrypt/decryptValuesFromPairs.js.map +1 -1
  175. package/_esm/core/actions/decrypt/index.js +0 -1
  176. package/_esm/core/actions/decrypt/index.js.map +1 -1
  177. package/_esm/core/actions/encrypt/encryptValue.js +2 -1
  178. package/_esm/core/actions/encrypt/encryptValue.js.map +1 -1
  179. package/_esm/core/actions/encrypt/encryptValues.js +2 -1
  180. package/_esm/core/actions/encrypt/encryptValues.js.map +1 -1
  181. package/_esm/core/actions/encrypt/generateZkProof.js +2 -1
  182. package/_esm/core/actions/encrypt/generateZkProof.js.map +1 -1
  183. package/_esm/core/actions/host/index.js +0 -4
  184. package/_esm/core/actions/host/index.js.map +1 -1
  185. package/_esm/core/actions/host/readKmsVerifierContractData.js +2 -2
  186. package/_esm/core/actions/host/readKmsVerifierContractData.js.map +1 -1
  187. package/_esm/core/base/cachedFetch.js +1 -0
  188. package/_esm/core/base/cachedFetch.js.map +1 -1
  189. package/_esm/core/base/uint.js +7 -0
  190. package/_esm/core/base/uint.js.map +1 -1
  191. package/_esm/core/clients/decorators/base.js +2 -4
  192. package/_esm/core/clients/decorators/base.js.map +1 -1
  193. package/_esm/core/coprocessor/coprocessorEip712Types.js +2 -2
  194. package/_esm/core/handle/FheType.js +10 -0
  195. package/_esm/core/handle/FheType.js.map +1 -1
  196. package/_esm/core/host-contracts/HostContractVersion-p.js +6 -0
  197. package/_esm/core/host-contracts/HostContractVersion-p.js.map +1 -1
  198. package/_esm/core/host-contracts/KmsSignersContext-p.js +16 -25
  199. package/_esm/core/host-contracts/KmsSignersContext-p.js.map +1 -1
  200. package/_esm/core/host-contracts/canDecryptValuesFromPairs.js +5 -2
  201. package/_esm/core/host-contracts/canDecryptValuesFromPairs.js.map +1 -1
  202. package/_esm/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js +2 -2
  203. package/_esm/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js.map +1 -1
  204. package/_esm/core/host-contracts/getCurrentKmsContextAndEpoch-p.js +2 -2
  205. package/_esm/core/host-contracts/getCurrentKmsContextAndEpoch-p.js.map +1 -1
  206. package/_esm/core/host-contracts/getCurrentKmsContextId-p.js +2 -2
  207. package/_esm/core/host-contracts/getCurrentKmsContextId-p.js.map +1 -1
  208. package/_esm/core/host-contracts/getKmsContextSignersAndThreshold-p.js +2 -2
  209. package/_esm/core/host-contracts/getKmsContextSignersAndThreshold-p.js.map +1 -1
  210. package/_esm/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js +6 -5
  211. package/_esm/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js.map +1 -1
  212. package/_esm/core/host-contracts/readKmsSignersContext-p.js +132 -68
  213. package/_esm/core/host-contracts/readKmsSignersContext-p.js.map +1 -1
  214. package/_esm/core/kms/KmsSigncryptedShares-p.js +70 -4
  215. package/_esm/core/kms/KmsSigncryptedShares-p.js.map +1 -1
  216. package/_esm/core/kms/PublicDecryptionProof-p.js +8 -7
  217. package/_esm/core/kms/PublicDecryptionProof-p.js.map +1 -1
  218. package/_esm/core/kms/SignedDecryptionPermit-p.js +48 -245
  219. package/_esm/core/kms/SignedDecryptionPermit-p.js.map +1 -1
  220. package/_esm/core/kms/SignedDecryptionPermitV1-p.js +228 -0
  221. package/_esm/core/kms/SignedDecryptionPermitV1-p.js.map +1 -0
  222. package/_esm/core/kms/SignedDecryptionPermitV2-p.js +192 -0
  223. package/_esm/core/kms/SignedDecryptionPermitV2-p.js.map +1 -0
  224. package/_esm/core/kms/{createKmsDelegatedUserDecryptEip712.js → createKmsDelegatedUserDecryptEip712V1.js} +11 -12
  225. package/_esm/core/kms/createKmsDelegatedUserDecryptEip712V1.js.map +1 -0
  226. package/_esm/core/kms/createKmsPublicDecryptEip712.js +1 -1
  227. package/_esm/core/kms/{createKmsUserDecryptEip712.js → createKmsUserDecryptEip712V1.js} +23 -22
  228. package/_esm/core/kms/createKmsUserDecryptEip712V1.js.map +1 -0
  229. package/_esm/core/kms/createKmsUserDecryptEip712V2.js +4 -5
  230. package/_esm/core/kms/createKmsUserDecryptEip712V2.js.map +1 -1
  231. package/_esm/core/kms/decryptValuesFromPairs.js +18 -2
  232. package/_esm/core/kms/decryptValuesFromPairs.js.map +1 -1
  233. package/_esm/core/kms/{fetchKmsSigncryptedShares-p.js → fetchKmsSigncryptedSharesV1-p.js} +49 -15
  234. package/_esm/core/kms/fetchKmsSigncryptedSharesV1-p.js.map +1 -0
  235. package/_esm/core/kms/fetchKmsSigncryptedSharesV2-p.js +119 -0
  236. package/_esm/core/kms/fetchKmsSigncryptedSharesV2-p.js.map +1 -0
  237. package/_esm/core/kms/{kmsDelegatedUserDecryptEip712Types.js → kmsDelegatedUserDecryptEip712V1Types.js} +9 -8
  238. package/_esm/core/kms/kmsDelegatedUserDecryptEip712V1Types.js.map +1 -0
  239. package/_esm/core/kms/kmsExtraData-p.js +298 -0
  240. package/_esm/core/kms/kmsExtraData-p.js.map +1 -0
  241. package/_esm/core/kms/kmsPublicDecryptEip712Types.js +1 -1
  242. package/_esm/core/kms/{kmsUserDecryptEip712Types.js → kmsUserDecryptEip712V1Types.js} +9 -8
  243. package/_esm/core/kms/kmsUserDecryptEip712V1Types.js.map +1 -0
  244. package/_esm/core/kms/kmsUserDecryptEip712V2Types.js +2 -1
  245. package/_esm/core/kms/kmsUserDecryptEip712V2Types.js.map +1 -1
  246. package/_esm/core/kms/publicDecrypt.js +6 -6
  247. package/_esm/core/kms/publicDecrypt.js.map +1 -1
  248. package/_esm/core/kms/utils.js +0 -18
  249. package/_esm/core/kms/utils.js.map +1 -1
  250. package/_esm/core/kms/verifyKmsPublicDecryptEip712-p.js +7 -6
  251. package/_esm/core/kms/verifyKmsPublicDecryptEip712-p.js.map +1 -1
  252. package/_esm/core/modules/decrypt/mock.js +6 -6
  253. package/_esm/core/modules/decrypt/mock.js.map +1 -1
  254. package/_esm/core/modules/decrypt/module/api-p.js +13 -13
  255. package/_esm/core/modules/decrypt/module/api-p.js.map +1 -1
  256. package/_esm/core/modules/decrypt/module/init-p.js +7 -7
  257. package/_esm/core/modules/decrypt/module/init-p.js.map +1 -1
  258. package/_esm/core/modules/encrypt/module/init-p.js +13 -11
  259. package/_esm/core/modules/encrypt/module/init-p.js.map +1 -1
  260. package/_esm/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js +69 -12
  261. package/_esm/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js.map +1 -1
  262. package/_esm/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +76 -22
  263. package/_esm/core/modules/relayer/cleartext/fetchDelegatedUserDecryptV1.js.map +1 -0
  264. package/_esm/core/modules/relayer/cleartext/fetchPublicDecrypt.js +80 -7
  265. package/_esm/core/modules/relayer/cleartext/fetchPublicDecrypt.js.map +1 -1
  266. package/_esm/core/modules/relayer/cleartext/fetchUserDecrypt.js +13 -114
  267. package/_esm/core/modules/relayer/cleartext/fetchUserDecrypt.js.map +1 -1
  268. package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV1.js +173 -0
  269. package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV1.js.map +1 -0
  270. package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV2.js +6 -0
  271. package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV2.js.map +1 -0
  272. package/_esm/core/modules/relayer/cleartext/forgeFhevmV1.js +140 -0
  273. package/_esm/core/modules/relayer/cleartext/forgeFhevmV1.js.map +1 -0
  274. package/_esm/core/modules/relayer/cleartext/mock.js +1 -1
  275. package/_esm/core/modules/relayer/cleartext/mock.js.map +1 -1
  276. package/_esm/core/modules/relayer/cleartext/signers.js +26 -0
  277. package/_esm/core/modules/relayer/cleartext/signers.js.map +1 -1
  278. package/_esm/core/modules/relayer/module/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +1 -1
  279. package/_esm/core/modules/relayer/module/fetchDelegatedUserDecryptV1.js.map +1 -0
  280. package/_esm/core/modules/relayer/module/fetchPublicDecrypt.js +1 -1
  281. package/_esm/core/modules/relayer/module/fetchUserDecrypt.js +11 -46
  282. package/_esm/core/modules/relayer/module/fetchUserDecrypt.js.map +1 -1
  283. package/_esm/core/modules/relayer/module/fetchUserDecryptV1.js +53 -0
  284. package/_esm/core/modules/relayer/module/fetchUserDecryptV1.js.map +1 -0
  285. package/_esm/core/modules/relayer/module/fetchUserDecryptV2.js +56 -0
  286. package/_esm/core/modules/relayer/module/fetchUserDecryptV2.js.map +1 -0
  287. package/_esm/core/modules/relayer/module/guards/RelayerResponseFailed.js +10 -2
  288. package/_esm/core/modules/relayer/module/guards/RelayerResponseFailed.js.map +1 -1
  289. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js +6 -3
  290. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js.map +1 -1
  291. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js +2 -0
  292. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js.map +1 -1
  293. package/_esm/core/modules/relayer/module/index.js +1 -1
  294. package/_esm/core/modules/relayer/module/index.js.map +1 -1
  295. package/_esm/core/runtime/HyperWasmSolver-p.js +1 -6
  296. package/_esm/core/runtime/HyperWasmSolver-p.js.map +1 -1
  297. package/_esm/core/utils-p/decrypt/{verifyKmsDelegatedUserDecryptEip712.js → verifyKmsDelegatedUserDecryptEip712V1.js} +5 -5
  298. package/_esm/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712V1.js.map +1 -0
  299. package/_esm/core/utils-p/decrypt/{verifyKmsUserDecryptEip712.js → verifyKmsUserDecryptEip712V1.js} +5 -5
  300. package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712V1.js.map +1 -0
  301. package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js +27 -0
  302. package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js.map +1 -0
  303. package/_esm/ethers/internal/ethereum-ct.js +12 -1
  304. package/_esm/ethers/internal/ethereum-ct.js.map +1 -1
  305. package/_esm/ethers/internal/runtime-ct.js +9 -7
  306. package/_esm/ethers/internal/runtime-ct.js.map +1 -1
  307. package/_esm/viem/internal/ethereum-ct.js +10 -2
  308. package/_esm/viem/internal/ethereum-ct.js.map +1 -1
  309. package/_esm/viem/internal/runtime-ct.js +9 -7
  310. package/_esm/viem/internal/runtime-ct.js.map +1 -1
  311. package/_types/core/actions/base/index.d.ts +0 -8
  312. package/_types/core/actions/base/index.d.ts.map +1 -1
  313. package/_types/core/actions/base/signDecryptionPermit.d.ts +4 -5
  314. package/_types/core/actions/base/signDecryptionPermit.d.ts.map +1 -1
  315. package/_types/core/actions/chain/index.d.ts +1 -7
  316. package/_types/core/actions/chain/index.d.ts.map +1 -1
  317. package/_types/core/actions/chain/parseSignedDecryptionPermit.d.ts +1 -0
  318. package/_types/core/actions/chain/parseSignedDecryptionPermit.d.ts.map +1 -1
  319. package/_types/core/actions/chain/serializeSignedDecryptionPermit.d.ts +3 -2
  320. package/_types/core/actions/chain/serializeSignedDecryptionPermit.d.ts.map +1 -1
  321. package/_types/core/actions/decrypt/canDecryptValue.d.ts +3 -4
  322. package/_types/core/actions/decrypt/canDecryptValue.d.ts.map +1 -1
  323. package/_types/core/actions/decrypt/canDecryptValues.d.ts +3 -4
  324. package/_types/core/actions/decrypt/canDecryptValues.d.ts.map +1 -1
  325. package/_types/core/actions/decrypt/canDecryptValuesFromPairs.d.ts +3 -4
  326. package/_types/core/actions/decrypt/canDecryptValuesFromPairs.d.ts.map +1 -1
  327. package/_types/core/actions/decrypt/decryptValue.d.ts.map +1 -1
  328. package/_types/core/actions/decrypt/decryptValues.d.ts.map +1 -1
  329. package/_types/core/actions/decrypt/decryptValuesFromPairs.d.ts.map +1 -1
  330. package/_types/core/actions/decrypt/index.d.ts +0 -1
  331. package/_types/core/actions/decrypt/index.d.ts.map +1 -1
  332. package/_types/core/actions/encrypt/encryptValue.d.ts.map +1 -1
  333. package/_types/core/actions/encrypt/encryptValues.d.ts.map +1 -1
  334. package/_types/core/actions/encrypt/generateZkProof.d.ts.map +1 -1
  335. package/_types/core/actions/host/index.d.ts +0 -4
  336. package/_types/core/actions/host/index.d.ts.map +1 -1
  337. package/_types/core/base/cachedFetch.d.ts +1 -0
  338. package/_types/core/base/cachedFetch.d.ts.map +1 -1
  339. package/_types/core/base/uint.d.ts +2 -1
  340. package/_types/core/base/uint.d.ts.map +1 -1
  341. package/_types/core/clients/decorators/base.d.ts +12 -23
  342. package/_types/core/clients/decorators/base.d.ts.map +1 -1
  343. package/_types/core/handle/FheType.d.ts +8 -0
  344. package/_types/core/handle/FheType.d.ts.map +1 -1
  345. package/_types/core/host-contracts/HostContractVersion-p.d.ts +8 -0
  346. package/_types/core/host-contracts/HostContractVersion-p.d.ts.map +1 -1
  347. package/_types/core/host-contracts/KmsSignersContext-p.d.ts +3 -2
  348. package/_types/core/host-contracts/KmsSignersContext-p.d.ts.map +1 -1
  349. package/_types/core/host-contracts/canDecryptValuesFromPairs.d.ts +2 -2
  350. package/_types/core/host-contracts/canDecryptValuesFromPairs.d.ts.map +1 -1
  351. package/_types/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.d.ts +3 -2
  352. package/_types/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.d.ts.map +1 -1
  353. package/_types/core/host-contracts/readKmsSignersContext-p.d.ts +43 -26
  354. package/_types/core/host-contracts/readKmsSignersContext-p.d.ts.map +1 -1
  355. package/_types/core/kms/KmsSigncryptedShares-p.d.ts +18 -0
  356. package/_types/core/kms/KmsSigncryptedShares-p.d.ts.map +1 -1
  357. package/_types/core/kms/PublicDecryptionProof-p.d.ts +1 -1
  358. package/_types/core/kms/PublicDecryptionProof-p.d.ts.map +1 -1
  359. package/_types/core/kms/SignedDecryptionPermit-p.d.ts +15 -29
  360. package/_types/core/kms/SignedDecryptionPermit-p.d.ts.map +1 -1
  361. package/_types/core/kms/SignedDecryptionPermitV1-p.d.ts +7 -0
  362. package/_types/core/kms/SignedDecryptionPermitV1-p.d.ts.map +1 -0
  363. package/_types/core/kms/SignedDecryptionPermitV2-p.d.ts +7 -0
  364. package/_types/core/kms/SignedDecryptionPermitV2-p.d.ts.map +1 -0
  365. package/_types/core/kms/createKmsDelegatedUserDecryptEip712V1.d.ts +16 -0
  366. package/_types/core/kms/createKmsDelegatedUserDecryptEip712V1.d.ts.map +1 -0
  367. package/_types/core/kms/createKmsUserDecryptEip712V1.d.ts +27 -0
  368. package/_types/core/kms/createKmsUserDecryptEip712V1.d.ts.map +1 -0
  369. package/_types/core/kms/createKmsUserDecryptEip712V2.d.ts +3 -2
  370. package/_types/core/kms/createKmsUserDecryptEip712V2.d.ts.map +1 -1
  371. package/_types/core/kms/decryptValuesFromPairs.d.ts +4 -11
  372. package/_types/core/kms/decryptValuesFromPairs.d.ts.map +1 -1
  373. package/_types/core/kms/{fetchKmsSigncryptedShares-p.d.ts → fetchKmsSigncryptedSharesV1-p.d.ts} +10 -12
  374. package/_types/core/kms/fetchKmsSigncryptedSharesV1-p.d.ts.map +1 -0
  375. package/_types/core/kms/fetchKmsSigncryptedSharesV2-p.d.ts +28 -0
  376. package/_types/core/kms/fetchKmsSigncryptedSharesV2-p.d.ts.map +1 -0
  377. package/_types/core/kms/kmsDelegatedUserDecryptEip712V1Types.d.ts +3 -0
  378. package/_types/core/kms/kmsDelegatedUserDecryptEip712V1Types.d.ts.map +1 -0
  379. package/_types/core/kms/kmsExtraData-p.d.ts +66 -0
  380. package/_types/core/kms/kmsExtraData-p.d.ts.map +1 -0
  381. package/_types/core/kms/kmsUserDecryptEip712V1Types.d.ts +3 -0
  382. package/_types/core/kms/kmsUserDecryptEip712V1Types.d.ts.map +1 -0
  383. package/_types/core/kms/kmsUserDecryptEip712V2Types.d.ts.map +1 -1
  384. package/_types/core/kms/publicDecrypt.d.ts.map +1 -1
  385. package/_types/core/kms/utils.d.ts +0 -4
  386. package/_types/core/kms/utils.d.ts.map +1 -1
  387. package/_types/core/kms/verifyKmsPublicDecryptEip712-p.d.ts +1 -1
  388. package/_types/core/kms/verifyKmsPublicDecryptEip712-p.d.ts.map +1 -1
  389. package/_types/core/modules/encrypt/module/init-p.d.ts.map +1 -1
  390. package/_types/core/modules/ethereum/types-ct.d.ts +20 -2
  391. package/_types/core/modules/ethereum/types-ct.d.ts.map +1 -1
  392. package/_types/core/modules/relayer/cleartext/fetchCoprocessorSignatures.d.ts.map +1 -1
  393. package/_types/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.d.ts → fetchDelegatedUserDecryptV1.d.ts} +1 -1
  394. package/_types/core/modules/relayer/cleartext/fetchDelegatedUserDecryptV1.d.ts.map +1 -0
  395. package/_types/core/modules/relayer/cleartext/fetchPublicDecrypt.d.ts.map +1 -1
  396. package/_types/core/modules/relayer/cleartext/fetchUserDecrypt.d.ts.map +1 -1
  397. package/_types/core/modules/relayer/cleartext/fetchUserDecryptV1.d.ts +3 -0
  398. package/_types/core/modules/relayer/cleartext/fetchUserDecryptV1.d.ts.map +1 -0
  399. package/_types/core/modules/relayer/cleartext/fetchUserDecryptV2.d.ts +3 -0
  400. package/_types/core/modules/relayer/cleartext/fetchUserDecryptV2.d.ts.map +1 -0
  401. package/_types/core/modules/relayer/cleartext/forgeFhevmV1.d.ts +29 -0
  402. package/_types/core/modules/relayer/cleartext/forgeFhevmV1.d.ts.map +1 -0
  403. package/_types/core/modules/relayer/cleartext/signers.d.ts +1 -0
  404. package/_types/core/modules/relayer/cleartext/signers.d.ts.map +1 -1
  405. package/_types/core/modules/relayer/module/{fetchDelegatedUserDecrypt.d.ts → fetchDelegatedUserDecryptV1.d.ts} +1 -1
  406. package/_types/core/modules/relayer/module/fetchDelegatedUserDecryptV1.d.ts.map +1 -0
  407. package/_types/core/modules/relayer/module/fetchUserDecrypt.d.ts.map +1 -1
  408. package/_types/core/modules/relayer/module/fetchUserDecryptV1.d.ts +3 -0
  409. package/_types/core/modules/relayer/module/fetchUserDecryptV1.d.ts.map +1 -0
  410. package/_types/core/modules/relayer/module/fetchUserDecryptV2.d.ts +3 -0
  411. package/_types/core/modules/relayer/module/fetchUserDecryptV2.d.ts.map +1 -0
  412. package/_types/core/modules/relayer/module/guards/RelayerResponseFailed.d.ts.map +1 -1
  413. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.d.ts +1 -1
  414. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.d.ts.map +1 -1
  415. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError503.d.ts.map +1 -1
  416. package/_types/core/modules/relayer/types.d.ts +18 -5
  417. package/_types/core/modules/relayer/types.d.ts.map +1 -1
  418. package/_types/core/types/kms-p.d.ts +7 -1
  419. package/_types/core/types/kms-p.d.ts.map +1 -1
  420. package/_types/core/types/kms.d.ts +18 -19
  421. package/_types/core/types/kms.d.ts.map +1 -1
  422. package/_types/core/types/logger.d.ts +3 -3
  423. package/_types/core/types/logger.d.ts.map +1 -1
  424. package/_types/core/types/record-p.d.ts +2 -1
  425. package/_types/core/types/record-p.d.ts.map +1 -1
  426. package/_types/core/types/relayer-p.d.ts +27 -5
  427. package/_types/core/types/relayer-p.d.ts.map +1 -1
  428. package/_types/core/types/signedDecryptionPermit.d.ts +37 -26
  429. package/_types/core/types/signedDecryptionPermit.d.ts.map +1 -1
  430. package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712V1.d.ts +14 -0
  431. package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712V1.d.ts.map +1 -0
  432. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V1.d.ts +14 -0
  433. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V1.d.ts.map +1 -0
  434. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.d.ts +14 -0
  435. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.d.ts.map +1 -0
  436. package/_types/core/utils-p/runtime/recoverSigners.d.ts +2 -2
  437. package/_types/ethers/internal/ethereum-ct.d.ts.map +1 -1
  438. package/_types/ethers/internal/runtime-ct.d.ts.map +1 -1
  439. package/_types/viem/internal/ethereum-ct.d.ts.map +1 -1
  440. package/_types/viem/internal/runtime-ct.d.ts.map +1 -1
  441. package/core/_version.ts +1 -1
  442. package/core/actions/base/index.ts +0 -42
  443. package/core/actions/base/signDecryptionPermit.ts +3 -31
  444. package/core/actions/chain/index.ts +0 -28
  445. package/core/actions/chain/parseSignedDecryptionPermit.ts +1 -0
  446. package/core/actions/chain/serializeSignedDecryptionPermit.ts +3 -2
  447. package/core/actions/decrypt/canDecryptValue.ts +2 -16
  448. package/core/actions/decrypt/canDecryptValues.ts +2 -16
  449. package/core/actions/decrypt/canDecryptValuesFromPairs.ts +2 -16
  450. package/core/actions/decrypt/decryptValue.ts +2 -1
  451. package/core/actions/decrypt/decryptValues.ts +3 -1
  452. package/core/actions/decrypt/decryptValuesFromPairs.ts +3 -1
  453. package/core/actions/decrypt/index.ts +0 -6
  454. package/core/actions/encrypt/encryptValue.ts +4 -1
  455. package/core/actions/encrypt/encryptValues.ts +5 -1
  456. package/core/actions/encrypt/generateZkProof.ts +2 -1
  457. package/core/actions/host/index.ts +0 -20
  458. package/core/actions/host/readKmsVerifierContractData.ts +2 -2
  459. package/core/base/cachedFetch.ts +1 -0
  460. package/core/base/uint.ts +18 -1
  461. package/core/clients/decorators/base.ts +13 -37
  462. package/core/coprocessor/coprocessorEip712Types.ts +2 -2
  463. package/core/handle/FheType.ts +11 -0
  464. package/core/host-contracts/HostContractVersion-p.ts +12 -0
  465. package/core/host-contracts/KmsSignersContext-p.ts +29 -36
  466. package/core/host-contracts/canDecryptValuesFromPairs.ts +7 -7
  467. package/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.ts +2 -2
  468. package/core/host-contracts/getCurrentKmsContextAndEpoch-p.ts +2 -2
  469. package/core/host-contracts/getCurrentKmsContextId-p.ts +2 -2
  470. package/core/host-contracts/getKmsContextSignersAndThreshold-p.ts +3 -2
  471. package/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.ts +10 -7
  472. package/core/host-contracts/readKmsSignersContext-p.ts +156 -115
  473. package/core/kms/KmsSigncryptedShares-p.ts +87 -4
  474. package/core/kms/PublicDecryptionProof-p.ts +11 -9
  475. package/core/kms/SignedDecryptionPermit-p.ts +67 -357
  476. package/core/kms/SignedDecryptionPermitV1-p.ts +308 -0
  477. package/core/kms/SignedDecryptionPermitV2-p.ts +275 -0
  478. package/core/kms/{createKmsDelegatedUserDecryptEip712.ts → createKmsDelegatedUserDecryptEip712V1.ts} +21 -21
  479. package/core/kms/createKmsPublicDecryptEip712.ts +1 -1
  480. package/core/kms/{createKmsUserDecryptEip712.ts → createKmsUserDecryptEip712V1.ts} +35 -31
  481. package/core/kms/createKmsUserDecryptEip712V2.ts +7 -7
  482. package/core/kms/decryptValuesFromPairs.ts +34 -22
  483. package/core/kms/{fetchKmsSigncryptedShares-p.ts → fetchKmsSigncryptedSharesV1-p.ts} +62 -45
  484. package/core/kms/fetchKmsSigncryptedSharesV2-p.ts +176 -0
  485. package/core/kms/{kmsDelegatedUserDecryptEip712Types.ts → kmsDelegatedUserDecryptEip712V1Types.ts} +9 -8
  486. package/core/kms/kmsExtraData-p.ts +374 -0
  487. package/core/kms/kmsPublicDecryptEip712Types.ts +1 -1
  488. package/core/kms/{kmsUserDecryptEip712Types.ts → kmsUserDecryptEip712V1Types.ts} +9 -8
  489. package/core/kms/kmsUserDecryptEip712V2Types.ts +2 -1
  490. package/core/kms/publicDecrypt.ts +10 -9
  491. package/core/kms/utils.ts +0 -32
  492. package/core/kms/verifyKmsPublicDecryptEip712-p.ts +10 -8
  493. package/core/modules/decrypt/mock.ts +6 -6
  494. package/core/modules/decrypt/module/api-p.ts +15 -15
  495. package/core/modules/decrypt/module/init-p.ts +7 -7
  496. package/core/modules/encrypt/module/init-p.ts +16 -11
  497. package/core/modules/ethereum/types-ct.ts +25 -2
  498. package/core/modules/relayer/cleartext/fetchCoprocessorSignatures.ts +98 -15
  499. package/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.ts → fetchDelegatedUserDecryptV1.ts} +115 -27
  500. package/core/modules/relayer/cleartext/fetchPublicDecrypt.ts +115 -9
  501. package/core/modules/relayer/cleartext/fetchUserDecrypt.ts +23 -131
  502. package/core/modules/relayer/cleartext/fetchUserDecryptV1.ts +229 -0
  503. package/core/modules/relayer/cleartext/fetchUserDecryptV2.ts +11 -0
  504. package/core/modules/relayer/cleartext/forgeFhevmV1.ts +185 -0
  505. package/core/modules/relayer/cleartext/mock.ts +1 -1
  506. package/core/modules/relayer/cleartext/signers.ts +35 -0
  507. package/core/modules/relayer/module/fetchPublicDecrypt.ts +1 -1
  508. package/core/modules/relayer/module/fetchUserDecrypt.ts +20 -56
  509. package/core/modules/relayer/module/fetchUserDecryptV1.ts +69 -0
  510. package/core/modules/relayer/module/fetchUserDecryptV2.ts +71 -0
  511. package/core/modules/relayer/module/guards/RelayerResponseFailed.ts +10 -2
  512. package/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.ts +6 -3
  513. package/core/modules/relayer/module/guards/api-errors/RelayerApiError503.ts +2 -0
  514. package/core/modules/relayer/module/index.ts +1 -1
  515. package/core/modules/relayer/types.ts +24 -5
  516. package/core/runtime/HyperWasmSolver-p.ts +1 -5
  517. package/core/types/kms-p.ts +16 -1
  518. package/core/types/kms.ts +40 -28
  519. package/core/types/logger.ts +3 -3
  520. package/core/types/record-p.ts +2 -1
  521. package/core/types/relayer-p.ts +48 -5
  522. package/core/types/signedDecryptionPermit.ts +47 -26
  523. package/core/utils-p/decrypt/{verifyKmsDelegatedUserDecryptEip712.ts → verifyKmsDelegatedUserDecryptEip712V1.ts} +9 -9
  524. package/core/utils-p/decrypt/{verifyKmsUserDecryptEip712.ts → verifyKmsUserDecryptEip712V1.ts} +9 -9
  525. package/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.ts +43 -0
  526. package/core/utils-p/runtime/recoverSigners.ts +2 -2
  527. package/ethers/internal/ethereum-ct.ts +15 -1
  528. package/ethers/internal/runtime-ct.ts +9 -7
  529. package/package.json +1 -1
  530. package/viem/internal/ethereum-ct.ts +14 -2
  531. package/viem/internal/runtime-ct.ts +9 -7
  532. package/_cjs/core/actions/base/createVerifiedInputProofFromRawBytes.js +0 -10
  533. package/_cjs/core/actions/base/createVerifiedInputProofFromRawBytes.js.map +0 -1
  534. package/_cjs/core/actions/base/fetchKmsSigncryptedShares.js +0 -19
  535. package/_cjs/core/actions/base/fetchKmsSigncryptedShares.js.map +0 -1
  536. package/_cjs/core/actions/base/fetchVerifiedInputProof.js +0 -11
  537. package/_cjs/core/actions/base/fetchVerifiedInputProof.js.map +0 -1
  538. package/_cjs/core/actions/base/readKmsSignersContext.js +0 -11
  539. package/_cjs/core/actions/base/readKmsSignersContext.js.map +0 -1
  540. package/_cjs/core/actions/base/verifyHandlesCoprocessorSignatures.js +0 -31
  541. package/_cjs/core/actions/base/verifyHandlesCoprocessorSignatures.js.map +0 -1
  542. package/_cjs/core/actions/base/verifyInputProof.js +0 -24
  543. package/_cjs/core/actions/base/verifyInputProof.js.map +0 -1
  544. package/_cjs/core/actions/base/verifyZkProofCoprocessorSignatures.js +0 -17
  545. package/_cjs/core/actions/base/verifyZkProofCoprocessorSignatures.js.map +0 -1
  546. package/_cjs/core/actions/chain/createCoprocessorEip712Domain.js +0 -11
  547. package/_cjs/core/actions/chain/createCoprocessorEip712Domain.js.map +0 -1
  548. package/_cjs/core/actions/chain/createKmsDelegatedUserDecryptEip712.js +0 -17
  549. package/_cjs/core/actions/chain/createKmsDelegatedUserDecryptEip712.js.map +0 -1
  550. package/_cjs/core/actions/chain/createKmsEip712Domain.js +0 -11
  551. package/_cjs/core/actions/chain/createKmsEip712Domain.js.map +0 -1
  552. package/_cjs/core/actions/chain/createKmsUserDecryptEip712.js +0 -16
  553. package/_cjs/core/actions/chain/createKmsUserDecryptEip712.js.map +0 -1
  554. package/_cjs/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js +0 -8
  555. package/_cjs/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js.map +0 -1
  556. package/_cjs/core/actions/chain/verifyKmsUserDecryptEip712.js +0 -8
  557. package/_cjs/core/actions/chain/verifyKmsUserDecryptEip712.js.map +0 -1
  558. package/_cjs/core/actions/decrypt/decryptKmsSigncryptedShares.js +0 -13
  559. package/_cjs/core/actions/decrypt/decryptKmsSigncryptedShares.js.map +0 -1
  560. package/_cjs/core/kms/createKmsDelegatedUserDecryptEip712.js.map +0 -1
  561. package/_cjs/core/kms/createKmsUserDecryptEip712.js.map +0 -1
  562. package/_cjs/core/kms/fetchKmsSigncryptedShares-p.js.map +0 -1
  563. package/_cjs/core/kms/kmsDelegatedUserDecryptEip712Types.js.map +0 -1
  564. package/_cjs/core/kms/kmsExtraData.js +0 -82
  565. package/_cjs/core/kms/kmsExtraData.js.map +0 -1
  566. package/_cjs/core/kms/kmsUserDecryptEip712Types.js.map +0 -1
  567. package/_cjs/core/modules/relayer/cleartext/fetchDelegatedUserDecrypt.js.map +0 -1
  568. package/_cjs/core/modules/relayer/module/fetchDelegatedUserDecrypt.js.map +0 -1
  569. package/_cjs/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.js.map +0 -1
  570. package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712.js.map +0 -1
  571. package/_esm/core/actions/base/createVerifiedInputProofFromRawBytes.js +0 -7
  572. package/_esm/core/actions/base/createVerifiedInputProofFromRawBytes.js.map +0 -1
  573. package/_esm/core/actions/base/fetchKmsSigncryptedShares.js +0 -17
  574. package/_esm/core/actions/base/fetchKmsSigncryptedShares.js.map +0 -1
  575. package/_esm/core/actions/base/fetchVerifiedInputProof.js +0 -8
  576. package/_esm/core/actions/base/fetchVerifiedInputProof.js.map +0 -1
  577. package/_esm/core/actions/base/readKmsSignersContext.js +0 -10
  578. package/_esm/core/actions/base/readKmsSignersContext.js.map +0 -1
  579. package/_esm/core/actions/base/verifyHandlesCoprocessorSignatures.js +0 -35
  580. package/_esm/core/actions/base/verifyHandlesCoprocessorSignatures.js.map +0 -1
  581. package/_esm/core/actions/base/verifyInputProof.js +0 -22
  582. package/_esm/core/actions/base/verifyInputProof.js.map +0 -1
  583. package/_esm/core/actions/base/verifyZkProofCoprocessorSignatures.js +0 -14
  584. package/_esm/core/actions/base/verifyZkProofCoprocessorSignatures.js.map +0 -1
  585. package/_esm/core/actions/chain/createCoprocessorEip712Domain.js +0 -8
  586. package/_esm/core/actions/chain/createCoprocessorEip712Domain.js.map +0 -1
  587. package/_esm/core/actions/chain/createKmsDelegatedUserDecryptEip712.js +0 -15
  588. package/_esm/core/actions/chain/createKmsDelegatedUserDecryptEip712.js.map +0 -1
  589. package/_esm/core/actions/chain/createKmsEip712Domain.js +0 -8
  590. package/_esm/core/actions/chain/createKmsEip712Domain.js.map +0 -1
  591. package/_esm/core/actions/chain/createKmsUserDecryptEip712.js +0 -14
  592. package/_esm/core/actions/chain/createKmsUserDecryptEip712.js.map +0 -1
  593. package/_esm/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js +0 -5
  594. package/_esm/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js.map +0 -1
  595. package/_esm/core/actions/chain/verifyKmsUserDecryptEip712.js +0 -5
  596. package/_esm/core/actions/chain/verifyKmsUserDecryptEip712.js.map +0 -1
  597. package/_esm/core/actions/decrypt/decryptKmsSigncryptedShares.js +0 -11
  598. package/_esm/core/actions/decrypt/decryptKmsSigncryptedShares.js.map +0 -1
  599. package/_esm/core/kms/createKmsDelegatedUserDecryptEip712.js.map +0 -1
  600. package/_esm/core/kms/createKmsUserDecryptEip712.js.map +0 -1
  601. package/_esm/core/kms/fetchKmsSigncryptedShares-p.js.map +0 -1
  602. package/_esm/core/kms/kmsDelegatedUserDecryptEip712Types.js.map +0 -1
  603. package/_esm/core/kms/kmsExtraData.js +0 -99
  604. package/_esm/core/kms/kmsExtraData.js.map +0 -1
  605. package/_esm/core/kms/kmsUserDecryptEip712Types.js.map +0 -1
  606. package/_esm/core/modules/relayer/cleartext/fetchDelegatedUserDecrypt.js.map +0 -1
  607. package/_esm/core/modules/relayer/module/fetchDelegatedUserDecrypt.js.map +0 -1
  608. package/_esm/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.js.map +0 -1
  609. package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712.js.map +0 -1
  610. package/_types/core/actions/base/createVerifiedInputProofFromRawBytes.d.ts +0 -14
  611. package/_types/core/actions/base/createVerifiedInputProofFromRawBytes.d.ts.map +0 -1
  612. package/_types/core/actions/base/fetchKmsSigncryptedShares.d.ts +0 -41
  613. package/_types/core/actions/base/fetchKmsSigncryptedShares.d.ts.map +0 -1
  614. package/_types/core/actions/base/fetchVerifiedInputProof.d.ts +0 -14
  615. package/_types/core/actions/base/fetchVerifiedInputProof.d.ts.map +0 -1
  616. package/_types/core/actions/base/readKmsSignersContext.d.ts +0 -6
  617. package/_types/core/actions/base/readKmsSignersContext.d.ts.map +0 -1
  618. package/_types/core/actions/base/verifyHandlesCoprocessorSignatures.d.ts +0 -14
  619. package/_types/core/actions/base/verifyHandlesCoprocessorSignatures.d.ts.map +0 -1
  620. package/_types/core/actions/base/verifyInputProof.d.ts +0 -14
  621. package/_types/core/actions/base/verifyInputProof.d.ts.map +0 -1
  622. package/_types/core/actions/base/verifyZkProofCoprocessorSignatures.d.ts +0 -11
  623. package/_types/core/actions/base/verifyZkProofCoprocessorSignatures.d.ts.map +0 -1
  624. package/_types/core/actions/chain/createCoprocessorEip712Domain.d.ts +0 -7
  625. package/_types/core/actions/chain/createCoprocessorEip712Domain.d.ts.map +0 -1
  626. package/_types/core/actions/chain/createKmsDelegatedUserDecryptEip712.d.ts +0 -15
  627. package/_types/core/actions/chain/createKmsDelegatedUserDecryptEip712.d.ts.map +0 -1
  628. package/_types/core/actions/chain/createKmsEip712Domain.d.ts +0 -7
  629. package/_types/core/actions/chain/createKmsEip712Domain.d.ts.map +0 -1
  630. package/_types/core/actions/chain/createKmsUserDecryptEip712.d.ts +0 -14
  631. package/_types/core/actions/chain/createKmsUserDecryptEip712.d.ts.map +0 -1
  632. package/_types/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.d.ts +0 -7
  633. package/_types/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.d.ts.map +0 -1
  634. package/_types/core/actions/chain/verifyKmsUserDecryptEip712.d.ts +0 -7
  635. package/_types/core/actions/chain/verifyKmsUserDecryptEip712.d.ts.map +0 -1
  636. package/_types/core/actions/decrypt/decryptKmsSigncryptedShares.d.ts +0 -13
  637. package/_types/core/actions/decrypt/decryptKmsSigncryptedShares.d.ts.map +0 -1
  638. package/_types/core/kms/createKmsDelegatedUserDecryptEip712.d.ts +0 -15
  639. package/_types/core/kms/createKmsDelegatedUserDecryptEip712.d.ts.map +0 -1
  640. package/_types/core/kms/createKmsUserDecryptEip712.d.ts +0 -26
  641. package/_types/core/kms/createKmsUserDecryptEip712.d.ts.map +0 -1
  642. package/_types/core/kms/fetchKmsSigncryptedShares-p.d.ts.map +0 -1
  643. package/_types/core/kms/kmsDelegatedUserDecryptEip712Types.d.ts +0 -3
  644. package/_types/core/kms/kmsDelegatedUserDecryptEip712Types.d.ts.map +0 -1
  645. package/_types/core/kms/kmsExtraData.d.ts +0 -25
  646. package/_types/core/kms/kmsExtraData.d.ts.map +0 -1
  647. package/_types/core/kms/kmsUserDecryptEip712Types.d.ts +0 -3
  648. package/_types/core/kms/kmsUserDecryptEip712Types.d.ts.map +0 -1
  649. package/_types/core/modules/relayer/cleartext/fetchDelegatedUserDecrypt.d.ts.map +0 -1
  650. package/_types/core/modules/relayer/module/fetchDelegatedUserDecrypt.d.ts.map +0 -1
  651. package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.d.ts +0 -14
  652. package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.d.ts.map +0 -1
  653. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712.d.ts +0 -14
  654. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712.d.ts.map +0 -1
  655. package/core/actions/base/createVerifiedInputProofFromRawBytes.ts +0 -24
  656. package/core/actions/base/fetchKmsSigncryptedShares.ts +0 -83
  657. package/core/actions/base/fetchVerifiedInputProof.ts +0 -25
  658. package/core/actions/base/readKmsSignersContext.ts +0 -20
  659. package/core/actions/base/verifyHandlesCoprocessorSignatures.ts +0 -60
  660. package/core/actions/base/verifyInputProof.ts +0 -45
  661. package/core/actions/base/verifyZkProofCoprocessorSignatures.ts +0 -32
  662. package/core/actions/chain/createCoprocessorEip712Domain.ts +0 -16
  663. package/core/actions/chain/createKmsDelegatedUserDecryptEip712.ts +0 -36
  664. package/core/actions/chain/createKmsEip712Domain.ts +0 -16
  665. package/core/actions/chain/createKmsUserDecryptEip712.ts +0 -34
  666. package/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.ts +0 -16
  667. package/core/actions/chain/verifyKmsUserDecryptEip712.ts +0 -16
  668. package/core/actions/decrypt/decryptKmsSigncryptedShares.ts +0 -34
  669. package/core/kms/kmsExtraData.ts +0 -127
  670. /package/core/modules/relayer/module/{fetchDelegatedUserDecrypt.ts → fetchDelegatedUserDecryptV1.ts} +0 -0
@@ -1,17 +1,17 @@
1
1
  import { getHostContractVersion, isVersionStrictlyBefore } from './HostContractVersion-p.js';
2
2
  import { createCachedFetch } from '../base/cachedFetch.js';
3
- import { assertIsKmsExtraData, fromKmsExtraData } from '../kms/kmsExtraData.js';
4
3
  import { assertIsChecksummedAddressArray } from '../base/address.js';
5
4
  import { isUint8 } from '../base/uint.js';
6
5
  import { getContextSignersAndThresholdFromExtraDataAbi } from './abi-fragments/fragments.js';
7
6
  import { getTrustedClient } from '../runtime/CoreFhevm-p.js';
7
+ import { assertIsKmsExtraData } from '../kms/kmsExtraData-p.js';
8
8
  ////////////////////////////////////////////////////////////////////////////////
9
9
  const cachedGetKmsContextSignersAndThresholdFromExtraData = createCachedFetch({
10
10
  executeFn: _getKmsContextSignersAndThresholdFromExtraData,
11
11
  cacheKeyFn: (context, params) => {
12
- const { kmsContextId } = fromKmsExtraData(params.extraData);
13
- const contextIdHex = kmsContextId.toString(16).padStart(64, '0');
14
- return `${context.runtime.uid.toLowerCase()}:${params.kmsVerifierAddress.toLowerCase()}:${contextIdHex}`;
12
+ const kmsContextId = params.extraData.kmsContextId;
13
+ const kmsContextIdHex = kmsContextId.toString(16).padStart(64, '0');
14
+ return `${context.runtime.uid.toLowerCase()}:${params.kmsVerifierAddress.toLowerCase()}:${kmsContextIdHex}`;
15
15
  },
16
16
  // Permanent cache: signers and threshold are immutable per context ID.
17
17
  });
@@ -42,10 +42,11 @@ async function _getKmsContextSignersAndThresholdFromExtraData(context, parameter
42
42
  throw new Error('getContextSignersAndThresholdFromExtraData requires KMSVerifier >= v0.2.0');
43
43
  }
44
44
  const trustedClient = getTrustedClient(context);
45
+ const extraDataBytesHex = parameters.extraData.toBytesHex();
45
46
  const res = await context.runtime.ethereum.readContract(trustedClient, {
46
47
  address: parameters.kmsVerifierAddress,
47
48
  abi: getContextSignersAndThresholdFromExtraDataAbi,
48
- args: [parameters.extraData],
49
+ args: [extraDataBytesHex],
49
50
  functionName: getContextSignersAndThresholdFromExtraDataAbi[0].name,
50
51
  });
51
52
  if (!Array.isArray(res) || res.length < 2) {
@@ -1 +1 @@
1
- {"version":3,"file":"getKmsContextSignersAndThresholdFromExtraData-p.js","sourceRoot":"","sources":["../../../core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getKmsContextSignersAndThresholdFromExtraData-p.js","sourceRoot":"","sources":["../../../core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,+BAA+B,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,6CAA6C,EAAE,MAAM,8BAA8B,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAmBhE,gFAAgF;AAEhF,MAAM,mDAAmD,GAAG,iBAAiB,CAAkC;IAC7G,SAAS,EAAE,8CAA8C;IACzD,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC9B,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC;QACnD,MAAM,eAAe,GAAG,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACpE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,kBAAkB,CAAC,WAAW,EAAE,IAAI,eAAe,EAAE,CAAC;IAC9G,CAAC;IACD,uEAAuE;CACxE,CAAC,CAAC;AAEH,gFAAgF;AAEhF;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,6CAA6C,CAC3D,OAAgB,EAChB,UAAwE;IAExE,oBAAoB,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAE/C,OAAO,mDAAmD,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC1F,CAAC;AAED,gFAAgF;AAEhF,KAAK,UAAU,8CAA8C,CAC3D,OAAgB,EAChB,UAAsB;IAEtB,MAAM,kBAAkB,GAAG,MAAM,sBAAsB,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAC7G,IAAI,uBAAuB,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;IAED,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEhD,MAAM,iBAAiB,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;IAE5D,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,aAAa,EAAE;QACrE,OAAO,EAAE,UAAU,CAAC,kBAAkB;QACtC,GAAG,EAAE,6CAA6C;QAClD,IAAI,EAAE,CAAC,iBAAiB,CAAC;QACzB,YAAY,EAAE,6CAA6C,CAAC,CAAC,CAAC,CAAC,IAAI;KACpE,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,cAAc,GAAG,GAAG,CAAC,CAAC,CAAY,CAAC;IACzC,MAAM,gBAAgB,GAAG,GAAG,CAAC,CAAC,CAAY,CAAC;IAE3C,IAAI,CAAC;QACH,+BAA+B,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,gCAAgC,EAAE;YAChD,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC,gBAAgB,CAAgB;QAClD,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;AACL,CAAC"}
@@ -1,32 +1,53 @@
1
- import { assertIsKmsSignersContext, createKmsSignersContext, kmsSignersContextToExtraData, } from './KmsSignersContext-p.js';
1
+ import { assertIsKmsSignersContext, createKmsSignersContext } from './KmsSignersContext-p.js';
2
2
  import { getCurrentKmsContextId } from './getCurrentKmsContextId-p.js';
3
3
  import { getCurrentKmsContextAndEpoch } from './getCurrentKmsContextAndEpoch-p.js';
4
4
  import { getHostContractVersion, isVersionStrictlyBefore } from './HostContractVersion-p.js';
5
- import { assertIsKmsExtraData, EXTRA_DATA_V1, EXTRA_DATA_V2, fromKmsExtraData, toKmsExtraData, } from '../kms/kmsExtraData.js';
5
+ import { assertIsKmsExtraData, createKmsExtraData, createKmsExtraDataV1, createKmsExtraDataV2, equalsKmsExtraData, fromKmsExtraDataBytesHex, isKmsExtraDataCompatibleWithKmsVerifier, } from '../kms/kmsExtraData-p.js';
6
6
  import { getKmsContextSignersAndThresholdFromExtraData } from './getKmsContextSignersAndThresholdFromExtraData-p.js';
7
7
  import { getKmsSignersAndThreshold } from './getKmsContextSignersAndThreshold-p.js';
8
8
  ////////////////////////////////////////////////////////////////////////////////
9
- export async function readKmsSignersContext(context, parameters) {
9
+ export async function readCurrentKmsSignersContext(context, parameters) {
10
+ return _readKmsSignersContext(context, parameters);
11
+ }
12
+ ////////////////////////////////////////////////////////////////////////////////
13
+ /**
14
+ * Reads the {@link KmsSignersContext} for a caller-provided `extraData`.
15
+ *
16
+ * Accepts an `extraData` of any version (v0, v1, v2, …); the underlying resolver
17
+ * selects the right protocol path and verifies the version is compatible with
18
+ * the on-chain KMSVerifier, throwing if it is not.
19
+ */
20
+ export async function readKmsSignersContextFromExtraData(context, parameters) {
21
+ assertIsKmsExtraData(parameters.extraData, {});
22
+ return _readKmsSignersContext(context, parameters);
23
+ }
24
+ ////////////////////////////////////////////////////////////////////////////////
25
+ async function _readKmsSignersContext(context, parameters) {
10
26
  // TTL-cached
11
27
  const kmsVerifierVersion = await getHostContractVersion(context, {
12
28
  address: parameters.kmsVerifierAddress,
13
29
  });
30
+ if (parameters.extraData !== undefined) {
31
+ if (!isKmsExtraDataCompatibleWithKmsVerifier(parameters.extraData, kmsVerifierVersion)) {
32
+ throw new Error(`KmsExtraData ${parameters.extraData.toBytesHex()} is not compatible with ${kmsVerifierVersion.contractName} ${kmsVerifierVersion.version}`);
33
+ }
34
+ }
14
35
  if (isVersionStrictlyBefore(kmsVerifierVersion, { major: 0, minor: 2 })) {
36
+ // extraData.version = 0 only
15
37
  return _readKmsSignersContext_Protocol_11(context, parameters);
16
38
  }
17
39
  if (isVersionStrictlyBefore(kmsVerifierVersion, { major: 0, minor: 4 })) {
40
+ // extraData.version = 0 or 1 only
18
41
  return _readKmsSignersContext_Protocol_12_13(context, parameters);
19
42
  }
20
- return _readKmsSignersContext_Protocol_14(context, parameters);
43
+ // any extraData.version
44
+ return _readKmsSignersContext_Protocol_14_or_higher(context, parameters);
21
45
  }
22
46
  ////////////////////////////////////////////////////////////////////////////////
23
47
  // Protocol v0.11.0 (KMSVerifier < v0.2.0) had no context ID support, so the only valid
24
48
  // context ID is 0. Any other value is invalid and should throw.
25
49
  // eslint-disable-next-line @typescript-eslint/naming-convention
26
50
  async function _readKmsSignersContext_Protocol_11(context, parameters) {
27
- if (parameters.kmsContextId !== undefined && parameters.kmsContextId !== 0n) {
28
- throw new Error('Impossible on protocol v0.11.0');
29
- }
30
51
  // TTL-Cached
31
52
  const c = await getKmsSignersAndThreshold(context, parameters);
32
53
  const data = createKmsSignersContext(new WeakRef(context.runtime), {
@@ -42,102 +63,146 @@ async function _readKmsSignersContext_Protocol_11(context, parameters) {
42
63
  // Protocol v0.12.0 / v0.13.0 (KMSVerifier = v0.2.0 / v0.3.0)
43
64
  // eslint-disable-next-line @typescript-eslint/naming-convention
44
65
  async function _readKmsSignersContext_Protocol_12_13(context, parameters) {
45
- if (parameters.kmsEpochId !== undefined && parameters.kmsEpochId !== 0n) {
46
- throw new Error('kmsEpochId should be 0 on protocol v0.12.0 / v0.13.0');
47
- }
48
- let kmsContextId;
49
- if (parameters.kmsContextId === undefined) {
66
+ // On protocol v0.12/v0.13, the KMS signers and threshold are looked up by
67
+ // `extraData` (which encodes the KMS context id). The caller may pass one in;
68
+ // if not, we derive it from the chain's current KMS context id using the v1
69
+ // extraData encoding (version byte + context id, no epoch).
70
+ let extraData;
71
+ if (parameters.extraData === undefined) {
50
72
  // TTL-Cached
51
- kmsContextId = await getCurrentKmsContextId(context, parameters);
73
+ const kmsContextId = await getCurrentKmsContextId(context, parameters);
74
+ extraData = createKmsExtraDataV1({
75
+ kmsContextId,
76
+ });
52
77
  }
53
78
  else {
54
- if (parameters.kmsContextId === 0n) {
55
- throw new Error('kmsContextId cannot be 0 on protocol v0.12.0 / v0.13.0');
56
- }
57
- kmsContextId = parameters.kmsContextId;
79
+ // v0 or v1
80
+ extraData = parameters.extraData;
58
81
  }
59
- const extraData = toKmsExtraData({
60
- version: EXTRA_DATA_V1,
61
- kmsContextId,
62
- kmsEpochId: 0n,
63
- });
64
82
  // Permanent-Cached
65
- const c = await getKmsContextSignersAndThresholdFromExtraData(context, {
83
+ // On protocol v0.12/v0.13, getKmsContextSignersAndThresholdFromExtraData
84
+ // supports extraData v0 and v1 only.
85
+ const { signers: kmsSigners, threshold: kmsSignerThreshold } = await getKmsContextSignersAndThresholdFromExtraData(context, {
66
86
  ...parameters,
67
87
  extraData,
68
88
  });
69
89
  return createKmsSignersContext(new WeakRef(context.runtime), {
70
90
  ...parameters,
71
- kmsContextId,
91
+ kmsContextId: extraData.kmsContextId,
72
92
  kmsEpochId: 0n,
73
- kmsSigners: c.signers,
74
- kmsSignerThreshold: c.threshold,
93
+ kmsSigners,
94
+ kmsSignerThreshold,
75
95
  });
76
96
  }
77
97
  ////////////////////////////////////////////////////////////////////////////////
78
98
  // Protocol v0.14.0+ (KMSVerifier = v0.4.0+)
79
99
  // eslint-disable-next-line @typescript-eslint/naming-convention
80
- async function _readKmsSignersContext_Protocol_14(context, parameters) {
100
+ async function _readKmsSignersContext_Protocol_14_or_higher(context, parameters) {
81
101
  if (parameters.protocolConfigAddress === undefined) {
82
102
  throw new Error('protocolConfigAddress is required on protocol v0.14.0+');
83
103
  }
84
104
  const protocolConfigAddress = parameters.protocolConfigAddress;
85
- let kmsContextId;
86
- if (parameters.kmsContextId === undefined) {
87
- // TTL-Cached
88
- ({ contextId: kmsContextId } = await getCurrentKmsContextAndEpoch(context, { protocolConfigAddress }));
89
- }
90
- else {
91
- if (parameters.kmsContextId === 0n) {
92
- throw new Error('kmsContextId cannot be 0 on protocol v0.14.0+');
93
- }
94
- kmsContextId = parameters.kmsContextId;
95
- }
96
- let kmsEpochId;
97
- if (parameters.kmsEpochId === undefined) {
105
+ let extraData;
106
+ if (parameters.extraData === undefined) {
98
107
  // TTL-Cached
99
- ({ epochId: kmsEpochId } = await getCurrentKmsContextAndEpoch(context, { protocolConfigAddress }));
108
+ const { contextId, epochId } = await getCurrentKmsContextAndEpoch(context, { protocolConfigAddress });
109
+ extraData = createKmsExtraDataV2({
110
+ kmsContextId: contextId,
111
+ kmsEpochId: epochId,
112
+ });
100
113
  }
101
114
  else {
102
- if (parameters.kmsEpochId === 0n) {
103
- throw new Error('kmsEpochId cannot be 0 on protocol v0.14.0+');
104
- }
105
- kmsEpochId = parameters.kmsEpochId;
115
+ // any version: v0, v1, v2, ... vn
116
+ extraData = parameters.extraData;
106
117
  }
107
- const extraData = toKmsExtraData({
108
- version: EXTRA_DATA_V2,
109
- kmsContextId,
110
- kmsEpochId,
111
- });
112
118
  // Permanent-Cached
113
- const c = await getKmsContextSignersAndThresholdFromExtraData(context, {
119
+ // May revert if extraData.version is incompatible (see `getKmsContextSignersAndThresholdFromExtraData` comments)
120
+ const { signers: kmsSigners, threshold: kmsSignerThreshold } = await getKmsContextSignersAndThresholdFromExtraData(context, {
114
121
  ...parameters,
115
122
  extraData,
116
123
  });
117
124
  return createKmsSignersContext(new WeakRef(context.runtime), {
118
125
  ...parameters,
119
- kmsContextId,
120
- kmsEpochId,
121
- kmsSigners: c.signers,
122
- kmsSignerThreshold: c.threshold,
126
+ kmsContextId: extraData.kmsContextId,
127
+ kmsEpochId: extraData.kmsEpochId,
128
+ kmsSigners,
129
+ kmsSignerThreshold,
123
130
  });
124
131
  }
132
+ /**
133
+ * Reconciles the KMS signers context used by the SDK with the one the relayer
134
+ * actually used when forwarding the decryption request to KMS nodes.
135
+ *
136
+ * The returned {@link KmsSignersContext} provides the signers and threshold
137
+ * needed to verify the KMS signcrypted shares and reconstruct the decrypted values.
138
+ *
139
+ * ### Assumptions
140
+ *
141
+ * - The relayer **cannot be trusted**.
142
+ * - On-chain data is the **source of truth**.
143
+ *
144
+ * ### Nomenclature
145
+ *
146
+ * - `requestedKmsExtraData` — `createKmsExtraData({ kmsContextId, kmsEpochId })`
147
+ * derived from `requestedKmsSignersContext`.
148
+ * - `relayerKmsExtraData` — `fromKmsExtraDataBytesHex(relayerKmsExtraDataBytesHex)`
149
+ * (its `.kmsContextId` / `.kmsEpochId`).
150
+ *
151
+ * ### Host-Contract Compatibility
152
+ *
153
+ * `extraData` is versioned independently from the host-contract package. The
154
+ * currently supported combinations are:
155
+ *
156
+ * - host-contracts v11 support `extraData` v0.
157
+ * - host-contracts v12 and v13 support `extraData` v0 and v1.
158
+ * - host-contracts v14 support `extraData` v0, v1, and v2.
159
+ *
160
+ * ### Resolution (checked in order, then by `mode`)
161
+ *
162
+ * 1. `relayerKmsExtraData` equals `requestedKmsExtraData` → return
163
+ * `requestedKmsSignersContext`. This is the **only** path that trusts cached
164
+ * data, and it applies in every mode.
165
+ * 2. Otherwise, in `'exact'` mode → **throw**. This mode never parses, refreshes,
166
+ * or reconciles differing `extraData`.
167
+ * 3. `extraData` serialization version mismatch → **throw** (`'strict'`/`'loose'`).
168
+ * The SDK and relayer must agree on the encoding format, even for the same context ID.
169
+ * 4. Versions match but context/epoch differ → force a **full on-chain refetch**
170
+ * (cached data is never reused, since a mismatch means on-chain state may have
171
+ * diverged: rotation, destruction, signer/epoch changes). The accept criterion
172
+ * then depends on `mode`:
173
+ * - `'strict'` → accept **only** if the relayer's context equals the *current*
174
+ * on-chain context (both `kmsContextId` and `kmsEpochId`); otherwise throw.
175
+ * - `'loose'` → accept **any** on-chain-valid context (non-destroyed, in range),
176
+ * current or not; throw only if destroyed / out of range.
177
+ *
178
+ * ### Modes
179
+ *
180
+ * - `'exact'` — Accept only step 1 (`extraData` equality). Rejects any
181
+ * relayer/context drift without parsing or on-chain recovery.
182
+ * - `'strict'` — Accept step 1, or a relayer context whose `kmsContextId` **and**
183
+ * `kmsEpochId` equal the current on-chain values. Rejects valid-but-not-current
184
+ * contexts. The epoch check is required because RFC 005 introduces same-context
185
+ * epoch rotations (new shares, same party set) — a stale epoch must be rejected
186
+ * even when the context ID matches.
187
+ * - `'loose'` — Accept any on-chain valid context (non-destroyed, in range),
188
+ * regardless of whether it is current. Covers context rotations in either direction.
189
+ */
125
190
  export async function reconcileKmsSignersContext(context, parameters) {
126
- const { kmsVerifierAddress, protocolConfigAddress, requestedKmsSignersContext, relayerExtraData, mode } = parameters;
127
- assertIsKmsExtraData(relayerExtraData, {});
191
+ const { kmsVerifierAddress, protocolConfigAddress, requestedKmsSignersContext, relayerKmsExtraDataBytesHex, mode } = parameters;
192
+ const relayerKmsExtraData = fromKmsExtraDataBytesHex(relayerKmsExtraDataBytesHex);
128
193
  assertIsKmsSignersContext(requestedKmsSignersContext, {});
129
- const requestedExtraData = kmsSignersContextToExtraData(requestedKmsSignersContext);
194
+ const requestedKmsExtraData = createKmsExtraData({
195
+ kmsContextId: requestedKmsSignersContext.id,
196
+ kmsEpochId: requestedKmsSignersContext.epochId,
197
+ });
130
198
  // 1. Exact match — the relayer used the same context as the SDK.
131
- if (relayerExtraData === requestedExtraData) {
199
+ if (equalsKmsExtraData(relayerKmsExtraData, requestedKmsExtraData)) {
132
200
  return requestedKmsSignersContext;
133
201
  }
134
202
  if (mode === 'exact') {
135
- throw new Error(`Exact reconciliation failed: relayer extraData ${relayerExtraData} ` +
136
- `does not match requested extraData ${requestedExtraData}.`);
203
+ throw new Error(`Exact reconciliation failed: relayer extraData ${relayerKmsExtraData.toBytesHex()} ` +
204
+ `does not match requested extraData ${requestedKmsExtraData.toBytesHex()}.`);
137
205
  }
138
- // Bytes differ — extract and compare serialization versions.
139
- const relayerKmsExtraData = fromKmsExtraData(relayerExtraData);
140
- const requestedKmsExtraData = fromKmsExtraData(requestedExtraData);
141
206
  // Reject if extraData serialization version differs.
142
207
  if (relayerKmsExtraData.version !== requestedKmsExtraData.version) {
143
208
  throw new Error(`ExtraData serialization version mismatch: SDK uses v${requestedKmsExtraData.version}, ` +
@@ -151,7 +216,7 @@ export async function reconcileKmsSignersContext(context, parameters) {
151
216
  if (mode === 'strict') {
152
217
  // `readKmsSignersContext` with `forceRefresh` fetches the current context.
153
218
  // If `relayerKmsContextId` matches current, we're good.
154
- const currentContext = await readKmsSignersContext(context, {
219
+ const currentContext = await readCurrentKmsSignersContext(context, {
155
220
  kmsVerifierAddress,
156
221
  protocolConfigAddress,
157
222
  forceRefresh: true,
@@ -165,12 +230,11 @@ export async function reconcileKmsSignersContext(context, parameters) {
165
230
  // 3. Loose mode — accept any valid (non-destroyed, in-range) context.
166
231
  // `readKmsSignersContext` with `forceRefresh` + specific `kmsContextId`/`kmsEpochId` will
167
232
  // throw if the context is destroyed or out of range.
168
- return readKmsSignersContext(context, {
233
+ return readKmsSignersContextFromExtraData(context, {
169
234
  kmsVerifierAddress,
170
235
  protocolConfigAddress,
171
- kmsContextId: relayerKmsContextId,
172
- kmsEpochId: relayerKmsEpochId,
173
236
  forceRefresh: true,
237
+ extraData: relayerKmsExtraData,
174
238
  });
175
239
  }
176
240
  //# sourceMappingURL=readKmsSignersContext-p.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"readKmsSignersContext-p.js","sourceRoot":"","sources":["../../../core/host-contracts/readKmsSignersContext-p.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"readKmsSignersContext-p.js","sourceRoot":"","sources":["../../../core/host-contracts/readKmsSignersContext-p.ts"],"names":[],"mappings":"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"}
@@ -12,8 +12,35 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
12
12
  var _KmsSigncryptedSharesImpl_metadata, _KmsSigncryptedSharesImpl_shares;
13
13
  import { assertIsKmsSignersContext } from '../host-contracts/KmsSignersContext-p.js';
14
14
  import { ensure0x } from '../base/string.js';
15
- import { assertIsKmsExtraData } from './kmsExtraData.js';
16
15
  import { reconcileKmsSignersContext } from '../host-contracts/readKmsSignersContext-p.js';
16
+ import { recoverSigners } from '../utils-p/runtime/recoverSigners.js';
17
+ ////////////////////////////////////////////////////////////////////////////////
18
+ /**
19
+ * EIP-712 types for the KMS `UserDecryptResponseVerification` structure that each
20
+ * KMS node signs per response share (see gateway `Decryption.sol`).
21
+ *
22
+ * CRITICAL: field order and types are authoritative — they define the EIP-712
23
+ * type hash and must match the on-chain struct exactly.
24
+ *
25
+ * Note: `ctHandles` is declared `bytes32[]` to match `Decryption.sol` (the tkms
26
+ * WASM doc comments it as `uint256[]`; both encode the same 32 bytes, but the
27
+ * type string participates in the type hash — if verification unexpectedly
28
+ * fails, `uint256[]` is the first thing to try).
29
+ */
30
+ const kmsUserDecryptResponseEip712Types = {
31
+ EIP712Domain: [
32
+ { name: 'name', type: 'string' },
33
+ { name: 'version', type: 'string' },
34
+ { name: 'chainId', type: 'uint256' },
35
+ { name: 'verifyingContract', type: 'address' },
36
+ ],
37
+ UserDecryptResponseVerification: [
38
+ { name: 'publicKey', type: 'bytes' },
39
+ { name: 'ctHandles', type: 'bytes32[]' },
40
+ { name: 'userDecryptedShare', type: 'bytes' },
41
+ { name: 'extraData', type: 'bytes' },
42
+ ],
43
+ };
17
44
  ////////////////////////////////////////////////////////////////////////////////
18
45
  const PRIVATE_KMS_SIGNCRYPTED_SHARES_TOKEN = Symbol('KmsSigncryptedShares.token');
19
46
  const GET_METADATA_FUNC = Symbol('KmsSigncryptedShares.getMetadata');
@@ -84,6 +111,46 @@ function assertUniformExtraData(shares) {
84
111
  }
85
112
  return firstExtraData;
86
113
  }
114
+ /**
115
+ * Helper:
116
+ * Verifies the EIP-712 signature of a single KMS signcrypted share.
117
+ *
118
+ * Rebuilds the `UserDecryptResponseVerification` payload the KMS node signed,
119
+ * recovers the signer, and asserts it belongs to the reconciled KMS signers
120
+ * context. This is an independent, JS-only check — the same verification is also
121
+ * performed inside the tkms WASM during reconstruction (`verify=true`), so this
122
+ * is primarily a test/defense-in-depth pass and is not required for correctness.
123
+ *
124
+ * @throws If the signer cannot be recovered, or is not a known KMS signer.
125
+ */
126
+ export async function verifyKmsSigncryptedShare(context, parameters) {
127
+ const { share, metadata, transportPublicKey } = parameters;
128
+ // Rebuild the exact EIP-712 message each KMS node signs per response share
129
+ // (gateway Decryption.sol `UserDecryptResponseVerification`). `userDecryptedShare`
130
+ // is the serialized share bytes carried in `share.payload`.
131
+ const message = {
132
+ publicKey: transportPublicKey,
133
+ ctHandles: metadata.handles.map((h) => h.bytes32Hex),
134
+ userDecryptedShare: ensure0x(share.payload),
135
+ // v0 extraData is signed as '0x' (never '0x00').
136
+ extraData: share.extraData === '' || share.extraData === '00' ? '0x' : ensure0x(share.extraData),
137
+ };
138
+ // Recover the signer of this share. The KMS EIP-712 domain lives in `metadata`.
139
+ const [recoveredAddress] = await recoverSigners(context, {
140
+ domain: metadata.eip712Domain,
141
+ types: kmsUserDecryptResponseEip712Types,
142
+ primaryType: 'UserDecryptResponseVerification',
143
+ signatures: [ensure0x(share.signature)],
144
+ message,
145
+ });
146
+ if (recoveredAddress === undefined) {
147
+ throw new Error('Failed to recover signer from KMS signcrypted share signature.');
148
+ }
149
+ // The recovered signer must be one of the reconciled KMS signers (case-insensitive).
150
+ if (!metadata.kmsSignersContext.has(recoveredAddress)) {
151
+ throw new Error(`KMS signcrypted share signature was not signed by a known KMS signer (recovered ${recoveredAddress}).`);
152
+ }
153
+ }
87
154
  /**
88
155
  * Creates a validated {@link KmsSigncryptedShares} instance.
89
156
  *
@@ -113,13 +180,12 @@ export async function createKmsSigncryptedShares(context, parameters) {
113
180
  // Assert context first — extraData comparison depends on a valid KmsSignersContext.
114
181
  assertIsKmsSignersContext(metadata.kmsSignersContext, {});
115
182
  // Extract the common extraData from all shares and validate its format.
116
- const relayerExtraData = ensure0x(assertUniformExtraData(shares));
117
- assertIsKmsExtraData(relayerExtraData, {});
183
+ const relayerKmsExtraDataBytesHex = ensure0x(assertUniformExtraData(shares));
118
184
  // Reconcile KMS signer context using 'loose' mode.
119
185
  const reconciledKmsSignersContext = await reconcileKmsSignersContext(context, {
120
186
  kmsVerifierAddress: context.chain.fhevm.contracts.kmsVerifier.address,
121
187
  protocolConfigAddress: context.chain.fhevm.contracts.protocolConfig?.address,
122
- relayerExtraData,
188
+ relayerKmsExtraDataBytesHex,
123
189
  requestedKmsSignersContext: metadata.kmsSignersContext,
124
190
  mode: 'loose',
125
191
  });
@@ -1 +1 @@
1
- {"version":3,"file":"KmsSigncryptedShares-p.js","sourceRoot":"","sources":["../../../core/kms/KmsSigncryptedShares-p.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KmsSigncryptedShares-p.js","sourceRoot":"","sources":["../../../core/kms/KmsSigncryptedShares-p.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ import { abiEncodeClearValues, createClearValueArray } from '../handle/ClearValu
15
15
  import { toClearValueType } from '../handle/FheType.js';
16
16
  import { kmsSignersContextToExtraData } from '../host-contracts/KmsSignersContext-p.js';
17
17
  import { verifyKmsPublicDecryptEip712 } from './verifyKmsPublicDecryptEip712-p.js';
18
+ import { EXTRA_DATA_V0 } from './kmsExtraData-p.js';
18
19
  //////////////////////////////////////////////////////////////////////////////
19
20
  const PRIVATE_TOKEN = Symbol('PublicDecryptionProof.token');
20
21
  //////////////////////////////////////////////////////////////////////////////
@@ -69,7 +70,7 @@ Object.freeze(PublicDecryptionProofImpl.prototype);
69
70
  export async function createPublicDecryptionProof(context, parameters) {
70
71
  // Always verify KMS signatures
71
72
  await verifyKmsPublicDecryptEip712(context, parameters);
72
- const { orderedHandles: orderedEncryptedValues, orderedAbiEncodedClearValues, kmsPublicDecryptEIP712Signatures, kmsSignersContext, originToken, } = parameters;
73
+ const { orderedHandles: orderedEncryptedValues, orderedAbiEncodedClearValues, kmsPublicDecryptEip712Signatures, kmsSignersContext, originToken, } = parameters;
73
74
  //////////////////////////////////////////////////////////////////////////////
74
75
  // Compute extraData using KmsSignersContext
75
76
  //////////////////////////////////////////////////////////////////////////////
@@ -79,19 +80,19 @@ export async function createPublicDecryptionProof(context, parameters) {
79
80
  // Warning!!!! Do not use '0x00' here!! Only '0x' is permitted!
80
81
  //
81
82
  ////////////////////////////////////////////////////////////////////////////
82
- const signedExtraData = extraData === '0x00' ? '0x' : extraData;
83
+ const signedExtraDataBytesHex = extraData.version === EXTRA_DATA_V0 ? '0x' : extraData.toBytesHex();
83
84
  //////////////////////////////////////////////////////////////////////////////
84
85
  // Compute the proof as numSigners + KMS signatures + extraData
85
86
  //////////////////////////////////////////////////////////////////////////////
86
87
  const packedNumSigners = context.runtime.ethereum.encodePacked({
87
88
  types: ['uint8'],
88
- values: [kmsPublicDecryptEIP712Signatures.length],
89
+ values: [kmsPublicDecryptEip712Signatures.length],
89
90
  });
90
91
  const packedSignatures = context.runtime.ethereum.encodePacked({
91
- types: Array(kmsPublicDecryptEIP712Signatures.length).fill('bytes'),
92
- values: kmsPublicDecryptEIP712Signatures,
92
+ types: Array(kmsPublicDecryptEip712Signatures.length).fill('bytes'),
93
+ values: kmsPublicDecryptEip712Signatures,
93
94
  });
94
- const decryptionProof = concatBytesHex([packedNumSigners, packedSignatures, signedExtraData]);
95
+ const decryptionProof = concatBytesHex([packedNumSigners, packedSignatures, signedExtraDataBytesHex]);
95
96
  //////////////////////////////////////////////////////////////////////////////
96
97
  // Deserialize ordered decrypted result
97
98
  //////////////////////////////////////////////////////////////////////////////
@@ -116,7 +117,7 @@ export async function createPublicDecryptionProof(context, parameters) {
116
117
  decryptionProof: decryptionProof,
117
118
  orderedClearValues: orderedDecryptedFhevmHandles,
118
119
  orderedAbiEncodedClearValues: orderedAbiEncodedDecryptedFhevmHandles.abiEncodedClearValues,
119
- extraData: signedExtraData,
120
+ extraData: signedExtraDataBytesHex,
120
121
  });
121
122
  }
122
123
  //# sourceMappingURL=PublicDecryptionProof-p.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PublicDecryptionProof-p.js","sourceRoot":"","sources":["../../../core/kms/PublicDecryptionProof-p.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PublicDecryptionProof-p.js","sourceRoot":"","sources":["../../../core/kms/PublicDecryptionProof-p.ts"],"names":[],"mappings":"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"}