@aztec/stdlib 6.0.0-nightly.20260604 → 6.0.0-nightly.20260721

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 (499) hide show
  1. package/dest/abi/buffer.d.ts +6 -2
  2. package/dest/abi/buffer.d.ts.map +1 -1
  3. package/dest/abi/buffer.js +13 -1
  4. package/dest/avm/avm.js +1 -1
  5. package/dest/avm/avm_proving_request.d.ts +70 -70
  6. package/dest/avm/index.d.ts +1 -6
  7. package/dest/avm/index.d.ts.map +1 -1
  8. package/dest/avm/index.js +0 -5
  9. package/dest/aztec-address/index.d.ts +35 -5
  10. package/dest/aztec-address/index.d.ts.map +1 -1
  11. package/dest/aztec-address/index.js +32 -8
  12. package/dest/block/attestation_info.d.ts +1 -1
  13. package/dest/block/attestation_info.d.ts.map +1 -1
  14. package/dest/block/attestation_info.js +7 -4
  15. package/dest/block/l2_block_source.d.ts +46 -23
  16. package/dest/block/l2_block_source.d.ts.map +1 -1
  17. package/dest/block/l2_block_source.js +15 -1
  18. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  19. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  20. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  21. package/dest/block/l2_block_stream/index.d.ts +2 -1
  22. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  23. package/dest/block/l2_block_stream/index.js +1 -0
  24. package/dest/block/l2_block_stream/interfaces.d.ts +81 -11
  25. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  26. package/dest/block/l2_block_stream/interfaces.js +25 -1
  27. package/dest/block/l2_block_stream/l2_block_stream.d.ts +23 -15
  28. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  29. package/dest/block/l2_block_stream/l2_block_stream.js +149 -152
  30. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +6 -12
  31. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  32. package/dest/block/l2_block_stream/l2_tips_memory_store.js +8 -32
  33. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +17 -18
  34. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  35. package/dest/block/l2_block_stream/l2_tips_store_base.js +70 -58
  36. package/dest/block/proposal/attestations_and_signers.d.ts +19 -1
  37. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  38. package/dest/block/proposal/attestations_and_signers.js +47 -7
  39. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  40. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  41. package/dest/block/test/l2_tips_store_test_suite.js +296 -37
  42. package/dest/block/validate_block_result.d.ts +16 -1
  43. package/dest/block/validate_block_result.d.ts.map +1 -1
  44. package/dest/block/validate_block_result.js +18 -3
  45. package/dest/checkpoint/checkpoint.js +2 -2
  46. package/dest/checkpoint/index.d.ts +2 -1
  47. package/dest/checkpoint/index.d.ts.map +1 -1
  48. package/dest/checkpoint/index.js +1 -0
  49. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  50. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  51. package/dest/checkpoint/simulation_overrides.js +98 -0
  52. package/dest/checkpoint/validate.d.ts +11 -3
  53. package/dest/checkpoint/validate.d.ts.map +1 -1
  54. package/dest/checkpoint/validate.js +9 -6
  55. package/dest/config/index.d.ts +2 -1
  56. package/dest/config/index.d.ts.map +1 -1
  57. package/dest/config/index.js +1 -0
  58. package/dest/config/network-consensus-config.d.ts +72 -0
  59. package/dest/config/network-consensus-config.d.ts.map +1 -0
  60. package/dest/config/network-consensus-config.js +223 -0
  61. package/dest/config/sequencer-config.d.ts +4 -2
  62. package/dest/config/sequencer-config.d.ts.map +1 -1
  63. package/dest/config/sequencer-config.js +22 -3
  64. package/dest/contract/contract_address.d.ts +5 -4
  65. package/dest/contract/contract_address.d.ts.map +1 -1
  66. package/dest/contract/contract_class.d.ts +1 -1
  67. package/dest/contract/contract_class.d.ts.map +1 -1
  68. package/dest/contract/contract_class.js +3 -2
  69. package/dest/contract/contract_instance.d.ts +16 -2
  70. package/dest/contract/contract_instance.d.ts.map +1 -1
  71. package/dest/contract/contract_instance.js +45 -0
  72. package/dest/contract/index.d.ts +1 -2
  73. package/dest/contract/index.d.ts.map +1 -1
  74. package/dest/contract/index.js +0 -1
  75. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  76. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  77. package/dest/contract/interfaces/contract_instance.d.ts +71 -10
  78. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  79. package/dest/contract/interfaces/contract_instance.js +7 -2
  80. package/dest/contract/interfaces/node-info.d.ts +11 -1
  81. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  82. package/dest/contract/interfaces/node-info.js +7 -1
  83. package/dest/contract/partial_address.d.ts +9 -3
  84. package/dest/contract/partial_address.d.ts.map +1 -1
  85. package/dest/contract/partial_address.js +8 -2
  86. package/dest/database-version/version_manager.d.ts +18 -4
  87. package/dest/database-version/version_manager.d.ts.map +1 -1
  88. package/dest/database-version/version_manager.js +76 -6
  89. package/dest/deserialization/index.d.ts +35 -3
  90. package/dest/deserialization/index.d.ts.map +1 -1
  91. package/dest/deserialization/index.js +32 -1
  92. package/dest/file-store/factory.d.ts +1 -1
  93. package/dest/file-store/factory.d.ts.map +1 -1
  94. package/dest/file-store/factory.js +7 -0
  95. package/dest/file-store/index.d.ts +2 -1
  96. package/dest/file-store/index.d.ts.map +1 -1
  97. package/dest/file-store/index.js +1 -0
  98. package/dest/file-store/memory.d.ts +24 -0
  99. package/dest/file-store/memory.d.ts.map +1 -0
  100. package/dest/file-store/memory.js +80 -0
  101. package/dest/gas/gas_settings.d.ts +7 -13
  102. package/dest/gas/gas_settings.d.ts.map +1 -1
  103. package/dest/gas/gas_settings.js +9 -16
  104. package/dest/gas/index.d.ts +2 -1
  105. package/dest/gas/index.d.ts.map +1 -1
  106. package/dest/gas/index.js +1 -0
  107. package/dest/gas/tx_gas_limits.d.ts +72 -0
  108. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  109. package/dest/gas/tx_gas_limits.js +85 -0
  110. package/dest/ha-signing/config.d.ts +19 -5
  111. package/dest/ha-signing/config.d.ts.map +1 -1
  112. package/dest/ha-signing/config.js +9 -3
  113. package/dest/ha-signing/local_config.d.ts +10 -2
  114. package/dest/ha-signing/local_config.d.ts.map +1 -1
  115. package/dest/ha-signing/local_config.js +8 -2
  116. package/dest/interfaces/archiver.d.ts +7 -9
  117. package/dest/interfaces/archiver.d.ts.map +1 -1
  118. package/dest/interfaces/archiver.js +3 -2
  119. package/dest/interfaces/aztec-node-admin.d.ts +24 -17
  120. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  121. package/dest/interfaces/aztec-node-admin.js +1 -1
  122. package/dest/interfaces/aztec-node-debug.d.ts +40 -2
  123. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -1
  124. package/dest/interfaces/aztec-node-debug.js +29 -1
  125. package/dest/interfaces/aztec-node.d.ts +69 -28
  126. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  127. package/dest/interfaces/aztec-node.js +56 -20
  128. package/dest/interfaces/block-builder.d.ts +3 -1
  129. package/dest/interfaces/block-builder.d.ts.map +1 -1
  130. package/dest/interfaces/chain_tips.d.ts +8 -47
  131. package/dest/interfaces/chain_tips.d.ts.map +1 -1
  132. package/dest/interfaces/chain_tips.js +1 -6
  133. package/dest/interfaces/checkpoint_parameter.d.ts +3 -3
  134. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -1
  135. package/dest/interfaces/checkpoint_parameter.js +3 -3
  136. package/dest/interfaces/client.d.ts +2 -1
  137. package/dest/interfaces/client.d.ts.map +1 -1
  138. package/dest/interfaces/configs.d.ts +27 -6
  139. package/dest/interfaces/configs.d.ts.map +1 -1
  140. package/dest/interfaces/configs.js +5 -1
  141. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  142. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  143. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  144. package/dest/interfaces/merkle_tree_operations.d.ts +8 -3
  145. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  146. package/dest/interfaces/p2p.d.ts +38 -9
  147. package/dest/interfaces/p2p.d.ts.map +1 -1
  148. package/dest/interfaces/p2p.js +14 -2
  149. package/dest/interfaces/private_kernel_prover.d.ts +71 -12
  150. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  151. package/dest/interfaces/prover-client.d.ts +2 -3
  152. package/dest/interfaces/prover-client.d.ts.map +1 -1
  153. package/dest/interfaces/prover-node.d.ts +12 -8
  154. package/dest/interfaces/prover-node.d.ts.map +1 -1
  155. package/dest/interfaces/prover-node.js +24 -17
  156. package/dest/interfaces/proving-job.d.ts +4 -4
  157. package/dest/interfaces/proving-job.d.ts.map +1 -1
  158. package/dest/interfaces/proving-job.js +2 -2
  159. package/dest/interfaces/server.d.ts +1 -3
  160. package/dest/interfaces/server.d.ts.map +1 -1
  161. package/dest/interfaces/server.js +0 -2
  162. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  163. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  164. package/dest/interfaces/validator.d.ts +15 -4
  165. package/dest/interfaces/validator.d.ts.map +1 -1
  166. package/dest/interfaces/validator.js +3 -1
  167. package/dest/interfaces/world_state.d.ts +14 -1
  168. package/dest/interfaces/world_state.d.ts.map +1 -1
  169. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  170. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  171. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  172. package/dest/kernel/hints/index.d.ts +1 -2
  173. package/dest/kernel/hints/index.d.ts.map +1 -1
  174. package/dest/kernel/hints/index.js +0 -1
  175. package/dest/kernel/hints/read_request.js +1 -1
  176. package/dest/kernel/index.d.ts +6 -2
  177. package/dest/kernel/index.d.ts.map +1 -1
  178. package/dest/kernel/index.js +5 -1
  179. package/dest/kernel/log_hash.d.ts +1 -1
  180. package/dest/kernel/log_hash.d.ts.map +1 -1
  181. package/dest/kernel/log_hash.js +2 -2
  182. package/dest/kernel/note_hash.js +1 -1
  183. package/dest/kernel/nullifier.js +1 -1
  184. package/dest/kernel/private_circuit_public_inputs.d.ts +13 -3
  185. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  186. package/dest/kernel/private_circuit_public_inputs.js +14 -7
  187. package/dest/kernel/private_context_inputs.d.ts +4 -3
  188. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  189. package/dest/kernel/private_context_inputs.js +7 -3
  190. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +7 -9
  191. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  192. package/dest/kernel/private_kernel_circuit_public_inputs.js +10 -7
  193. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +2 -3
  194. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -1
  195. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +3 -5
  196. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +2 -3
  197. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -1
  198. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +3 -5
  199. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  200. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  201. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  202. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  203. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  204. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  205. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  206. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  207. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  208. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  209. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  210. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  211. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  212. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  213. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  214. package/dest/kernel/private_kernel_prover_output.d.ts +4 -1
  215. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  216. package/dest/kernel/private_kernel_prover_output.js +4 -1
  217. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  218. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  219. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  220. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  221. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  222. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  223. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  224. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  225. package/dest/kernel/private_log_data.d.ts +1 -1
  226. package/dest/kernel/private_log_data.d.ts.map +1 -1
  227. package/dest/kernel/private_log_data.js +1 -1
  228. package/dest/kernel/utils/index.d.ts +1 -2
  229. package/dest/kernel/utils/index.d.ts.map +1 -1
  230. package/dest/kernel/utils/index.js +0 -1
  231. package/dest/keys/derivation.d.ts +41 -5
  232. package/dest/keys/derivation.d.ts.map +1 -1
  233. package/dest/keys/derivation.js +53 -23
  234. package/dest/logs/app_tagging_secret.d.ts +30 -7
  235. package/dest/logs/app_tagging_secret.d.ts.map +1 -1
  236. package/dest/logs/app_tagging_secret.js +44 -28
  237. package/dest/logs/app_tagging_secret_kind.js +1 -1
  238. package/dest/logs/contract_class_log.d.ts +1 -2
  239. package/dest/logs/contract_class_log.d.ts.map +1 -1
  240. package/dest/logs/contract_class_log.js +0 -4
  241. package/dest/logs/message_context.d.ts +5 -15
  242. package/dest/logs/message_context.d.ts.map +1 -1
  243. package/dest/logs/message_context.js +1 -66
  244. package/dest/logs/pending_tagged_log.d.ts +6 -8
  245. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  246. package/dest/logs/pending_tagged_log.js +1 -31
  247. package/dest/logs/shared_secret_derivation.d.ts +19 -6
  248. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  249. package/dest/logs/shared_secret_derivation.js +26 -11
  250. package/dest/p2p/attestation_utils.d.ts +1 -1
  251. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  252. package/dest/p2p/attestation_utils.js +8 -1
  253. package/dest/p2p/checkpoint_attestation.d.ts +10 -1
  254. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  255. package/dest/p2p/checkpoint_attestation.js +10 -0
  256. package/dest/p2p/checkpoint_proposal.d.ts +2 -1
  257. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  258. package/dest/p2p/consensus_payload.d.ts +2 -1
  259. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  260. package/dest/p2p/index.d.ts +1 -2
  261. package/dest/p2p/index.d.ts.map +1 -1
  262. package/dest/p2p/index.js +0 -1
  263. package/dest/p2p/signature_utils.d.ts +10 -1
  264. package/dest/p2p/signature_utils.d.ts.map +1 -1
  265. package/dest/p2p/signature_utils.js +9 -1
  266. package/dest/rollup/avm_proof_data.d.ts +3 -3
  267. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  268. package/dest/rollup/checkpoint_header.d.ts +8 -3
  269. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  270. package/dest/rollup/checkpoint_header.js +20 -10
  271. package/dest/stats/stats.d.ts +2 -2
  272. package/dest/stats/stats.d.ts.map +1 -1
  273. package/dest/tests/factories.d.ts +1 -27
  274. package/dest/tests/factories.d.ts.map +1 -1
  275. package/dest/tests/factories.js +10 -45
  276. package/dest/tests/mocks.d.ts +1 -1
  277. package/dest/tests/mocks.d.ts.map +1 -1
  278. package/dest/tests/mocks.js +3 -2
  279. package/dest/timetable/budgets.d.ts +57 -0
  280. package/dest/timetable/budgets.d.ts.map +1 -0
  281. package/dest/timetable/budgets.js +56 -0
  282. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  283. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  284. package/dest/timetable/build_proposer_timetable.js +17 -0
  285. package/dest/timetable/consensus_timetable.d.ts +70 -0
  286. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  287. package/dest/timetable/consensus_timetable.js +89 -0
  288. package/dest/timetable/index.d.ts +5 -84
  289. package/dest/timetable/index.d.ts.map +1 -1
  290. package/dest/timetable/index.js +4 -209
  291. package/dest/timetable/proposer_timetable.d.ts +106 -0
  292. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  293. package/dest/timetable/proposer_timetable.js +132 -0
  294. package/dest/trees/nullifier_membership_witness.d.ts +5 -8
  295. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  296. package/dest/trees/nullifier_membership_witness.js +0 -9
  297. package/dest/trees/public_data_witness.d.ts +7 -17
  298. package/dest/trees/public_data_witness.d.ts.map +1 -1
  299. package/dest/trees/public_data_witness.js +0 -27
  300. package/dest/tx/execution_payload.d.ts +1 -1
  301. package/dest/tx/execution_payload.d.ts.map +1 -1
  302. package/dest/tx/execution_payload.js +1 -1
  303. package/dest/tx/fee_provider.d.ts +2 -2
  304. package/dest/tx/fee_provider.d.ts.map +1 -1
  305. package/dest/tx/global_variable_builder.d.ts +2 -12
  306. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  307. package/dest/tx/global_variables.js +2 -2
  308. package/dest/tx/index.d.ts +1 -2
  309. package/dest/tx/index.d.ts.map +1 -1
  310. package/dest/tx/index.js +0 -1
  311. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  312. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  313. package/dest/tx/private_tx_constant_data.js +13 -4
  314. package/dest/tx/profiling.d.ts +1 -1
  315. package/dest/tx/profiling.d.ts.map +1 -1
  316. package/dest/tx/profiling.js +2 -0
  317. package/dest/tx/simulated_tx.d.ts +10 -6
  318. package/dest/tx/simulated_tx.d.ts.map +1 -1
  319. package/dest/tx/tx.d.ts +9 -1
  320. package/dest/tx/tx.d.ts.map +1 -1
  321. package/dest/tx/tx.js +15 -0
  322. package/dest/tx/validator/error_texts.d.ts +2 -2
  323. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  324. package/dest/tx/validator/error_texts.js +1 -1
  325. package/dest/world-state/world_state_revision.d.ts +1 -18
  326. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  327. package/dest/world-state/world_state_revision.js +0 -20
  328. package/package.json +8 -8
  329. package/src/abi/buffer.ts +13 -1
  330. package/src/avm/avm.ts +1 -1
  331. package/src/avm/index.ts +0 -5
  332. package/src/aztec-address/index.ts +36 -6
  333. package/src/block/attestation_info.ts +7 -2
  334. package/src/block/l2_block_source.ts +67 -13
  335. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  336. package/src/block/l2_block_stream/index.ts +1 -0
  337. package/src/block/l2_block_stream/interfaces.ts +96 -10
  338. package/src/block/l2_block_stream/l2_block_stream.ts +216 -175
  339. package/src/block/l2_block_stream/l2_tips_memory_store.ts +12 -41
  340. package/src/block/l2_block_stream/l2_tips_store_base.ts +84 -93
  341. package/src/block/proposal/attestations_and_signers.ts +53 -7
  342. package/src/block/test/l2_tips_store_test_suite.ts +270 -28
  343. package/src/block/validate_block_result.ts +48 -2
  344. package/src/checkpoint/checkpoint.ts +2 -2
  345. package/src/checkpoint/index.ts +1 -0
  346. package/src/checkpoint/simulation_overrides.ts +171 -0
  347. package/src/checkpoint/validate.ts +16 -6
  348. package/src/config/index.ts +1 -0
  349. package/src/config/network-consensus-config.ts +291 -0
  350. package/src/config/sequencer-config.ts +36 -5
  351. package/src/contract/contract_address.ts +4 -3
  352. package/src/contract/contract_class.ts +3 -2
  353. package/src/contract/contract_instance.ts +62 -1
  354. package/src/contract/index.ts +0 -1
  355. package/src/contract/interfaces/contract_data_source.ts +2 -4
  356. package/src/contract/interfaces/contract_instance.ts +26 -8
  357. package/src/contract/interfaces/node-info.ts +11 -0
  358. package/src/contract/partial_address.ts +8 -2
  359. package/src/database-version/version_manager.ts +96 -6
  360. package/src/deserialization/index.ts +35 -2
  361. package/src/file-store/factory.ts +7 -0
  362. package/src/file-store/index.ts +1 -0
  363. package/src/file-store/memory.ts +94 -0
  364. package/src/gas/README.md +92 -0
  365. package/src/gas/gas_settings.ts +11 -21
  366. package/src/gas/index.ts +1 -0
  367. package/src/gas/tx_gas_limits.ts +123 -0
  368. package/src/ha-signing/config.ts +23 -5
  369. package/src/ha-signing/local_config.ts +20 -1
  370. package/src/interfaces/archiver.ts +8 -9
  371. package/src/interfaces/aztec-node-admin.ts +1 -1
  372. package/src/interfaces/aztec-node-debug.ts +54 -2
  373. package/src/interfaces/aztec-node.ts +121 -43
  374. package/src/interfaces/block-builder.ts +2 -0
  375. package/src/interfaces/chain_tips.ts +8 -16
  376. package/src/interfaces/checkpoint_parameter.ts +3 -3
  377. package/src/interfaces/client.ts +1 -0
  378. package/src/interfaces/configs.ts +27 -6
  379. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  380. package/src/interfaces/merkle_tree_operations.ts +8 -2
  381. package/src/interfaces/p2p.ts +29 -9
  382. package/src/interfaces/private_kernel_prover.ts +104 -13
  383. package/src/interfaces/prover-client.ts +1 -3
  384. package/src/interfaces/prover-node.ts +32 -17
  385. package/src/interfaces/proving-job.ts +3 -3
  386. package/src/interfaces/server.ts +0 -2
  387. package/src/interfaces/server_circuit_prover.ts +2 -2
  388. package/src/interfaces/validator.ts +11 -0
  389. package/src/interfaces/world_state.ts +14 -0
  390. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  391. package/src/kernel/hints/index.ts +0 -1
  392. package/src/kernel/hints/read_request.ts +1 -1
  393. package/src/kernel/index.ts +5 -1
  394. package/src/kernel/log_hash.ts +5 -2
  395. package/src/kernel/note_hash.ts +1 -1
  396. package/src/kernel/nullifier.ts +1 -1
  397. package/src/kernel/private_circuit_public_inputs.ts +12 -1
  398. package/src/kernel/private_context_inputs.ts +10 -3
  399. package/src/kernel/private_kernel_circuit_public_inputs.ts +9 -7
  400. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +0 -3
  401. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +0 -3
  402. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  403. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  404. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  405. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  406. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  407. package/src/kernel/private_kernel_prover_output.ts +4 -0
  408. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  409. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  410. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  411. package/src/kernel/private_log_data.ts +4 -1
  412. package/src/kernel/utils/index.ts +0 -1
  413. package/src/keys/derivation.ts +71 -21
  414. package/src/logs/app_tagging_secret.ts +56 -24
  415. package/src/logs/app_tagging_secret_kind.ts +1 -1
  416. package/src/logs/contract_class_log.ts +0 -9
  417. package/src/logs/message_context.ts +7 -65
  418. package/src/logs/pending_tagged_log.ts +6 -33
  419. package/src/logs/shared_secret_derivation.ts +31 -15
  420. package/src/p2p/attestation_utils.ts +8 -1
  421. package/src/p2p/checkpoint_attestation.ts +12 -0
  422. package/src/p2p/index.ts +0 -1
  423. package/src/p2p/signature_utils.ts +9 -0
  424. package/src/rollup/avm_proof_data.ts +2 -2
  425. package/src/rollup/checkpoint_header.ts +16 -2
  426. package/src/stats/stats.ts +6 -2
  427. package/src/tests/factories.ts +13 -51
  428. package/src/tests/mocks.ts +7 -2
  429. package/src/timetable/README.md +609 -0
  430. package/src/timetable/budgets.ts +87 -0
  431. package/src/timetable/build_proposer_timetable.ts +42 -0
  432. package/src/timetable/consensus_timetable.ts +126 -0
  433. package/src/timetable/index.ts +4 -304
  434. package/src/timetable/proposer_timetable.ts +190 -0
  435. package/src/timetable/timetable-example.svg +108 -0
  436. package/src/trees/nullifier_membership_witness.ts +0 -11
  437. package/src/trees/public_data_witness.ts +0 -31
  438. package/src/tx/execution_payload.ts +2 -1
  439. package/src/tx/fee_provider.ts +1 -1
  440. package/src/tx/global_variable_builder.ts +1 -17
  441. package/src/tx/global_variables.ts +2 -2
  442. package/src/tx/index.ts +0 -1
  443. package/src/tx/private_tx_constant_data.ts +25 -2
  444. package/src/tx/profiling.ts +2 -0
  445. package/src/tx/tx.ts +17 -0
  446. package/src/tx/validator/error_texts.ts +2 -1
  447. package/src/world-state/world_state_revision.ts +0 -33
  448. package/dest/avm/contract_storage_read.d.ts +0 -58
  449. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  450. package/dest/avm/contract_storage_read.js +0 -65
  451. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  452. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  453. package/dest/avm/contract_storage_update_request.js +0 -80
  454. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  455. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  456. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  457. package/dest/avm/public_data_update_request.d.ts +0 -62
  458. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  459. package/dest/avm/public_data_update_request.js +0 -67
  460. package/dest/avm/public_inner_call_request.d.ts +0 -50
  461. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  462. package/dest/avm/public_inner_call_request.js +0 -74
  463. package/dest/contract/deployment_info.d.ts +0 -24
  464. package/dest/contract/deployment_info.d.ts.map +0 -1
  465. package/dest/contract/deployment_info.js +0 -3
  466. package/dest/interfaces/epoch-prover.d.ts +0 -57
  467. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  468. package/dest/interfaces/epoch-prover.js +0 -1
  469. package/dest/interfaces/prover-coordination.d.ts +0 -15
  470. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  471. package/dest/interfaces/prover-coordination.js +0 -1
  472. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  473. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  474. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  475. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  476. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  477. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  478. package/dest/kernel/utils/optional_number.d.ts +0 -31
  479. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  480. package/dest/kernel/utils/optional_number.js +0 -42
  481. package/dest/p2p/interface.d.ts +0 -5
  482. package/dest/p2p/interface.d.ts.map +0 -1
  483. package/dest/p2p/interface.js +0 -1
  484. package/dest/tx/validator/empty_validator.d.ts +0 -5
  485. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  486. package/dest/tx/validator/empty_validator.js +0 -7
  487. package/src/avm/contract_storage_read.ts +0 -77
  488. package/src/avm/contract_storage_update_request.ts +0 -93
  489. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  490. package/src/avm/public_data_update_request.ts +0 -106
  491. package/src/avm/public_inner_call_request.ts +0 -85
  492. package/src/contract/deployment_info.ts +0 -25
  493. package/src/interfaces/epoch-prover.ts +0 -72
  494. package/src/interfaces/prover-coordination.ts +0 -17
  495. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  496. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  497. package/src/kernel/utils/optional_number.ts +0 -50
  498. package/src/p2p/interface.ts +0 -4
  499. package/src/tx/validator/empty_validator.ts +0 -7
@@ -0,0 +1,27 @@
1
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
2
+ import { PrivateCallData } from './private_call_data.js';
3
+ import { PrivateKernelData } from './private_kernel_data.js';
4
+ /**
5
+ * Input to the batched private kernel inner circuit, which processes four app calls in a single
6
+ * iteration following a previous kernel.
7
+ */ export class PrivateKernelInner4CircuitPrivateInputs {
8
+ previousKernel;
9
+ privateCall0;
10
+ privateCall1;
11
+ privateCall2;
12
+ privateCall3;
13
+ constructor(previousKernel, privateCall0, privateCall1, privateCall2, privateCall3){
14
+ this.previousKernel = previousKernel;
15
+ this.privateCall0 = privateCall0;
16
+ this.privateCall1 = privateCall1;
17
+ this.privateCall2 = privateCall2;
18
+ this.privateCall3 = privateCall3;
19
+ }
20
+ toBuffer() {
21
+ return serializeToBuffer(this.previousKernel, this.privateCall0, this.privateCall1, this.privateCall2, this.privateCall3);
22
+ }
23
+ static fromBuffer(buffer) {
24
+ const reader = BufferReader.asReader(buffer);
25
+ return new PrivateKernelInner4CircuitPrivateInputs(reader.readObject(PrivateKernelData), reader.readObject(PrivateCallData), reader.readObject(PrivateCallData), reader.readObject(PrivateCallData), reader.readObject(PrivateCallData));
26
+ }
27
+ }
@@ -0,0 +1,19 @@
1
+ import { BufferReader } from '@aztec/foundation/serialize';
2
+ import { PrivateCallData } from './private_call_data.js';
3
+ import { PrivateKernelData } from './private_kernel_data.js';
4
+ /**
5
+ * Input to the batched private kernel inner circuit, which processes five app calls in a single
6
+ * iteration following a previous kernel.
7
+ */
8
+ export declare class PrivateKernelInner5CircuitPrivateInputs {
9
+ previousKernel: PrivateKernelData;
10
+ privateCall0: PrivateCallData;
11
+ privateCall1: PrivateCallData;
12
+ privateCall2: PrivateCallData;
13
+ privateCall3: PrivateCallData;
14
+ privateCall4: PrivateCallData;
15
+ constructor(previousKernel: PrivateKernelData, privateCall0: PrivateCallData, privateCall1: PrivateCallData, privateCall2: PrivateCallData, privateCall3: PrivateCallData, privateCall4: PrivateCallData);
16
+ toBuffer(): Buffer<ArrayBufferLike>;
17
+ static fromBuffer(buffer: Buffer | BufferReader): PrivateKernelInner5CircuitPrivateInputs;
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9rZXJuZWxfaW5uZXJfNV9jaXJjdWl0X3ByaXZhdGVfaW5wdXRzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMva2VybmVsL3ByaXZhdGVfa2VybmVsX2lubmVyXzVfY2lyY3VpdF9wcml2YXRlX2lucHV0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU3RDs7O0dBR0c7QUFDSCxxQkFBYSx1Q0FBdUM7SUFFekMsY0FBYyxFQUFFLGlCQUFpQjtJQUNqQyxZQUFZLEVBQUUsZUFBZTtJQUM3QixZQUFZLEVBQUUsZUFBZTtJQUM3QixZQUFZLEVBQUUsZUFBZTtJQUM3QixZQUFZLEVBQUUsZUFBZTtJQUM3QixZQUFZLEVBQUUsZUFBZTtJQU50QyxZQUNTLGNBQWMsRUFBRSxpQkFBaUIsRUFDakMsWUFBWSxFQUFFLGVBQWUsRUFDN0IsWUFBWSxFQUFFLGVBQWUsRUFDN0IsWUFBWSxFQUFFLGVBQWUsRUFDN0IsWUFBWSxFQUFFLGVBQWUsRUFDN0IsWUFBWSxFQUFFLGVBQWUsRUFDbEM7SUFFSixRQUFRLDRCQVNQO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyx1Q0FBdUMsQ0FVeEY7Q0FDRiJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"private_kernel_inner_5_circuit_private_inputs.d.ts","sourceRoot":"","sources":["../../src/kernel/private_kernel_inner_5_circuit_private_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;;GAGG;AACH,qBAAa,uCAAuC;IAEzC,cAAc,EAAE,iBAAiB;IACjC,YAAY,EAAE,eAAe;IAC7B,YAAY,EAAE,eAAe;IAC7B,YAAY,EAAE,eAAe;IAC7B,YAAY,EAAE,eAAe;IAC7B,YAAY,EAAE,eAAe;IANtC,YACS,cAAc,EAAE,iBAAiB,EACjC,YAAY,EAAE,eAAe,EAC7B,YAAY,EAAE,eAAe,EAC7B,YAAY,EAAE,eAAe,EAC7B,YAAY,EAAE,eAAe,EAC7B,YAAY,EAAE,eAAe,EAClC;IAEJ,QAAQ,4BASP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,uCAAuC,CAUxF;CACF"}
@@ -0,0 +1,29 @@
1
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
2
+ import { PrivateCallData } from './private_call_data.js';
3
+ import { PrivateKernelData } from './private_kernel_data.js';
4
+ /**
5
+ * Input to the batched private kernel inner circuit, which processes five app calls in a single
6
+ * iteration following a previous kernel.
7
+ */ export class PrivateKernelInner5CircuitPrivateInputs {
8
+ previousKernel;
9
+ privateCall0;
10
+ privateCall1;
11
+ privateCall2;
12
+ privateCall3;
13
+ privateCall4;
14
+ constructor(previousKernel, privateCall0, privateCall1, privateCall2, privateCall3, privateCall4){
15
+ this.previousKernel = previousKernel;
16
+ this.privateCall0 = privateCall0;
17
+ this.privateCall1 = privateCall1;
18
+ this.privateCall2 = privateCall2;
19
+ this.privateCall3 = privateCall3;
20
+ this.privateCall4 = privateCall4;
21
+ }
22
+ toBuffer() {
23
+ return serializeToBuffer(this.previousKernel, this.privateCall0, this.privateCall1, this.privateCall2, this.privateCall3, this.privateCall4);
24
+ }
25
+ static fromBuffer(buffer) {
26
+ const reader = BufferReader.asReader(buffer);
27
+ return new PrivateKernelInner5CircuitPrivateInputs(reader.readObject(PrivateKernelData), reader.readObject(PrivateCallData), reader.readObject(PrivateCallData), reader.readObject(PrivateCallData), reader.readObject(PrivateCallData), reader.readObject(PrivateCallData));
28
+ }
29
+ }
@@ -1,3 +1,4 @@
1
+ import { CircuitKind } from '@aztec/bb.js';
1
2
  import type { WitnessMap } from '@aztec/noir-acvm_js';
2
3
  import { z } from 'zod';
3
4
  import type { ChonkProof } from '../proofs/chonk_proof.js';
@@ -9,6 +10,7 @@ export declare const PrivateExecutionStepSchema: z.ZodObject<{
9
10
  bytecode: import("@aztec/foundation/schemas").ZodFor<Buffer<ArrayBufferLike>>;
10
11
  witness: import("@aztec/foundation/schemas").ZodFor<Map<number, string>>;
11
12
  vk: import("@aztec/foundation/schemas").ZodFor<Buffer<ArrayBufferLike>>;
13
+ kind: z.ZodEnum<typeof CircuitKind>;
12
14
  timings: z.ZodObject<{
13
15
  witgen: z.ZodNumber;
14
16
  gateCount: z.ZodOptional<z.ZodNumber>;
@@ -23,6 +25,7 @@ export interface PrivateExecutionStep {
23
25
  bytecode: Buffer;
24
26
  witness: WitnessMap;
25
27
  vk: Buffer;
28
+ kind: CircuitKind;
26
29
  timings: {
27
30
  witgen: number;
28
31
  gateCount?: number;
@@ -50,4 +53,4 @@ export interface PrivateKernelExecutionProofOutput<PublicInputsType extends Priv
50
53
  };
51
54
  }
52
55
  export declare function serializePrivateExecutionSteps(steps: PrivateExecutionStep[]): Buffer<ArrayBufferLike>;
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9rZXJuZWxfcHJvdmVyX291dHB1dC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2tlcm5lbF9wcm92ZXJfb3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSXRELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxLQUFLLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRyxPQUFPLEtBQUssRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRTNHLGVBQU8sTUFBTSwwQkFBMEI7Ozs7Ozs7Ozs7aUJBVXJDLENBQUM7QUFFSDs7R0FFRztBQUNILE1BQU0sV0FBVyxvQkFBb0I7SUFDbkMsWUFBWSxFQUFFLE1BQU0sQ0FBQztJQUNyQixTQUFTLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDbkIsUUFBUSxFQUFFLE1BQU0sQ0FBQztJQUNqQixPQUFPLEVBQUUsVUFBVSxDQUFDO0lBRXBCLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFDWCxPQUFPLEVBQUU7UUFDUCxNQUFNLEVBQUUsTUFBTSxDQUFDO1FBQ2YsU0FBUyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ25CLE9BQU8sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUE7U0FBRSxDQUFDLENBQUM7S0FDL0MsQ0FBQztDQUNIO0FBRUQsa0VBQWtFO0FBQ2xFLE1BQU0sV0FBVyxpQ0FBaUMsQ0FDaEQsZ0JBQWdCLFNBQVMsZ0NBQWdDLEdBQUcsb0NBQW9DO0lBRWhHLDhEQUE4RDtJQUM5RCxZQUFZLEVBQUUsZ0JBQWdCLENBQUM7SUFDL0I7NEdBQ3dHO0lBQ3hHLFVBQVUsRUFBRSxVQUFVLENBQUM7SUFDdkI7Ozs7T0FJRztJQUNILGNBQWMsRUFBRSxvQkFBb0IsRUFBRSxDQUFDO0lBQ3ZDLDBCQUEwQjtJQUMxQixPQUFPLENBQUMsRUFBRTtRQUFFLE9BQU8sRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDO0NBQy9CO0FBRUQsd0JBQWdCLDhCQUE4QixDQUFDLEtBQUssRUFBRSxvQkFBb0IsRUFBRSwyQkFVM0UifQ==
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9rZXJuZWxfcHJvdmVyX291dHB1dC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2tlcm5lbF9wcm92ZXJfb3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFM0MsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFJdEQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEtBQUssRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xHLE9BQU8sS0FBSyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFM0csZUFBTyxNQUFNLDBCQUEwQjs7Ozs7Ozs7Ozs7aUJBV3JDLENBQUM7QUFFSDs7R0FFRztBQUNILE1BQU0sV0FBVyxvQkFBb0I7SUFDbkMsWUFBWSxFQUFFLE1BQU0sQ0FBQztJQUNyQixTQUFTLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDbkIsUUFBUSxFQUFFLE1BQU0sQ0FBQztJQUNqQixPQUFPLEVBQUUsVUFBVSxDQUFDO0lBRXBCLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFDWCxJQUFJLEVBQUUsV0FBVyxDQUFDO0lBQ2xCLE9BQU8sRUFBRTtRQUNQLE1BQU0sRUFBRSxNQUFNLENBQUM7UUFDZixTQUFTLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDbkIsT0FBTyxDQUFDLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRTtZQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQTtTQUFFLENBQUMsQ0FBQztLQUMvQyxDQUFDO0NBQ0g7QUFFRCxrRUFBa0U7QUFDbEUsTUFBTSxXQUFXLGlDQUFpQyxDQUNoRCxnQkFBZ0IsU0FBUyxnQ0FBZ0MsR0FBRyxvQ0FBb0M7SUFFaEcsOERBQThEO0lBQzlELFlBQVksRUFBRSxnQkFBZ0IsQ0FBQztJQUMvQjs0R0FDd0c7SUFDeEcsVUFBVSxFQUFFLFVBQVUsQ0FBQztJQUN2Qjs7OztPQUlHO0lBQ0gsY0FBYyxFQUFFLG9CQUFvQixFQUFFLENBQUM7SUFDdkMsMEJBQTBCO0lBQzFCLE9BQU8sQ0FBQyxFQUFFO1FBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQTtLQUFFLENBQUM7Q0FDL0I7QUFFRCx3QkFBZ0IsOEJBQThCLENBQUMsS0FBSyxFQUFFLG9CQUFvQixFQUFFLDJCQVczRSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"private_kernel_prover_output.d.ts","sourceRoot":"","sources":["../../src/kernel/private_kernel_prover_output.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAItD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,2CAA2C,CAAC;AAClG,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,gDAAgD,CAAC;AAE3G,eAAO,MAAM,0BAA0B;;;;;;;;;;iBAUrC,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,CAAC;IAEpB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAC;KAC/C,CAAC;CACH;AAED,kEAAkE;AAClE,MAAM,WAAW,iCAAiC,CAChD,gBAAgB,SAAS,gCAAgC,GAAG,oCAAoC;IAEhG,8DAA8D;IAC9D,YAAY,EAAE,gBAAgB,CAAC;IAC/B;4GACwG;IACxG,UAAU,EAAE,UAAU,CAAC;IACvB;;;;OAIG;IACH,cAAc,EAAE,oBAAoB,EAAE,CAAC;IACvC,0BAA0B;IAC1B,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/B;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,oBAAoB,EAAE,2BAU3E"}
1
+ {"version":3,"file":"private_kernel_prover_output.d.ts","sourceRoot":"","sources":["../../src/kernel/private_kernel_prover_output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAItD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,2CAA2C,CAAC;AAClG,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,gDAAgD,CAAC;AAE3G,eAAO,MAAM,0BAA0B;;;;;;;;;;;iBAWrC,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,CAAC;IAEpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAC;KAC/C,CAAC;CACH;AAED,kEAAkE;AAClE,MAAM,WAAW,iCAAiC,CAChD,gBAAgB,SAAS,gCAAgC,GAAG,oCAAoC;IAEhG,8DAA8D;IAC9D,YAAY,EAAE,gBAAgB,CAAC;IAC/B;4GACwG;IACxG,UAAU,EAAE,UAAU,CAAC;IACvB;;;;OAIG;IACH,cAAc,EAAE,oBAAoB,EAAE,CAAC;IACvC,0BAA0B;IAC1B,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/B;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,oBAAoB,EAAE,2BAW3E"}
@@ -1,3 +1,4 @@
1
+ import { CircuitKind } from '@aztec/bb.js';
1
2
  import { bufferSchema, mapSchema } from '@aztec/foundation/schemas';
2
3
  import { serializeWitness } from '@aztec/noir-noirc_abi';
3
4
  import { Encoder } from 'msgpackr';
@@ -8,6 +9,7 @@ export const PrivateExecutionStepSchema = z.object({
8
9
  bytecode: bufferSchema,
9
10
  witness: mapSchema(z.number(), z.string()),
10
11
  vk: bufferSchema,
12
+ kind: z.nativeEnum(CircuitKind),
11
13
  timings: z.object({
12
14
  witgen: z.number(),
13
15
  gateCount: z.number().optional()
@@ -19,7 +21,8 @@ export function serializePrivateExecutionSteps(steps) {
19
21
  bytecode: step.bytecode,
20
22
  witness: serializeWitness(step.witness),
21
23
  vk: step.vk,
22
- functionName: step.functionName
24
+ functionName: step.functionName,
25
+ kind: step.kind
23
26
  };
24
27
  };
25
28
  return new Encoder({
@@ -18,15 +18,14 @@ export declare class PrivateKernelResetDimensions {
18
18
  }
19
19
  export type DimensionName = keyof FieldsOf<PrivateKernelResetDimensions>;
20
20
  export declare const privateKernelResetDimensionNames: DimensionName[];
21
- export interface DimensionConfig {
22
- variants: number[];
23
- standalone: number[];
21
+ export interface ResetCatalogEntry {
22
+ name: string;
23
+ dimensions: number[];
24
24
  cost: number;
25
25
  }
26
26
  export interface PrivateKernelResetDimensionsConfig {
27
- dimensions: {
28
- [K in DimensionName]: DimensionConfig;
29
- };
30
- specialCases: number[][];
27
+ inner: ResetCatalogEntry[];
28
+ finalTail: ResetCatalogEntry[];
29
+ finalTailToPublic: ResetCatalogEntry[];
31
30
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9rZXJuZWxfcmVzZXRfZGltZW5zaW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2tlcm5lbF9yZXNldF9kaW1lbnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELHFCQUFhLDRCQUE0QjtJQUU5QixzQkFBc0IsRUFBRSxNQUFNO0lBQzlCLHNCQUFzQixFQUFFLE1BQU07SUFDOUIsc0JBQXNCLEVBQUUsTUFBTTtJQUM5QixzQkFBc0IsRUFBRSxNQUFNO0lBQzlCLGNBQWMsRUFBRSxNQUFNO0lBQ3RCLHdCQUF3QixFQUFFLE1BQU07SUFDaEMsaUJBQWlCLEVBQUUsTUFBTTtJQUN6QixpQkFBaUIsRUFBRSxNQUFNO0lBQ3pCLG1CQUFtQixFQUFFLE1BQU07SUFUcEMsWUFDUyxzQkFBc0IsRUFBRSxNQUFNLEVBQzlCLHNCQUFzQixFQUFFLE1BQU0sRUFDOUIsc0JBQXNCLEVBQUUsTUFBTSxFQUM5QixzQkFBc0IsRUFBRSxNQUFNLEVBQzlCLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLHdCQUF3QixFQUFFLE1BQU0sRUFDaEMsaUJBQWlCLEVBQUUsTUFBTSxFQUN6QixpQkFBaUIsRUFBRSxNQUFNLEVBQ3pCLG1CQUFtQixFQUFFLE1BQU0sRUFDaEM7SUFFSixRQUFRLDRCQVlQO0lBRUQsTUFBTSxDQUFDLEtBQUssaUNBRVg7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLDRCQUE0QixDQUFDLENBQUMsZ0NBSWxFO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLGdDQVNqQztJQUVELFFBQVEsYUFFUDtDQUNGO0FBRUQsTUFBTSxNQUFNLGFBQWEsR0FBRyxNQUFNLFFBQVEsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0FBRXpFLGVBQU8sTUFBTSxnQ0FBZ0MsRUFBRSxhQUFhLEVBVTNELENBQUM7QUFFRixNQUFNLFdBQVcsZUFBZTtJQUM5QixRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDbkIsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3JCLElBQUksRUFBRSxNQUFNLENBQUM7Q0FDZDtBQUdELE1BQU0sV0FBVyxrQ0FBa0M7SUFDakQsVUFBVSxFQUFFO1NBQUcsQ0FBQyxJQUFJLGFBQWEsR0FBRyxlQUFlO0tBQUUsQ0FBQztJQUN0RCxZQUFZLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQztDQUMxQiJ9
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9rZXJuZWxfcmVzZXRfZGltZW5zaW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2tlcm5lbF9yZXNldF9kaW1lbnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELHFCQUFhLDRCQUE0QjtJQUU5QixzQkFBc0IsRUFBRSxNQUFNO0lBQzlCLHNCQUFzQixFQUFFLE1BQU07SUFDOUIsc0JBQXNCLEVBQUUsTUFBTTtJQUM5QixzQkFBc0IsRUFBRSxNQUFNO0lBQzlCLGNBQWMsRUFBRSxNQUFNO0lBQ3RCLHdCQUF3QixFQUFFLE1BQU07SUFDaEMsaUJBQWlCLEVBQUUsTUFBTTtJQUN6QixpQkFBaUIsRUFBRSxNQUFNO0lBQ3pCLG1CQUFtQixFQUFFLE1BQU07SUFUcEMsWUFDUyxzQkFBc0IsRUFBRSxNQUFNLEVBQzlCLHNCQUFzQixFQUFFLE1BQU0sRUFDOUIsc0JBQXNCLEVBQUUsTUFBTSxFQUM5QixzQkFBc0IsRUFBRSxNQUFNLEVBQzlCLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLHdCQUF3QixFQUFFLE1BQU0sRUFDaEMsaUJBQWlCLEVBQUUsTUFBTSxFQUN6QixpQkFBaUIsRUFBRSxNQUFNLEVBQ3pCLG1CQUFtQixFQUFFLE1BQU0sRUFDaEM7SUFFSixRQUFRLDRCQVlQO0lBRUQsTUFBTSxDQUFDLEtBQUssaUNBRVg7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLDRCQUE0QixDQUFDLENBQUMsZ0NBSWxFO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLGdDQVNqQztJQUVELFFBQVEsYUFFUDtDQUNGO0FBRUQsTUFBTSxNQUFNLGFBQWEsR0FBRyxNQUFNLFFBQVEsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0FBRXpFLGVBQU8sTUFBTSxnQ0FBZ0MsRUFBRSxhQUFhLEVBVTNELENBQUM7QUFFRixNQUFNLFdBQVcsaUJBQWlCO0lBQ2hDLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFLckIsSUFBSSxFQUFFLE1BQU0sQ0FBQztDQUNkO0FBR0QsTUFBTSxXQUFXLGtDQUFrQztJQUVqRCxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztJQUczQixTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztJQUcvQixpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxDQUFDO0NBQ3hDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"private_kernel_reset_dimensions.d.ts","sourceRoot":"","sources":["../../src/kernel/private_kernel_reset_dimensions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,qBAAa,4BAA4B;IAE9B,sBAAsB,EAAE,MAAM;IAC9B,sBAAsB,EAAE,MAAM;IAC9B,sBAAsB,EAAE,MAAM;IAC9B,sBAAsB,EAAE,MAAM;IAC9B,cAAc,EAAE,MAAM;IACtB,wBAAwB,EAAE,MAAM;IAChC,iBAAiB,EAAE,MAAM;IACzB,iBAAiB,EAAE,MAAM;IACzB,mBAAmB,EAAE,MAAM;IATpC,YACS,sBAAsB,EAAE,MAAM,EAC9B,sBAAsB,EAAE,MAAM,EAC9B,sBAAsB,EAAE,MAAM,EAC9B,sBAAsB,EAAE,MAAM,EAC9B,cAAc,EAAE,MAAM,EACtB,wBAAwB,EAAE,MAAM,EAChC,iBAAiB,EAAE,MAAM,EACzB,iBAAiB,EAAE,MAAM,EACzB,mBAAmB,EAAE,MAAM,EAChC;IAEJ,QAAQ,4BAYP;IAED,MAAM,CAAC,KAAK,iCAEX;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC,gCAIlE;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,gCASjC;IAED,QAAQ,aAEP;CACF;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,4BAA4B,CAAC,CAAC;AAEzE,eAAO,MAAM,gCAAgC,EAAE,aAAa,EAU3D,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,MAAM,WAAW,kCAAkC;IACjD,UAAU,EAAE;SAAG,CAAC,IAAI,aAAa,GAAG,eAAe;KAAE,CAAC;IACtD,YAAY,EAAE,MAAM,EAAE,EAAE,CAAC;CAC1B"}
1
+ {"version":3,"file":"private_kernel_reset_dimensions.d.ts","sourceRoot":"","sources":["../../src/kernel/private_kernel_reset_dimensions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,qBAAa,4BAA4B;IAE9B,sBAAsB,EAAE,MAAM;IAC9B,sBAAsB,EAAE,MAAM;IAC9B,sBAAsB,EAAE,MAAM;IAC9B,sBAAsB,EAAE,MAAM;IAC9B,cAAc,EAAE,MAAM;IACtB,wBAAwB,EAAE,MAAM;IAChC,iBAAiB,EAAE,MAAM;IACzB,iBAAiB,EAAE,MAAM;IACzB,mBAAmB,EAAE,MAAM;IATpC,YACS,sBAAsB,EAAE,MAAM,EAC9B,sBAAsB,EAAE,MAAM,EAC9B,sBAAsB,EAAE,MAAM,EAC9B,sBAAsB,EAAE,MAAM,EAC9B,cAAc,EAAE,MAAM,EACtB,wBAAwB,EAAE,MAAM,EAChC,iBAAiB,EAAE,MAAM,EACzB,iBAAiB,EAAE,MAAM,EACzB,mBAAmB,EAAE,MAAM,EAChC;IAEJ,QAAQ,4BAYP;IAED,MAAM,CAAC,KAAK,iCAEX;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC,gCAIlE;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,gCASjC;IAED,QAAQ,aAEP;CACF;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,4BAA4B,CAAC,CAAC;AAEzE,eAAO,MAAM,gCAAgC,EAAE,aAAa,EAU3D,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,EAAE,CAAC;IAKrB,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,MAAM,WAAW,kCAAkC;IAEjD,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAG3B,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAG/B,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;CACxC"}
@@ -0,0 +1,29 @@
1
+ import type { MAX_KEY_VALIDATION_REQUESTS_PER_TX, MAX_NOTE_HASH_READ_REQUESTS_PER_TX, MAX_NULLIFIERS_PER_TX, MAX_NULLIFIER_READ_REQUESTS_PER_TX } from '@aztec/constants';
2
+ import type { UInt64 } from '../types/shared.js';
3
+ import type { PrivateKernelResetHints } from './hints/private_kernel_reset_hints.js';
4
+ import type { PaddedSideEffectAmounts, PaddedSideEffects } from './padded_side_effects.js';
5
+ import type { PrivateKernelData } from './private_kernel_data.js';
6
+ import { PrivateKernelResetCircuitPrivateInputsVariants } from './private_kernel_reset_circuit_private_inputs.js';
7
+ import type { PrivateKernelResetDimensions } from './private_kernel_reset_dimensions.js';
8
+ /**
9
+ * Input to a terminal reset+tail circuit. `isForPublic()` selects the rollup-bound (`reset_tail`)
10
+ * or public-bound (`reset_tail_to_public`) family.
11
+ */
12
+ export declare class PrivateKernelResetTailCircuitPrivateInputs {
13
+ previousKernel: PrivateKernelData;
14
+ paddedSideEffects: PaddedSideEffects;
15
+ hints: PrivateKernelResetHints<typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX, typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX, typeof MAX_KEY_VALIDATION_REQUESTS_PER_TX, typeof MAX_NULLIFIERS_PER_TX>;
16
+ dimensions: PrivateKernelResetDimensions;
17
+ paddedSideEffectAmounts: PaddedSideEffectAmounts;
18
+ expirationTimestampUpperBound: UInt64;
19
+ constructor(previousKernel: PrivateKernelData, paddedSideEffects: PaddedSideEffects, hints: PrivateKernelResetHints<typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX, typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX, typeof MAX_KEY_VALIDATION_REQUESTS_PER_TX, typeof MAX_NULLIFIERS_PER_TX>, dimensions: PrivateKernelResetDimensions, paddedSideEffectAmounts: PaddedSideEffectAmounts, expirationTimestampUpperBound: UInt64);
20
+ isForPublic(): boolean;
21
+ /**
22
+ * Returns a dimension-trimmed view of the reset portion of these inputs (without the tail
23
+ * fields). The prover uses this to feed witness generation of the variant matching the chosen
24
+ * dimensions.
25
+ */
26
+ trimResetToSizes(): PrivateKernelResetCircuitPrivateInputsVariants<number, number, number, number, number, number>;
27
+ toBuffer(): Buffer<ArrayBufferLike>;
28
+ }
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9rZXJuZWxfcmVzZXRfdGFpbF9jaXJjdWl0X3ByaXZhdGVfaW5wdXRzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMva2VybmVsL3ByaXZhdGVfa2VybmVsX3Jlc2V0X3RhaWxfY2lyY3VpdF9wcml2YXRlX2lucHV0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFDVixrQ0FBa0MsRUFDbEMsa0NBQWtDLEVBQ2xDLHFCQUFxQixFQUNyQixrQ0FBa0MsRUFDbkMsTUFBTSxrQkFBa0IsQ0FBQztBQUcxQixPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEtBQUssRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3JGLE9BQU8sS0FBSyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0YsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsOENBQThDLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUNsSCxPQUFPLEtBQUssRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXpGOzs7R0FHRztBQUNILHFCQUFhLDBDQUEwQztJQUU1QyxjQUFjLEVBQUUsaUJBQWlCO0lBQ2pDLGlCQUFpQixFQUFFLGlCQUFpQjtJQUNwQyxLQUFLLEVBQUUsdUJBQXVCLENBQ25DLE9BQU8sa0NBQWtDLEVBQ3pDLE9BQU8sa0NBQWtDLEVBQ3pDLE9BQU8sa0NBQWtDLEVBQ3pDLE9BQU8sa0NBQWtDLEVBQ3pDLE9BQU8sa0NBQWtDLEVBQ3pDLE9BQU8scUJBQXFCLENBQzdCO0lBQ00sVUFBVSxFQUFFLDRCQUE0QjtJQUN4Qyx1QkFBdUIsRUFBRSx1QkFBdUI7SUFDaEQsNkJBQTZCLEVBQUUsTUFBTTtJQWI5QyxZQUNTLGNBQWMsRUFBRSxpQkFBaUIsRUFDakMsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQ3BDLEtBQUssRUFBRSx1QkFBdUIsQ0FDbkMsT0FBTyxrQ0FBa0MsRUFDekMsT0FBTyxrQ0FBa0MsRUFDekMsT0FBTyxrQ0FBa0MsRUFDekMsT0FBTyxrQ0FBa0MsRUFDekMsT0FBTyxrQ0FBa0MsRUFDekMsT0FBTyxxQkFBcUIsQ0FDN0IsRUFDTSxVQUFVLEVBQUUsNEJBQTRCLEVBQ3hDLHVCQUF1QixFQUFFLHVCQUF1QixFQUNoRCw2QkFBNkIsRUFBRSxNQUFNLEVBQzFDO0lBRUosV0FBVyxZQUVWO0lBRUQ7Ozs7T0FJRztJQUNILGdCQUFnQixtR0FVZjtJQUVELFFBQVEsNEJBU1A7Q0FDRiJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"private_kernel_reset_tail_circuit_private_inputs.d.ts","sourceRoot":"","sources":["../../src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kCAAkC,EAClC,kCAAkC,EAClC,qBAAqB,EACrB,kCAAkC,EACnC,MAAM,kBAAkB,CAAC;AAG1B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE3F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,8CAA8C,EAAE,MAAM,kDAAkD,CAAC;AAClH,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AAEzF;;;GAGG;AACH,qBAAa,0CAA0C;IAE5C,cAAc,EAAE,iBAAiB;IACjC,iBAAiB,EAAE,iBAAiB;IACpC,KAAK,EAAE,uBAAuB,CACnC,OAAO,kCAAkC,EACzC,OAAO,kCAAkC,EACzC,OAAO,kCAAkC,EACzC,OAAO,kCAAkC,EACzC,OAAO,kCAAkC,EACzC,OAAO,qBAAqB,CAC7B;IACM,UAAU,EAAE,4BAA4B;IACxC,uBAAuB,EAAE,uBAAuB;IAChD,6BAA6B,EAAE,MAAM;IAb9C,YACS,cAAc,EAAE,iBAAiB,EACjC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,uBAAuB,CACnC,OAAO,kCAAkC,EACzC,OAAO,kCAAkC,EACzC,OAAO,kCAAkC,EACzC,OAAO,kCAAkC,EACzC,OAAO,kCAAkC,EACzC,OAAO,qBAAqB,CAC7B,EACM,UAAU,EAAE,4BAA4B,EACxC,uBAAuB,EAAE,uBAAuB,EAChD,6BAA6B,EAAE,MAAM,EAC1C;IAEJ,WAAW,YAEV;IAED;;;;OAIG;IACH,gBAAgB,mGAUf;IAED,QAAQ,4BASP;CACF"}
@@ -0,0 +1,36 @@
1
+ import { bigintToUInt64BE, serializeToBuffer } from '@aztec/foundation/serialize';
2
+ import { kernelStateIsForPublic } from './private_kernel_circuit_public_inputs.js';
3
+ import { PrivateKernelResetCircuitPrivateInputsVariants } from './private_kernel_reset_circuit_private_inputs.js';
4
+ /**
5
+ * Input to a terminal reset+tail circuit. `isForPublic()` selects the rollup-bound (`reset_tail`)
6
+ * or public-bound (`reset_tail_to_public`) family.
7
+ */ export class PrivateKernelResetTailCircuitPrivateInputs {
8
+ previousKernel;
9
+ paddedSideEffects;
10
+ hints;
11
+ dimensions;
12
+ paddedSideEffectAmounts;
13
+ expirationTimestampUpperBound;
14
+ constructor(previousKernel, paddedSideEffects, hints, dimensions, paddedSideEffectAmounts, expirationTimestampUpperBound){
15
+ this.previousKernel = previousKernel;
16
+ this.paddedSideEffects = paddedSideEffects;
17
+ this.hints = hints;
18
+ this.dimensions = dimensions;
19
+ this.paddedSideEffectAmounts = paddedSideEffectAmounts;
20
+ this.expirationTimestampUpperBound = expirationTimestampUpperBound;
21
+ }
22
+ isForPublic() {
23
+ return kernelStateIsForPublic(this.previousKernel.publicInputs);
24
+ }
25
+ /**
26
+ * Returns a dimension-trimmed view of the reset portion of these inputs (without the tail
27
+ * fields). The prover uses this to feed witness generation of the variant matching the chosen
28
+ * dimensions.
29
+ */ trimResetToSizes() {
30
+ const hints = this.hints.trimToSizes(this.dimensions.NOTE_HASH_PENDING_READ, this.dimensions.NOTE_HASH_SETTLED_READ, this.dimensions.NULLIFIER_PENDING_READ, this.dimensions.NULLIFIER_SETTLED_READ, this.dimensions.KEY_VALIDATION, this.dimensions.TRANSIENT_DATA_SQUASHING);
31
+ return new PrivateKernelResetCircuitPrivateInputsVariants(this.previousKernel, this.paddedSideEffects, hints);
32
+ }
33
+ toBuffer() {
34
+ return serializeToBuffer(this.previousKernel, this.paddedSideEffects, this.hints, this.dimensions, this.paddedSideEffectAmounts, bigintToUInt64BE(this.expirationTimestampUpperBound));
35
+ }
36
+ }
@@ -13,10 +13,4 @@ export interface PrivateKernelSimulateOutput<PublicInputsType extends PrivateKer
13
13
  verificationKey: VerificationKeyData;
14
14
  bytecode: Buffer;
15
15
  }
16
- /**
17
- * Represents the output of the circuit simulation process for init and inner private kernel circuit.
18
- */
19
- export type AppCircuitSimulateOutput = {
20
- verificationKey: VerificationKeyData;
21
- };
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9rZXJuZWxfc2ltdWxhdGVkX291dHB1dC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2tlcm5lbF9zaW11bGF0ZWRfb3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRyxPQUFPLEtBQUssRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRTNHOzs7R0FHRztBQUNILE1BQU0sV0FBVywyQkFBMkIsQ0FDMUMsZ0JBQWdCLFNBQVMsZ0NBQWdDLEdBQUcsb0NBQW9DO0lBRWhHLG1FQUFtRTtJQUNuRSxZQUFZLEVBQUUsZ0JBQWdCLENBQUM7SUFDL0IsYUFBYSxFQUFFLFVBQVUsQ0FBQztJQUMxQixlQUFlLEVBQUUsbUJBQW1CLENBQUM7SUFDckMsUUFBUSxFQUFFLE1BQU0sQ0FBQztDQUNsQjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxNQUFNLHdCQUF3QixHQUFHO0lBQ3JDLGVBQWUsRUFBRSxtQkFBbUIsQ0FBQztDQUN0QyxDQUFDIn0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9rZXJuZWxfc2ltdWxhdGVkX291dHB1dC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2tlcm5lbF9zaW11bGF0ZWRfb3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRyxPQUFPLEtBQUssRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRTNHOzs7R0FHRztBQUNILE1BQU0sV0FBVywyQkFBMkIsQ0FDMUMsZ0JBQWdCLFNBQVMsZ0NBQWdDLEdBQUcsb0NBQW9DO0lBRWhHLG1FQUFtRTtJQUNuRSxZQUFZLEVBQUUsZ0JBQWdCLENBQUM7SUFDL0IsYUFBYSxFQUFFLFVBQVUsQ0FBQztJQUMxQixlQUFlLEVBQUUsbUJBQW1CLENBQUM7SUFDckMsUUFBUSxFQUFFLE1BQU0sQ0FBQztDQUNsQiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"private_kernel_simulated_output.d.ts","sourceRoot":"","sources":["../../src/kernel/private_kernel_simulated_output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,2CAA2C,CAAC;AAClG,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,gDAAgD,CAAC;AAE3G;;;GAGG;AACH,MAAM,WAAW,2BAA2B,CAC1C,gBAAgB,SAAS,gCAAgC,GAAG,oCAAoC;IAEhG,mEAAmE;IACnE,YAAY,EAAE,gBAAgB,CAAC;IAC/B,aAAa,EAAE,UAAU,CAAC;IAC1B,eAAe,EAAE,mBAAmB,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,eAAe,EAAE,mBAAmB,CAAC;CACtC,CAAC"}
1
+ {"version":3,"file":"private_kernel_simulated_output.d.ts","sourceRoot":"","sources":["../../src/kernel/private_kernel_simulated_output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,2CAA2C,CAAC;AAClG,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,gDAAgD,CAAC;AAE3G;;;GAGG;AACH,MAAM,WAAW,2BAA2B,CAC1C,gBAAgB,SAAS,gCAAgC,GAAG,oCAAoC;IAEhG,mEAAmE;IACnE,YAAY,EAAE,gBAAgB,CAAC;IAC/B,aAAa,EAAE,UAAU,CAAC;IAC1B,eAAe,EAAE,mBAAmB,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;CAClB"}
@@ -1,3 +1,4 @@
1
1
  /**
2
- * Represents the output of the circuit simulation process for init and inner private kernel circuit.
2
+ * Represents the output of the proof creation process for init and inner private kernel circuit.
3
+ * Contains the public inputs required for the init and inner private kernel circuit and the generated proof.
3
4
  */ export { };
@@ -34,4 +34,4 @@ export declare class ScopedPrivateLogData {
34
34
  static fromBuffer(buffer: Buffer | BufferReader): ScopedPrivateLogData;
35
35
  [inspect.custom](): string;
36
36
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9sb2dfZGF0YS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2xvZ19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUF3QyxNQUFNLDZCQUE2QixDQUFDO0FBQzlHLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxxQkFBYSxjQUFjO0lBRWhCLEdBQUcsRUFBRSxVQUFVO0lBQ2YsZUFBZSxFQUFFLE1BQU07SUFDdkIsT0FBTyxFQUFFLE1BQU07SUFIeEIsWUFDUyxHQUFHLEVBQUUsVUFBVSxFQUNmLGVBQWUsRUFBRSxNQUFNLEVBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQ3BCO0lBRUosTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLGNBQWMsQ0FBQyxHQUFHLGNBQWMsQ0FFNUQ7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsY0FBYyxDQUFDLHlDQUVoRDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsR0FBRyxjQUFjLENBRzVEO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQVFmO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksa0JBRzlDO0lBRUQsUUFBUSw0QkFFUDtJQUVELE1BQU0sQ0FBQyxLQUFLLG1CQUVYO0lBRUQsT0FBTyxJQUFJLE9BQU8sQ0FFakI7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FNZjtDQUNGO0FBRUQscUJBQWEsb0JBQW9CO0lBRXRCLEtBQUssRUFBRSxjQUFjO0lBQ3JCLGVBQWUsRUFBRSxZQUFZO0lBRnRDLFlBQ1MsS0FBSyxFQUFFLGNBQWMsRUFDckIsZUFBZSxFQUFFLFlBQVksRUFDbEM7SUFFSixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsb0JBQW9CLENBQUMsR0FBRyxvQkFBb0IsQ0FFeEU7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsb0JBQW9CLENBQUMsMkNBRXREO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyx3QkFHM0M7SUFFRCxPQUFPLFlBRU47SUFFRCxNQUFNLENBQUMsS0FBSyx5QkFFWDtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksd0JBRzlDO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBT2Y7Q0FDRiJ9
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9sb2dfZGF0YS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2xvZ19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUF3QyxNQUFNLDZCQUE2QixDQUFDO0FBQzlHLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxxQkFBYSxjQUFjO0lBRWhCLEdBQUcsRUFBRSxVQUFVO0lBQ2YsZUFBZSxFQUFFLE1BQU07SUFDdkIsT0FBTyxFQUFFLE1BQU07SUFIeEIsWUFDUyxHQUFHLEVBQUUsVUFBVSxFQUNmLGVBQWUsRUFBRSxNQUFNLEVBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQ3BCO0lBRUosTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLGNBQWMsQ0FBQyxHQUFHLGNBQWMsQ0FFNUQ7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsY0FBYyxDQUFDLHlDQUVoRDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsR0FBRyxjQUFjLENBRzVEO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQVFmO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksa0JBRzlDO0lBRUQsUUFBUSw0QkFFUDtJQUVELE1BQU0sQ0FBQyxLQUFLLG1CQUVYO0lBRUQsT0FBTyxJQUFJLE9BQU8sQ0FFakI7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FNZjtDQUNGO0FBRUQscUJBQWEsb0JBQW9CO0lBRXRCLEtBQUssRUFBRSxjQUFjO0lBQ3JCLGVBQWUsRUFBRSxZQUFZO0lBRnRDLFlBQ1MsS0FBSyxFQUFFLGNBQWMsRUFDckIsZUFBZSxFQUFFLFlBQVksRUFDbEM7SUFFSixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsb0JBQW9CLENBQUMsR0FBRyxvQkFBb0IsQ0FFeEU7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsb0JBQW9CLENBQUMsMkNBRXREO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyx3QkFNM0M7SUFFRCxPQUFPLFlBRU47SUFFRCxNQUFNLENBQUMsS0FBSyx5QkFFWDtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksd0JBRzlDO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBT2Y7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"private_log_data.d.ts","sourceRoot":"","sources":["../../src/kernel/private_log_data.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,qBAAa,cAAc;IAEhB,GAAG,EAAE,UAAU;IACf,eAAe,EAAE,MAAM;IACvB,OAAO,EAAE,MAAM;IAHxB,YACS,GAAG,EAAE,UAAU,EACf,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACpB;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,cAAc,CAE5D;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,yCAEhD;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,cAAc,CAG5D;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,kBAG9C;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,KAAK,mBAEX;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAMf;CACF;AAED,qBAAa,oBAAoB;IAEtB,KAAK,EAAE,cAAc;IACrB,eAAe,EAAE,YAAY;IAFtC,YACS,KAAK,EAAE,cAAc,EACrB,eAAe,EAAE,YAAY,EAClC;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC,GAAG,oBAAoB,CAExE;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC,2CAEtD;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,wBAG3C;IAED,OAAO,YAEN;IAED,MAAM,CAAC,KAAK,yBAEX;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,wBAG9C;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAOf;CACF"}
1
+ {"version":3,"file":"private_log_data.d.ts","sourceRoot":"","sources":["../../src/kernel/private_log_data.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,qBAAa,cAAc;IAEhB,GAAG,EAAE,UAAU;IACf,eAAe,EAAE,MAAM;IACvB,OAAO,EAAE,MAAM;IAHxB,YACS,GAAG,EAAE,UAAU,EACf,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACpB;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,cAAc,CAE5D;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,yCAEhD;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,cAAc,CAG5D;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,kBAG9C;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,KAAK,mBAEX;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAMf;CACF;AAED,qBAAa,oBAAoB;IAEtB,KAAK,EAAE,cAAc;IACrB,eAAe,EAAE,YAAY;IAFtC,YACS,KAAK,EAAE,cAAc,EACrB,eAAe,EAAE,YAAY,EAClC;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC,GAAG,oBAAoB,CAExE;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC,2CAEtD;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,wBAM3C;IAED,OAAO,YAEN;IAED,MAAM,CAAC,KAAK,yBAEX;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,wBAG9C;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAOf;CACF"}
@@ -78,7 +78,7 @@ export class ScopedPrivateLogData {
78
78
  }
79
79
  static fromFields(fields) {
80
80
  const reader = FieldReader.asReader(fields);
81
- return new ScopedPrivateLogData(reader.readObject(PrivateLogData), AztecAddress.fromField(reader.readField()));
81
+ return new ScopedPrivateLogData(reader.readObject(PrivateLogData), AztecAddress.fromFieldUnsafe(reader.readField()));
82
82
  }
83
83
  isEmpty() {
84
84
  return this.inner.isEmpty() && this.contractAddress.isZero();
@@ -1,4 +1,3 @@
1
1
  export * from './interfaces.js';
2
- export * from './optional_number.js';
3
2
  export * from './order_and_comparison.js';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9rZXJuZWwvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsMkJBQTJCLENBQUMifQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9rZXJuZWwvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLDJCQUEyQixDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/kernel/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/kernel/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC"}
@@ -1,3 +1,2 @@
1
1
  export * from './interfaces.js';
2
- export * from './optional_number.js';
3
2
  export * from './order_and_comparison.js';
@@ -4,30 +4,66 @@ import { AztecAddress } from '../aztec-address/index.js';
4
4
  import type { KeyPrefix } from './key_types.js';
5
5
  import { PublicKey } from './public_key.js';
6
6
  import { PublicKeys } from './public_keys.js';
7
- export declare function computeAppNullifierHidingKey(masterNullifierHidingKey: GrumpkinScalar, app: AztecAddress): Promise<Fr>;
7
+ export declare function computeAppNullifierHidingKey(masterNullifierHidingSecretKey: GrumpkinScalar, app: AztecAddress): Promise<Fr>;
8
8
  export declare function computeAppSecretKey(skM: GrumpkinScalar, app: AztecAddress, keyPrefix: KeyPrefix): Promise<Fr>;
9
9
  export declare function computeOvskApp(ovsk: GrumpkinScalar, app: AztecAddress): Promise<Fq>;
10
- export declare function deriveMasterNullifierHidingKey(secretKey: Fr): GrumpkinScalar;
10
+ export declare function deriveMasterNullifierHidingSecretKey(secretKey: Fr): GrumpkinScalar;
11
11
  export declare function deriveMasterIncomingViewingSecretKey(secretKey: Fr): GrumpkinScalar;
12
12
  export declare function deriveMasterOutgoingViewingSecretKey(secretKey: Fr): GrumpkinScalar;
13
+ export declare function deriveMasterMessageSigningSecretKey(secretKey: Fr): GrumpkinScalar;
14
+ export declare function deriveMasterFallbackSecretKey(secretKey: Fr): GrumpkinScalar;
13
15
  export declare function deriveSigningKey(secretKey: Fr): GrumpkinScalar;
14
16
  export declare function computePreaddress(publicKeysHash: Fr, partialAddress: Fr): Promise<Fr>;
15
17
  export declare function computeAddress(publicKeys: PublicKeys, partialAddress: Fr): Promise<AztecAddress>;
16
18
  export declare function computeAddressSecret(preaddress: Fr, ivsk: Fq): Promise<Fq>;
17
19
  export declare function derivePublicKeyFromSecretKey(secretKey: Fq): Promise<PublicKey>;
20
+ /**
21
+ * The six master secret keys that fully define an account's privacy keys.
22
+ */
23
+ export type MasterSecretKeys = {
24
+ masterNullifierHidingSecretKey: GrumpkinScalar;
25
+ masterIncomingViewingSecretKey: GrumpkinScalar;
26
+ masterOutgoingViewingSecretKey: GrumpkinScalar;
27
+ masterTaggingSecretKey: GrumpkinScalar;
28
+ masterMessageSigningSecretKey: GrumpkinScalar;
29
+ masterFallbackSecretKey: GrumpkinScalar;
30
+ };
18
31
  /**
19
32
  * Computes secret and public keys and public keys hash from a secret key.
20
33
  * @param secretKey - The secret key to derive keys from.
21
34
  * @returns The derived keys.
22
35
  */
23
36
  export declare function deriveKeys(secretKey: Fr): Promise<{
24
- masterNullifierHidingKey: Fq;
37
+ masterNullifierHidingSecretKey: Fq;
38
+ masterIncomingViewingSecretKey: Fq;
39
+ masterOutgoingViewingSecretKey: Fq;
40
+ masterTaggingSecretKey: Fq;
41
+ masterMessageSigningSecretKey: Fq;
42
+ masterFallbackSecretKey: Fq;
43
+ masterNullifierHidingPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
44
+ masterOutgoingViewingPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
45
+ masterTaggingPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
46
+ masterMessageSigningPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
47
+ masterFallbackPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
48
+ publicKeys: PublicKeys;
49
+ }>;
50
+ /**
51
+ * Derives the master public keys and the {@link PublicKeys} struct from a set of master secret keys.
52
+ * @param secretKeys - The master secret keys to derive public keys from.
53
+ * @returns The provided secret keys alongside the derived public keys.
54
+ */
55
+ export declare function deriveKeysFromMasterSecretKeys(secretKeys: MasterSecretKeys): Promise<{
56
+ masterNullifierHidingSecretKey: Fq;
25
57
  masterIncomingViewingSecretKey: Fq;
26
58
  masterOutgoingViewingSecretKey: Fq;
27
59
  masterTaggingSecretKey: Fq;
28
- masterNullifierPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
60
+ masterMessageSigningSecretKey: Fq;
61
+ masterFallbackSecretKey: Fq;
62
+ masterNullifierHidingPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
29
63
  masterOutgoingViewingPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
30
64
  masterTaggingPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
65
+ masterMessageSigningPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
66
+ masterFallbackPublicKey: import("@aztec/foundation/curves/grumpkin").Point;
31
67
  publicKeys: PublicKeys;
32
68
  }>;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVyaXZhdGlvbi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tleXMvZGVyaXZhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBaUIsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHOUMsd0JBQWdCLDRCQUE0QixDQUFDLHdCQUF3QixFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsWUFBWSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFckg7QUFFRCx3QkFBZ0IsbUJBQW1CLENBQUMsR0FBRyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxTQUFTLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUc3RztBQUVELHdCQUFzQixjQUFjLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsWUFBWSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FLekY7QUFFRCx3QkFBZ0IsOEJBQThCLENBQUMsU0FBUyxFQUFFLEVBQUUsR0FBRyxjQUFjLENBRTVFO0FBRUQsd0JBQWdCLG9DQUFvQyxDQUFDLFNBQVMsRUFBRSxFQUFFLEdBQUcsY0FBYyxDQUVsRjtBQUVELHdCQUFnQixvQ0FBb0MsQ0FBQyxTQUFTLEVBQUUsRUFBRSxHQUFHLGNBQWMsQ0FFbEY7QUFFRCx3QkFBZ0IsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLEVBQUUsR0FBRyxjQUFjLENBRzlEO0FBRUQsd0JBQWdCLGlCQUFpQixDQUFDLGNBQWMsRUFBRSxFQUFFLEVBQUUsY0FBYyxFQUFFLEVBQUUsZUFFdkU7QUFFRCx3QkFBc0IsY0FBYyxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBWXRHO0FBRUQsd0JBQXNCLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsZUFvQmxFO0FBRUQsd0JBQWdCLDRCQUE0QixDQUFDLFNBQVMsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUU5RTtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBc0IsVUFBVSxDQUFDLFNBQVMsRUFBRSxFQUFFOzs7Ozs7Ozs7R0F3QzdDIn0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVyaXZhdGlvbi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tleXMvZGVyaXZhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBaUIsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHOUMsd0JBQWdCLDRCQUE0QixDQUMxQyw4QkFBOEIsRUFBRSxjQUFjLEVBQzlDLEdBQUcsRUFBRSxZQUFZLEdBQ2hCLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFYjtBQUVELHdCQUFnQixtQkFBbUIsQ0FBQyxHQUFHLEVBQUUsY0FBYyxFQUFFLEdBQUcsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFNBQVMsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRzdHO0FBRUQsd0JBQXNCLGNBQWMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFLEdBQUcsRUFBRSxZQUFZLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUt6RjtBQUVELHdCQUFnQixvQ0FBb0MsQ0FBQyxTQUFTLEVBQUUsRUFBRSxHQUFHLGNBQWMsQ0FFbEY7QUFFRCx3QkFBZ0Isb0NBQW9DLENBQUMsU0FBUyxFQUFFLEVBQUUsR0FBRyxjQUFjLENBRWxGO0FBRUQsd0JBQWdCLG9DQUFvQyxDQUFDLFNBQVMsRUFBRSxFQUFFLEdBQUcsY0FBYyxDQUVsRjtBQUVELHdCQUFnQixtQ0FBbUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxHQUFHLGNBQWMsQ0FFakY7QUFFRCx3QkFBZ0IsNkJBQTZCLENBQUMsU0FBUyxFQUFFLEVBQUUsR0FBRyxjQUFjLENBRTNFO0FBRUQsd0JBQWdCLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxFQUFFLEdBQUcsY0FBYyxDQUc5RDtBQUVELHdCQUFnQixpQkFBaUIsQ0FBQyxjQUFjLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRSxFQUFFLGVBRXZFO0FBRUQsd0JBQXNCLGNBQWMsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQVl0RztBQUVELHdCQUFzQixvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLGVBb0JsRTtBQUVELHdCQUFnQiw0QkFBNEIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FPOUU7QUFFRDs7R0FFRztBQUNILE1BQU0sTUFBTSxnQkFBZ0IsR0FBRztJQUM3Qiw4QkFBOEIsRUFBRSxjQUFjLENBQUM7SUFDL0MsOEJBQThCLEVBQUUsY0FBYyxDQUFDO0lBQy9DLDhCQUE4QixFQUFFLGNBQWMsQ0FBQztJQUMvQyxzQkFBc0IsRUFBRSxjQUFjLENBQUM7SUFDdkMsNkJBQTZCLEVBQUUsY0FBYyxDQUFDO0lBQzlDLHVCQUF1QixFQUFFLGNBQWMsQ0FBQztDQUN6QyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNILHdCQUFnQixVQUFVLENBQUMsU0FBUyxFQUFFLEVBQUU7Ozs7Ozs7Ozs7Ozs7R0FXdkM7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQXNCLDhCQUE4QixDQUFDLFVBQVUsRUFBRSxnQkFBZ0I7Ozs7Ozs7Ozs7Ozs7R0E0Q2hGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"derivation.d.ts","sourceRoot":"","sources":["../../src/keys/derivation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAiB,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,wBAAgB,4BAA4B,CAAC,wBAAwB,EAAE,cAAc,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,EAAE,CAAC,CAErH;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,CAG7G;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,EAAE,CAAC,CAKzF;AAED,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAE5E;AAED,wBAAgB,oCAAoC,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAElF;AAED,wBAAgB,oCAAoC,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAElF;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAG9D;AAED,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,eAEvE;AAED,wBAAsB,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAYtG;AAED,wBAAsB,oBAAoB,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,eAoBlE;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAE9E;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,SAAS,EAAE,EAAE;;;;;;;;;GAwC7C"}
1
+ {"version":3,"file":"derivation.d.ts","sourceRoot":"","sources":["../../src/keys/derivation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAiB,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,wBAAgB,4BAA4B,CAC1C,8BAA8B,EAAE,cAAc,EAC9C,GAAG,EAAE,YAAY,GAChB,OAAO,CAAC,EAAE,CAAC,CAEb;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,CAG7G;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,EAAE,CAAC,CAKzF;AAED,wBAAgB,oCAAoC,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAElF;AAED,wBAAgB,oCAAoC,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAElF;AAED,wBAAgB,oCAAoC,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAElF;AAED,wBAAgB,mCAAmC,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAEjF;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAE3E;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,EAAE,GAAG,cAAc,CAG9D;AAED,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,eAEvE;AAED,wBAAsB,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAYtG;AAED,wBAAsB,oBAAoB,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,eAoBlE;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAO9E;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,8BAA8B,EAAE,cAAc,CAAC;IAC/C,8BAA8B,EAAE,cAAc,CAAC;IAC/C,8BAA8B,EAAE,cAAc,CAAC;IAC/C,sBAAsB,EAAE,cAAc,CAAC;IACvC,6BAA6B,EAAE,cAAc,CAAC;IAC9C,uBAAuB,EAAE,cAAc,CAAC;CACzC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,EAAE;;;;;;;;;;;;;GAWvC;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CAAC,UAAU,EAAE,gBAAgB;;;;;;;;;;;;;GA4ChF"}
@@ -1,15 +1,15 @@
1
- import { DEFAULT_FBPK_M_HASH, DEFAULT_MSPK_M_HASH, DomainSeparator } from '@aztec/constants';
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
4
  import { sha512ToGrumpkinScalar } from '@aztec/foundation/crypto/sha512';
5
5
  import { Fq, Fr } from '@aztec/foundation/curves/bn254';
6
6
  import { GrumpkinScalar } from '@aztec/foundation/curves/grumpkin';
7
7
  import { AztecAddress } from '../aztec-address/index.js';
8
- import { hashPublicKey } from './public_key.js';
8
+ import { PublicKey, hashPublicKey } from './public_key.js';
9
9
  import { PublicKeys } from './public_keys.js';
10
10
  import { getKeyGenerator } from './utils.js';
11
- export function computeAppNullifierHidingKey(masterNullifierHidingKey, app) {
12
- return computeAppSecretKey(masterNullifierHidingKey, app, 'n'); // 'n' is the key prefix for nullifier hiding key
11
+ export function computeAppNullifierHidingKey(masterNullifierHidingSecretKey, app) {
12
+ return computeAppSecretKey(masterNullifierHidingSecretKey, app, 'n'); // 'n' is the key prefix for nullifier hiding key
13
13
  }
14
14
  export function computeAppSecretKey(skM, app, keyPrefix) {
15
15
  const generator = getKeyGenerator(keyPrefix);
@@ -25,7 +25,7 @@ export async function computeOvskApp(ovsk, app) {
25
25
  // P = s * G will not be uniform because 2 * (q - r) / q is small.
26
26
  return GrumpkinScalar.fromBuffer(ovskAppFr.toBuffer());
27
27
  }
28
- export function deriveMasterNullifierHidingKey(secretKey) {
28
+ export function deriveMasterNullifierHidingSecretKey(secretKey) {
29
29
  return sha512ToGrumpkinScalar([
30
30
  secretKey,
31
31
  DomainSeparator.NHK_M
@@ -43,6 +43,18 @@ export function deriveMasterOutgoingViewingSecretKey(secretKey) {
43
43
  DomainSeparator.OVSK_M
44
44
  ]);
45
45
  }
46
+ export function deriveMasterMessageSigningSecretKey(secretKey) {
47
+ return sha512ToGrumpkinScalar([
48
+ secretKey,
49
+ DomainSeparator.MSSK_M
50
+ ]);
51
+ }
52
+ export function deriveMasterFallbackSecretKey(secretKey) {
53
+ return sha512ToGrumpkinScalar([
54
+ secretKey,
55
+ DomainSeparator.FBSK_M
56
+ ]);
57
+ }
46
58
  export function deriveSigningKey(secretKey) {
47
59
  // TODO(#5837): come up with a standard signing key derivation scheme instead of using ivsk_m as signing keys here
48
60
  return sha512ToGrumpkinScalar([
@@ -85,43 +97,61 @@ export async function computeAddressSecret(preaddress, ivsk) {
85
97
  return addressSecretCandidate;
86
98
  }
87
99
  export function derivePublicKeyFromSecretKey(secretKey) {
100
+ // 0 * G is the point at infinity. The WASM encodes infinity with an out-of-field x coordinate that Point cannot
101
+ // deserialize, so return the point directly instead of calling into it.
102
+ if (secretKey.isZero()) {
103
+ return Promise.resolve(PublicKey.INFINITY);
104
+ }
88
105
  return Grumpkin.mul(Grumpkin.generator, secretKey);
89
106
  }
90
107
  /**
91
108
  * Computes secret and public keys and public keys hash from a secret key.
92
109
  * @param secretKey - The secret key to derive keys from.
93
110
  * @returns The derived keys.
94
- */ export async function deriveKeys(secretKey) {
111
+ */ export function deriveKeys(secretKey) {
95
112
  // First we derive master secret/hiding keys - we use sha512 here because this derivation will never take place
96
113
  // in a circuit
97
- const masterNullifierHidingKey = deriveMasterNullifierHidingKey(secretKey);
98
- const masterIncomingViewingSecretKey = deriveMasterIncomingViewingSecretKey(secretKey);
99
- const masterOutgoingViewingSecretKey = deriveMasterOutgoingViewingSecretKey(secretKey);
100
- const masterTaggingSecretKey = sha512ToGrumpkinScalar([
101
- secretKey,
102
- DomainSeparator.TSK_M
103
- ]);
104
- // Then we derive master public keys
105
- const masterNullifierPublicKey = await derivePublicKeyFromSecretKey(masterNullifierHidingKey);
114
+ return deriveKeysFromMasterSecretKeys({
115
+ masterNullifierHidingSecretKey: deriveMasterNullifierHidingSecretKey(secretKey),
116
+ masterIncomingViewingSecretKey: deriveMasterIncomingViewingSecretKey(secretKey),
117
+ masterOutgoingViewingSecretKey: deriveMasterOutgoingViewingSecretKey(secretKey),
118
+ masterTaggingSecretKey: sha512ToGrumpkinScalar([
119
+ secretKey,
120
+ DomainSeparator.TSK_M
121
+ ]),
122
+ masterMessageSigningSecretKey: deriveMasterMessageSigningSecretKey(secretKey),
123
+ masterFallbackSecretKey: deriveMasterFallbackSecretKey(secretKey)
124
+ });
125
+ }
126
+ /**
127
+ * Derives the master public keys and the {@link PublicKeys} struct from a set of master secret keys.
128
+ * @param secretKeys - The master secret keys to derive public keys from.
129
+ * @returns The provided secret keys alongside the derived public keys.
130
+ */ export async function deriveKeysFromMasterSecretKeys(secretKeys) {
131
+ const { masterNullifierHidingSecretKey, masterIncomingViewingSecretKey, masterOutgoingViewingSecretKey, masterTaggingSecretKey, masterMessageSigningSecretKey, masterFallbackSecretKey } = secretKeys;
132
+ const masterNullifierHidingPublicKey = await derivePublicKeyFromSecretKey(masterNullifierHidingSecretKey);
106
133
  const masterIncomingViewingPublicKey = await derivePublicKeyFromSecretKey(masterIncomingViewingSecretKey);
107
134
  const masterOutgoingViewingPublicKey = await derivePublicKeyFromSecretKey(masterOutgoingViewingSecretKey);
108
135
  const masterTaggingPublicKey = await derivePublicKeyFromSecretKey(masterTaggingSecretKey);
136
+ const masterMessageSigningPublicKey = await derivePublicKeyFromSecretKey(masterMessageSigningSecretKey);
137
+ const masterFallbackPublicKey = await derivePublicKeyFromSecretKey(masterFallbackSecretKey);
109
138
  // The non-owner-visible PublicKeys carries hashes for npk/ovpk/tpk/mspk/fbpk and the raw
110
- // point only for ivpk_m. The npk/ovpk/tpk raw points are also returned alongside so the key
111
- // store can persist them under `${account}-{n|ov|t}pk_m` (only their hashes live in publicKeys).
139
+ // point only for ivpk_m. The npk/ovpk/tpk/mspk/fbpk raw points are also returned alongside so the key
140
+ // store can persist them under `${account}-{n|ov|t|ms|fb}pk_m` (only their hashes live in publicKeys).
112
141
  // The ivpk_m point isn't returned separately because it already lives in publicKeys.ivpkM.
113
- //
114
- // TODO: There isn't a derivation path for the message signing(msk) and fallback(fbk) keys yet. So we just use the the
115
- // default values for now.
116
- const publicKeys = new PublicKeys(await hashPublicKey(masterNullifierPublicKey), masterIncomingViewingPublicKey, await hashPublicKey(masterOutgoingViewingPublicKey), await hashPublicKey(masterTaggingPublicKey), new Fr(DEFAULT_MSPK_M_HASH), new Fr(DEFAULT_FBPK_M_HASH));
142
+ const publicKeys = new PublicKeys(await hashPublicKey(masterNullifierHidingPublicKey), masterIncomingViewingPublicKey, await hashPublicKey(masterOutgoingViewingPublicKey), await hashPublicKey(masterTaggingPublicKey), await hashPublicKey(masterMessageSigningPublicKey), await hashPublicKey(masterFallbackPublicKey));
117
143
  return {
118
- masterNullifierHidingKey,
144
+ masterNullifierHidingSecretKey,
119
145
  masterIncomingViewingSecretKey,
120
146
  masterOutgoingViewingSecretKey,
121
147
  masterTaggingSecretKey,
122
- masterNullifierPublicKey,
148
+ masterMessageSigningSecretKey,
149
+ masterFallbackSecretKey,
150
+ masterNullifierHidingPublicKey,
123
151
  masterOutgoingViewingPublicKey,
124
152
  masterTaggingPublicKey,
153
+ masterMessageSigningPublicKey,
154
+ masterFallbackPublicKey,
125
155
  publicKeys
126
156
  };
127
157
  }