@fhevm/sdk 1.1.0-alpha.7 → 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 (259) hide show
  1. package/README.md +5 -5
  2. package/_cjs/core/_version.js +1 -1
  3. package/_cjs/core/actions/encrypt/encryptValue.js +2 -1
  4. package/_cjs/core/actions/encrypt/encryptValue.js.map +1 -1
  5. package/_cjs/core/actions/encrypt/encryptValues.js +2 -1
  6. package/_cjs/core/actions/encrypt/encryptValues.js.map +1 -1
  7. package/_cjs/core/actions/encrypt/generateZkProof.js +2 -1
  8. package/_cjs/core/actions/encrypt/generateZkProof.js.map +1 -1
  9. package/_cjs/core/actions/host/readKmsVerifierContractData.js +1 -1
  10. package/_cjs/core/actions/host/readKmsVerifierContractData.js.map +1 -1
  11. package/_cjs/core/base/cachedFetch.js +1 -1
  12. package/_cjs/core/base/cachedFetch.js.map +1 -1
  13. package/_cjs/core/handle/FheType.js +4 -0
  14. package/_cjs/core/handle/FheType.js.map +1 -1
  15. package/_cjs/core/host-contracts/HostContractVersion-p.js +4 -0
  16. package/_cjs/core/host-contracts/HostContractVersion-p.js.map +1 -1
  17. package/_cjs/core/host-contracts/KmsSignersContext-p.js +15 -25
  18. package/_cjs/core/host-contracts/KmsSignersContext-p.js.map +1 -1
  19. package/_cjs/core/host-contracts/getKmsContextSignersAndThreshold-p.js.map +1 -1
  20. package/_cjs/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js +7 -6
  21. package/_cjs/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js.map +1 -1
  22. package/_cjs/core/host-contracts/readKmsSignersContext-p.js +54 -66
  23. package/_cjs/core/host-contracts/readKmsSignersContext-p.js.map +1 -1
  24. package/_cjs/core/kms/KmsSigncryptedShares-p.js +40 -4
  25. package/_cjs/core/kms/KmsSigncryptedShares-p.js.map +1 -1
  26. package/_cjs/core/kms/PublicDecryptionProof-p.js +4 -3
  27. package/_cjs/core/kms/PublicDecryptionProof-p.js.map +1 -1
  28. package/_cjs/core/kms/SignedDecryptionPermitV1-p.js +1 -14
  29. package/_cjs/core/kms/SignedDecryptionPermitV1-p.js.map +1 -1
  30. package/_cjs/core/kms/SignedDecryptionPermitV2-p.js +3 -15
  31. package/_cjs/core/kms/SignedDecryptionPermitV2-p.js.map +1 -1
  32. package/_cjs/core/kms/createKmsDelegatedUserDecryptEip712V1.js +3 -4
  33. package/_cjs/core/kms/createKmsDelegatedUserDecryptEip712V1.js.map +1 -1
  34. package/_cjs/core/kms/createKmsUserDecryptEip712V1.js +6 -5
  35. package/_cjs/core/kms/createKmsUserDecryptEip712V1.js.map +1 -1
  36. package/_cjs/core/kms/createKmsUserDecryptEip712V2.js +4 -5
  37. package/_cjs/core/kms/createKmsUserDecryptEip712V2.js.map +1 -1
  38. package/_cjs/core/kms/fetchKmsSigncryptedSharesV1-p.js +1 -1
  39. package/_cjs/core/kms/fetchKmsSigncryptedSharesV1-p.js.map +1 -1
  40. package/_cjs/core/kms/fetchKmsSigncryptedSharesV2-p.js +1 -1
  41. package/_cjs/core/kms/fetchKmsSigncryptedSharesV2-p.js.map +1 -1
  42. package/_cjs/core/kms/kmsExtraData-p.js +234 -0
  43. package/_cjs/core/kms/kmsExtraData-p.js.map +1 -0
  44. package/_cjs/core/kms/publicDecrypt.js +4 -4
  45. package/_cjs/core/kms/publicDecrypt.js.map +1 -1
  46. package/_cjs/core/kms/verifyKmsPublicDecryptEip712-p.js +5 -4
  47. package/_cjs/core/kms/verifyKmsPublicDecryptEip712-p.js.map +1 -1
  48. package/_cjs/core/modules/decrypt/mock.js +6 -6
  49. package/_cjs/core/modules/decrypt/mock.js.map +1 -1
  50. package/_cjs/core/modules/decrypt/module/api-p.js +7 -7
  51. package/_cjs/core/modules/decrypt/module/api-p.js.map +1 -1
  52. package/_cjs/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js +53 -3
  53. package/_cjs/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js.map +1 -1
  54. package/_cjs/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +67 -21
  55. package/_cjs/core/modules/relayer/cleartext/fetchDelegatedUserDecryptV1.js.map +1 -0
  56. package/_cjs/core/modules/relayer/cleartext/fetchPublicDecrypt.js +61 -4
  57. package/_cjs/core/modules/relayer/cleartext/fetchPublicDecrypt.js.map +1 -1
  58. package/_cjs/core/modules/relayer/cleartext/fetchUserDecrypt.js +9 -108
  59. package/_cjs/core/modules/relayer/cleartext/fetchUserDecrypt.js.map +1 -1
  60. package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV1.js +163 -0
  61. package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV1.js.map +1 -0
  62. package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV2.js +7 -0
  63. package/_cjs/core/modules/relayer/cleartext/fetchUserDecryptV2.js.map +1 -0
  64. package/_cjs/core/modules/relayer/cleartext/forgeFhevmV1.js +83 -0
  65. package/_cjs/core/modules/relayer/cleartext/forgeFhevmV1.js.map +1 -0
  66. package/_cjs/core/modules/relayer/cleartext/mock.js +2 -2
  67. package/_cjs/core/modules/relayer/cleartext/mock.js.map +1 -1
  68. package/_cjs/core/modules/relayer/cleartext/signers.js +14 -0
  69. package/_cjs/core/modules/relayer/cleartext/signers.js.map +1 -1
  70. package/_cjs/ethers/internal/ethereum-ct.js +11 -0
  71. package/_cjs/ethers/internal/ethereum-ct.js.map +1 -1
  72. package/_cjs/ethers/internal/runtime-ct.js +9 -7
  73. package/_cjs/ethers/internal/runtime-ct.js.map +1 -1
  74. package/_cjs/viem/internal/ethereum-ct.js +8 -0
  75. package/_cjs/viem/internal/ethereum-ct.js.map +1 -1
  76. package/_cjs/viem/internal/runtime-ct.js +9 -7
  77. package/_cjs/viem/internal/runtime-ct.js.map +1 -1
  78. package/_cjs/wasm/tfhe/loadTfheLib.js.map +1 -1
  79. package/_cjs/wasm/tkms/loadKmsLib.js.map +1 -1
  80. package/_esm/core/_version.js +1 -1
  81. package/_esm/core/actions/encrypt/encryptValue.js +2 -1
  82. package/_esm/core/actions/encrypt/encryptValue.js.map +1 -1
  83. package/_esm/core/actions/encrypt/encryptValues.js +2 -1
  84. package/_esm/core/actions/encrypt/encryptValues.js.map +1 -1
  85. package/_esm/core/actions/encrypt/generateZkProof.js +2 -1
  86. package/_esm/core/actions/encrypt/generateZkProof.js.map +1 -1
  87. package/_esm/core/actions/host/readKmsVerifierContractData.js +2 -2
  88. package/_esm/core/actions/host/readKmsVerifierContractData.js.map +1 -1
  89. package/_esm/core/base/cachedFetch.js +1 -1
  90. package/_esm/core/base/cachedFetch.js.map +1 -1
  91. package/_esm/core/handle/FheType.js +10 -0
  92. package/_esm/core/handle/FheType.js.map +1 -1
  93. package/_esm/core/host-contracts/HostContractVersion-p.js +6 -0
  94. package/_esm/core/host-contracts/HostContractVersion-p.js.map +1 -1
  95. package/_esm/core/host-contracts/KmsSignersContext-p.js +16 -25
  96. package/_esm/core/host-contracts/KmsSignersContext-p.js.map +1 -1
  97. package/_esm/core/host-contracts/getKmsContextSignersAndThreshold-p.js.map +1 -1
  98. package/_esm/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js +6 -5
  99. package/_esm/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js.map +1 -1
  100. package/_esm/core/host-contracts/readKmsSignersContext-p.js +132 -68
  101. package/_esm/core/host-contracts/readKmsSignersContext-p.js.map +1 -1
  102. package/_esm/core/kms/KmsSigncryptedShares-p.js +70 -4
  103. package/_esm/core/kms/KmsSigncryptedShares-p.js.map +1 -1
  104. package/_esm/core/kms/PublicDecryptionProof-p.js +4 -3
  105. package/_esm/core/kms/PublicDecryptionProof-p.js.map +1 -1
  106. package/_esm/core/kms/SignedDecryptionPermitV1-p.js +2 -32
  107. package/_esm/core/kms/SignedDecryptionPermitV1-p.js.map +1 -1
  108. package/_esm/core/kms/SignedDecryptionPermitV2-p.js +4 -16
  109. package/_esm/core/kms/SignedDecryptionPermitV2-p.js.map +1 -1
  110. package/_esm/core/kms/createKmsDelegatedUserDecryptEip712V1.js +3 -4
  111. package/_esm/core/kms/createKmsDelegatedUserDecryptEip712V1.js.map +1 -1
  112. package/_esm/core/kms/createKmsUserDecryptEip712V1.js +7 -6
  113. package/_esm/core/kms/createKmsUserDecryptEip712V1.js.map +1 -1
  114. package/_esm/core/kms/createKmsUserDecryptEip712V2.js +4 -5
  115. package/_esm/core/kms/createKmsUserDecryptEip712V2.js.map +1 -1
  116. package/_esm/core/kms/fetchKmsSigncryptedSharesV1-p.js +26 -2
  117. package/_esm/core/kms/fetchKmsSigncryptedSharesV1-p.js.map +1 -1
  118. package/_esm/core/kms/fetchKmsSigncryptedSharesV2-p.js +2 -2
  119. package/_esm/core/kms/fetchKmsSigncryptedSharesV2-p.js.map +1 -1
  120. package/_esm/core/kms/kmsExtraData-p.js +298 -0
  121. package/_esm/core/kms/kmsExtraData-p.js.map +1 -0
  122. package/_esm/core/kms/publicDecrypt.js +5 -5
  123. package/_esm/core/kms/publicDecrypt.js.map +1 -1
  124. package/_esm/core/kms/verifyKmsPublicDecryptEip712-p.js +5 -4
  125. package/_esm/core/kms/verifyKmsPublicDecryptEip712-p.js.map +1 -1
  126. package/_esm/core/modules/decrypt/mock.js +6 -6
  127. package/_esm/core/modules/decrypt/mock.js.map +1 -1
  128. package/_esm/core/modules/decrypt/module/api-p.js +7 -7
  129. package/_esm/core/modules/decrypt/module/api-p.js.map +1 -1
  130. package/_esm/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js +69 -12
  131. package/_esm/core/modules/relayer/cleartext/fetchCoprocessorSignatures.js.map +1 -1
  132. package/_esm/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.js → fetchDelegatedUserDecryptV1.js} +76 -22
  133. package/_esm/core/modules/relayer/cleartext/fetchDelegatedUserDecryptV1.js.map +1 -0
  134. package/_esm/core/modules/relayer/cleartext/fetchPublicDecrypt.js +77 -4
  135. package/_esm/core/modules/relayer/cleartext/fetchPublicDecrypt.js.map +1 -1
  136. package/_esm/core/modules/relayer/cleartext/fetchUserDecrypt.js +13 -114
  137. package/_esm/core/modules/relayer/cleartext/fetchUserDecrypt.js.map +1 -1
  138. package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV1.js +173 -0
  139. package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV1.js.map +1 -0
  140. package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV2.js +6 -0
  141. package/_esm/core/modules/relayer/cleartext/fetchUserDecryptV2.js.map +1 -0
  142. package/_esm/core/modules/relayer/cleartext/forgeFhevmV1.js +140 -0
  143. package/_esm/core/modules/relayer/cleartext/forgeFhevmV1.js.map +1 -0
  144. package/_esm/core/modules/relayer/cleartext/mock.js +1 -1
  145. package/_esm/core/modules/relayer/cleartext/mock.js.map +1 -1
  146. package/_esm/core/modules/relayer/cleartext/signers.js +26 -0
  147. package/_esm/core/modules/relayer/cleartext/signers.js.map +1 -1
  148. package/_esm/ethers/internal/ethereum-ct.js +12 -1
  149. package/_esm/ethers/internal/ethereum-ct.js.map +1 -1
  150. package/_esm/ethers/internal/runtime-ct.js +9 -7
  151. package/_esm/ethers/internal/runtime-ct.js.map +1 -1
  152. package/_esm/viem/internal/ethereum-ct.js +10 -2
  153. package/_esm/viem/internal/ethereum-ct.js.map +1 -1
  154. package/_esm/viem/internal/runtime-ct.js +9 -7
  155. package/_esm/viem/internal/runtime-ct.js.map +1 -1
  156. package/_types/core/actions/encrypt/encryptValue.d.ts.map +1 -1
  157. package/_types/core/actions/encrypt/encryptValues.d.ts.map +1 -1
  158. package/_types/core/actions/encrypt/generateZkProof.d.ts.map +1 -1
  159. package/_types/core/base/cachedFetch.d.ts.map +1 -1
  160. package/_types/core/handle/FheType.d.ts +8 -0
  161. package/_types/core/handle/FheType.d.ts.map +1 -1
  162. package/_types/core/host-contracts/HostContractVersion-p.d.ts +8 -0
  163. package/_types/core/host-contracts/HostContractVersion-p.d.ts.map +1 -1
  164. package/_types/core/host-contracts/KmsSignersContext-p.d.ts +3 -2
  165. package/_types/core/host-contracts/KmsSignersContext-p.d.ts.map +1 -1
  166. package/_types/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.d.ts +3 -2
  167. package/_types/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.d.ts.map +1 -1
  168. package/_types/core/host-contracts/readKmsSignersContext-p.d.ts +43 -26
  169. package/_types/core/host-contracts/readKmsSignersContext-p.d.ts.map +1 -1
  170. package/_types/core/kms/KmsSigncryptedShares-p.d.ts +18 -0
  171. package/_types/core/kms/KmsSigncryptedShares-p.d.ts.map +1 -1
  172. package/_types/core/kms/PublicDecryptionProof-p.d.ts.map +1 -1
  173. package/_types/core/kms/SignedDecryptionPermitV1-p.d.ts.map +1 -1
  174. package/_types/core/kms/SignedDecryptionPermitV2-p.d.ts.map +1 -1
  175. package/_types/core/kms/createKmsDelegatedUserDecryptEip712V1.d.ts +2 -1
  176. package/_types/core/kms/createKmsDelegatedUserDecryptEip712V1.d.ts.map +1 -1
  177. package/_types/core/kms/createKmsUserDecryptEip712V1.d.ts +2 -1
  178. package/_types/core/kms/createKmsUserDecryptEip712V1.d.ts.map +1 -1
  179. package/_types/core/kms/createKmsUserDecryptEip712V2.d.ts +2 -1
  180. package/_types/core/kms/createKmsUserDecryptEip712V2.d.ts.map +1 -1
  181. package/_types/core/kms/fetchKmsSigncryptedSharesV1-p.d.ts.map +1 -1
  182. package/_types/core/kms/kmsExtraData-p.d.ts +66 -0
  183. package/_types/core/kms/kmsExtraData-p.d.ts.map +1 -0
  184. package/_types/core/kms/publicDecrypt.d.ts.map +1 -1
  185. package/_types/core/kms/verifyKmsPublicDecryptEip712-p.d.ts.map +1 -1
  186. package/_types/core/modules/ethereum/types-ct.d.ts +20 -2
  187. package/_types/core/modules/ethereum/types-ct.d.ts.map +1 -1
  188. package/_types/core/modules/relayer/cleartext/fetchCoprocessorSignatures.d.ts.map +1 -1
  189. package/_types/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.d.ts → fetchDelegatedUserDecryptV1.d.ts} +1 -1
  190. package/_types/core/modules/relayer/cleartext/fetchDelegatedUserDecryptV1.d.ts.map +1 -0
  191. package/_types/core/modules/relayer/cleartext/fetchPublicDecrypt.d.ts.map +1 -1
  192. package/_types/core/modules/relayer/cleartext/fetchUserDecrypt.d.ts +2 -2
  193. package/_types/core/modules/relayer/cleartext/fetchUserDecrypt.d.ts.map +1 -1
  194. package/_types/core/modules/relayer/cleartext/fetchUserDecryptV1.d.ts +3 -0
  195. package/_types/core/modules/relayer/cleartext/fetchUserDecryptV1.d.ts.map +1 -0
  196. package/_types/core/modules/relayer/cleartext/fetchUserDecryptV2.d.ts +3 -0
  197. package/_types/core/modules/relayer/cleartext/fetchUserDecryptV2.d.ts.map +1 -0
  198. package/_types/core/modules/relayer/cleartext/forgeFhevmV1.d.ts +29 -0
  199. package/_types/core/modules/relayer/cleartext/forgeFhevmV1.d.ts.map +1 -0
  200. package/_types/core/modules/relayer/cleartext/signers.d.ts +1 -0
  201. package/_types/core/modules/relayer/cleartext/signers.d.ts.map +1 -1
  202. package/_types/core/types/kms-p.d.ts +7 -1
  203. package/_types/core/types/kms-p.d.ts.map +1 -1
  204. package/_types/ethers/internal/ethereum-ct.d.ts.map +1 -1
  205. package/_types/ethers/internal/runtime-ct.d.ts.map +1 -1
  206. package/_types/viem/internal/ethereum-ct.d.ts.map +1 -1
  207. package/_types/viem/internal/runtime-ct.d.ts.map +1 -1
  208. package/core/_version.ts +1 -1
  209. package/core/actions/encrypt/encryptValue.ts +4 -1
  210. package/core/actions/encrypt/encryptValues.ts +5 -1
  211. package/core/actions/encrypt/generateZkProof.ts +2 -1
  212. package/core/actions/host/readKmsVerifierContractData.ts +2 -2
  213. package/core/base/cachedFetch.ts +1 -1
  214. package/core/handle/FheType.ts +11 -0
  215. package/core/host-contracts/HostContractVersion-p.ts +12 -0
  216. package/core/host-contracts/KmsSignersContext-p.ts +29 -36
  217. package/core/host-contracts/getKmsContextSignersAndThreshold-p.ts +1 -0
  218. package/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.ts +10 -7
  219. package/core/host-contracts/readKmsSignersContext-p.ts +156 -115
  220. package/core/kms/KmsSigncryptedShares-p.ts +87 -4
  221. package/core/kms/PublicDecryptionProof-p.ts +6 -4
  222. package/core/kms/SignedDecryptionPermitV1-p.ts +5 -47
  223. package/core/kms/SignedDecryptionPermitV2-p.ts +8 -25
  224. package/core/kms/createKmsDelegatedUserDecryptEip712V1.ts +5 -5
  225. package/core/kms/createKmsUserDecryptEip712V1.ts +9 -7
  226. package/core/kms/createKmsUserDecryptEip712V2.ts +6 -6
  227. package/core/kms/fetchKmsSigncryptedSharesV1-p.ts +27 -15
  228. package/core/kms/fetchKmsSigncryptedSharesV2-p.ts +2 -2
  229. package/core/kms/kmsExtraData-p.ts +374 -0
  230. package/core/kms/publicDecrypt.ts +8 -7
  231. package/core/kms/verifyKmsPublicDecryptEip712-p.ts +7 -5
  232. package/core/modules/decrypt/mock.ts +6 -6
  233. package/core/modules/decrypt/module/api-p.ts +7 -7
  234. package/core/modules/ethereum/types-ct.ts +25 -2
  235. package/core/modules/relayer/cleartext/fetchCoprocessorSignatures.ts +98 -15
  236. package/core/modules/relayer/cleartext/{fetchDelegatedUserDecrypt.ts → fetchDelegatedUserDecryptV1.ts} +115 -27
  237. package/core/modules/relayer/cleartext/fetchPublicDecrypt.ts +112 -6
  238. package/core/modules/relayer/cleartext/fetchUserDecrypt.ts +24 -132
  239. package/core/modules/relayer/cleartext/fetchUserDecryptV1.ts +229 -0
  240. package/core/modules/relayer/cleartext/fetchUserDecryptV2.ts +11 -0
  241. package/core/modules/relayer/cleartext/forgeFhevmV1.ts +185 -0
  242. package/core/modules/relayer/cleartext/mock.ts +1 -1
  243. package/core/modules/relayer/cleartext/signers.ts +35 -0
  244. package/core/types/kms-p.ts +16 -1
  245. package/ethers/internal/ethereum-ct.ts +15 -1
  246. package/ethers/internal/runtime-ct.ts +9 -7
  247. package/package.json +1 -1
  248. package/viem/internal/ethereum-ct.ts +14 -2
  249. package/viem/internal/runtime-ct.ts +9 -7
  250. package/_cjs/core/kms/kmsExtraData.js +0 -82
  251. package/_cjs/core/kms/kmsExtraData.js.map +0 -1
  252. package/_cjs/core/modules/relayer/cleartext/fetchDelegatedUserDecrypt.js.map +0 -1
  253. package/_esm/core/kms/kmsExtraData.js +0 -99
  254. package/_esm/core/kms/kmsExtraData.js.map +0 -1
  255. package/_esm/core/modules/relayer/cleartext/fetchDelegatedUserDecrypt.js.map +0 -1
  256. package/_types/core/kms/kmsExtraData.d.ts +0 -25
  257. package/_types/core/kms/kmsExtraData.d.ts.map +0 -1
  258. package/_types/core/modules/relayer/cleartext/fetchDelegatedUserDecrypt.d.ts.map +0 -1
  259. package/core/kms/kmsExtraData.ts +0 -127
@@ -0,0 +1,298 @@
1
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
+ if (kind === "m") throw new TypeError("Private method is not writable");
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
+ };
7
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
+ };
12
+ var _KmsExtraDataImpl_instances, _KmsExtraDataImpl_version, _KmsExtraDataImpl_kmsContextId, _KmsExtraDataImpl_kmsEpochId, _KmsExtraDataImpl_validate;
13
+ import { asUint256BigInt, asUint8Number } from '../base/uint.js';
14
+ import { asBytes32Hex, assertIsBytesHex } from '../base/bytes.js';
15
+ import { isVersionEqual, isVersionStrictlyBefore } from '../host-contracts/HostContractVersion-p.js';
16
+ import { InvalidTypeError } from '../base/errors/InvalidTypeError.js';
17
+ export const EXTRA_DATA_V0 = 0x00; // 0x00
18
+ export const EXTRA_DATA_V1 = 0x01; // 1 version byte + 32-byte big-endian context ID = 33 bytes
19
+ export const EXTRA_DATA_V2 = 0x02; // 1 version byte + 32-byte big-endian context ID + 32-byte big-endian epoch ID = 65 bytes
20
+ //////////////////////////////////////////////////////////////////////////////
21
+ const PRIVATE_TOKEN = Symbol('KmsExtraData.token');
22
+ //////////////////////////////////////////////////////////////////////////////
23
+ // ExtraDataImpl class
24
+ //////////////////////////////////////////////////////////////////////////////
25
+ /**
26
+ * @internal
27
+ */
28
+ export class KmsExtraDataImpl {
29
+ constructor(privateToken, parameters) {
30
+ _KmsExtraDataImpl_instances.add(this);
31
+ _KmsExtraDataImpl_version.set(this, void 0);
32
+ _KmsExtraDataImpl_kmsContextId.set(this, void 0);
33
+ _KmsExtraDataImpl_kmsEpochId.set(this, void 0);
34
+ if (privateToken !== PRIVATE_TOKEN) {
35
+ throw new Error('Unauthorized');
36
+ }
37
+ __classPrivateFieldSet(this, _KmsExtraDataImpl_kmsContextId, asUint256BigInt(parameters.kmsContextId), "f");
38
+ __classPrivateFieldSet(this, _KmsExtraDataImpl_kmsEpochId, asUint256BigInt(parameters.kmsEpochId), "f");
39
+ __classPrivateFieldSet(this, _KmsExtraDataImpl_version, asUint8Number(parameters.version), "f");
40
+ __classPrivateFieldGet(this, _KmsExtraDataImpl_instances, "m", _KmsExtraDataImpl_validate).call(this);
41
+ }
42
+ get version() {
43
+ return __classPrivateFieldGet(this, _KmsExtraDataImpl_version, "f");
44
+ }
45
+ get kmsContextId() {
46
+ return __classPrivateFieldGet(this, _KmsExtraDataImpl_kmsContextId, "f");
47
+ }
48
+ get kmsEpochId() {
49
+ return __classPrivateFieldGet(this, _KmsExtraDataImpl_kmsEpochId, "f");
50
+ }
51
+ /**
52
+ * Encodes a KMS context into an extraData format.
53
+ * v0: `0x00`
54
+ * v1: `0x01` + 32-byte big-endian context ID.
55
+ * v2: `0x02` + 32-byte big-endian context ID + 32-byte big-endian epoch ID.
56
+ */
57
+ toBytesHex() {
58
+ const v = __classPrivateFieldGet(this, _KmsExtraDataImpl_version, "f").toString(16).padStart(2, '0');
59
+ switch (__classPrivateFieldGet(this, _KmsExtraDataImpl_version, "f")) {
60
+ case EXTRA_DATA_V0: {
61
+ return `0x${v}`;
62
+ }
63
+ case EXTRA_DATA_V1: {
64
+ const contextId = __classPrivateFieldGet(this, _KmsExtraDataImpl_kmsContextId, "f").toString(16).padStart(64, '0');
65
+ return `0x${v}${contextId}`;
66
+ }
67
+ case EXTRA_DATA_V2: {
68
+ const contextId = __classPrivateFieldGet(this, _KmsExtraDataImpl_kmsContextId, "f").toString(16).padStart(64, '0');
69
+ const epochId = __classPrivateFieldGet(this, _KmsExtraDataImpl_kmsEpochId, "f").toString(16).padStart(64, '0');
70
+ return `0x${v}${contextId}${epochId}`;
71
+ }
72
+ default:
73
+ throw new Error(`Unsupported kms extraData version ${__classPrivateFieldGet(this, _KmsExtraDataImpl_version, "f")}`);
74
+ }
75
+ }
76
+ }
77
+ _KmsExtraDataImpl_version = new WeakMap(), _KmsExtraDataImpl_kmsContextId = new WeakMap(), _KmsExtraDataImpl_kmsEpochId = new WeakMap(), _KmsExtraDataImpl_instances = new WeakSet(), _KmsExtraDataImpl_validate = function _KmsExtraDataImpl_validate() {
78
+ switch (__classPrivateFieldGet(this, _KmsExtraDataImpl_version, "f")) {
79
+ case EXTRA_DATA_V0: {
80
+ if (__classPrivateFieldGet(this, _KmsExtraDataImpl_kmsContextId, "f") !== 0n) {
81
+ throw new Error('kmsContextId must be 0 for v0 kms extraData');
82
+ }
83
+ if (__classPrivateFieldGet(this, _KmsExtraDataImpl_kmsEpochId, "f") !== 0n) {
84
+ throw new Error('kmsEpochId must be 0 for v0 kms extraData');
85
+ }
86
+ return;
87
+ }
88
+ case EXTRA_DATA_V1: {
89
+ if (__classPrivateFieldGet(this, _KmsExtraDataImpl_kmsContextId, "f") === 0n) {
90
+ throw new Error('kmsContextId cannot be 0 for v1 kms extraData');
91
+ }
92
+ if (__classPrivateFieldGet(this, _KmsExtraDataImpl_kmsEpochId, "f") !== 0n) {
93
+ throw new Error('kmsEpochId must be 0 for v1 kms extraData');
94
+ }
95
+ return;
96
+ }
97
+ case EXTRA_DATA_V2: {
98
+ if (__classPrivateFieldGet(this, _KmsExtraDataImpl_kmsContextId, "f") === 0n) {
99
+ throw new Error('kmsContextId cannot be 0 for v2 kms extraData');
100
+ }
101
+ if (__classPrivateFieldGet(this, _KmsExtraDataImpl_kmsEpochId, "f") === 0n) {
102
+ throw new Error('kmsEpochId cannot be 0 for v2 kms extraData');
103
+ }
104
+ return;
105
+ }
106
+ default:
107
+ throw new Error(`Unsupported kms extraData version ${__classPrivateFieldGet(this, _KmsExtraDataImpl_version, "f")}`);
108
+ }
109
+ };
110
+ //////////////////////////////////////////////////////////////////////////////
111
+ export function fromKmsExtraDataBytesHex(extraDataBytesHex) {
112
+ if (extraDataBytesHex === '0x00' || extraDataBytesHex === '0x') {
113
+ return new KmsExtraDataImpl(PRIVATE_TOKEN, {
114
+ version: EXTRA_DATA_V0,
115
+ kmsContextId: 0n,
116
+ kmsEpochId: 0n,
117
+ });
118
+ }
119
+ if (extraDataBytesHex.length <= 4) {
120
+ throw new Error(`Unsupported kms extraData length ${extraDataBytesHex.length}: must be more than 4 bytes`);
121
+ }
122
+ // First byte = version (characters 2-3 after '0x')
123
+ const version = asUint8Number(Number('0x' + extraDataBytesHex.slice(2, 4)));
124
+ if (version === EXTRA_DATA_V1) {
125
+ // ExtraData v1 format: 1 version byte + 32-byte big-endian context ID = 33 bytes = 66 hex chars + 2 for '0x' = 68
126
+ // 0x01aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
127
+ // ↑ ↑ ↑
128
+ // 0 4 68
129
+ // 0 1 2 3 4 5 6
130
+ // 01234567890123456789012345678901234567890123456789012345678901234567
131
+ if (extraDataBytesHex.length != 68) {
132
+ throw new Error(`Invalid kms extraData length for v1: expected 68, got ${extraDataBytesHex.length}`);
133
+ }
134
+ // 32-byte contextId starts at byte 1 (hex chars 4..67)
135
+ const contextIdBytes32Hex = asBytes32Hex(`0x${extraDataBytesHex.slice(4, 68)}`);
136
+ const kmsContextId = asUint256BigInt(BigInt(contextIdBytes32Hex));
137
+ return new KmsExtraDataImpl(PRIVATE_TOKEN, {
138
+ version: EXTRA_DATA_V1,
139
+ kmsContextId,
140
+ kmsEpochId: 0n,
141
+ });
142
+ }
143
+ if (version === EXTRA_DATA_V2) {
144
+ // ExtraData v2 format: 1 version byte + 32-byte big-endian context ID + 32-byte big-endian epoch ID = 65 bytes = 130 hex chars + 2 for '0x' = 132
145
+ // 0x01aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
146
+ // ↑ ↑ ↑ ↑
147
+ // 0 4 68 132
148
+ // 0 1 2 3 4 5 6 7 8 9 0 1 2 3
149
+ // 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901
150
+ if (extraDataBytesHex.length != 132) {
151
+ throw new Error(`Invalid extraData length for v2: expected 132, got ${extraDataBytesHex.length}`);
152
+ }
153
+ // 32-byte contextId starts at byte 1 (hex chars 4..67)
154
+ const contextIdBytes32Hex = asBytes32Hex(`0x${extraDataBytesHex.slice(4, 68)}`);
155
+ const kmsContextId = asUint256BigInt(BigInt(contextIdBytes32Hex));
156
+ // 32-byte epochId starts at byte 33 (hex chars 68..131)
157
+ const epochIdBytes32Hex = asBytes32Hex(`0x${extraDataBytesHex.slice(68, 132)}`);
158
+ const kmsEpochId = asUint256BigInt(BigInt(epochIdBytes32Hex));
159
+ return new KmsExtraDataImpl(PRIVATE_TOKEN, {
160
+ version: EXTRA_DATA_V2,
161
+ kmsContextId,
162
+ kmsEpochId: kmsEpochId,
163
+ });
164
+ }
165
+ throw new Error(`Unsupported kms extraData version ${version}`);
166
+ }
167
+ ////////////////////////////////////////////////////////////////////////////////
168
+ export function createKmsExtraDataV0() {
169
+ return new KmsExtraDataImpl(PRIVATE_TOKEN, {
170
+ version: EXTRA_DATA_V0,
171
+ kmsContextId: 0n,
172
+ kmsEpochId: 0n,
173
+ });
174
+ }
175
+ ////////////////////////////////////////////////////////////////////////////////
176
+ export function createKmsExtraDataV1(parameters) {
177
+ return new KmsExtraDataImpl(PRIVATE_TOKEN, {
178
+ version: EXTRA_DATA_V1,
179
+ kmsContextId: parameters.kmsContextId,
180
+ kmsEpochId: 0n,
181
+ });
182
+ }
183
+ ////////////////////////////////////////////////////////////////////////////////
184
+ export function createKmsExtraDataV2(parameters) {
185
+ return new KmsExtraDataImpl(PRIVATE_TOKEN, {
186
+ version: EXTRA_DATA_V2,
187
+ kmsContextId: parameters.kmsContextId,
188
+ kmsEpochId: parameters.kmsEpochId,
189
+ });
190
+ }
191
+ ////////////////////////////////////////////////////////////////////////////////
192
+ export function validateKmsExtraDataParams(parameters) {
193
+ if (parameters.kmsEpochId !== 0n && parameters.kmsContextId === 0n) {
194
+ throw new Error('kmsContextId cannot be 0 if kmsEpochId is not 0');
195
+ }
196
+ }
197
+ ////////////////////////////////////////////////////////////////////////////////
198
+ export function createKmsExtraData(parameters) {
199
+ validateKmsExtraDataParams(parameters);
200
+ if (parameters.kmsEpochId === 0n) {
201
+ if (parameters.kmsContextId === 0n) {
202
+ return createKmsExtraDataV0();
203
+ }
204
+ return createKmsExtraDataV1({
205
+ kmsContextId: parameters.kmsContextId,
206
+ });
207
+ }
208
+ return createKmsExtraDataV2({
209
+ kmsContextId: parameters.kmsContextId,
210
+ kmsEpochId: parameters.kmsEpochId,
211
+ });
212
+ }
213
+ ////////////////////////////////////////////////////////////////////////////////
214
+ export function equalsKmsExtraData(a, b) {
215
+ assertIsKmsExtraData(a, {});
216
+ assertIsKmsExtraData(b, {});
217
+ return a.version === b.version && a.kmsContextId === b.kmsContextId && a.kmsEpochId === b.kmsEpochId;
218
+ }
219
+ ////////////////////////////////////////////////////////////////////////////////
220
+ /**
221
+ * Module-only helper. Narrows an unknown value to the concrete
222
+ * {@link KmsExtraDataImpl} class by verifying it via {@link assertIsKmsExtraData}
223
+ * and returning it typed as the implementation class, so other functions in this
224
+ * module can reach class-only members. Prefer this over a bare cast.
225
+ *
226
+ * Must never be exported: `Impl` classes are internal to the SDK and never leave
227
+ * the module, so a function that hands one back must stay module-private too.
228
+ * The public surface exposes only the {@link KmsExtraData} interface.
229
+ *
230
+ * @param value - The value to narrow.
231
+ * @returns The same value typed as {@link KmsExtraDataImpl}.
232
+ * @throws {InvalidTypeError} If `value` is not a {@link KmsExtraDataImpl} instance.
233
+ */
234
+ function _asKmsExtraDataImpl(value) {
235
+ assertIsKmsExtraData(value, {});
236
+ return value;
237
+ }
238
+ ////////////////////////////////////////////////////////////////////////////////
239
+ export function isKmsExtraData(value) {
240
+ return value instanceof KmsExtraDataImpl;
241
+ }
242
+ ////////////////////////////////////////////////////////////////////////////////
243
+ export function assertIsKmsExtraData(value, options) {
244
+ if (!isKmsExtraData(value)) {
245
+ throw new InvalidTypeError({
246
+ subject: options.subject,
247
+ type: typeof value,
248
+ expectedType: 'KmsExtraData',
249
+ }, options);
250
+ }
251
+ }
252
+ ////////////////////////////////////////////////////////////////////////////////
253
+ export function assertIsKmsExtraDataBytesHex(value, options) {
254
+ if (value === '0x00' || value === '0x') {
255
+ return;
256
+ }
257
+ assertIsBytesHex(value, options);
258
+ // Will valid extraData length too
259
+ fromKmsExtraDataBytesHex(value);
260
+ }
261
+ ////////////////////////////////////////////////////////////////////////////////
262
+ /**
263
+ * Returns `true` if `kmsExtraData`'s version is accepted by the given
264
+ * KMSVerifier contract version.
265
+ *
266
+ * | KMSVerifier version | protocol | max extraData version |
267
+ * | ------------------- | --------------- | --------------------- |
268
+ * | < 0.2.0 | v0.11.0 | v0 |
269
+ * | 0.2.0 – 0.3.x | v0.12.0/v0.13.0 | v1 |
270
+ * | 0.4.0 | v0.14.0 | v2 |
271
+ * | > 0.4.0 | v0.14.1+ | not checked (`true`) |
272
+ */
273
+ export function isKmsExtraDataCompatibleWithKmsVerifier(kmsExtraData, kmsVerifierVersion) {
274
+ const ed = _asKmsExtraDataImpl(kmsExtraData);
275
+ // Protocol v0.11.0
276
+ if (isVersionStrictlyBefore(kmsVerifierVersion, { major: 0, minor: 2 })) {
277
+ return ed.version <= EXTRA_DATA_V0;
278
+ }
279
+ // Protocol v0.12.0/v0.13.0
280
+ if (isVersionStrictlyBefore(kmsVerifierVersion, { major: 0, minor: 4 })) {
281
+ return ed.version <= EXTRA_DATA_V1;
282
+ }
283
+ // Protocol v0.14.0
284
+ if (isVersionEqual(kmsVerifierVersion, { major: 0, minor: 4, patch: 0 })) {
285
+ return ed.version <= EXTRA_DATA_V2;
286
+ }
287
+ // Protocol v0.14.1+ (beyond the versions this SDK release knows about).
288
+ //
289
+ // We deliberately return `true` (compatible) instead of guessing an upper
290
+ // bound on `extraData.version`. On v0.14.0 the KMSVerifier reverts for
291
+ // `extraData.version > 2`, but we cannot know the accepted range of future
292
+ // contract versions. Pre-validating here would risk rejecting extraData that
293
+ // a newer contract actually supports. If the on-chain contract does reject it,
294
+ // the call reverts — and surfacing that revert is the source of truth, not a
295
+ // speculative client-side check.
296
+ return true;
297
+ }
298
+ //# sourceMappingURL=kmsExtraData-p.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kmsExtraData-p.js","sourceRoot":"","sources":["../../../core/kms/kmsExtraData-p.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { assertHandlesBelongToSameChainId } from '../handle/FhevmHandle.js';
2
2
  import { assertKmsDecryptionBitLimit } from '../kms/utils.js';
3
- import { readKmsSignersContext, reconcileKmsSignersContext } from '../host-contracts/readKmsSignersContext-p.js';
3
+ import { readCurrentKmsSignersContext, reconcileKmsSignersContext } from '../host-contracts/readKmsSignersContext-p.js';
4
4
  import { kmsSignersContextToExtraData } from '../host-contracts/KmsSignersContext-p.js';
5
5
  import { createPublicDecryptionProof } from '../kms/PublicDecryptionProof-p.js';
6
6
  import { checkAllowedForDecryption } from '../host-contracts/checkAllowedForDecryption.js';
@@ -11,7 +11,7 @@ export async function publicDecrypt(context, parameters) {
11
11
  // Contrary to the userDecrypt flow, the publicDecrypt doesn't require for an
12
12
  // EIP-712 signature from the user, so the SDK can safely fetch the current
13
13
  // context ID and build the extraData transparently to the user.
14
- const requestedKmsSignersContext = await readKmsSignersContext(context, {
14
+ const requestedKmsSignersContext = await readCurrentKmsSignersContext(context, {
15
15
  kmsVerifierAddress: context.chain.fhevm.contracts.kmsVerifier.address,
16
16
  protocolConfigAddress: context.chain.fhevm.contracts.protocolConfig?.address,
17
17
  });
@@ -36,10 +36,10 @@ export async function publicDecrypt(context, parameters) {
36
36
  handles: orderedHandles,
37
37
  });
38
38
  // 5. Call relayer
39
- const { orderedAbiEncodedClearValues, kmsPublicDecryptEip712Signatures, extraData: relayerExtraData, } = await context.runtime.relayer.fetchPublicDecrypt(context, {
39
+ const { orderedAbiEncodedClearValues, kmsPublicDecryptEip712Signatures, extraData: relayerExtraDataBytesHex, } = await context.runtime.relayer.fetchPublicDecrypt(context, {
40
40
  payload: {
41
41
  orderedHandles,
42
- extraData: requestedExtraData,
42
+ extraData: requestedExtraData.toBytesHex(),
43
43
  },
44
44
  options: relayerOptions,
45
45
  });
@@ -47,7 +47,7 @@ export async function publicDecrypt(context, parameters) {
47
47
  const reconciledKmsSignersContext = await reconcileKmsSignersContext(context, {
48
48
  kmsVerifierAddress: context.chain.fhevm.contracts.kmsVerifier.address,
49
49
  protocolConfigAddress: context.chain.fhevm.contracts.protocolConfig?.address,
50
- relayerExtraData,
50
+ relayerKmsExtraDataBytesHex: relayerExtraDataBytesHex,
51
51
  requestedKmsSignersContext: requestedKmsSignersContext,
52
52
  mode: 'loose',
53
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"publicDecrypt.js","sourceRoot":"","sources":["../../../core/kms/publicDecrypt.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,gCAAgC,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AACjH,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gDAAgD,CAAC;AAmB3F,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAgB,EAAE,UAAsB;IAC1E,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC;IAErD,gEAAgE;IAChE,6EAA6E;IAC7E,2EAA2E;IAC3E,gEAAgE;IAChE,MAAM,0BAA0B,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE;QACtE,kBAAkB,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,OAA6B;QAC3F,qBAAqB,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,OAAyC;KAC/G,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAa,4BAA4B,CAAC,0BAA0B,CAAC,CAAC;IAE9F,MAAM,cAAc,GAAG,OAAO,CAAC;IAE/B,uEAAuE;IACvE,MAAM,cAAc,GAAgC;QAClD,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI;QACjC,GAAG,OAAO;KACX,CAAC;IAEF,4CAA4C;IAC5C,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAC5E,CAAC;IAED,4BAA4B;IAC5B,2BAA2B,CAAC,cAAc,CAAC,CAAC;IAE5C,mDAAmD;IACnD,gCAAgC,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAiB,CAAC,CAAC;IAE3F,4BAA4B;IAC5B,MAAM,yBAAyB,CAAC,OAAO,EAAE;QACvC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,OAA6B;QAC3E,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,kBAAkB;IAClB,MAAM,EACJ,4BAA4B,EAC5B,gCAAgC,EAChC,SAAS,EAAE,gBAAgB,GAC5B,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE;QAC5D,OAAO,EAAE;YACP,cAAc;YACd,SAAS,EAAE,kBAAkB;SAC9B;QACD,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,qDAAqD;IACrD,MAAM,2BAA2B,GAAsB,MAAM,0BAA0B,CAAC,OAAO,EAAE;QAC/F,kBAAkB,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,OAA6B;QAC3F,qBAAqB,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,OAAyC;QAC9G,gBAAgB;QAChB,0BAA0B,EAAE,0BAA0B;QACtD,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,8CAA8C;IAC9C,MAAM,qBAAqB,GAA0B,MAAM,2BAA2B,CAAC,OAAO,EAAE;QAC9F,WAAW;QACX,cAAc,EAAE,cAAc;QAC9B,4BAA4B;QAC5B,gCAAgC;QAChC,iBAAiB,EAAE,2BAA2B;KAC/C,CAAC,CAAC;IAEH,OAAO,qBAAqB,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"publicDecrypt.js","sourceRoot":"","sources":["../../../core/kms/publicDecrypt.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gCAAgC,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AACxH,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gDAAgD,CAAC;AAmB3F,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAgB,EAAE,UAAsB;IAC1E,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC;IAErD,gEAAgE;IAChE,6EAA6E;IAC7E,2EAA2E;IAC3E,gEAAgE;IAChE,MAAM,0BAA0B,GAAG,MAAM,4BAA4B,CAAC,OAAO,EAAE;QAC7E,kBAAkB,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,OAA6B;QAC3F,qBAAqB,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,OAAyC;KAC/G,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAiB,4BAA4B,CAAC,0BAA0B,CAAC,CAAC;IAElG,MAAM,cAAc,GAAG,OAAO,CAAC;IAE/B,uEAAuE;IACvE,MAAM,cAAc,GAAgC;QAClD,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI;QACjC,GAAG,OAAO;KACX,CAAC;IAEF,4CAA4C;IAC5C,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAC5E,CAAC;IAED,4BAA4B;IAC5B,2BAA2B,CAAC,cAAc,CAAC,CAAC;IAE5C,mDAAmD;IACnD,gCAAgC,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAiB,CAAC,CAAC;IAE3F,4BAA4B;IAC5B,MAAM,yBAAyB,CAAC,OAAO,EAAE;QACvC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,OAA6B;QAC3E,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,kBAAkB;IAClB,MAAM,EACJ,4BAA4B,EAC5B,gCAAgC,EAChC,SAAS,EAAE,wBAAwB,GACpC,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE;QAC5D,OAAO,EAAE;YACP,cAAc;YACd,SAAS,EAAE,kBAAkB,CAAC,UAAU,EAAE;SAC3C;QACD,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,qDAAqD;IACrD,MAAM,2BAA2B,GAAsB,MAAM,0BAA0B,CAAC,OAAO,EAAE;QAC/F,kBAAkB,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,OAA6B;QAC3F,qBAAqB,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,OAAyC;QAC9G,2BAA2B,EAAE,wBAAwB;QACrD,0BAA0B,EAAE,0BAA0B;QACtD,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,8CAA8C;IAC9C,MAAM,qBAAqB,GAA0B,MAAM,2BAA2B,CAAC,OAAO,EAAE;QAC9F,WAAW;QACX,cAAc,EAAE,cAAc;QAC9B,4BAA4B;QAC5B,gCAAgC;QAChC,iBAAiB,EAAE,2BAA2B;KAC/C,CAAC,CAAC;IAEH,OAAO,qBAAqB,CAAC;AAC/B,CAAC"}
@@ -2,6 +2,7 @@ import { recoverSigners } from '../utils-p/runtime/recoverSigners.js';
2
2
  import { assertKmsSignerThreshold, kmsSignersContextToExtraData } from '../host-contracts/KmsSignersContext-p.js';
3
3
  import { createKmsEip712Domain } from './createKmsEip712Domain.js';
4
4
  import { kmsPublicDecryptEip712Types } from './kmsPublicDecryptEip712Types.js';
5
+ import { EXTRA_DATA_V0 } from './kmsExtraData-p.js';
5
6
  ////////////////////////////////////////////////////////////////////////////////
6
7
  export async function verifyKmsPublicDecryptEip712(context, parameters) {
7
8
  const { kmsSignersContext, orderedHandles: orderedEncryptedValues, orderedAbiEncodedClearValues } = parameters;
@@ -12,15 +13,15 @@ export async function verifyKmsPublicDecryptEip712(context, parameters) {
12
13
  // Warning!!!! Do not use '0x00' here!! Only '0x' is permitted!
13
14
  //
14
15
  ////////////////////////////////////////////////////////////////////////////
15
- let signedExtraData = extraData;
16
- if (extraData === '0x00') {
17
- signedExtraData = '0x';
16
+ let signedExtraDataBytesHex = extraData.toBytesHex();
17
+ if (extraData.version === EXTRA_DATA_V0) {
18
+ signedExtraDataBytesHex = '0x';
18
19
  }
19
20
  const handlesBytes32Hex = orderedEncryptedValues.map((h) => h.bytes32Hex);
20
21
  const message = {
21
22
  ctHandles: handlesBytes32Hex,
22
23
  decryptedResult: orderedAbiEncodedClearValues,
23
- extraData: signedExtraData,
24
+ extraData: signedExtraDataBytesHex,
24
25
  };
25
26
  //////////////////////////////////////////////////////////////////////////////
26
27
  //
@@ -1 +1 @@
1
- {"version":3,"file":"verifyKmsPublicDecryptEip712-p.js","sourceRoot":"","sources":["../../../core/kms/verifyKmsPublicDecryptEip712-p.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AAClH,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAgB/E,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,OAAgB,EAAE,UAAsB;IACzF,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,GAAG,UAAU,CAAC;IAE/G,mDAAmD;IAEnD,MAAM,SAAS,GAAa,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;IAE5E,4EAA4E;IAC5E,EAAE;IACF,+DAA+D;IAC/D,EAAE;IACF,4EAA4E;IAC5E,IAAI,eAAe,GAAa,SAAS,CAAC;IAC1C,IAAI,SAAS,KAAM,MAAmB,EAAE,CAAC;QACvC,eAAe,GAAG,IAAgB,CAAC;IACrC,CAAC;IAED,MAAM,iBAAiB,GAA0B,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAEjG,MAAM,OAAO,GAAkC;QAC7C,SAAS,EAAE,iBAAiB;QAC5B,eAAe,EAAE,4BAA4B;QAC7C,SAAS,EAAE,eAAe;KAC3B,CAAC;IAEF,8EAA8E;IAC9E,EAAE;IACF,WAAW;IACX,0EAA0E;IAC1E,EAAE;IACF,8EAA8E;IAC9E,MAAM,MAAM,GAAG,qBAAqB,CAAC;QACnC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;QACvC,kCAAkC,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO;KAC7F,CAAC,CAAC;IAEH,uBAAuB;IACvB,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE;QACvD,MAAM;QACN,KAAK,EAAE,2BAA2B;QAClC,WAAW,EAAE,2BAA2B;QACxC,UAAU,EAAE,UAAU,CAAC,gCAAgC;QACvD,OAAO;KACR,CAAC,CAAC;IAEH,2CAA2C;IAC3C,wBAAwB,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"verifyKmsPublicDecryptEip712-p.js","sourceRoot":"","sources":["../../../core/kms/verifyKmsPublicDecryptEip712-p.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AAClH,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAgBpD,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,OAAgB,EAAE,UAAsB;IACzF,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,GAAG,UAAU,CAAC;IAE/G,mDAAmD;IAEnD,MAAM,SAAS,GAAiB,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;IAEhF,4EAA4E;IAC5E,EAAE;IACF,+DAA+D;IAC/D,EAAE;IACF,4EAA4E;IAC5E,IAAI,uBAAuB,GAAa,SAAS,CAAC,UAAU,EAAE,CAAC;IAC/D,IAAI,SAAS,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;QACxC,uBAAuB,GAAG,IAAgB,CAAC;IAC7C,CAAC;IAED,MAAM,iBAAiB,GAA0B,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAEjG,MAAM,OAAO,GAAkC;QAC7C,SAAS,EAAE,iBAAiB;QAC5B,eAAe,EAAE,4BAA4B;QAC7C,SAAS,EAAE,uBAAuB;KACnC,CAAC;IAEF,8EAA8E;IAC9E,EAAE;IACF,WAAW;IACX,0EAA0E;IAC1E,EAAE;IACF,8EAA8E;IAC9E,MAAM,MAAM,GAAG,qBAAqB,CAAC;QACnC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;QACvC,kCAAkC,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO;KAC7F,CAAC,CAAC;IAEH,uBAAuB;IACvB,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE;QACvD,MAAM;QACN,KAAK,EAAE,2BAA2B;QAClC,WAAW,EAAE,2BAA2B;QACxC,UAAU,EAAE,UAAU,CAAC,gCAAgC;QACvD,OAAO;KACR,CAAC,CAAC;IAEH,2CAA2C;IAC3C,wBAAwB,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;AAClE,CAAC"}
@@ -1,9 +1,9 @@
1
- import { assertIsKmsExtraData } from '../../kms/kmsExtraData.js';
2
1
  import { ensure0x, remove0x } from '../../base/string.js';
3
2
  import { getMetadata, getShares } from '../../kms/KmsSigncryptedShares-p.js';
4
3
  import { asBytesHex, bytesToHex, hexToBytes } from '../../base/bytes.js';
5
4
  import { bigintToClearValueType } from '../../handle/FheType.js';
6
5
  import { createClearValue } from '../../handle/ClearValue.js';
6
+ import { assertIsKmsExtraDataBytesHex } from '../../kms/kmsExtraData-p.js';
7
7
  ////////////////////////////////////////////////////////////////////////////////
8
8
  const PRIVATE_CLEARTEXT_TKMS_LIB_TOKEN = Symbol('CleartextTKMSLib.token');
9
9
  ////////////////////////////////////////////////////////////////////////////////
@@ -36,8 +36,8 @@ export async function decryptAndReconstruct(runtime, parameters) {
36
36
  throw new Error(`Mismatched extraData across shares: share[0]="${firstExtraData}" vs share[${i}]="${share.extraData}".`);
37
37
  }
38
38
  }
39
- const extraData = ensure0x(firstExtraData);
40
- assertIsKmsExtraData(extraData, {});
39
+ const extraDataBytesHex = ensure0x(firstExtraData);
40
+ assertIsKmsExtraDataBytesHex(extraDataBytesHex, {});
41
41
  for (let i = 0; i < sharesArray.length; ++i) {
42
42
  const s = sharesArray[i];
43
43
  if (!s) {
@@ -59,10 +59,10 @@ export async function decryptAndReconstruct(runtime, parameters) {
59
59
  throw new Error('Invalid decrypted result.');
60
60
  }
61
61
  const maskedCleartexts = decoded[0];
62
- const signedExtraData = decoded[1];
62
+ const signedExtraDataBytesHex = decoded[1];
63
63
  const cleartexts = _xorUnmaskWithPublicKey(publicKeySecp256k1, maskedCleartexts);
64
- if (extraData !== signedExtraData) {
65
- throw new Error(`extraData mismatch: share extraData="${extraData}" does not match the signed payload's extraData="${signedExtraData}".`);
64
+ if (extraDataBytesHex !== signedExtraDataBytesHex) {
65
+ throw new Error(`extraData mismatch: share extraData="${extraDataBytesHex}" does not match the signed payload's extraData="${signedExtraDataBytesHex}".`);
66
66
  }
67
67
  // 2. Build an unforgeable structure that contains the decrypted FhevmHandles
68
68
  const orderedClearValues = cleartexts.map((plaintext, idx) => {
@@ -1 +1 @@
1
- {"version":3,"file":"mock.js","sourceRoot":"","sources":["../../../../core/modules/decrypt/mock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mock.js","sourceRoot":"","sources":["../../../../core/modules/decrypt/mock.ts"],"names":[],"mappings":"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"}
@@ -14,10 +14,10 @@ import { uint32ToBytes32 } from '../../../base/uint.js';
14
14
  import { createClearValue } from '../../../handle/ClearValue.js';
15
15
  import { bytesToClearValueType } from '../../../handle/FheType.js';
16
16
  import { ensure0x, remove0x } from '../../../base/string.js';
17
- import { assertIsKmsExtraData } from '../../../kms/kmsExtraData.js';
18
17
  import { bytesToHexLarge } from '../../../base/bytes.js';
19
18
  import { initTkmsModule } from './init-p.js';
20
19
  import { getMetadata, getShares } from '../../../kms/KmsSigncryptedShares-p.js';
20
+ import { assertIsKmsExtraDataBytesHex } from '../../../kms/kmsExtraData-p.js';
21
21
  ////////////////////////////////////////////////////////////////////////////////
22
22
  const GET_NATIVE_FUNC = Symbol('TKMSLib.getNative');
23
23
  const PRIVATE_TKMS_LIB_TOKEN = Symbol('TKMSLib.token');
@@ -135,15 +135,15 @@ export async function decryptAndReconstruct(runtime, parameters) {
135
135
  if (firstShare === undefined) {
136
136
  throw new Error('Expected at least one signcrypted share.');
137
137
  }
138
- const firstExtraData = firstShare.extraData;
138
+ const firstExtraDataBytesHex = firstShare.extraData;
139
139
  for (let i = 1; i < sharesArray.length; i++) {
140
140
  const share = sharesArray[i];
141
- if (share !== undefined && share.extraData !== firstExtraData) {
142
- throw new Error(`Mismatched extraData across shares: share[0]="${firstExtraData}" vs share[${i}]="${share.extraData}".`);
141
+ if (share !== undefined && share.extraData !== firstExtraDataBytesHex) {
142
+ throw new Error(`Mismatched extraData across shares: share[0]="${firstExtraDataBytesHex}" vs share[${i}]="${share.extraData}".`);
143
143
  }
144
144
  }
145
- const extraData = ensure0x(firstExtraData);
146
- assertIsKmsExtraData(extraData, {});
145
+ const extraDataBytesHex = ensure0x(firstExtraDataBytesHex);
146
+ assertIsKmsExtraDataBytesHex(extraDataBytesHex, {});
147
147
  const aggRespWasmArg = sharesArray.map((s) => {
148
148
  return {
149
149
  signature: s.signature,
@@ -180,7 +180,7 @@ export async function decryptAndReconstruct(runtime, parameters) {
180
180
  enc_key: remove0x(publicEncKeyMlKem512WasmBytesHex),
181
181
  ciphertext_handles: metadata.handles.map((h) => h.bytes32HexNo0x),
182
182
  eip712_verifying_contract: metadata.eip712Domain.verifyingContract,
183
- extra_data: remove0x(extraData),
183
+ extra_data: remove0x(extraDataBytesHex),
184
184
  };
185
185
  //
186
186
  // About the process_user_decryption_resp_from_js's `threshold` argument:
@@ -1 +1 @@
1
- {"version":3,"file":"api-p.js","sourceRoot":"","sources":["../../../../../core/modules/decrypt/module/api-p.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-p.js","sourceRoot":"","sources":["../../../../../core/modules/decrypt/module/api-p.ts"],"names":[],"mappings":"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"}