@aztec/stdlib 0.0.1-commit.b9865e97 → 0.0.1-commit.be03c316

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 (514) hide show
  1. package/dest/abi/abi.d.ts +8 -1
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/buffer.d.ts +6 -2
  4. package/dest/abi/buffer.d.ts.map +1 -1
  5. package/dest/abi/buffer.js +13 -1
  6. package/dest/abi/contract_artifact.d.ts +1 -1
  7. package/dest/abi/contract_artifact.d.ts.map +1 -1
  8. package/dest/abi/contract_artifact.js +26 -8
  9. package/dest/avm/avm.js +1 -1
  10. package/dest/avm/avm_proving_request.d.ts +70 -70
  11. package/dest/avm/index.d.ts +1 -6
  12. package/dest/avm/index.d.ts.map +1 -1
  13. package/dest/avm/index.js +0 -5
  14. package/dest/aztec-address/index.d.ts +35 -5
  15. package/dest/aztec-address/index.d.ts.map +1 -1
  16. package/dest/aztec-address/index.js +32 -8
  17. package/dest/block/attestation_info.d.ts +1 -1
  18. package/dest/block/attestation_info.d.ts.map +1 -1
  19. package/dest/block/attestation_info.js +7 -4
  20. package/dest/block/l2_block_source.d.ts +46 -23
  21. package/dest/block/l2_block_source.d.ts.map +1 -1
  22. package/dest/block/l2_block_source.js +15 -1
  23. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  24. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  25. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  26. package/dest/block/l2_block_stream/index.d.ts +2 -1
  27. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  28. package/dest/block/l2_block_stream/index.js +1 -0
  29. package/dest/block/l2_block_stream/interfaces.d.ts +81 -11
  30. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  31. package/dest/block/l2_block_stream/interfaces.js +25 -1
  32. package/dest/block/l2_block_stream/l2_block_stream.d.ts +23 -15
  33. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  34. package/dest/block/l2_block_stream/l2_block_stream.js +149 -152
  35. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +6 -12
  36. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  37. package/dest/block/l2_block_stream/l2_tips_memory_store.js +8 -32
  38. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +17 -18
  39. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  40. package/dest/block/l2_block_stream/l2_tips_store_base.js +70 -58
  41. package/dest/block/proposal/attestations_and_signers.d.ts +19 -1
  42. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  43. package/dest/block/proposal/attestations_and_signers.js +47 -7
  44. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  45. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  46. package/dest/block/test/l2_tips_store_test_suite.js +296 -37
  47. package/dest/block/validate_block_result.d.ts +16 -1
  48. package/dest/block/validate_block_result.d.ts.map +1 -1
  49. package/dest/block/validate_block_result.js +18 -3
  50. package/dest/checkpoint/checkpoint.js +2 -2
  51. package/dest/checkpoint/index.d.ts +2 -1
  52. package/dest/checkpoint/index.d.ts.map +1 -1
  53. package/dest/checkpoint/index.js +1 -0
  54. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  55. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  56. package/dest/checkpoint/simulation_overrides.js +98 -0
  57. package/dest/checkpoint/validate.d.ts +11 -3
  58. package/dest/checkpoint/validate.d.ts.map +1 -1
  59. package/dest/checkpoint/validate.js +9 -6
  60. package/dest/config/index.d.ts +2 -1
  61. package/dest/config/index.d.ts.map +1 -1
  62. package/dest/config/index.js +1 -0
  63. package/dest/config/network-consensus-config.d.ts +72 -0
  64. package/dest/config/network-consensus-config.d.ts.map +1 -0
  65. package/dest/config/network-consensus-config.js +223 -0
  66. package/dest/config/sequencer-config.d.ts +4 -2
  67. package/dest/config/sequencer-config.d.ts.map +1 -1
  68. package/dest/config/sequencer-config.js +22 -3
  69. package/dest/contract/contract_address.d.ts +5 -4
  70. package/dest/contract/contract_address.d.ts.map +1 -1
  71. package/dest/contract/contract_class.d.ts +1 -1
  72. package/dest/contract/contract_class.d.ts.map +1 -1
  73. package/dest/contract/contract_class.js +3 -2
  74. package/dest/contract/contract_instance.d.ts +16 -2
  75. package/dest/contract/contract_instance.d.ts.map +1 -1
  76. package/dest/contract/contract_instance.js +45 -0
  77. package/dest/contract/index.d.ts +1 -2
  78. package/dest/contract/index.d.ts.map +1 -1
  79. package/dest/contract/index.js +0 -1
  80. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  81. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  82. package/dest/contract/interfaces/contract_instance.d.ts +71 -10
  83. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  84. package/dest/contract/interfaces/contract_instance.js +7 -2
  85. package/dest/contract/interfaces/node-info.d.ts +11 -1
  86. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  87. package/dest/contract/interfaces/node-info.js +7 -1
  88. package/dest/contract/partial_address.d.ts +9 -3
  89. package/dest/contract/partial_address.d.ts.map +1 -1
  90. package/dest/contract/partial_address.js +8 -2
  91. package/dest/database-version/version_manager.d.ts +18 -4
  92. package/dest/database-version/version_manager.d.ts.map +1 -1
  93. package/dest/database-version/version_manager.js +76 -6
  94. package/dest/deserialization/index.d.ts +35 -3
  95. package/dest/deserialization/index.d.ts.map +1 -1
  96. package/dest/deserialization/index.js +32 -1
  97. package/dest/file-store/factory.d.ts +1 -1
  98. package/dest/file-store/factory.d.ts.map +1 -1
  99. package/dest/file-store/factory.js +7 -0
  100. package/dest/file-store/index.d.ts +2 -1
  101. package/dest/file-store/index.d.ts.map +1 -1
  102. package/dest/file-store/index.js +1 -0
  103. package/dest/file-store/memory.d.ts +24 -0
  104. package/dest/file-store/memory.d.ts.map +1 -0
  105. package/dest/file-store/memory.js +80 -0
  106. package/dest/gas/gas_settings.d.ts +7 -13
  107. package/dest/gas/gas_settings.d.ts.map +1 -1
  108. package/dest/gas/gas_settings.js +9 -16
  109. package/dest/gas/index.d.ts +2 -1
  110. package/dest/gas/index.d.ts.map +1 -1
  111. package/dest/gas/index.js +1 -0
  112. package/dest/gas/tx_gas_limits.d.ts +72 -0
  113. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  114. package/dest/gas/tx_gas_limits.js +85 -0
  115. package/dest/ha-signing/config.d.ts +19 -5
  116. package/dest/ha-signing/config.d.ts.map +1 -1
  117. package/dest/ha-signing/config.js +9 -3
  118. package/dest/ha-signing/local_config.d.ts +10 -2
  119. package/dest/ha-signing/local_config.d.ts.map +1 -1
  120. package/dest/ha-signing/local_config.js +8 -2
  121. package/dest/hash/hash.d.ts +1 -2
  122. package/dest/hash/hash.d.ts.map +1 -1
  123. package/dest/hash/hash.js +0 -7
  124. package/dest/interfaces/archiver.d.ts +7 -9
  125. package/dest/interfaces/archiver.d.ts.map +1 -1
  126. package/dest/interfaces/archiver.js +3 -2
  127. package/dest/interfaces/aztec-node-admin.d.ts +24 -17
  128. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  129. package/dest/interfaces/aztec-node-admin.js +1 -1
  130. package/dest/interfaces/aztec-node-debug.d.ts +40 -2
  131. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -1
  132. package/dest/interfaces/aztec-node-debug.js +29 -1
  133. package/dest/interfaces/aztec-node.d.ts +69 -28
  134. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  135. package/dest/interfaces/aztec-node.js +56 -20
  136. package/dest/interfaces/block-builder.d.ts +3 -1
  137. package/dest/interfaces/block-builder.d.ts.map +1 -1
  138. package/dest/interfaces/chain_tips.d.ts +8 -47
  139. package/dest/interfaces/chain_tips.d.ts.map +1 -1
  140. package/dest/interfaces/chain_tips.js +1 -6
  141. package/dest/interfaces/checkpoint_parameter.d.ts +3 -3
  142. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -1
  143. package/dest/interfaces/checkpoint_parameter.js +3 -3
  144. package/dest/interfaces/client.d.ts +2 -1
  145. package/dest/interfaces/client.d.ts.map +1 -1
  146. package/dest/interfaces/configs.d.ts +27 -6
  147. package/dest/interfaces/configs.d.ts.map +1 -1
  148. package/dest/interfaces/configs.js +5 -1
  149. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  150. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  151. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  152. package/dest/interfaces/merkle_tree_operations.d.ts +3 -4
  153. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  154. package/dest/interfaces/p2p.d.ts +38 -9
  155. package/dest/interfaces/p2p.d.ts.map +1 -1
  156. package/dest/interfaces/p2p.js +14 -2
  157. package/dest/interfaces/private_kernel_prover.d.ts +71 -12
  158. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  159. package/dest/interfaces/prover-client.d.ts +2 -3
  160. package/dest/interfaces/prover-client.d.ts.map +1 -1
  161. package/dest/interfaces/prover-node.d.ts +12 -8
  162. package/dest/interfaces/prover-node.d.ts.map +1 -1
  163. package/dest/interfaces/prover-node.js +24 -17
  164. package/dest/interfaces/proving-job.d.ts +4 -4
  165. package/dest/interfaces/proving-job.d.ts.map +1 -1
  166. package/dest/interfaces/proving-job.js +2 -2
  167. package/dest/interfaces/server.d.ts +1 -3
  168. package/dest/interfaces/server.d.ts.map +1 -1
  169. package/dest/interfaces/server.js +0 -2
  170. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  171. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  172. package/dest/interfaces/validator.d.ts +15 -4
  173. package/dest/interfaces/validator.d.ts.map +1 -1
  174. package/dest/interfaces/validator.js +3 -1
  175. package/dest/interfaces/world_state.d.ts +14 -1
  176. package/dest/interfaces/world_state.d.ts.map +1 -1
  177. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  178. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  179. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  180. package/dest/kernel/hints/index.d.ts +1 -2
  181. package/dest/kernel/hints/index.d.ts.map +1 -1
  182. package/dest/kernel/hints/index.js +0 -1
  183. package/dest/kernel/hints/read_request.js +1 -1
  184. package/dest/kernel/index.d.ts +6 -2
  185. package/dest/kernel/index.d.ts.map +1 -1
  186. package/dest/kernel/index.js +5 -1
  187. package/dest/kernel/log_hash.d.ts +1 -1
  188. package/dest/kernel/log_hash.d.ts.map +1 -1
  189. package/dest/kernel/log_hash.js +2 -2
  190. package/dest/kernel/note_hash.js +1 -1
  191. package/dest/kernel/nullifier.js +1 -1
  192. package/dest/kernel/private_circuit_public_inputs.d.ts +13 -3
  193. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  194. package/dest/kernel/private_circuit_public_inputs.js +14 -7
  195. package/dest/kernel/private_context_inputs.d.ts +4 -3
  196. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  197. package/dest/kernel/private_context_inputs.js +7 -3
  198. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +7 -9
  199. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  200. package/dest/kernel/private_kernel_circuit_public_inputs.js +10 -7
  201. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +2 -3
  202. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -1
  203. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +3 -5
  204. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +2 -3
  205. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -1
  206. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +3 -5
  207. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  208. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  209. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  210. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  211. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  212. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  213. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  214. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  215. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  216. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  217. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  218. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  219. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  220. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  221. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  222. package/dest/kernel/private_kernel_prover_output.d.ts +4 -1
  223. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  224. package/dest/kernel/private_kernel_prover_output.js +4 -1
  225. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  226. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  227. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  228. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  229. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  230. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  231. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  232. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  233. package/dest/kernel/private_log_data.d.ts +1 -1
  234. package/dest/kernel/private_log_data.d.ts.map +1 -1
  235. package/dest/kernel/private_log_data.js +1 -1
  236. package/dest/kernel/utils/index.d.ts +1 -2
  237. package/dest/kernel/utils/index.d.ts.map +1 -1
  238. package/dest/kernel/utils/index.js +0 -1
  239. package/dest/keys/derivation.d.ts +41 -6
  240. package/dest/keys/derivation.d.ts.map +1 -1
  241. package/dest/keys/derivation.js +49 -26
  242. package/dest/logs/app_tagging_secret.d.ts +30 -7
  243. package/dest/logs/app_tagging_secret.d.ts.map +1 -1
  244. package/dest/logs/app_tagging_secret.js +46 -39
  245. package/dest/logs/app_tagging_secret_kind.js +1 -1
  246. package/dest/logs/contract_class_log.d.ts +1 -2
  247. package/dest/logs/contract_class_log.d.ts.map +1 -1
  248. package/dest/logs/contract_class_log.js +0 -4
  249. package/dest/logs/message_context.d.ts +5 -15
  250. package/dest/logs/message_context.d.ts.map +1 -1
  251. package/dest/logs/message_context.js +1 -66
  252. package/dest/logs/pending_tagged_log.d.ts +6 -8
  253. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  254. package/dest/logs/pending_tagged_log.js +1 -31
  255. package/dest/logs/shared_secret_derivation.d.ts +29 -6
  256. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  257. package/dest/logs/shared_secret_derivation.js +44 -11
  258. package/dest/messaging/l1_to_l2_message.d.ts +23 -2
  259. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  260. package/dest/messaging/l1_to_l2_message.js +36 -11
  261. package/dest/noir/index.d.ts +3 -3
  262. package/dest/noir/index.d.ts.map +1 -1
  263. package/dest/p2p/attestation_utils.d.ts +1 -1
  264. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  265. package/dest/p2p/attestation_utils.js +8 -1
  266. package/dest/p2p/checkpoint_attestation.d.ts +10 -1
  267. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  268. package/dest/p2p/checkpoint_attestation.js +10 -0
  269. package/dest/p2p/checkpoint_proposal.d.ts +2 -1
  270. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  271. package/dest/p2p/consensus_payload.d.ts +2 -1
  272. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  273. package/dest/p2p/index.d.ts +1 -2
  274. package/dest/p2p/index.d.ts.map +1 -1
  275. package/dest/p2p/index.js +0 -1
  276. package/dest/p2p/signature_utils.d.ts +10 -1
  277. package/dest/p2p/signature_utils.d.ts.map +1 -1
  278. package/dest/p2p/signature_utils.js +9 -1
  279. package/dest/rollup/avm_proof_data.d.ts +3 -3
  280. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  281. package/dest/rollup/checkpoint_header.d.ts +8 -3
  282. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  283. package/dest/rollup/checkpoint_header.js +20 -10
  284. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +1 -1
  285. package/dest/stats/stats.d.ts +2 -2
  286. package/dest/stats/stats.d.ts.map +1 -1
  287. package/dest/tests/factories.d.ts +1 -27
  288. package/dest/tests/factories.d.ts.map +1 -1
  289. package/dest/tests/factories.js +10 -45
  290. package/dest/tests/mocks.d.ts +1 -1
  291. package/dest/tests/mocks.d.ts.map +1 -1
  292. package/dest/tests/mocks.js +3 -2
  293. package/dest/timetable/budgets.d.ts +57 -0
  294. package/dest/timetable/budgets.d.ts.map +1 -0
  295. package/dest/timetable/budgets.js +56 -0
  296. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  297. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  298. package/dest/timetable/build_proposer_timetable.js +17 -0
  299. package/dest/timetable/consensus_timetable.d.ts +70 -0
  300. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  301. package/dest/timetable/consensus_timetable.js +89 -0
  302. package/dest/timetable/index.d.ts +5 -84
  303. package/dest/timetable/index.d.ts.map +1 -1
  304. package/dest/timetable/index.js +4 -209
  305. package/dest/timetable/proposer_timetable.d.ts +106 -0
  306. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  307. package/dest/timetable/proposer_timetable.js +132 -0
  308. package/dest/trees/nullifier_membership_witness.d.ts +5 -8
  309. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  310. package/dest/trees/nullifier_membership_witness.js +0 -9
  311. package/dest/trees/public_data_witness.d.ts +7 -17
  312. package/dest/trees/public_data_witness.d.ts.map +1 -1
  313. package/dest/trees/public_data_witness.js +0 -27
  314. package/dest/tx/execution_payload.d.ts +1 -1
  315. package/dest/tx/execution_payload.d.ts.map +1 -1
  316. package/dest/tx/execution_payload.js +1 -1
  317. package/dest/tx/fee_provider.d.ts +2 -2
  318. package/dest/tx/fee_provider.d.ts.map +1 -1
  319. package/dest/tx/global_variable_builder.d.ts +2 -12
  320. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  321. package/dest/tx/global_variables.js +2 -2
  322. package/dest/tx/index.d.ts +1 -2
  323. package/dest/tx/index.d.ts.map +1 -1
  324. package/dest/tx/index.js +0 -1
  325. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  326. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  327. package/dest/tx/private_tx_constant_data.js +13 -4
  328. package/dest/tx/profiling.d.ts +1 -1
  329. package/dest/tx/profiling.d.ts.map +1 -1
  330. package/dest/tx/profiling.js +2 -0
  331. package/dest/tx/simulated_tx.d.ts +10 -6
  332. package/dest/tx/simulated_tx.d.ts.map +1 -1
  333. package/dest/tx/tx.d.ts +9 -1
  334. package/dest/tx/tx.d.ts.map +1 -1
  335. package/dest/tx/tx.js +15 -0
  336. package/dest/tx/validator/error_texts.d.ts +2 -2
  337. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  338. package/dest/tx/validator/error_texts.js +1 -1
  339. package/package.json +8 -8
  340. package/src/abi/abi.ts +8 -0
  341. package/src/abi/buffer.ts +13 -1
  342. package/src/abi/contract_artifact.ts +33 -9
  343. package/src/avm/avm.ts +1 -1
  344. package/src/avm/index.ts +0 -5
  345. package/src/aztec-address/index.ts +36 -6
  346. package/src/block/attestation_info.ts +7 -2
  347. package/src/block/l2_block_source.ts +67 -13
  348. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  349. package/src/block/l2_block_stream/index.ts +1 -0
  350. package/src/block/l2_block_stream/interfaces.ts +96 -10
  351. package/src/block/l2_block_stream/l2_block_stream.ts +216 -175
  352. package/src/block/l2_block_stream/l2_tips_memory_store.ts +12 -41
  353. package/src/block/l2_block_stream/l2_tips_store_base.ts +84 -93
  354. package/src/block/proposal/attestations_and_signers.ts +53 -7
  355. package/src/block/test/l2_tips_store_test_suite.ts +270 -28
  356. package/src/block/validate_block_result.ts +48 -2
  357. package/src/checkpoint/checkpoint.ts +2 -2
  358. package/src/checkpoint/index.ts +1 -0
  359. package/src/checkpoint/simulation_overrides.ts +171 -0
  360. package/src/checkpoint/validate.ts +16 -6
  361. package/src/config/index.ts +1 -0
  362. package/src/config/network-consensus-config.ts +291 -0
  363. package/src/config/sequencer-config.ts +36 -5
  364. package/src/contract/contract_address.ts +4 -3
  365. package/src/contract/contract_class.ts +3 -2
  366. package/src/contract/contract_instance.ts +62 -1
  367. package/src/contract/index.ts +0 -1
  368. package/src/contract/interfaces/contract_data_source.ts +2 -4
  369. package/src/contract/interfaces/contract_instance.ts +26 -8
  370. package/src/contract/interfaces/node-info.ts +11 -0
  371. package/src/contract/partial_address.ts +8 -2
  372. package/src/database-version/version_manager.ts +96 -6
  373. package/src/deserialization/index.ts +35 -2
  374. package/src/file-store/factory.ts +7 -0
  375. package/src/file-store/index.ts +1 -0
  376. package/src/file-store/memory.ts +94 -0
  377. package/src/gas/README.md +199 -35
  378. package/src/gas/gas_settings.ts +11 -21
  379. package/src/gas/index.ts +1 -0
  380. package/src/gas/tx_gas_limits.ts +123 -0
  381. package/src/ha-signing/config.ts +23 -5
  382. package/src/ha-signing/local_config.ts +20 -1
  383. package/src/hash/hash.ts +0 -8
  384. package/src/interfaces/archiver.ts +8 -9
  385. package/src/interfaces/aztec-node-admin.ts +1 -1
  386. package/src/interfaces/aztec-node-debug.ts +54 -2
  387. package/src/interfaces/aztec-node.ts +121 -43
  388. package/src/interfaces/block-builder.ts +2 -0
  389. package/src/interfaces/chain_tips.ts +8 -16
  390. package/src/interfaces/checkpoint_parameter.ts +3 -3
  391. package/src/interfaces/client.ts +1 -0
  392. package/src/interfaces/configs.ts +27 -6
  393. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  394. package/src/interfaces/merkle_tree_operations.ts +2 -3
  395. package/src/interfaces/p2p.ts +29 -9
  396. package/src/interfaces/private_kernel_prover.ts +104 -13
  397. package/src/interfaces/prover-client.ts +1 -3
  398. package/src/interfaces/prover-node.ts +32 -17
  399. package/src/interfaces/proving-job.ts +3 -3
  400. package/src/interfaces/server.ts +0 -2
  401. package/src/interfaces/server_circuit_prover.ts +2 -2
  402. package/src/interfaces/validator.ts +11 -0
  403. package/src/interfaces/world_state.ts +14 -0
  404. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  405. package/src/kernel/hints/index.ts +0 -1
  406. package/src/kernel/hints/read_request.ts +1 -1
  407. package/src/kernel/index.ts +5 -1
  408. package/src/kernel/log_hash.ts +5 -2
  409. package/src/kernel/note_hash.ts +1 -1
  410. package/src/kernel/nullifier.ts +1 -1
  411. package/src/kernel/private_circuit_public_inputs.ts +12 -1
  412. package/src/kernel/private_context_inputs.ts +10 -3
  413. package/src/kernel/private_kernel_circuit_public_inputs.ts +9 -7
  414. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +0 -3
  415. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +0 -3
  416. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  417. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  418. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  419. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  420. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  421. package/src/kernel/private_kernel_prover_output.ts +4 -0
  422. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  423. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  424. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  425. package/src/kernel/private_log_data.ts +4 -1
  426. package/src/kernel/utils/index.ts +0 -1
  427. package/src/keys/derivation.ts +69 -24
  428. package/src/logs/app_tagging_secret.ts +62 -39
  429. package/src/logs/app_tagging_secret_kind.ts +1 -1
  430. package/src/logs/contract_class_log.ts +0 -9
  431. package/src/logs/message_context.ts +7 -65
  432. package/src/logs/pending_tagged_log.ts +6 -33
  433. package/src/logs/shared_secret_derivation.ts +47 -14
  434. package/src/messaging/l1_to_l2_message.ts +51 -13
  435. package/src/noir/index.ts +2 -1
  436. package/src/p2p/attestation_utils.ts +8 -1
  437. package/src/p2p/checkpoint_attestation.ts +12 -0
  438. package/src/p2p/index.ts +0 -1
  439. package/src/p2p/signature_utils.ts +9 -0
  440. package/src/rollup/avm_proof_data.ts +2 -2
  441. package/src/rollup/checkpoint_header.ts +16 -2
  442. package/src/stats/stats.ts +6 -2
  443. package/src/tests/factories.ts +13 -51
  444. package/src/tests/mocks.ts +7 -2
  445. package/src/timetable/README.md +609 -0
  446. package/src/timetable/budgets.ts +87 -0
  447. package/src/timetable/build_proposer_timetable.ts +42 -0
  448. package/src/timetable/consensus_timetable.ts +126 -0
  449. package/src/timetable/index.ts +4 -304
  450. package/src/timetable/proposer_timetable.ts +190 -0
  451. package/src/timetable/timetable-example.svg +108 -0
  452. package/src/trees/nullifier_membership_witness.ts +0 -11
  453. package/src/trees/public_data_witness.ts +0 -31
  454. package/src/tx/execution_payload.ts +2 -1
  455. package/src/tx/fee_provider.ts +1 -1
  456. package/src/tx/global_variable_builder.ts +1 -17
  457. package/src/tx/global_variables.ts +2 -2
  458. package/src/tx/index.ts +0 -1
  459. package/src/tx/private_tx_constant_data.ts +25 -2
  460. package/src/tx/profiling.ts +2 -0
  461. package/src/tx/tx.ts +17 -0
  462. package/src/tx/validator/error_texts.ts +2 -1
  463. package/dest/avm/contract_storage_read.d.ts +0 -58
  464. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  465. package/dest/avm/contract_storage_read.js +0 -65
  466. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  467. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  468. package/dest/avm/contract_storage_update_request.js +0 -80
  469. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  470. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  471. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  472. package/dest/avm/public_data_update_request.d.ts +0 -62
  473. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  474. package/dest/avm/public_data_update_request.js +0 -67
  475. package/dest/avm/public_inner_call_request.d.ts +0 -50
  476. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  477. package/dest/avm/public_inner_call_request.js +0 -74
  478. package/dest/contract/deployment_info.d.ts +0 -24
  479. package/dest/contract/deployment_info.d.ts.map +0 -1
  480. package/dest/contract/deployment_info.js +0 -3
  481. package/dest/interfaces/epoch-prover.d.ts +0 -57
  482. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  483. package/dest/interfaces/epoch-prover.js +0 -1
  484. package/dest/interfaces/prover-coordination.d.ts +0 -15
  485. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  486. package/dest/interfaces/prover-coordination.js +0 -1
  487. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  488. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  489. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  490. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  491. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  492. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  493. package/dest/kernel/utils/optional_number.d.ts +0 -31
  494. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  495. package/dest/kernel/utils/optional_number.js +0 -42
  496. package/dest/p2p/interface.d.ts +0 -5
  497. package/dest/p2p/interface.d.ts.map +0 -1
  498. package/dest/p2p/interface.js +0 -1
  499. package/dest/tx/validator/empty_validator.d.ts +0 -5
  500. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  501. package/dest/tx/validator/empty_validator.js +0 -7
  502. package/src/avm/contract_storage_read.ts +0 -77
  503. package/src/avm/contract_storage_update_request.ts +0 -93
  504. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  505. package/src/avm/public_data_update_request.ts +0 -106
  506. package/src/avm/public_inner_call_request.ts +0 -85
  507. package/src/contract/deployment_info.ts +0 -25
  508. package/src/interfaces/epoch-prover.ts +0 -72
  509. package/src/interfaces/prover-coordination.ts +0 -17
  510. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  511. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  512. package/src/kernel/utils/optional_number.ts +0 -50
  513. package/src/p2p/interface.ts +0 -4
  514. package/src/tx/validator/empty_validator.ts +0 -7
@@ -1,4 +1,5 @@
1
1
  import { type Fq, Fr } from '@aztec/foundation/curves/bn254';
2
+ import type { Point } from '@aztec/foundation/curves/grumpkin';
2
3
  import { z } from 'zod';
3
4
  import { AztecAddress } from '../aztec-address/index.js';
4
5
  import type { CompleteAddress } from '../contract/complete_address.js';
@@ -16,17 +17,32 @@ export declare class AppTaggingSecret {
16
17
  readonly kind: AppTaggingSecretKind;
17
18
  constructor(secret: Fr, app: AztecAddress, kind?: AppTaggingSecretKind);
18
19
  /**
19
- * Derives shared tagging secret and from that, the app address and recipient derives the directional app tagging
20
- * secret. Returns undefined if `externalAddress` is an invalid address.
20
+ * Derives an app-siloed, recipient-directional tagging secret from a shared tagging secret point.
21
21
  *
22
- * @param localAddress - The complete address of entity A in the shared tagging secret derivation scheme
23
- * @param localIvsk - The incoming viewing secret key of entity A
24
- * @param externalAddress - The address of entity B in the shared tagging secret derivation scheme
22
+ * App-silos the point via {@link appSiloEcdhSharedSecretPoint}, then directs the result to `recipient`:
23
+ * `h([s_app, recipient])`. The directional step stops a symmetric shared secret (ECDH against an address, or an
24
+ * arbitrary registered point) from colliding bidirectionally, so two parties never share a tag sequence.
25
+ *
26
+ * The point is obtained either via {@link computeSharedTaggingSecret} (an ECDH key exchange against a sender) or
27
+ * registered directly as a pre-shared secret.
28
+ *
29
+ * @param taggingSecretPoint - The shared tagging secret point (ECDH output, or a directly registered pre-shared secret)
25
30
  * @param app - Contract address to silo the secret to
26
31
  * @param recipient - Recipient of the log. Defines the "direction of the secret".
27
32
  * @returns The secret that can be used along with an index to compute a tag to be included in a log.
28
33
  */
29
- static computeUnconstrained(localAddress: CompleteAddress, localIvsk: Fq, externalAddress: AztecAddress, app: AztecAddress, recipient: AztecAddress): Promise<AppTaggingSecret | undefined>;
34
+ static computeDirectional(taggingSecretPoint: Point, app: AztecAddress, recipient: AztecAddress): Promise<AppTaggingSecret>;
35
+ /**
36
+ * Derives the bare app-siloed tagging secret from a shared secret point via {@link appSiloEcdhSharedSecretPoint},
37
+ * under the given delivery-mode kind.
38
+ */
39
+ static computeAppSiloed(taggingSecretPoint: Point, app: AztecAddress, kind: AppTaggingSecretKind): Promise<AppTaggingSecret>;
40
+ /**
41
+ * Derives the tagging secret for `(externalAddress, recipient, app)` by performing an ECDH key exchange against
42
+ * `externalAddress` to obtain the shared point, then siloing and directing it via {@link computeDirectional}.
43
+ * Returns undefined if `externalAddress` is not a valid address.
44
+ */
45
+ static computeViaEcdh(localAddress: CompleteAddress, localIvsk: Fq, externalAddress: AztecAddress, app: AztecAddress, recipient: AztecAddress): Promise<AppTaggingSecret | undefined>;
30
46
  toString(): string;
31
47
  static fromString(str: string): AppTaggingSecret;
32
48
  }
@@ -43,4 +59,11 @@ export declare const AppTaggingSecretSchema: z.ZodPipe<z.ZodObject<{
43
59
  secret: Fr;
44
60
  app: AztecAddress;
45
61
  }>>;
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwX3RhZ2dpbmdfc2VjcmV0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9hcHBfdGFnZ2luZ19zZWNyZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRzdELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBT3BFOzs7Ozs7R0FNRztBQUNILHFCQUFhLGdCQUFnQjthQUVULE1BQU0sRUFBRSxFQUFFO2FBQ1YsR0FBRyxFQUFFLFlBQVk7YUFDakIsSUFBSSxFQUFFLG9CQUFvQjtJQUg1QyxZQUNrQixNQUFNLEVBQUUsRUFBRSxFQUNWLEdBQUcsRUFBRSxZQUFZLEVBQ2pCLElBQUksR0FBRSxvQkFBeUQsRUFDN0U7SUFFSjs7Ozs7Ozs7OztPQVVHO0lBQ0gsT0FBYSxvQkFBb0IsQ0FDL0IsWUFBWSxFQUFFLGVBQWUsRUFDN0IsU0FBUyxFQUFFLEVBQUUsRUFDYixlQUFlLEVBQUUsWUFBWSxFQUM3QixHQUFHLEVBQUUsWUFBWSxFQUNqQixTQUFTLEVBQUUsWUFBWSxHQUN0QixPQUFPLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDLENBVXZDO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FNakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLENBZ0IvQztDQUNGO0FBRUQ7O0dBRUc7QUFDSCx3QkFBZ0IsMEJBQTBCLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxnQkFBZ0IsQ0FFeEU7QUFFRCxlQUFPLE1BQU0sc0JBQXNCOzs7Ozs7OztHQU02QyxDQUFDIn0=
62
+ /**
63
+ * Computes the shared tagging secret point between a local address (i.e. one for which the privacy keys are known) and
64
+ * an external one via a Diffie-Hellman key exchange.
65
+ *
66
+ * Returns undefined if `externalAddress` is an invalid address.
67
+ */
68
+ export declare function computeSharedTaggingSecret(localAddress: CompleteAddress, localIvsk: Fq, externalAddress: AztecAddress): Promise<Point | undefined>;
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwX3RhZ2dpbmdfc2VjcmV0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9hcHBfdGFnZ2luZ19zZWNyZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdELE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRS9ELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBUXBFOzs7Ozs7R0FNRztBQUNILHFCQUFhLGdCQUFnQjthQUVULE1BQU0sRUFBRSxFQUFFO2FBQ1YsR0FBRyxFQUFFLFlBQVk7YUFDakIsSUFBSSxFQUFFLG9CQUFvQjtJQUg1QyxZQUNrQixNQUFNLEVBQUUsRUFBRSxFQUNWLEdBQUcsRUFBRSxZQUFZLEVBQ2pCLElBQUksR0FBRSxvQkFBeUQsRUFDN0U7SUFFSjs7Ozs7Ozs7Ozs7Ozs7T0FjRztJQUNILE9BQWEsa0JBQWtCLENBQzdCLGtCQUFrQixFQUFFLEtBQUssRUFDekIsR0FBRyxFQUFFLFlBQVksRUFDakIsU0FBUyxFQUFFLFlBQVksR0FDdEIsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBSzNCO0lBRUQ7OztPQUdHO0lBQ0gsT0FBYSxnQkFBZ0IsQ0FDM0Isa0JBQWtCLEVBQUUsS0FBSyxFQUN6QixHQUFHLEVBQUUsWUFBWSxFQUNqQixJQUFJLEVBQUUsb0JBQW9CLEdBQ3pCLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUUzQjtJQUVEOzs7O09BSUc7SUFDSCxPQUFhLGNBQWMsQ0FDekIsWUFBWSxFQUFFLGVBQWUsRUFDN0IsU0FBUyxFQUFFLEVBQUUsRUFDYixlQUFlLEVBQUUsWUFBWSxFQUM3QixHQUFHLEVBQUUsWUFBWSxFQUNqQixTQUFTLEVBQUUsWUFBWSxHQUN0QixPQUFPLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDLENBT3ZDO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLENBVy9DO0NBQ0Y7QUFFRDs7R0FFRztBQUNILHdCQUFnQiwwQkFBMEIsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLGdCQUFnQixDQUV4RTtBQUVELGVBQU8sTUFBTSxzQkFBc0I7Ozs7Ozs7O0dBTTZDLENBQUM7QUFhakY7Ozs7O0dBS0c7QUFDSCx3QkFBc0IsMEJBQTBCLENBQzlDLFlBQVksRUFBRSxlQUFlLEVBQzdCLFNBQVMsRUFBRSxFQUFFLEVBQ2IsZUFBZSxFQUFFLFlBQVksR0FDNUIsT0FBTyxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsQ0FlNUIifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"app_tagging_secret.d.ts","sourceRoot":"","sources":["../../src/logs/app_tagging_secret.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAG7D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAOpE;;;;;;GAMG;AACH,qBAAa,gBAAgB;aAET,MAAM,EAAE,EAAE;aACV,GAAG,EAAE,YAAY;aACjB,IAAI,EAAE,oBAAoB;IAH5C,YACkB,MAAM,EAAE,EAAE,EACV,GAAG,EAAE,YAAY,EACjB,IAAI,GAAE,oBAAyD,EAC7E;IAEJ;;;;;;;;;;OAUG;IACH,OAAa,oBAAoB,CAC/B,YAAY,EAAE,eAAe,EAC7B,SAAS,EAAE,EAAE,EACb,eAAe,EAAE,YAAY,EAC7B,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAUvC;IAED,QAAQ,IAAI,MAAM,CAMjB;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAgB/C;CACF;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAExE;AAED,eAAO,MAAM,sBAAsB;;;;;;;;GAM6C,CAAC"}
1
+ {"version":3,"file":"app_tagging_secret.d.ts","sourceRoot":"","sources":["../../src/logs/app_tagging_secret.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAE/D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAQpE;;;;;;GAMG;AACH,qBAAa,gBAAgB;aAET,MAAM,EAAE,EAAE;aACV,GAAG,EAAE,YAAY;aACjB,IAAI,EAAE,oBAAoB;IAH5C,YACkB,MAAM,EAAE,EAAE,EACV,GAAG,EAAE,YAAY,EACjB,IAAI,GAAE,oBAAyD,EAC7E;IAEJ;;;;;;;;;;;;;;OAcG;IACH,OAAa,kBAAkB,CAC7B,kBAAkB,EAAE,KAAK,EACzB,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAK3B;IAED;;;OAGG;IACH,OAAa,gBAAgB,CAC3B,kBAAkB,EAAE,KAAK,EACzB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,oBAAoB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAE3B;IAED;;;;OAIG;IACH,OAAa,cAAc,CACzB,YAAY,EAAE,eAAe,EAC7B,SAAS,EAAE,EAAE,EACb,eAAe,EAAE,YAAY,EAC7B,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAOvC;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAW/C;CACF;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAExE;AAED,eAAO,MAAM,sBAAsB;;;;;;;;GAM6C,CAAC;AAajF;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC9C,YAAY,EAAE,eAAe,EAC7B,SAAS,EAAE,EAAE,EACb,eAAe,EAAE,YAAY,GAC5B,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAe5B"}
@@ -5,6 +5,7 @@ import { z } from 'zod';
5
5
  import { AztecAddress } from '../aztec-address/index.js';
6
6
  import { computeAddressSecret, computePreaddress } from '../keys/derivation.js';
7
7
  import { AppTaggingSecretKind } from './app_tagging_secret_kind.js';
8
+ import { appSiloEcdhSharedSecretPoint } from './shared_secret_derivation.js';
8
9
  const AppTaggingSecretKindSchema = z.union([
9
10
  z.literal(AppTaggingSecretKind.UNCONSTRAINED),
10
11
  z.literal(AppTaggingSecretKind.CONSTRAINED)
@@ -25,50 +26,54 @@ const AppTaggingSecretKindSchema = z.union([
25
26
  this.kind = kind;
26
27
  }
27
28
  /**
28
- * Derives shared tagging secret and from that, the app address and recipient derives the directional app tagging
29
- * secret. Returns undefined if `externalAddress` is an invalid address.
29
+ * Derives an app-siloed, recipient-directional tagging secret from a shared tagging secret point.
30
30
  *
31
- * @param localAddress - The complete address of entity A in the shared tagging secret derivation scheme
32
- * @param localIvsk - The incoming viewing secret key of entity A
33
- * @param externalAddress - The address of entity B in the shared tagging secret derivation scheme
31
+ * App-silos the point via {@link appSiloEcdhSharedSecretPoint}, then directs the result to `recipient`:
32
+ * `h([s_app, recipient])`. The directional step stops a symmetric shared secret (ECDH against an address, or an
33
+ * arbitrary registered point) from colliding bidirectionally, so two parties never share a tag sequence.
34
+ *
35
+ * The point is obtained either via {@link computeSharedTaggingSecret} (an ECDH key exchange against a sender) or
36
+ * registered directly as a pre-shared secret.
37
+ *
38
+ * @param taggingSecretPoint - The shared tagging secret point (ECDH output, or a directly registered pre-shared secret)
34
39
  * @param app - Contract address to silo the secret to
35
40
  * @param recipient - Recipient of the log. Defines the "direction of the secret".
36
41
  * @returns The secret that can be used along with an index to compute a tag to be included in a log.
37
- */ static async computeUnconstrained(localAddress, localIvsk, externalAddress, app, recipient) {
38
- const taggingSecretPoint = await computeSharedTaggingSecret(localAddress, localIvsk, externalAddress);
39
- if (!taggingSecretPoint) {
40
- return undefined;
41
- }
42
- const appTaggingSecret = await poseidon2Hash([
43
- taggingSecretPoint.x,
44
- taggingSecretPoint.y,
45
- app
46
- ]);
42
+ */ static async computeDirectional(taggingSecretPoint, app, recipient) {
43
+ const appSiloedSecret = await appSiloEcdhSharedSecretPoint(taggingSecretPoint, app);
47
44
  const directionalAppTaggingSecret = await poseidon2Hash([
48
- appTaggingSecret,
45
+ appSiloedSecret,
49
46
  recipient
50
47
  ]);
51
48
  return new AppTaggingSecret(directionalAppTaggingSecret, app);
52
49
  }
53
- toString() {
54
- // TODO(F-680): Migrate stored tagging keys and remove the legacy unconstrained format.
55
- if (this.kind === AppTaggingSecretKind.UNCONSTRAINED) {
56
- return `${this.secret.toString()}:${this.app.toString()}`;
50
+ /**
51
+ * Derives the bare app-siloed tagging secret from a shared secret point via {@link appSiloEcdhSharedSecretPoint},
52
+ * under the given delivery-mode kind.
53
+ */ static async computeAppSiloed(taggingSecretPoint, app, kind) {
54
+ return new AppTaggingSecret(await appSiloEcdhSharedSecretPoint(taggingSecretPoint, app), app, kind);
55
+ }
56
+ /**
57
+ * Derives the tagging secret for `(externalAddress, recipient, app)` by performing an ECDH key exchange against
58
+ * `externalAddress` to obtain the shared point, then siloing and directing it via {@link computeDirectional}.
59
+ * Returns undefined if `externalAddress` is not a valid address.
60
+ */ static async computeViaEcdh(localAddress, localIvsk, externalAddress, app, recipient) {
61
+ const taggingSecretPoint = await computeSharedTaggingSecret(localAddress, localIvsk, externalAddress);
62
+ if (!taggingSecretPoint) {
63
+ return undefined;
57
64
  }
65
+ return AppTaggingSecret.computeDirectional(taggingSecretPoint, app, recipient);
66
+ }
67
+ toString() {
58
68
  return `${this.kind}:${this.secret.toString()}:${this.app.toString()}`;
59
69
  }
60
70
  static fromString(str) {
61
71
  const parts = str.split(':');
62
- if (parts.length === 2) {
63
- // TODO(F-680): Remove legacy two-part parsing after stored tagging keys are migrated.
64
- const [secretStr, appStr] = parts;
65
- return new AppTaggingSecret(Fr.fromString(secretStr), AztecAddress.fromString(appStr));
66
- }
67
- if (parts.length === 3) {
68
- const [kindStr, secretStr, appStr] = parts;
69
- return new AppTaggingSecret(Fr.fromString(secretStr), AztecAddress.fromString(appStr), appTaggingSecretKindFromString(kindStr));
72
+ if (parts.length !== 3) {
73
+ throw new Error(`Invalid AppTaggingSecret string: ${str}`);
70
74
  }
71
- throw new Error(`Invalid AppTaggingSecret string: ${str}`);
75
+ const [kindStr, secretStr, appStr] = parts;
76
+ return new AppTaggingSecret(Fr.fromString(secretStr), AztecAddress.fromStringUnsafe(appStr), appTaggingSecretKindFromString(kindStr));
72
77
  }
73
78
  }
74
79
  /**
@@ -91,19 +96,21 @@ function appTaggingSecretKindFromString(kind) {
91
96
  throw new Error(`Invalid AppTaggingSecret kind: ${kind}`);
92
97
  }
93
98
  }
94
- // Returns shared tagging secret computed with Diffie-Hellman key exchange, or undefined if `externalAddress` is an
95
- // invalid address.
96
- async function computeSharedTaggingSecret(localAddress, localIvsk, externalAddress) {
97
- // Given A (local complete address) -> B (external address) and h == preaddress
98
- // Compute shared secret as S = (h_A + local_ivsk_A) * Addr_Point_B
99
- const knownPreaddress = await computePreaddress(await localAddress.publicKeys.hash(), localAddress.partialAddress);
99
+ /**
100
+ * Computes the shared tagging secret point between a local address (i.e. one for which the privacy keys are known) and
101
+ * an external one via a Diffie-Hellman key exchange.
102
+ *
103
+ * Returns undefined if `externalAddress` is an invalid address.
104
+ */ export async function computeSharedTaggingSecret(localAddress, localIvsk, externalAddress) {
100
105
  // An invalid address has no corresponding address point
101
106
  if (!await externalAddress.isValid()) {
102
107
  return undefined;
103
108
  }
104
109
  const externalAddressPoint = await externalAddress.toAddressPoint();
105
- // Beware! h_a + local_ivsk_a (also known as the address secret) can lead to an address point with a negative
106
- // y-coordinate, since there's two possible candidates computeAddressSecret takes care of selecting the one that
107
- // leads to a positive y-coordinate, which is the only valid address point
108
- return Grumpkin.mul(externalAddressPoint, await computeAddressSecret(knownPreaddress, localIvsk));
110
+ const localPreaddress = await computePreaddress(await localAddress.publicKeys.hash(), localAddress.partialAddress);
111
+ const localAddressSecret = await computeAddressSecret(localPreaddress, localIvsk);
112
+ // For a given local address A and external address B, the shared tagging secret S is (h_A + ivsk_A) * Addr_Point_B
113
+ // (conceptually, in reality we don't use h_A + ivsk_A directly but rather the actual address secret, which is the
114
+ // same but with an optional sign adjustment to prevent A's address point from having a negative y-coordinate).
115
+ return Grumpkin.mul(externalAddressPoint, localAddressSecret);
109
116
  }
@@ -2,7 +2,7 @@ export const AppTaggingSecretKind = {
2
2
  UNCONSTRAINED: 'unconstrained',
3
3
  CONSTRAINED: 'constrained'
4
4
  };
5
- // Keep in sync with aztec::messages::message_delivery::{ONCHAIN_UNCONSTRAINED, ONCHAIN_CONSTRAINED}.
5
+ // Keep in sync with aztec::messages::delivery::OnchainDeliveryMode.
6
6
  const ONCHAIN_UNCONSTRAINED_DELIVERY_MODE = 2;
7
7
  const ONCHAIN_CONSTRAINED_DELIVERY_MODE = 3;
8
8
  export function appTaggingSecretKindFromDeliveryMode(deliveryMode) {
@@ -43,7 +43,6 @@ export declare class ContractClassLog {
43
43
  static from(fields: FieldsOf<ContractClassLog>): ContractClassLog;
44
44
  toFields(): Fr[];
45
45
  equals(other: ContractClassLog): boolean;
46
- static fromFields(fields: Fr[] | FieldReader): ContractClassLog;
47
46
  getEmittedFields(): Fr[];
48
47
  toBlobFields(): Fr[];
49
48
  static fromBlobFields(emittedLength: number, fields: Fr[] | FieldReader): ContractClassLog;
@@ -77,4 +76,4 @@ export declare class ContractClassLog {
77
76
  static fromPlainObject(obj: any): ContractClassLog;
78
77
  [inspect.custom](): string;
79
78
  }
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfY2xhc3NfbG9nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9jb250cmFjdF9jbGFzc19sb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBc0MsTUFBTSw2QkFBNkIsQ0FBQztBQUN4SCxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpELHFCQUFhLHNCQUFzQjtJQUdkLE1BQU0sRUFBRSxFQUFFLEVBQUU7SUFBL0IsWUFBbUIsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQU05QjtJQUVELE1BQU0sS0FBSyxNQUFNOzs7O1FBTWhCO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLHNCQUFzQixDQUt2RDtJQUVELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsMEJBTzNDO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FBQztJQUNuQixRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFRakMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksMEJBTzlDO0lBRUQsTUFBTSxDQUFDLEtBQUssRUFBRSxzQkFBc0IsV0FFbkM7SUFFRCxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsTUFBTSxRQUVyQztJQUVELE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsRUFBRSxFQUFFLDBCQUkzQztJQUVELE9BQU8sWUFFTjtJQUVELE1BQU0sQ0FBQyxLQUFLLDJCQUVYO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLFNBQW9DLDBCQU05RDtJQUVLLElBQUksZ0JBRVQ7SUFFRCxLQUFLLDJCQUVKO0NBQ0Y7QUFFRCxxQkFBYSxnQkFBZ0I7SUFJbEIsZUFBZSxFQUFFLFlBQVk7SUFDN0IsTUFBTSxFQUFFLHNCQUFzQjtJQUM5QixhQUFhLEVBQUUsTUFBTTtJQUw5QixNQUFNLENBQUMsYUFBYSxTQUFnRDtJQUVwRSxZQUNTLGVBQWUsRUFBRSxZQUFZLEVBQzdCLE1BQU0sRUFBRSxzQkFBc0IsRUFDOUIsYUFBYSxFQUFFLE1BQU0sRUFDMUI7SUFFSixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsZ0JBQWdCLENBQUMsb0JBRTdDO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsTUFBTSxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsV0FNN0I7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLG9CQU8zQztJQUVELGdCQUFnQixTQUVmO0lBRUQsWUFBWSxJQUFJLEVBQUUsRUFBRSxDQUVuQjtJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxvQkFTdEU7SUFFRCxPQUFPLFlBRU47SUFFRCxNQUFNLENBQUMsS0FBSyxxQkFFWDtJQUVELFFBQVEsSUFBSSxNQUFNLENBQUM7SUFDbkIsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBUWpDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLG9CQU05QztJQUVELE9BQWEsTUFBTSw4QkFRbEI7SUFFSyxJQUFJLGdCQUVUO0lBRUQsTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7OztRQVFoQjtJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxnQkFBZ0IsQ0FTakQ7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBTXpCO0NBQ0YifQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfY2xhc3NfbG9nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9jb250cmFjdF9jbGFzc19sb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBc0MsTUFBTSw2QkFBNkIsQ0FBQztBQUN4SCxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpELHFCQUFhLHNCQUFzQjtJQUdkLE1BQU0sRUFBRSxFQUFFLEVBQUU7SUFBL0IsWUFBbUIsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQU05QjtJQUVELE1BQU0sS0FBSyxNQUFNOzs7O1FBTWhCO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLHNCQUFzQixDQUt2RDtJQUVELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsMEJBTzNDO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FBQztJQUNuQixRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFRakMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksMEJBTzlDO0lBRUQsTUFBTSxDQUFDLEtBQUssRUFBRSxzQkFBc0IsV0FFbkM7SUFFRCxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsTUFBTSxRQUVyQztJQUVELE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsRUFBRSxFQUFFLDBCQUkzQztJQUVELE9BQU8sWUFFTjtJQUVELE1BQU0sQ0FBQyxLQUFLLDJCQUVYO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLFNBQW9DLDBCQU05RDtJQUVLLElBQUksZ0JBRVQ7SUFFRCxLQUFLLDJCQUVKO0NBQ0Y7QUFFRCxxQkFBYSxnQkFBZ0I7SUFJbEIsZUFBZSxFQUFFLFlBQVk7SUFDN0IsTUFBTSxFQUFFLHNCQUFzQjtJQUM5QixhQUFhLEVBQUUsTUFBTTtJQUw5QixNQUFNLENBQUMsYUFBYSxTQUFnRDtJQUVwRSxZQUNTLGVBQWUsRUFBRSxZQUFZLEVBQzdCLE1BQU0sRUFBRSxzQkFBc0IsRUFDOUIsYUFBYSxFQUFFLE1BQU0sRUFDMUI7SUFFSixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsZ0JBQWdCLENBQUMsb0JBRTdDO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsTUFBTSxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsV0FNN0I7SUFFRCxnQkFBZ0IsU0FFZjtJQUVELFlBQVksSUFBSSxFQUFFLEVBQUUsQ0FFbkI7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsb0JBU3RFO0lBRUQsT0FBTyxZQUVOO0lBRUQsTUFBTSxDQUFDLEtBQUsscUJBRVg7SUFFRCxRQUFRLElBQUksTUFBTSxDQUFDO0lBQ25CLFFBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxHQUFHLElBQUksQ0FBQztJQVFqQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxvQkFNOUM7SUFFRCxPQUFhLE1BQU0sOEJBUWxCO0lBRUssSUFBSSxnQkFFVDtJQUVELE1BQU0sS0FBSyxNQUFNOzs7Ozs7Ozs7Ozs7UUFRaEI7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsZ0JBQWdCLENBU2pEO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxDQU16QjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"contract_class_log.d.ts","sourceRoot":"","sources":["../../src/logs/contract_class_log.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAsC,MAAM,6BAA6B,CAAC;AACxH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,qBAAa,sBAAsB;IAGd,MAAM,EAAE,EAAE,EAAE;IAA/B,YAAmB,MAAM,EAAE,EAAE,EAAE,EAM9B;IAED,MAAM,KAAK,MAAM;;;;QAMhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,sBAAsB,CAKvD;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,0BAO3C;IAED,QAAQ,IAAI,MAAM,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAQjC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,0BAO9C;IAED,MAAM,CAAC,KAAK,EAAE,sBAAsB,WAEnC;IAED,gBAAgB,CAAC,aAAa,EAAE,MAAM,QAErC;IAED,MAAM,CAAC,iBAAiB,CAAC,aAAa,EAAE,EAAE,EAAE,0BAI3C;IAED,OAAO,YAEN;IAED,MAAM,CAAC,KAAK,2BAEX;IAED,MAAM,CAAC,MAAM,CAAC,aAAa,SAAoC,0BAM9D;IAEK,IAAI,gBAET;IAED,KAAK,2BAEJ;CACF;AAED,qBAAa,gBAAgB;IAIlB,eAAe,EAAE,YAAY;IAC7B,MAAM,EAAE,sBAAsB;IAC9B,aAAa,EAAE,MAAM;IAL9B,MAAM,CAAC,aAAa,SAAgD;IAEpE,YACS,eAAe,EAAE,YAAY,EAC7B,MAAM,EAAE,sBAAsB,EAC9B,aAAa,EAAE,MAAM,EAC1B;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,oBAE7C;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,KAAK,EAAE,gBAAgB,WAM7B;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,oBAO3C;IAED,gBAAgB,SAEf;IAED,YAAY,IAAI,EAAE,EAAE,CAEnB;IAED,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,oBAStE;IAED,OAAO,YAEN;IAED,MAAM,CAAC,KAAK,qBAEX;IAED,QAAQ,IAAI,MAAM,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAQjC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,oBAM9C;IAED,OAAa,MAAM,8BAQlB;IAEK,IAAI,gBAET;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;QAQhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,gBAAgB,CASjD;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAMzB;CACF"}
1
+ {"version":3,"file":"contract_class_log.d.ts","sourceRoot":"","sources":["../../src/logs/contract_class_log.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAsC,MAAM,6BAA6B,CAAC;AACxH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,qBAAa,sBAAsB;IAGd,MAAM,EAAE,EAAE,EAAE;IAA/B,YAAmB,MAAM,EAAE,EAAE,EAAE,EAM9B;IAED,MAAM,KAAK,MAAM;;;;QAMhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,sBAAsB,CAKvD;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,0BAO3C;IAED,QAAQ,IAAI,MAAM,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAQjC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,0BAO9C;IAED,MAAM,CAAC,KAAK,EAAE,sBAAsB,WAEnC;IAED,gBAAgB,CAAC,aAAa,EAAE,MAAM,QAErC;IAED,MAAM,CAAC,iBAAiB,CAAC,aAAa,EAAE,EAAE,EAAE,0BAI3C;IAED,OAAO,YAEN;IAED,MAAM,CAAC,KAAK,2BAEX;IAED,MAAM,CAAC,MAAM,CAAC,aAAa,SAAoC,0BAM9D;IAEK,IAAI,gBAET;IAED,KAAK,2BAEJ;CACF;AAED,qBAAa,gBAAgB;IAIlB,eAAe,EAAE,YAAY;IAC7B,MAAM,EAAE,sBAAsB;IAC9B,aAAa,EAAE,MAAM;IAL9B,MAAM,CAAC,aAAa,SAAgD;IAEpE,YACS,eAAe,EAAE,YAAY,EAC7B,MAAM,EAAE,sBAAsB,EAC9B,aAAa,EAAE,MAAM,EAC1B;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,oBAE7C;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,KAAK,EAAE,gBAAgB,WAM7B;IAED,gBAAgB,SAEf;IAED,YAAY,IAAI,EAAE,EAAE,CAEnB;IAED,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,oBAStE;IAED,OAAO,YAEN;IAED,MAAM,CAAC,KAAK,qBAEX;IAED,QAAQ,IAAI,MAAM,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAQjC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,oBAM9C;IAED,OAAa,MAAM,8BAQlB;IAEK,IAAI,gBAET;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;QAQhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,gBAAgB,CASjD;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAMzB;CACF"}
@@ -110,10 +110,6 @@ export class ContractClassLog {
110
110
  equals(other) {
111
111
  return this.contractAddress.equals(other.contractAddress) && this.fields.equals(other.fields) && this.emittedLength === other.emittedLength;
112
112
  }
113
- static fromFields(fields) {
114
- const reader = FieldReader.asReader(fields);
115
- return new ContractClassLog(reader.readObject(AztecAddress), reader.readObject(ContractClassLogFields), reader.readU32());
116
- }
117
113
  getEmittedFields() {
118
114
  return this.fields.getEmittedFields(this.emittedLength);
119
115
  }
@@ -1,5 +1,5 @@
1
- import { Fr } from '@aztec/foundation/curves/bn254';
2
- import { TxHash } from '../tx/tx_hash.js';
1
+ import type { Fr } from '@aztec/foundation/curves/bn254';
2
+ import type { TxHash } from '../tx/tx_hash.js';
3
3
  /**
4
4
  * Additional information needed to process a message.
5
5
  *
@@ -9,19 +9,9 @@ import { TxHash } from '../tx/tx_hash.js';
9
9
  *
10
10
  * A TS version of `message_context.nr`.
11
11
  */
12
- export declare class MessageContext {
12
+ export type MessageContext = {
13
13
  txHash: TxHash;
14
14
  uniqueNoteHashesInTx: Fr[];
15
15
  firstNullifierInTx: Fr;
16
- constructor(txHash: TxHash, uniqueNoteHashesInTx: Fr[], firstNullifierInTx: Fr);
17
- toFields(): Fr[];
18
- toNoirStruct(): {
19
- tx_hash: Fr;
20
- unique_note_hashes_in_tx: Fr[];
21
- first_nullifier_in_tx: Fr;
22
- };
23
- static empty(): MessageContext;
24
- static toEmptyFields(): Fr[];
25
- static toSerializedOption(response: MessageContext | null): Fr[];
26
- }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZV9jb250ZXh0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9tZXNzYWdlX2NvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUxQzs7Ozs7Ozs7R0FRRztBQUNILHFCQUFhLGNBQWM7SUFFaEIsTUFBTSxFQUFFLE1BQU07SUFDZCxvQkFBb0IsRUFBRSxFQUFFLEVBQUU7SUFDMUIsa0JBQWtCLEVBQUUsRUFBRTtJQUgvQixZQUNTLE1BQU0sRUFBRSxNQUFNLEVBQ2Qsb0JBQW9CLEVBQUUsRUFBRSxFQUFFLEVBQzFCLGtCQUFrQixFQUFFLEVBQUUsRUFDM0I7SUFFSixRQUFRLElBQUksRUFBRSxFQUFFLENBTWY7SUFFRCxZQUFZOzs7O01BUVg7SUFFRCxNQUFNLENBQUMsS0FBSyxJQUFJLGNBQWMsQ0FFN0I7SUFFRCxNQUFNLENBQUMsYUFBYSxJQUFJLEVBQUUsRUFBRSxDQUkzQjtJQUVELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsY0FBYyxHQUFHLElBQUksR0FBRyxFQUFFLEVBQUUsQ0FNL0Q7Q0FDRiJ9
16
+ };
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZV9jb250ZXh0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9tZXNzYWdlX2NvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0M7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLE1BQU0sY0FBYyxHQUFHO0lBQzNCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixvQkFBb0IsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUMzQixrQkFBa0IsRUFBRSxFQUFFLENBQUM7Q0FDeEIsQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"message_context.d.ts","sourceRoot":"","sources":["../../src/logs/message_context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C;;;;;;;;GAQG;AACH,qBAAa,cAAc;IAEhB,MAAM,EAAE,MAAM;IACd,oBAAoB,EAAE,EAAE,EAAE;IAC1B,kBAAkB,EAAE,EAAE;IAH/B,YACS,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,EAAE,EAAE,EAC1B,kBAAkB,EAAE,EAAE,EAC3B;IAEJ,QAAQ,IAAI,EAAE,EAAE,CAMf;IAED,YAAY;;;;MAQX;IAED,MAAM,CAAC,KAAK,IAAI,cAAc,CAE7B;IAED,MAAM,CAAC,aAAa,IAAI,EAAE,EAAE,CAI3B;IAED,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,GAAG,EAAE,EAAE,CAM/D;CACF"}
1
+ {"version":3,"file":"message_context.d.ts","sourceRoot":"","sources":["../../src/logs/message_context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,EAAE,EAAE,CAAC;IAC3B,kBAAkB,EAAE,EAAE,CAAC;CACxB,CAAC"}
@@ -1,7 +1,3 @@
1
- import { MAX_NOTE_HASHES_PER_TX } from '@aztec/constants';
2
- import { range } from '@aztec/foundation/array';
3
- import { Fr } from '@aztec/foundation/curves/bn254';
4
- import { TxHash } from '../tx/tx_hash.js';
5
1
  /**
6
2
  * Additional information needed to process a message.
7
3
  *
@@ -10,65 +6,4 @@ import { TxHash } from '../tx/tx_hash.js';
10
6
  * hashes and the first nullifier in order to find the note's nonce.
11
7
  *
12
8
  * A TS version of `message_context.nr`.
13
- */ export class MessageContext {
14
- txHash;
15
- uniqueNoteHashesInTx;
16
- firstNullifierInTx;
17
- constructor(txHash, uniqueNoteHashesInTx, firstNullifierInTx){
18
- this.txHash = txHash;
19
- this.uniqueNoteHashesInTx = uniqueNoteHashesInTx;
20
- this.firstNullifierInTx = firstNullifierInTx;
21
- }
22
- toFields() {
23
- return [
24
- this.txHash.hash,
25
- ...serializeBoundedVec(this.uniqueNoteHashesInTx, MAX_NOTE_HASHES_PER_TX),
26
- this.firstNullifierInTx
27
- ];
28
- }
29
- toNoirStruct() {
30
- /* eslint-disable camelcase */ return {
31
- tx_hash: this.txHash.hash,
32
- unique_note_hashes_in_tx: this.uniqueNoteHashesInTx,
33
- first_nullifier_in_tx: this.firstNullifierInTx
34
- };
35
- /* eslint-enable camelcase */ }
36
- static empty() {
37
- return new MessageContext(TxHash.zero(), [], Fr.ZERO);
38
- }
39
- static toEmptyFields() {
40
- const serializationLen = 1 /* txHash */ + MAX_NOTE_HASHES_PER_TX + 1 /* uniqueNoteHashesInTx BVec */ + 1; /* firstNullifierInTx */
41
- return range(serializationLen).map((_)=>Fr.zero());
42
- }
43
- static toSerializedOption(response) {
44
- if (response) {
45
- return [
46
- new Fr(1),
47
- ...response.toFields()
48
- ];
49
- } else {
50
- return [
51
- new Fr(0),
52
- ...MessageContext.toEmptyFields()
53
- ];
54
- }
55
- }
56
- }
57
- /**
58
- * Helper function to serialize a bounded vector according to Noir's BoundedVec format
59
- * @param values - The values to serialize
60
- * @param maxLength - The maximum length of the bounded vector
61
- * @returns The serialized bounded vector as Fr[]
62
- * @dev Copied over from pending_tagged_log.ts.
63
- */ function serializeBoundedVec(values, maxLength) {
64
- if (values.length > maxLength) {
65
- throw new Error(`Attempted to serialize ${values} values into a BoundedVec with max length ${maxLength}`);
66
- }
67
- const lengthDiff = maxLength - values.length;
68
- const zeroPaddingArray = Array(lengthDiff).fill(Fr.ZERO);
69
- const storage = values.concat(zeroPaddingArray);
70
- return [
71
- ...storage,
72
- new Fr(values.length)
73
- ];
74
- }
9
+ */ export { };
@@ -1,13 +1,11 @@
1
- import { Fr } from '@aztec/foundation/curves/bn254';
2
- import type { TxHash } from '../tx/tx_hash.js';
1
+ import type { Fr } from '@aztec/foundation/curves/bn254';
2
+ import type { MessageContext } from './message_context.js';
3
3
  /**
4
4
  * Represents a pending tagged log as it is stored in the pending tagged log array to which the fetchTaggedLogs oracle
5
5
  * inserts found private logs. A TS version of `pending_tagged_log.nr`.
6
6
  */
7
- export declare class PendingTaggedLog {
7
+ export type PendingTaggedLog = {
8
8
  log: Fr[];
9
- private context;
10
- constructor(log: Fr[], txHash: TxHash, uniqueNoteHashesInTx: Fr[], firstNullifierInTx: Fr);
11
- toFields(): Fr[];
12
- }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVuZGluZ190YWdnZWRfbG9nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9wZW5kaW5nX3RhZ2dlZF9sb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRy9DOzs7R0FHRztBQUNILHFCQUFhLGdCQUFnQjtJQUlsQixHQUFHLEVBQUUsRUFBRSxFQUFFO0lBSGxCLE9BQU8sQ0FBQyxPQUFPLENBQWlCO0lBRWhDLFlBQ1MsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUNoQixNQUFNLEVBQUUsTUFBTSxFQUNkLG9CQUFvQixFQUFFLEVBQUUsRUFBRSxFQUMxQixrQkFBa0IsRUFBRSxFQUFFLEVBR3ZCO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0NBQ0YifQ==
9
+ context: MessageContext;
10
+ };
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVuZGluZ190YWdnZWRfbG9nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9wZW5kaW5nX3RhZ2dlZF9sb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFM0Q7OztHQUdHO0FBQ0gsTUFBTSxNQUFNLGdCQUFnQixHQUFHO0lBQzdCLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUNWLE9BQU8sRUFBRSxjQUFjLENBQUM7Q0FDekIsQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"pending_tagged_log.d.ts","sourceRoot":"","sources":["../../src/logs/pending_tagged_log.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG/C;;;GAGG;AACH,qBAAa,gBAAgB;IAIlB,GAAG,EAAE,EAAE,EAAE;IAHlB,OAAO,CAAC,OAAO,CAAiB;IAEhC,YACS,GAAG,EAAE,EAAE,EAAE,EAChB,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,EAAE,EAAE,EAC1B,kBAAkB,EAAE,EAAE,EAGvB;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;CACF"}
1
+ {"version":3,"file":"pending_tagged_log.d.ts","sourceRoot":"","sources":["../../src/logs/pending_tagged_log.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,EAAE,EAAE,EAAE,CAAC;IACV,OAAO,EAAE,cAAc,CAAC;CACzB,CAAC"}
@@ -1,34 +1,4 @@
1
- import { PRIVATE_LOG_SIZE_IN_FIELDS } from '@aztec/constants';
2
- import { Fr } from '@aztec/foundation/curves/bn254';
3
- import { MessageContext } from './message_context.js';
4
1
  /**
5
2
  * Represents a pending tagged log as it is stored in the pending tagged log array to which the fetchTaggedLogs oracle
6
3
  * inserts found private logs. A TS version of `pending_tagged_log.nr`.
7
- */ export class PendingTaggedLog {
8
- log;
9
- context;
10
- constructor(log, txHash, uniqueNoteHashesInTx, firstNullifierInTx){
11
- this.log = log;
12
- this.context = new MessageContext(txHash, uniqueNoteHashesInTx, firstNullifierInTx);
13
- }
14
- toFields() {
15
- return [
16
- ...serializeBoundedVec(this.log, PRIVATE_LOG_SIZE_IN_FIELDS),
17
- ...this.context.toFields()
18
- ];
19
- }
20
- }
21
- /**
22
- * Helper function to serialize a bounded vector according to Noir's BoundedVec format
23
- * @param values - The values to serialize
24
- * @param maxLength - The maximum length of the bounded vector
25
- * @returns The serialized bounded vector as Fr[]
26
- */ function serializeBoundedVec(values, maxLength) {
27
- const lengthDiff = maxLength - values.length;
28
- const zeroPaddingArray = Array(lengthDiff).fill(Fr.ZERO);
29
- const storage = values.concat(zeroPaddingArray);
30
- return [
31
- ...storage,
32
- new Fr(values.length)
33
- ];
34
- }
4
+ */ export { };
@@ -1,12 +1,16 @@
1
1
  import type { Fr } from '@aztec/foundation/curves/bn254';
2
- import type { GrumpkinScalar } from '@aztec/foundation/curves/grumpkin';
2
+ import { GrumpkinScalar, type Point } from '@aztec/foundation/curves/grumpkin';
3
3
  import type { AztecAddress } from '../aztec-address/index.js';
4
4
  import type { PublicKey } from '../keys/public_key.js';
5
5
  /**
6
- * Derives an app-siloed ECDH shared secret.
6
+ * Derives the raw ECDH shared secret point `S = secretKey * publicKey`.
7
7
  *
8
- * Computes the raw ECDH shared secret `S = secretKey * publicKey`, then app-silos it:
9
- * `s_app = h(DOM_SEP__APP_SILOED_ECDH_SHARED_SECRET, S.x, S.y, contractAddress)`
8
+ * @throws If the publicKey is zero.
9
+ */
10
+ export declare function deriveEcdhSharedSecretPoint(secretKey: GrumpkinScalar, publicKey: PublicKey): Promise<Point>;
11
+ /**
12
+ * Derives an app-siloed ECDH shared secret from keys: ECDHs `S = secretKey * publicKey` via
13
+ * {@link deriveEcdhSharedSecretPoint}, then app-silos it via {@link appSiloEcdhSharedSecretPoint}.
10
14
  *
11
15
  * @param secretKey - The secret key used to derive shared secret.
12
16
  * @param publicKey - The public key used to derive shared secret.
@@ -14,5 +18,24 @@ import type { PublicKey } from '../keys/public_key.js';
14
18
  * @returns The app-siloed shared secret as a Field.
15
19
  * @throws If the publicKey is zero.
16
20
  */
17
- export declare function deriveAppSiloedSharedSecret(secretKey: GrumpkinScalar, publicKey: PublicKey, contractAddress: AztecAddress): Promise<Fr>;
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkX3NlY3JldF9kZXJpdmF0aW9uLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9zaGFyZWRfc2VjcmV0X2Rlcml2YXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFeEUsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdkQ7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCx3QkFBc0IsMkJBQTJCLENBQy9DLFNBQVMsRUFBRSxjQUFjLEVBQ3pCLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLGVBQWUsRUFBRSxZQUFZLEdBQzVCLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FXYiJ9
21
+ export declare function appSiloEcdhSharedSecret(secretKey: GrumpkinScalar, publicKey: PublicKey, contractAddress: AztecAddress): Promise<Fr>;
22
+ /**
23
+ * App-silos a shared secret point: `s_app = h(DOM_SEP__APP_SILOED_ECDH_SHARED_SECRET, S.x, S.y, app)`.
24
+ *
25
+ * Mirrors `compute_app_siloed_shared_secret` in aztec-nr.
26
+ *
27
+ * @param point - The raw shared secret point `S`.
28
+ * @param app - The contract address to silo to.
29
+ */
30
+ export declare function appSiloEcdhSharedSecretPoint(point: Point, app: AztecAddress): Promise<Fr>;
31
+ /**
32
+ * Protects a handshake's shared secret from being forged by the recipient: `S' = hash(ephPk, recipientPoint) * S`.
33
+ *
34
+ * Mirrors aztec-nr's `protect_from_forgery` and must stay byte-compatible with it.
35
+ *
36
+ * @param secret - The raw shared secret `S` to protect.
37
+ * @param ephPk - The handshake's ephemeral public key.
38
+ * @param recipientPoint - The recipient's address point.
39
+ */
40
+ export declare function protectFromForgery(secret: Point, ephPk: Point, recipientPoint: Point): Promise<Point>;
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkX3NlY3JldF9kZXJpdmF0aW9uLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9zaGFyZWRfc2VjcmV0X2Rlcml2YXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxLQUFLLEtBQUssRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRS9FLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXZEOzs7O0dBSUc7QUFDSCx3QkFBZ0IsMkJBQTJCLENBQUMsU0FBUyxFQUFFLGNBQWMsRUFBRSxTQUFTLEVBQUUsU0FBUyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FPM0c7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCx3QkFBc0IsdUJBQXVCLENBQzNDLFNBQVMsRUFBRSxjQUFjLEVBQ3pCLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLGVBQWUsRUFBRSxZQUFZLEdBQzVCLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FHYjtBQUVEOzs7Ozs7O0dBT0c7QUFDSCx3QkFBZ0IsNEJBQTRCLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsWUFBWSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFekY7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILHdCQUFzQixrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBTTNHIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"shared_secret_derivation.d.ts","sourceRoot":"","sources":["../../src/logs/shared_secret_derivation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAExE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;;;;;;;;GAWG;AACH,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,cAAc,EACzB,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,YAAY,GAC5B,OAAO,CAAC,EAAE,CAAC,CAWb"}
1
+ {"version":3,"file":"shared_secret_derivation.d.ts","sourceRoot":"","sources":["../../src/logs/shared_secret_derivation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,KAAK,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAE/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAO3G;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,cAAc,EACzB,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,YAAY,GAC5B,OAAO,CAAC,EAAE,CAAC,CAGb;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzF;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAM3G"}
@@ -1,25 +1,58 @@
1
1
  import { DomainSeparator } from '@aztec/constants';
2
2
  import { Grumpkin } from '@aztec/foundation/crypto/grumpkin';
3
3
  import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
4
+ import { GrumpkinScalar } from '@aztec/foundation/curves/grumpkin';
4
5
  /**
5
- * Derives an app-siloed ECDH shared secret.
6
+ * Derives the raw ECDH shared secret point `S = secretKey * publicKey`.
6
7
  *
7
- * Computes the raw ECDH shared secret `S = secretKey * publicKey`, then app-silos it:
8
- * `s_app = h(DOM_SEP__APP_SILOED_ECDH_SHARED_SECRET, S.x, S.y, contractAddress)`
8
+ * @throws If the publicKey is zero.
9
+ */ export function deriveEcdhSharedSecretPoint(secretKey, publicKey) {
10
+ if (publicKey.isZero()) {
11
+ throw new Error(`Attempting to derive a shared secret with a zero public key. You have probably passed a zero public key in your Noir code somewhere thinking that the note won't be broadcast... but it was.`);
12
+ }
13
+ return Grumpkin.mul(publicKey, secretKey);
14
+ }
15
+ /**
16
+ * Derives an app-siloed ECDH shared secret from keys: ECDHs `S = secretKey * publicKey` via
17
+ * {@link deriveEcdhSharedSecretPoint}, then app-silos it via {@link appSiloEcdhSharedSecretPoint}.
9
18
  *
10
19
  * @param secretKey - The secret key used to derive shared secret.
11
20
  * @param publicKey - The public key used to derive shared secret.
12
21
  * @param contractAddress - The address of the calling contract, used for app-siloing.
13
22
  * @returns The app-siloed shared secret as a Field.
14
23
  * @throws If the publicKey is zero.
15
- */ export async function deriveAppSiloedSharedSecret(secretKey, publicKey, contractAddress) {
16
- if (publicKey.isZero()) {
17
- throw new Error(`Attempting to derive a shared secret with a zero public key. You have probably passed a zero public key in your Noir code somewhere thinking that the note won't be broadcast... but it was.`);
18
- }
19
- const rawSharedSecret = await Grumpkin.mul(publicKey, secretKey);
24
+ */ export async function appSiloEcdhSharedSecret(secretKey, publicKey, contractAddress) {
25
+ const rawSharedSecret = await deriveEcdhSharedSecretPoint(secretKey, publicKey);
26
+ return appSiloEcdhSharedSecretPoint(rawSharedSecret, contractAddress);
27
+ }
28
+ /**
29
+ * App-silos a shared secret point: `s_app = h(DOM_SEP__APP_SILOED_ECDH_SHARED_SECRET, S.x, S.y, app)`.
30
+ *
31
+ * Mirrors `compute_app_siloed_shared_secret` in aztec-nr.
32
+ *
33
+ * @param point - The raw shared secret point `S`.
34
+ * @param app - The contract address to silo to.
35
+ */ export function appSiloEcdhSharedSecretPoint(point, app) {
20
36
  return poseidon2HashWithSeparator([
21
- rawSharedSecret.x,
22
- rawSharedSecret.y,
23
- contractAddress
37
+ point.x,
38
+ point.y,
39
+ app
24
40
  ], DomainSeparator.APP_SILOED_ECDH_SHARED_SECRET);
25
41
  }
42
+ /**
43
+ * Protects a handshake's shared secret from being forged by the recipient: `S' = hash(ephPk, recipientPoint) * S`.
44
+ *
45
+ * Mirrors aztec-nr's `protect_from_forgery` and must stay byte-compatible with it.
46
+ *
47
+ * @param secret - The raw shared secret `S` to protect.
48
+ * @param ephPk - The handshake's ephemeral public key.
49
+ * @param recipientPoint - The recipient's address point.
50
+ */ export async function protectFromForgery(secret, ephPk, recipientPoint) {
51
+ const scalar = await poseidon2HashWithSeparator([
52
+ ephPk.x,
53
+ ephPk.y,
54
+ recipientPoint.x,
55
+ recipientPoint.y
56
+ ], DomainSeparator.HANDSHAKE_FORGERY_PROTECTION);
57
+ return Grumpkin.mul(secret, new GrumpkinScalar(scalar.toBigInt()));
58
+ }
@@ -1,4 +1,4 @@
1
- import type { L1_TO_L2_MSG_TREE_HEIGHT } from '@aztec/constants';
1
+ import { type L1_TO_L2_MSG_TREE_HEIGHT } from '@aztec/constants';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader } from '@aztec/foundation/serialize';
4
4
  import { SiblingPath } from '@aztec/foundation/trees';
@@ -45,5 +45,26 @@ export declare class L1ToL2Message {
45
45
  static empty(): L1ToL2Message;
46
46
  static random(): Promise<L1ToL2Message>;
47
47
  }
48
+ /**
49
+ * The unsiloed nullifier a message consumer derives, together with the contract address needed to silo it.
50
+ */
51
+ export interface UnsiloedMessageNullifier {
52
+ contractAddress: AztecAddress;
53
+ nullifier: Fr;
54
+ }
55
+ /**
56
+ * Computes the unsiloed nullifier that the fee juice contract (and any consumer following the same scheme) derives when
57
+ * consuming an L1 to L2 message.
58
+ *
59
+ * This is not a general-purpose utility: other contracts may derive the secret hash and hence the nullifier
60
+ * differently. The result is unsiloed — callers silo it (with the consuming contract's address) before looking it up
61
+ * in the nullifier tree.
62
+ */
63
+ export declare function computeFeeJuiceMessageNullifier(messageHash: Fr, secret: Fr): Promise<Fr>;
64
+ /**
65
+ * Fetches the membership witness of an L1 to L2 message. When `unsiloedNullifier` is provided, the message is
66
+ * additionally required to be un-nullified.
67
+ */
68
+ export declare function getL1ToL2MessageWitness(node: AztecNode, messageHash: Fr, unsiloedNullifier?: UnsiloedMessageNullifier, referenceBlock?: BlockParameter): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>]>;
48
69
  export declare function getNonNullifiedL1ToL2MessageWitness(node: AztecNode, contractAddress: AztecAddress, messageHash: Fr, secret: Fr, referenceBlock?: BlockParameter): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>]>;
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfdG9fbDJfbWVzc2FnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMV90b19sMl9tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFFOUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXRELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRWxFLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTdELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4Qzs7R0FFRztBQUNILHFCQUFhLGFBQWE7SUFFdEIsdUNBQXVDO2FBQ3ZCLE1BQU0sRUFBRSxPQUFPO0lBQy9CLDBDQUEwQzthQUMxQixTQUFTLEVBQUUsT0FBTztJQUNsQywyQkFBMkI7YUFDWCxPQUFPLEVBQUUsRUFBRTtJQUMzQix1Q0FBdUM7YUFDdkIsVUFBVSxFQUFFLEVBQUU7SUFDOUIsZ0RBQWdEO2FBQ2hDLEtBQUssRUFBRSxFQUFFO0lBVjNCO0lBQ0UsdUNBQXVDO0lBQ3ZCLE1BQU0sRUFBRSxPQUFPO0lBQy9CLDBDQUEwQztJQUMxQixTQUFTLEVBQUUsT0FBTztJQUNsQywyQkFBMkI7SUFDWCxPQUFPLEVBQUUsRUFBRTtJQUMzQix1Q0FBdUM7SUFDdkIsVUFBVSxFQUFFLEVBQUU7SUFDOUIsZ0RBQWdEO0lBQ2hDLEtBQUssRUFBRSxFQUFFLEVBQ3ZCO0lBRUo7OztPQUdHO0lBQ0gsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxJQUFJLElBQUksRUFBRSxDQUVUO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxhQUFhLENBUTlEO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxNQUFNLEdBQUcsYUFBYSxDQUc3QztJQUVELE1BQU0sQ0FBQyxLQUFLLElBQUksYUFBYSxDQUU1QjtJQUVELE9BQWEsTUFBTSxJQUFJLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FFNUM7Q0FDRjtBQUdELHdCQUFzQixtQ0FBbUMsQ0FDdkQsSUFBSSxFQUFFLFNBQVMsRUFDZixlQUFlLEVBQUUsWUFBWSxFQUM3QixXQUFXLEVBQUUsRUFBRSxFQUNmLE1BQU0sRUFBRSxFQUFFLEVBQ1YsY0FBYyxHQUFFLGNBQXlCLEdBQ3hDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsQ0FpQmpFIn0=
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfdG9fbDJfbWVzc2FnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMV90b19sMl9tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUIsS0FBSyx3QkFBd0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR2xGLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVsRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEM7O0dBRUc7QUFDSCxxQkFBYSxhQUFhO0lBRXRCLHVDQUF1QzthQUN2QixNQUFNLEVBQUUsT0FBTztJQUMvQiwwQ0FBMEM7YUFDMUIsU0FBUyxFQUFFLE9BQU87SUFDbEMsMkJBQTJCO2FBQ1gsT0FBTyxFQUFFLEVBQUU7SUFDM0IsdUNBQXVDO2FBQ3ZCLFVBQVUsRUFBRSxFQUFFO0lBQzlCLGdEQUFnRDthQUNoQyxLQUFLLEVBQUUsRUFBRTtJQVYzQjtJQUNFLHVDQUF1QztJQUN2QixNQUFNLEVBQUUsT0FBTztJQUMvQiwwQ0FBMEM7SUFDMUIsU0FBUyxFQUFFLE9BQU87SUFDbEMsMkJBQTJCO0lBQ1gsT0FBTyxFQUFFLEVBQUU7SUFDM0IsdUNBQXVDO0lBQ3ZCLFVBQVUsRUFBRSxFQUFFO0lBQzlCLGdEQUFnRDtJQUNoQyxLQUFLLEVBQUUsRUFBRSxFQUN2QjtJQUVKOzs7T0FHRztJQUNILFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsSUFBSSxJQUFJLEVBQUUsQ0FFVDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsYUFBYSxDQVE5RDtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxHQUFHLGFBQWEsQ0FHN0M7SUFFRCxNQUFNLENBQUMsS0FBSyxJQUFJLGFBQWEsQ0FFNUI7SUFFRCxPQUFhLE1BQU0sSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLENBRTVDO0NBQ0Y7QUFFRDs7R0FFRztBQUNILE1BQU0sV0FBVyx3QkFBd0I7SUFDdkMsZUFBZSxFQUFFLFlBQVksQ0FBQztJQUM5QixTQUFTLEVBQUUsRUFBRSxDQUFDO0NBQ2Y7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsd0JBQWdCLCtCQUErQixDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRXhGO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQXNCLHVCQUF1QixDQUMzQyxJQUFJLEVBQUUsU0FBUyxFQUNmLFdBQVcsRUFBRSxFQUFFLEVBQ2YsaUJBQWlCLENBQUMsRUFBRSx3QkFBd0IsRUFDNUMsY0FBYyxHQUFFLGNBQXlCLEdBQ3hDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsQ0FvQmpFO0FBR0Qsd0JBQXNCLG1DQUFtQyxDQUN2RCxJQUFJLEVBQUUsU0FBUyxFQUNmLGVBQWUsRUFBRSxZQUFZLEVBQzdCLFdBQVcsRUFBRSxFQUFFLEVBQ2YsTUFBTSxFQUFFLEVBQUUsRUFDVixjQUFjLEdBQUUsY0FBeUIsR0FDeEMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxPQUFPLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxDQUdqRSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"l1_to_l2_message.d.ts","sourceRoot":"","sources":["../../src/messaging/l1_to_l2_message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,qBAAa,aAAa;IAEtB,uCAAuC;aACvB,MAAM,EAAE,OAAO;IAC/B,0CAA0C;aAC1B,SAAS,EAAE,OAAO;IAClC,2BAA2B;aACX,OAAO,EAAE,EAAE;IAC3B,uCAAuC;aACvB,UAAU,EAAE,EAAE;IAC9B,gDAAgD;aAChC,KAAK,EAAE,EAAE;IAV3B;IACE,uCAAuC;IACvB,MAAM,EAAE,OAAO;IAC/B,0CAA0C;IAC1B,SAAS,EAAE,OAAO;IAClC,2BAA2B;IACX,OAAO,EAAE,EAAE;IAC3B,uCAAuC;IACvB,UAAU,EAAE,EAAE;IAC9B,gDAAgD;IAChC,KAAK,EAAE,EAAE,EACvB;IAEJ;;;OAGG;IACH,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,EAAE,CAET;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,CAQ9D;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAG7C;IAED,MAAM,CAAC,KAAK,IAAI,aAAa,CAE5B;IAED,OAAa,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC,CAE5C;CACF;AAGD,wBAAsB,mCAAmC,CACvD,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,EAAE,EACf,MAAM,EAAE,EAAE,EACV,cAAc,GAAE,cAAyB,GACxC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAiBjE"}
1
+ {"version":3,"file":"l1_to_l2_message.d.ts","sourceRoot":"","sources":["../../src/messaging/l1_to_l2_message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAGlF,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,qBAAa,aAAa;IAEtB,uCAAuC;aACvB,MAAM,EAAE,OAAO;IAC/B,0CAA0C;aAC1B,SAAS,EAAE,OAAO;IAClC,2BAA2B;aACX,OAAO,EAAE,EAAE;IAC3B,uCAAuC;aACvB,UAAU,EAAE,EAAE;IAC9B,gDAAgD;aAChC,KAAK,EAAE,EAAE;IAV3B;IACE,uCAAuC;IACvB,MAAM,EAAE,OAAO;IAC/B,0CAA0C;IAC1B,SAAS,EAAE,OAAO;IAClC,2BAA2B;IACX,OAAO,EAAE,EAAE;IAC3B,uCAAuC;IACvB,UAAU,EAAE,EAAE;IAC9B,gDAAgD;IAChC,KAAK,EAAE,EAAE,EACvB;IAEJ;;;OAGG;IACH,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,EAAE,CAET;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,CAQ9D;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAG7C;IAED,MAAM,CAAC,KAAK,IAAI,aAAa,CAE5B;IAED,OAAa,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC,CAE5C;CACF;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,eAAe,EAAE,YAAY,CAAC;IAC9B,SAAS,EAAE,EAAE,CAAC;CACf;AAED;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAAC,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAExF;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,SAAS,EACf,WAAW,EAAE,EAAE,EACf,iBAAiB,CAAC,EAAE,wBAAwB,EAC5C,cAAc,GAAE,cAAyB,GACxC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAoBjE;AAGD,wBAAsB,mCAAmC,CACvD,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,EAAE,EACf,MAAM,EAAE,EAAE,EACV,cAAc,GAAE,cAAyB,GACxC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAGjE"}