@aztec/foundation 0.0.1-commit.b655e406 → 0.0.1-commit.c7c42ec

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 (434) hide show
  1. package/dest/array/array.d.ts +1 -9
  2. package/dest/array/array.d.ts.map +1 -1
  3. package/dest/array/array.js +0 -11
  4. package/dest/array/index.d.ts +2 -1
  5. package/dest/array/index.d.ts.map +1 -1
  6. package/dest/array/index.js +1 -0
  7. package/dest/array/sorted_array.d.ts +10 -0
  8. package/dest/array/sorted_array.d.ts.map +1 -0
  9. package/dest/array/sorted_array.js +106 -0
  10. package/dest/async-map/index.d.ts +1 -1
  11. package/dest/async-pool/index.d.ts +1 -1
  12. package/dest/bigint/index.d.ts +1 -1
  13. package/dest/bigint-buffer/index.d.ts +1 -1
  14. package/dest/branded-types/block_number.d.ts +53 -0
  15. package/dest/branded-types/block_number.d.ts.map +1 -0
  16. package/dest/branded-types/block_number.js +75 -0
  17. package/dest/branded-types/checkpoint_number.d.ts +46 -0
  18. package/dest/branded-types/checkpoint_number.d.ts.map +1 -0
  19. package/dest/branded-types/checkpoint_number.js +68 -0
  20. package/dest/branded-types/epoch.d.ts +42 -0
  21. package/dest/branded-types/epoch.d.ts.map +1 -0
  22. package/dest/branded-types/epoch.js +59 -0
  23. package/dest/branded-types/index.d.ts +6 -0
  24. package/dest/branded-types/index.d.ts.map +1 -0
  25. package/dest/branded-types/index.js +4 -0
  26. package/dest/branded-types/slot.d.ts +42 -0
  27. package/dest/branded-types/slot.d.ts.map +1 -0
  28. package/dest/branded-types/slot.js +59 -0
  29. package/dest/branded-types/types.d.ts +5 -0
  30. package/dest/branded-types/types.d.ts.map +1 -0
  31. package/dest/branded-types/types.js +1 -0
  32. package/dest/buffer/buffer16.d.ts +2 -5
  33. package/dest/buffer/buffer16.d.ts.map +1 -1
  34. package/dest/buffer/buffer16.js +1 -1
  35. package/dest/buffer/buffer32.d.ts +2 -5
  36. package/dest/buffer/buffer32.d.ts.map +1 -1
  37. package/dest/buffer/buffer32.js +1 -1
  38. package/dest/buffer/index.d.ts +1 -1
  39. package/dest/collection/array.d.ts +1 -1
  40. package/dest/collection/index.d.ts +1 -1
  41. package/dest/collection/object.d.ts +1 -1
  42. package/dest/committable/committable.d.ts +1 -1
  43. package/dest/committable/committable.d.ts.map +1 -1
  44. package/dest/committable/index.d.ts +1 -1
  45. package/dest/config/env_var.d.ts +2 -2
  46. package/dest/config/env_var.d.ts.map +1 -1
  47. package/dest/config/index.d.ts +10 -2
  48. package/dest/config/index.d.ts.map +1 -1
  49. package/dest/config/index.js +16 -2
  50. package/dest/config/network_config.d.ts +13 -1
  51. package/dest/config/network_config.d.ts.map +1 -1
  52. package/dest/config/network_config.js +3 -1
  53. package/dest/config/network_name.d.ts +1 -1
  54. package/dest/config/secret_value.d.ts +1 -1
  55. package/dest/config/secret_value.d.ts.map +1 -1
  56. package/dest/crypto/aes128/index.d.ts +1 -1
  57. package/dest/crypto/aes128/index.d.ts.map +1 -1
  58. package/dest/crypto/aes128/index.js +2 -6
  59. package/dest/crypto/bls/bn254_keystore.d.ts +15 -15
  60. package/dest/crypto/bls/bn254_keystore.d.ts.map +1 -1
  61. package/dest/crypto/bls/bn254_keystore.js +1 -1
  62. package/dest/crypto/bls/index.d.ts +1 -1
  63. package/dest/crypto/bls/index.js +1 -1
  64. package/dest/crypto/bn254/index.d.ts +35 -51
  65. package/dest/crypto/bn254/index.d.ts.map +1 -1
  66. package/dest/crypto/bn254/index.js +51 -137
  67. package/dest/crypto/ecdsa/index.d.ts +1 -1
  68. package/dest/crypto/ecdsa/index.d.ts.map +1 -1
  69. package/dest/crypto/ecdsa/index.js +4 -12
  70. package/dest/crypto/ecdsa/signature.d.ts +2 -11
  71. package/dest/crypto/ecdsa/signature.d.ts.map +1 -1
  72. package/dest/crypto/ecdsa/signature.js +2 -2
  73. package/dest/crypto/grumpkin/index.d.ts +4 -2
  74. package/dest/crypto/grumpkin/index.d.ts.map +1 -1
  75. package/dest/crypto/grumpkin/index.js +7 -16
  76. package/dest/crypto/keccak/index.d.ts +1 -1
  77. package/dest/crypto/keys/index.d.ts +2 -2
  78. package/dest/crypto/keys/index.d.ts.map +1 -1
  79. package/dest/crypto/keys/index.js +2 -4
  80. package/dest/crypto/pedersen/index.d.ts +1 -1
  81. package/dest/crypto/pedersen/pedersen.noble.d.ts +1 -1
  82. package/dest/crypto/pedersen/pedersen.wasm.d.ts +2 -2
  83. package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -1
  84. package/dest/crypto/pedersen/pedersen.wasm.js +4 -10
  85. package/dest/crypto/poseidon/index.d.ts +2 -2
  86. package/dest/crypto/poseidon/index.d.ts.map +1 -1
  87. package/dest/crypto/poseidon/index.js +6 -16
  88. package/dest/crypto/random/index.d.ts +1 -1
  89. package/dest/crypto/random/index.d.ts.map +1 -1
  90. package/dest/crypto/random/randomness_singleton.d.ts +1 -1
  91. package/dest/crypto/random/randomness_singleton.d.ts.map +1 -1
  92. package/dest/crypto/schnorr/index.d.ts +3 -2
  93. package/dest/crypto/schnorr/index.d.ts.map +1 -1
  94. package/dest/crypto/schnorr/index.js +4 -10
  95. package/dest/crypto/schnorr/signature.d.ts +2 -2
  96. package/dest/crypto/schnorr/signature.d.ts.map +1 -1
  97. package/dest/crypto/schnorr/signature.js +2 -2
  98. package/dest/crypto/secp256k1/index.d.ts +1 -1
  99. package/dest/crypto/secp256k1/index.d.ts.map +1 -1
  100. package/dest/crypto/secp256k1/index.js +3 -9
  101. package/dest/crypto/secp256k1-signer/index.d.ts +1 -1
  102. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts +1 -1
  103. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts.map +1 -1
  104. package/dest/crypto/secp256k1-signer/utils.d.ts +1 -1
  105. package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -1
  106. package/dest/crypto/serialize.d.ts +1 -1
  107. package/dest/crypto/sha256/index.d.ts +2 -2
  108. package/dest/crypto/sha256/index.d.ts.map +1 -1
  109. package/dest/crypto/sha256/index.js +1 -1
  110. package/dest/crypto/sha512/index.d.ts +3 -3
  111. package/dest/crypto/sha512/index.d.ts.map +1 -1
  112. package/dest/crypto/sha512/index.js +1 -1
  113. package/dest/crypto/signature/index.d.ts +2 -2
  114. package/dest/crypto/signature/index.d.ts.map +1 -1
  115. package/dest/crypto/sync/index.d.ts +1 -1
  116. package/dest/crypto/sync/index.js +1 -3
  117. package/dest/crypto/sync/pedersen/index.d.ts +2 -2
  118. package/dest/crypto/sync/pedersen/index.d.ts.map +1 -1
  119. package/dest/crypto/sync/pedersen/index.js +1 -1
  120. package/dest/crypto/sync/poseidon/index.d.ts +2 -2
  121. package/dest/crypto/sync/poseidon/index.d.ts.map +1 -1
  122. package/dest/crypto/sync/poseidon/index.js +1 -1
  123. package/dest/{fields/bls12_fields.d.ts → curves/bls12/field.d.ts} +3 -3
  124. package/dest/curves/bls12/field.d.ts.map +1 -0
  125. package/dest/{fields/bls12_fields.js → curves/bls12/field.js} +6 -6
  126. package/dest/curves/bls12/index.d.ts +3 -0
  127. package/dest/curves/bls12/index.d.ts.map +1 -0
  128. package/dest/curves/bls12/index.js +2 -0
  129. package/dest/{fields/bls12_point.d.ts → curves/bls12/point.d.ts} +4 -13
  130. package/dest/curves/bls12/point.d.ts.map +1 -0
  131. package/dest/{fields/bls12_point.js → curves/bls12/point.js} +7 -7
  132. package/dest/{fields/fields.d.ts → curves/bn254/field.d.ts} +16 -15
  133. package/dest/curves/bn254/field.d.ts.map +1 -0
  134. package/dest/{fields/fields.js → curves/bn254/field.js} +44 -47
  135. package/dest/curves/bn254/index.d.ts +3 -0
  136. package/dest/curves/bn254/index.d.ts.map +1 -0
  137. package/dest/curves/bn254/index.js +2 -0
  138. package/dest/curves/bn254/point.d.ts +54 -0
  139. package/dest/curves/bn254/point.d.ts.map +1 -0
  140. package/dest/curves/bn254/point.js +143 -0
  141. package/dest/curves/grumpkin/index.d.ts +10 -0
  142. package/dest/curves/grumpkin/index.d.ts.map +1 -0
  143. package/dest/curves/grumpkin/index.js +3 -0
  144. package/dest/{fields → curves/grumpkin}/point.d.ts +13 -13
  145. package/dest/curves/grumpkin/point.d.ts.map +1 -0
  146. package/dest/{fields → curves/grumpkin}/point.js +24 -7
  147. package/dest/decorators/index.d.ts +1 -1
  148. package/dest/decorators/memoize.d.ts +1 -1
  149. package/dest/decorators/memoize.d.ts.map +1 -1
  150. package/dest/error/index.d.ts +4 -4
  151. package/dest/error/index.d.ts.map +1 -1
  152. package/dest/eth-address/index.d.ts +12 -2
  153. package/dest/eth-address/index.d.ts.map +1 -1
  154. package/dest/eth-address/index.js +23 -1
  155. package/dest/eth-signature/eth_signature.d.ts +1 -4
  156. package/dest/eth-signature/eth_signature.d.ts.map +1 -1
  157. package/dest/eth-signature/index.d.ts +1 -1
  158. package/dest/fs/index.d.ts +1 -1
  159. package/dest/fs/run_in_dir.d.ts +1 -1
  160. package/dest/fs/try_rm_dir.d.ts +1 -1
  161. package/dest/iterable/all.d.ts +1 -1
  162. package/dest/iterable/filter.d.ts +1 -1
  163. package/dest/iterable/index.d.ts +1 -1
  164. package/dest/iterable/isAsyncIt.d.ts +1 -1
  165. package/dest/iterable/map.d.ts +1 -1
  166. package/dest/iterable/peek.d.ts +1 -1
  167. package/dest/iterable/sort.d.ts +1 -1
  168. package/dest/iterable/take.d.ts +1 -1
  169. package/dest/iterable/toArray.d.ts +1 -1
  170. package/dest/iterator/filter.d.ts +3 -0
  171. package/dest/iterator/filter.d.ts.map +1 -0
  172. package/dest/iterator/filter.js +7 -0
  173. package/dest/iterator/index.d.ts +2 -0
  174. package/dest/iterator/index.d.ts.map +1 -0
  175. package/dest/iterator/index.js +1 -0
  176. package/dest/json-rpc/client/fetch.d.ts +1 -1
  177. package/dest/json-rpc/client/index.d.ts +1 -1
  178. package/dest/json-rpc/client/safe_json_rpc_client.d.ts +1 -1
  179. package/dest/json-rpc/client/undici.d.ts +1 -1
  180. package/dest/json-rpc/convert.d.ts +1 -1
  181. package/dest/json-rpc/errors.d.ts +1 -1
  182. package/dest/json-rpc/errors.d.ts.map +1 -1
  183. package/dest/json-rpc/fixtures/class_a.d.ts +3 -3
  184. package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -1
  185. package/dest/json-rpc/fixtures/class_b.d.ts +3 -3
  186. package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -1
  187. package/dest/json-rpc/fixtures/test_state.d.ts +1 -1
  188. package/dest/json-rpc/fixtures/test_state.d.ts.map +1 -1
  189. package/dest/json-rpc/index.d.ts +1 -1
  190. package/dest/json-rpc/js_utils.d.ts +1 -1
  191. package/dest/json-rpc/js_utils.d.ts.map +1 -1
  192. package/dest/json-rpc/server/index.d.ts +1 -1
  193. package/dest/json-rpc/server/safe_json_rpc_server.d.ts +1 -1
  194. package/dest/json-rpc/server/safe_json_rpc_server.d.ts.map +1 -1
  195. package/dest/json-rpc/server/telemetry.d.ts +1 -1
  196. package/dest/json-rpc/test/index.d.ts +1 -1
  197. package/dest/json-rpc/test/integration.d.ts +1 -1
  198. package/dest/log/console.d.ts +1 -1
  199. package/dest/log/gcloud-logger-config.d.ts +1 -1
  200. package/dest/log/gcloud-logger-config.d.ts.map +1 -1
  201. package/dest/log/index.d.ts +1 -1
  202. package/dest/log/libp2p_logger.d.ts +1 -1
  203. package/dest/log/log-filters.d.ts +1 -1
  204. package/dest/log/log-levels.d.ts +1 -1
  205. package/dest/log/log_fn.d.ts +1 -1
  206. package/dest/log/noir_debug_log_util.d.ts +1 -1
  207. package/dest/log/pino-logger.d.ts +2 -2
  208. package/dest/message/index.d.ts +1 -1
  209. package/dest/message/index.d.ts.map +1 -1
  210. package/dest/mutex/index.d.ts +1 -1
  211. package/dest/mutex/index.d.ts.map +1 -1
  212. package/dest/mutex/mutex_database.d.ts +1 -1
  213. package/dest/noir/index.d.ts +1 -1
  214. package/dest/noir/noir_package_config.d.ts +9 -9
  215. package/dest/number/index.d.ts +1 -1
  216. package/dest/profiler/index.d.ts +1 -1
  217. package/dest/profiler/profiler.d.ts +1 -1
  218. package/dest/promise/index.d.ts +1 -1
  219. package/dest/promise/running-promise.d.ts +1 -1
  220. package/dest/promise/running-promise.d.ts.map +1 -1
  221. package/dest/promise/utils.d.ts +1 -1
  222. package/dest/queue/base_memory_queue.d.ts +1 -1
  223. package/dest/queue/base_memory_queue.d.ts.map +1 -1
  224. package/dest/queue/batch_queue.d.ts +1 -1
  225. package/dest/queue/batch_queue.d.ts.map +1 -1
  226. package/dest/queue/bounded_serial_queue.d.ts +1 -1
  227. package/dest/queue/bounded_serial_queue.d.ts.map +1 -1
  228. package/dest/queue/fifo_memory_queue.d.ts +1 -1
  229. package/dest/queue/fifo_memory_queue.d.ts.map +1 -1
  230. package/dest/queue/index.d.ts +1 -1
  231. package/dest/queue/priority_memory_queue.d.ts +1 -1
  232. package/dest/queue/priority_memory_queue.d.ts.map +1 -1
  233. package/dest/queue/priority_queue.d.ts +1 -1
  234. package/dest/queue/priority_queue.d.ts.map +1 -1
  235. package/dest/queue/semaphore.d.ts +1 -1
  236. package/dest/queue/semaphore.d.ts.map +1 -1
  237. package/dest/queue/serial_queue.d.ts +1 -1
  238. package/dest/queue/serial_queue.d.ts.map +1 -1
  239. package/dest/retry/index.d.ts +1 -1
  240. package/dest/running-promise/index.d.ts +1 -1
  241. package/dest/schemas/api.d.ts +1 -1
  242. package/dest/schemas/index.d.ts +1 -1
  243. package/dest/schemas/parse.d.ts +1 -1
  244. package/dest/schemas/schemas.d.ts +15 -17
  245. package/dest/schemas/schemas.d.ts.map +1 -1
  246. package/dest/schemas/schemas.js +14 -10
  247. package/dest/schemas/types.d.ts +31 -1
  248. package/dest/schemas/types.d.ts.map +1 -1
  249. package/dest/schemas/types.js +25 -1
  250. package/dest/schemas/utils.d.ts +4 -4
  251. package/dest/schemas/utils.d.ts.map +1 -1
  252. package/dest/schemas/utils.js +15 -5
  253. package/dest/serialize/buffer_reader.d.ts +1 -1
  254. package/dest/serialize/buffer_reader.d.ts.map +1 -1
  255. package/dest/serialize/field_reader.d.ts +2 -2
  256. package/dest/serialize/field_reader.d.ts.map +1 -1
  257. package/dest/serialize/field_reader.js +1 -1
  258. package/dest/serialize/free_funcs.d.ts +2 -2
  259. package/dest/serialize/free_funcs.d.ts.map +1 -1
  260. package/dest/serialize/free_funcs.js +1 -1
  261. package/dest/serialize/index.d.ts +1 -1
  262. package/dest/serialize/serialize.d.ts +2 -2
  263. package/dest/serialize/serialize.d.ts.map +1 -1
  264. package/dest/serialize/serialize.js +1 -1
  265. package/dest/serialize/type_registry.d.ts +1 -1
  266. package/dest/serialize/type_registry.d.ts.map +1 -1
  267. package/dest/serialize/types.d.ts +1 -1
  268. package/dest/sleep/index.d.ts +3 -1
  269. package/dest/sleep/index.d.ts.map +1 -1
  270. package/dest/sleep/index.js +4 -0
  271. package/dest/string/index.d.ts +1 -1
  272. package/dest/testing/files/index.d.ts +2 -1
  273. package/dest/testing/files/index.d.ts.map +1 -1
  274. package/dest/testing/files/index.js +1 -1
  275. package/dest/testing/formatting.d.ts +1 -1
  276. package/dest/testing/index.d.ts +1 -1
  277. package/dest/testing/port_allocator.d.ts +1 -1
  278. package/dest/testing/snapshot_serializer.d.ts +1 -1
  279. package/dest/testing/test_data.d.ts +1 -1
  280. package/dest/timer/date.d.ts +2 -1
  281. package/dest/timer/date.d.ts.map +1 -1
  282. package/dest/timer/date.js +3 -0
  283. package/dest/timer/elapsed.d.ts +1 -1
  284. package/dest/timer/index.d.ts +1 -1
  285. package/dest/timer/timeout.d.ts +1 -1
  286. package/dest/timer/timeout.d.ts.map +1 -1
  287. package/dest/timer/timer.d.ts +1 -1
  288. package/dest/timer/timer.d.ts.map +1 -1
  289. package/dest/transport/dispatch/create_dispatch_fn.d.ts +1 -1
  290. package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +1 -1
  291. package/dest/transport/dispatch/create_dispatch_proxy.d.ts +1 -1
  292. package/dest/transport/dispatch/messages.d.ts +1 -1
  293. package/dest/transport/index.d.ts +1 -1
  294. package/dest/transport/interface/connector.d.ts +1 -1
  295. package/dest/transport/interface/listener.d.ts +1 -1
  296. package/dest/transport/interface/socket.d.ts +1 -1
  297. package/dest/transport/interface/transferable.d.ts +1 -1
  298. package/dest/transport/node/index.d.ts +1 -1
  299. package/dest/transport/node/node_connector.d.ts +1 -1
  300. package/dest/transport/node/node_connector.d.ts.map +1 -1
  301. package/dest/transport/node/node_connector_socket.d.ts +1 -1
  302. package/dest/transport/node/node_connector_socket.d.ts.map +1 -1
  303. package/dest/transport/node/node_listener.d.ts +1 -1
  304. package/dest/transport/node/node_listener.d.ts.map +1 -1
  305. package/dest/transport/node/node_listener_socket.d.ts +1 -1
  306. package/dest/transport/node/node_listener_socket.d.ts.map +1 -1
  307. package/dest/transport/transport_client.d.ts +1 -1
  308. package/dest/transport/transport_client.d.ts.map +1 -1
  309. package/dest/transport/transport_server.d.ts +1 -10
  310. package/dest/transport/transport_server.d.ts.map +1 -1
  311. package/dest/trees/balanced_merkle_tree.d.ts +22 -0
  312. package/dest/trees/balanced_merkle_tree.d.ts.map +1 -0
  313. package/dest/trees/balanced_merkle_tree.js +66 -0
  314. package/dest/trees/hasher.d.ts +1 -1
  315. package/dest/trees/index.d.ts +2 -1
  316. package/dest/trees/index.d.ts.map +1 -1
  317. package/dest/trees/index.js +1 -0
  318. package/dest/trees/indexed_merkle_tree.d.ts +1 -1
  319. package/dest/trees/indexed_merkle_tree.d.ts.map +1 -1
  320. package/dest/trees/indexed_merkle_tree.js +1 -1
  321. package/dest/trees/indexed_merkle_tree_calculator.d.ts +1 -1
  322. package/dest/trees/indexed_merkle_tree_calculator.d.ts.map +1 -1
  323. package/dest/trees/indexed_tree_leaf.d.ts +1 -1
  324. package/dest/trees/membership_witness.d.ts +3 -24
  325. package/dest/trees/membership_witness.d.ts.map +1 -1
  326. package/dest/trees/membership_witness.js +1 -1
  327. package/dest/trees/merkle_tree.d.ts +1 -1
  328. package/dest/trees/merkle_tree.d.ts.map +1 -1
  329. package/dest/trees/merkle_tree_calculator.d.ts +2 -12
  330. package/dest/trees/merkle_tree_calculator.d.ts.map +1 -1
  331. package/dest/trees/merkle_tree_calculator.js +1 -31
  332. package/dest/trees/sibling_path.d.ts +5 -39
  333. package/dest/trees/sibling_path.d.ts.map +1 -1
  334. package/dest/trees/sibling_path.js +2 -2
  335. package/dest/trees/unbalanced_merkle_tree.d.ts +5 -3
  336. package/dest/trees/unbalanced_merkle_tree.d.ts.map +1 -1
  337. package/dest/trees/unbalanced_merkle_tree.js +32 -9
  338. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts +6 -5
  339. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts.map +1 -1
  340. package/dest/trees/unbalanced_merkle_tree_calculator.js +36 -40
  341. package/dest/trees/unbalanced_tree_store.d.ts +1 -1
  342. package/dest/trees/unbalanced_tree_store.d.ts.map +1 -1
  343. package/dest/types/index.d.ts +3 -1
  344. package/dest/types/index.d.ts.map +1 -1
  345. package/dest/types/index.js +3 -0
  346. package/dest/url/index.d.ts +1 -1
  347. package/dest/validation/index.d.ts +1 -1
  348. package/package.json +28 -8
  349. package/src/array/array.ts +0 -16
  350. package/src/array/index.ts +1 -0
  351. package/src/array/sorted_array.ts +133 -0
  352. package/src/branded-types/block_number.ts +112 -0
  353. package/src/branded-types/checkpoint_number.ts +100 -0
  354. package/src/branded-types/epoch.ts +88 -0
  355. package/src/branded-types/index.ts +6 -0
  356. package/src/branded-types/slot.ts +88 -0
  357. package/src/branded-types/types.ts +2 -0
  358. package/src/buffer/buffer16.ts +2 -2
  359. package/src/buffer/buffer32.ts +2 -2
  360. package/src/config/env_var.ts +27 -7
  361. package/src/config/index.ts +20 -2
  362. package/src/config/network_config.ts +2 -0
  363. package/src/crypto/aes128/index.ts +2 -2
  364. package/src/crypto/bls/bn254_keystore.ts +1 -1
  365. package/src/crypto/bls/index.ts +1 -1
  366. package/src/crypto/bn254/index.ts +50 -156
  367. package/src/crypto/ecdsa/index.ts +4 -4
  368. package/src/crypto/ecdsa/signature.ts +2 -2
  369. package/src/crypto/grumpkin/index.ts +8 -6
  370. package/src/crypto/keys/index.ts +2 -2
  371. package/src/crypto/pedersen/pedersen.wasm.ts +4 -4
  372. package/src/crypto/poseidon/index.ts +6 -6
  373. package/src/crypto/schnorr/index.ts +5 -4
  374. package/src/crypto/schnorr/signature.ts +2 -2
  375. package/src/crypto/secp256k1/index.ts +3 -3
  376. package/src/crypto/sha256/index.ts +1 -1
  377. package/src/crypto/sha512/index.ts +1 -1
  378. package/src/crypto/signature/index.ts +1 -1
  379. package/src/crypto/sync/index.ts +1 -1
  380. package/src/crypto/sync/pedersen/index.ts +1 -1
  381. package/src/crypto/sync/poseidon/index.ts +1 -1
  382. package/src/{fields/bls12_fields.ts → curves/bls12/field.ts} +6 -6
  383. package/src/curves/bls12/index.ts +2 -0
  384. package/src/{fields/bls12_point.ts → curves/bls12/point.ts} +7 -7
  385. package/src/{fields/fields.ts → curves/bn254/field.ts} +49 -56
  386. package/src/curves/bn254/index.ts +2 -0
  387. package/src/curves/bn254/point.ts +170 -0
  388. package/src/curves/grumpkin/index.ts +11 -0
  389. package/src/{fields → curves/grumpkin}/point.ts +26 -7
  390. package/src/eth-address/index.ts +26 -1
  391. package/src/iterator/filter.ts +11 -0
  392. package/src/iterator/index.ts +1 -0
  393. package/src/schemas/schemas.ts +24 -13
  394. package/src/schemas/types.ts +33 -0
  395. package/src/schemas/utils.ts +21 -8
  396. package/src/serialize/field_reader.ts +1 -1
  397. package/src/serialize/free_funcs.ts +1 -1
  398. package/src/serialize/serialize.ts +1 -1
  399. package/src/sleep/index.ts +6 -0
  400. package/src/testing/files/index.ts +1 -1
  401. package/src/timer/date.ts +4 -0
  402. package/src/trees/balanced_merkle_tree.ts +84 -0
  403. package/src/trees/index.ts +1 -0
  404. package/src/trees/indexed_merkle_tree.ts +1 -1
  405. package/src/trees/membership_witness.ts +1 -1
  406. package/src/trees/merkle_tree_calculator.ts +1 -34
  407. package/src/trees/sibling_path.ts +2 -2
  408. package/src/trees/unbalanced_merkle_tree.ts +54 -6
  409. package/src/trees/unbalanced_merkle_tree_calculator.ts +34 -41
  410. package/src/types/index.ts +5 -0
  411. package/dest/crypto/bn254/bn254_utils.d.ts +0 -39
  412. package/dest/crypto/bn254/bn254_utils.d.ts.map +0 -1
  413. package/dest/crypto/bn254/bn254_utils.js +0 -56
  414. package/dest/crypto/index.d.ts +0 -17
  415. package/dest/crypto/index.d.ts.map +0 -1
  416. package/dest/crypto/index.js +0 -16
  417. package/dest/fields/bls12_fields.d.ts.map +0 -1
  418. package/dest/fields/bls12_point.d.ts.map +0 -1
  419. package/dest/fields/coordinate.d.ts +0 -66
  420. package/dest/fields/coordinate.d.ts.map +0 -1
  421. package/dest/fields/coordinate.js +0 -96
  422. package/dest/fields/fields.d.ts.map +0 -1
  423. package/dest/fields/index.d.ts +0 -6
  424. package/dest/fields/index.d.ts.map +0 -1
  425. package/dest/fields/index.js +0 -5
  426. package/dest/fields/point.d.ts.map +0 -1
  427. package/dest/index.d.ts +0 -30
  428. package/dest/index.d.ts.map +0 -1
  429. package/dest/index.js +0 -30
  430. package/src/crypto/bn254/bn254_utils.ts +0 -64
  431. package/src/crypto/index.ts +0 -16
  432. package/src/fields/coordinate.ts +0 -104
  433. package/src/fields/index.ts +0 -5
  434. package/src/index.ts +0 -30
@@ -21,13 +21,13 @@ declare const bn254KeystoreSchema: z.ZodObject<{
21
21
  prf: z.ZodString;
22
22
  salt: z.ZodString;
23
23
  }, "strip", z.ZodTypeAny, {
24
- c: number;
25
24
  dklen: number;
25
+ c: number;
26
26
  prf: string;
27
27
  salt: string;
28
28
  }, {
29
- c: number;
30
29
  dklen: number;
30
+ c: number;
31
31
  prf: string;
32
32
  salt: string;
33
33
  }>;
@@ -35,8 +35,8 @@ declare const bn254KeystoreSchema: z.ZodObject<{
35
35
  }, "strip", z.ZodTypeAny, {
36
36
  function: "pbkdf2";
37
37
  params: {
38
- c: number;
39
38
  dklen: number;
39
+ c: number;
40
40
  prf: string;
41
41
  salt: string;
42
42
  };
@@ -44,8 +44,8 @@ declare const bn254KeystoreSchema: z.ZodObject<{
44
44
  }, {
45
45
  function: "pbkdf2";
46
46
  params: {
47
- c: number;
48
47
  dklen: number;
48
+ c: number;
49
49
  prf: string;
50
50
  salt: string;
51
51
  };
@@ -91,8 +91,8 @@ declare const bn254KeystoreSchema: z.ZodObject<{
91
91
  kdf: {
92
92
  function: "pbkdf2";
93
93
  params: {
94
- c: number;
95
94
  dklen: number;
95
+ c: number;
96
96
  prf: string;
97
97
  salt: string;
98
98
  };
@@ -114,8 +114,8 @@ declare const bn254KeystoreSchema: z.ZodObject<{
114
114
  kdf: {
115
115
  function: "pbkdf2";
116
116
  params: {
117
- c: number;
118
117
  dklen: number;
118
+ c: number;
119
119
  prf: string;
120
120
  salt: string;
121
121
  };
@@ -140,14 +140,12 @@ declare const bn254KeystoreSchema: z.ZodObject<{
140
140
  uuid: z.ZodString;
141
141
  version: z.ZodNumber;
142
142
  }, "strip", z.ZodTypeAny, {
143
- path: string;
144
- version: number;
145
143
  crypto: {
146
144
  kdf: {
147
145
  function: "pbkdf2";
148
146
  params: {
149
- c: number;
150
147
  dklen: number;
148
+ c: number;
151
149
  prf: string;
152
150
  salt: string;
153
151
  };
@@ -166,18 +164,18 @@ declare const bn254KeystoreSchema: z.ZodObject<{
166
164
  message: string;
167
165
  };
168
166
  };
169
- pubkey: string;
170
- uuid: string;
171
167
  description?: string | undefined;
172
- }, {
168
+ pubkey: string;
173
169
  path: string;
170
+ uuid: string;
174
171
  version: number;
172
+ }, {
175
173
  crypto: {
176
174
  kdf: {
177
175
  function: "pbkdf2";
178
176
  params: {
179
- c: number;
180
177
  dklen: number;
178
+ c: number;
181
179
  prf: string;
182
180
  salt: string;
183
181
  };
@@ -196,9 +194,11 @@ declare const bn254KeystoreSchema: z.ZodObject<{
196
194
  message: string;
197
195
  };
198
196
  };
197
+ description?: string | undefined;
199
198
  pubkey: string;
199
+ path: string;
200
200
  uuid: string;
201
- description?: string | undefined;
201
+ version: number;
202
202
  }>;
203
203
  /**
204
204
  * Error thrown when BN254 keystore operations fail
@@ -293,4 +293,4 @@ export declare function decryptBn254KeystoreFromObject(keystore: Bn254Keystore,
293
293
  */
294
294
  export declare function verifyBn254Keypair(privateKeyHex: string, expectedPubkey: string, computePublicKey: (privateKey: string) => string): boolean;
295
295
  export {};
296
- //# sourceMappingURL=bn254_keystore.d.ts.map
296
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm4yNTRfa2V5c3RvcmUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vYmxzL2JuMjU0X2tleXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEI7Ozs7Ozs7O0dBUUc7QUFFSDs7R0FFRztBQUNILFFBQUEsTUFBTSxtQkFBbUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBOEJ2QixDQUFDO0FBRUg7O0dBRUc7QUFDSCxxQkFBYSxrQkFBbUIsU0FBUSxLQUFLO0lBR3pCLEtBQUssQ0FBQztJQUZ4QixZQUNFLE9BQU8sRUFBRSxNQUFNLEVBQ0MsS0FBSyxDQUFDLG1CQUFPLEVBSTlCO0NBQ0Y7QUFFRCxNQUFNLE1BQU0sYUFBYSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxtQkFBbUIsQ0FBQyxDQUFDO0FBRWhFOzs7R0FHRztBQUNILE1BQU0sV0FBVyxzQkFBc0I7SUFDckMsTUFBTSxFQUFFO1FBQ04sR0FBRyxFQUFFO1lBQ0gsUUFBUSxFQUFFLFFBQVEsQ0FBQztZQUNuQixNQUFNLEVBQUU7Z0JBQ04sS0FBSyxFQUFFLE1BQU0sQ0FBQztnQkFDZCxDQUFDLEVBQUUsTUFBTSxDQUFDO2dCQUNWLEdBQUcsRUFBRSxNQUFNLENBQUM7Z0JBQ1osSUFBSSxFQUFFLE1BQU0sQ0FBQzthQUNkLENBQUM7WUFDRixPQUFPLEVBQUUsTUFBTSxDQUFDO1NBQ2pCLENBQUM7UUFDRixRQUFRLEVBQUU7WUFDUixRQUFRLEVBQUUsUUFBUSxDQUFDO1lBQ25CLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzlCLE9BQU8sRUFBRSxNQUFNLENBQUM7U0FDakIsQ0FBQztRQUNGLE1BQU0sRUFBRTtZQUNOLFFBQVEsRUFBRSxhQUFhLENBQUM7WUFDeEIsTUFBTSxFQUFFO2dCQUNOLEVBQUUsRUFBRSxNQUFNLENBQUM7YUFDWixDQUFDO1lBQ0YsT0FBTyxFQUFFLE1BQU0sQ0FBQztTQUNqQixDQUFDO0tBQ0gsQ0FBQztJQUNGLFdBQVcsRUFBRSxNQUFNLENBQUM7SUFDcEIsTUFBTSxFQUFFLE1BQU0sQ0FBQztJQUNmLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2IsT0FBTyxFQUFFLE1BQU0sQ0FBQztDQUNqQjtBQUVEOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILHdCQUFnQixtQkFBbUIsQ0FDakMsUUFBUSxFQUFFLE1BQU0sRUFDaEIsYUFBYSxFQUFFLE1BQU0sRUFDckIsU0FBUyxFQUFFLE1BQU0sRUFDakIsY0FBYyxFQUFFLE1BQU0sR0FDckIsYUFBYSxDQThDZjtBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFnQixpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsTUFBTSxHQUFHLGFBQWEsQ0FnQmpFO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILHdCQUFnQixvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEdBQUcsTUFBTSxDQUcvRTtBQUVEOzs7Ozs7O0dBT0c7QUFDSCx3QkFBZ0IsOEJBQThCLENBQUMsUUFBUSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FpRGhHO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILHdCQUFnQixrQkFBa0IsQ0FDaEMsYUFBYSxFQUFFLE1BQU0sRUFDckIsY0FBYyxFQUFFLE1BQU0sRUFDdEIsZ0JBQWdCLEVBQUUsQ0FBQyxVQUFVLEVBQUUsTUFBTSxLQUFLLE1BQU0sR0FDL0MsT0FBTyxDQVNUIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"bn254_keystore.d.ts","sourceRoot":"","sources":["../../../src/crypto/bls/bn254_keystore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;GAQG;AAEH;;GAEG;AACH,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BvB,CAAC;AAEH;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAGzB,KAAK,CAAC,EAAE,KAAK;gBAD7B,OAAO,EAAE,MAAM,EACC,KAAK,CAAC,EAAE,KAAK,YAAA;CAKhC;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE;QACN,GAAG,EAAE;YACH,QAAQ,EAAE,QAAQ,CAAC;YACnB,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM,CAAC;gBACd,CAAC,EAAE,MAAM,CAAC;gBACV,GAAG,EAAE,MAAM,CAAC;gBACZ,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,QAAQ,EAAE;YACR,QAAQ,EAAE,QAAQ,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9B,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,MAAM,EAAE;YACN,QAAQ,EAAE,aAAa,CAAC;YACxB,MAAM,EAAE;gBACN,EAAE,EAAE,MAAM,CAAC;aACZ,CAAC;YACF,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GACrB,aAAa,CA8Cf;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAgBjE;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG/E;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAiDhG;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,GAC/C,OAAO,CAST"}
1
+ {"version":3,"file":"bn254_keystore.d.ts","sourceRoot":"","sources":["../../../src/crypto/bls/bn254_keystore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;GAQG;AAEH;;GAEG;AACH,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BvB,CAAC;AAEH;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAGzB,KAAK,CAAC;IAFxB,YACE,OAAO,EAAE,MAAM,EACC,KAAK,CAAC,mBAAO,EAI9B;CACF;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE;QACN,GAAG,EAAE;YACH,QAAQ,EAAE,QAAQ,CAAC;YACnB,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM,CAAC;gBACd,CAAC,EAAE,MAAM,CAAC;gBACV,GAAG,EAAE,MAAM,CAAC;gBACZ,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,QAAQ,EAAE;YACR,QAAQ,EAAE,QAAQ,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9B,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,MAAM,EAAE;YACN,QAAQ,EAAE,aAAa,CAAC;YACxB,MAAM,EAAE;gBACN,EAAE,EAAE,MAAM,CAAC;aACZ,CAAC;YACF,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GACrB,aAAa,CA8Cf;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAgBjE;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG/E;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAiDhG;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,GAC/C,OAAO,CAST"}
@@ -1,4 +1,4 @@
1
- import { randomBytes } from '@aztec/foundation/crypto';
1
+ import { randomBytes } from '@aztec/foundation/crypto/random';
2
2
  import { createCipheriv, createDecipheriv, createHash, pbkdf2Sync, randomUUID } from 'crypto';
3
3
  import { readFileSync } from 'fs';
4
4
  import { z } from 'zod';
@@ -10,4 +10,4 @@ export declare function deriveBlsKeyFromMnemonic(mnemonic: string, derivationPat
10
10
  * Returns a 0x-prefixed 32-byte hex string representing an Fr in [1, r-1].
11
11
  */
12
12
  export declare function deriveBlsKeyFromEntropy(ikm: string, derivationPath: string): string;
13
- //# sourceMappingURL=index.d.ts.map
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vYmxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBUXBELHdCQUFnQixtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsTUFBTSxHQUFHLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxHQUFHLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FRaEg7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0Isd0JBQXdCLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLFVBQVUsU0FBSyxHQUFHLE1BQU0sQ0FLMUc7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0IsdUJBQXVCLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FLbkYifQ==
@@ -1,4 +1,4 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { mod } from '@noble/curves/abstract/modular';
3
3
  import { bytesToNumberBE } from '@noble/curves/abstract/utils';
4
4
  import { hmac } from '@noble/hashes/hmac';
@@ -1,55 +1,39 @@
1
- import { Fq, Fr } from '../../fields/fields.js';
2
1
  /**
3
- * BN254 G1 point using foundation field classes.
4
- * Represents a point on the BN254 elliptic curve in affine coordinates.
2
+ * BN254 utility functions for point operations.
3
+ * Provides compression, decompression, and public key generation for the BN254 curve.
4
+ * Uses the bb.js Barretenberg backend for point operations.
5
5
  */
6
- export declare class Bn254G1Point {
7
- readonly x: Fq;
8
- readonly y: Fq;
9
- constructor(x: Fq, y: Fq);
10
- private toBbApiPoint;
11
- private static fromBbApiPoint;
12
- isOnCurve(): Promise<boolean>;
13
- /**
14
- * Get the generator point for BN254 G1, or perform scalar multiplication.
15
- * When called without arguments, returns the base generator point.
16
- * When called with a scalar, returns scalar * generator (useful for public key derivation).
17
- */
18
- static generator(scalar?: Fr): Promise<Bn254G1Point>;
19
- /**
20
- * Decompress a BN254 G1 point from compressed form (32 bytes).
21
- * The compressed format encodes the x-coordinate and the sign bit of the y-coordinate
22
- * in the most significant bit.
23
- */
24
- static fromCompressed(compressed: Buffer): Promise<Bn254G1Point>;
25
- /**
26
- * Compress this BN254 G1 point to 32 bytes.
27
- * The compressed format encodes the x-coordinate and the sign bit of the y-coordinate
28
- * in the most significant bit (bit 255).
29
- */
30
- compress(): Buffer;
31
- equals(other: Bn254G1Point): boolean;
32
- toString(): string;
33
- }
34
6
  /**
35
- * BN254 G2 point using foundation field classes.
36
- * Represents a point on the BN254 G2 curve (twist curve) in affine coordinates.
37
- * G2 points use extension field coordinates (Fq2).
7
+ * Generate a compressed BN254 G1 public key from a private key.
8
+ *
9
+ * @param privateKeyHex - Private key as 0x-prefixed hex string
10
+ * @returns Compressed G1 point (32 bytes with sign bit in MSB)
38
11
  */
39
- export declare class Bn254G2Point {
40
- readonly x: [Fq, Fq];
41
- readonly y: [Fq, Fq];
42
- constructor(x: [Fq, Fq], y: [Fq, Fq]);
43
- private toBbApiPoint;
44
- private static fromBbApiPoint;
45
- /**
46
- * Get the generator point for BN254 G2, or perform scalar multiplication.
47
- * When called without arguments, returns the base generator point.
48
- * When called with a scalar, returns scalar * generator.
49
- */
50
- static generator(scalar?: Fr): Promise<Bn254G2Point>;
51
- equals(other: Bn254G2Point): boolean;
52
- toString(): string;
53
- }
54
- export { computeBn254G1PublicKeyCompressed, computeBn254G1PublicKey, computeBn254G2PublicKey } from './bn254_utils.js';
55
- //# sourceMappingURL=index.d.ts.map
12
+ export declare function computeBn254G1PublicKeyCompressed(privateKeyHex: string): Promise<string>;
13
+ /**
14
+ * Generate uncompressed BN254 G1 public key from a private key.
15
+ *
16
+ * @param privateKeyHex - Private key as 0x-prefixed hex string
17
+ * @returns G1 point in affine coordinates
18
+ */
19
+ export declare function computeBn254G1PublicKey(privateKeyHex: string): Promise<{
20
+ x: bigint;
21
+ y: bigint;
22
+ }>;
23
+ /**
24
+ * Generate BN254 G2 public key from a private key.
25
+ *
26
+ * @param privateKeyHex - Private key as 0x-prefixed hex string
27
+ * @returns G2 point in affine coordinates
28
+ */
29
+ export declare function computeBn254G2PublicKey(privateKeyHex: string): Promise<{
30
+ x: {
31
+ c0: bigint;
32
+ c1: bigint;
33
+ };
34
+ y: {
35
+ c0: bigint;
36
+ c1: bigint;
37
+ };
38
+ }>;
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vYm4yNTQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7Ozs7R0FJRztBQUVIOzs7OztHQUtHO0FBQ0gsd0JBQXNCLGlDQUFpQyxDQUFDLGFBQWEsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQVU5RjtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQXNCLHVCQUF1QixDQUFDLGFBQWEsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDO0lBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUFDLENBQUMsRUFBRSxNQUFNLENBQUE7Q0FBRSxDQUFDLENBUXRHO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBc0IsdUJBQXVCLENBQUMsYUFBYSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUM7SUFDNUUsQ0FBQyxFQUFFO1FBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQztRQUFDLEVBQUUsRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDO0lBQzlCLENBQUMsRUFBRTtRQUFFLEVBQUUsRUFBRSxNQUFNLENBQUM7UUFBQyxFQUFFLEVBQUUsTUFBTSxDQUFBO0tBQUUsQ0FBQztDQUMvQixDQUFDLENBV0QifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/bn254/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAEhD;;;GAGG;AACH,qBAAa,YAAY;aAEL,CAAC,EAAE,EAAE;aACL,CAAC,EAAE,EAAE;gBADL,CAAC,EAAE,EAAE,EACL,CAAC,EAAE,EAAE;IAGvB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,MAAM,CAAC,cAAc;IAIvB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IASnC;;;;OAIG;WACU,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAmB1D;;;;OAIG;WACU,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAWtE;;;;OAIG;IACH,QAAQ,IAAI,MAAM;IAWlB,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO;IAIpC,QAAQ,IAAI,MAAM;CAGnB;AAED;;;;GAIG;AACH,qBAAa,YAAY;aAEL,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;aACX,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;gBADX,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EACX,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAG7B,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,MAAM,CAAC,cAAc;IAO7B;;;;OAIG;WACU,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAmB1D,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO;IASpC,QAAQ,IAAI,MAAM;CAGnB;AAGD,OAAO,EAAE,iCAAiC,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/bn254/index.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AAEH;;;;;GAKG;AACH,wBAAsB,iCAAiC,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAU9F;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAQtG;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5E,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/B,CAAC,CAWD"}
@@ -1,142 +1,56 @@
1
- import { BN254_G1_GENERATOR, BN254_G2_GENERATOR, BarretenbergSync } from '@aztec/bb.js';
2
- import { Fq } from '../../fields/fields.js';
1
+ import { Fr } from '../../curves/bn254/field.js';
2
+ import { Bn254G1Point, Bn254G2Point } from '../../curves/bn254/point.js';
3
3
  /**
4
- * BN254 G1 point using foundation field classes.
5
- * Represents a point on the BN254 elliptic curve in affine coordinates.
6
- */ export class Bn254G1Point {
7
- x;
8
- y;
9
- constructor(x, y){
10
- this.x = x;
11
- this.y = y;
12
- }
13
- toBbApiPoint() {
14
- return {
15
- x: this.x.toBuffer(),
16
- y: this.y.toBuffer()
17
- };
18
- }
19
- static fromBbApiPoint(point) {
20
- return new Bn254G1Point(Fq.fromBuffer(Buffer.from(point.x)), Fq.fromBuffer(Buffer.from(point.y)));
21
- }
22
- async isOnCurve() {
23
- await BarretenbergSync.initSingleton();
24
- const api = BarretenbergSync.getSingleton();
25
- const apiPoint = this.toBbApiPoint();
26
- const response = api.bn254G1IsOnCurve({
27
- point: apiPoint
28
- });
29
- return response.isOnCurve;
30
- }
31
- /**
32
- * Get the generator point for BN254 G1, or perform scalar multiplication.
33
- * When called without arguments, returns the base generator point.
34
- * When called with a scalar, returns scalar * generator (useful for public key derivation).
35
- */ static async generator(scalar) {
36
- if (!scalar) {
37
- return new Bn254G1Point(Fq.fromBuffer(Buffer.from(BN254_G1_GENERATOR.x)), Fq.fromBuffer(Buffer.from(BN254_G1_GENERATOR.y)));
38
- }
39
- await BarretenbergSync.initSingleton();
40
- const api = BarretenbergSync.getSingleton();
41
- const response = api.bn254G1Mul({
42
- point: BN254_G1_GENERATOR,
43
- scalar: scalar.toBuffer()
44
- });
45
- return Bn254G1Point.fromBbApiPoint(response.point);
46
- }
47
- /**
48
- * Decompress a BN254 G1 point from compressed form (32 bytes).
49
- * The compressed format encodes the x-coordinate and the sign bit of the y-coordinate
50
- * in the most significant bit.
51
- */ static async fromCompressed(compressed) {
52
- await BarretenbergSync.initSingleton();
53
- const api = BarretenbergSync.getSingleton();
54
- const response = api.bn254G1FromCompressed({
55
- compressed: new Uint8Array(compressed)
56
- });
57
- return Bn254G1Point.fromBbApiPoint(response.point);
58
- }
59
- /**
60
- * Compress this BN254 G1 point to 32 bytes.
61
- * The compressed format encodes the x-coordinate and the sign bit of the y-coordinate
62
- * in the most significant bit (bit 255).
63
- */ compress() {
64
- const xBytes = this.x.toBuffer();
65
- // Get the least significant bit of y to determine the sign
66
- const yLsb = this.y.toBigInt() & 1n;
67
- // If y is odd, set the most significant bit (bit 255) of the output
68
- if (yLsb === 1n) {
69
- xBytes[0] |= 0x80;
70
- }
71
- return xBytes;
72
- }
73
- equals(other) {
74
- return this.x.equals(other.x) && this.y.equals(other.y);
75
- }
76
- toString() {
77
- return `Bn254G1Point(x: ${this.x.toString()}, y: ${this.y.toString()})`;
78
- }
4
+ * BN254 utility functions for point operations.
5
+ * Provides compression, decompression, and public key generation for the BN254 curve.
6
+ * Uses the bb.js Barretenberg backend for point operations.
7
+ */ /**
8
+ * Generate a compressed BN254 G1 public key from a private key.
9
+ *
10
+ * @param privateKeyHex - Private key as 0x-prefixed hex string
11
+ * @returns Compressed G1 point (32 bytes with sign bit in MSB)
12
+ */ export async function computeBn254G1PublicKeyCompressed(privateKeyHex) {
13
+ const sk = BigInt(privateKeyHex);
14
+ const skReduced = sk % Fr.MODULUS;
15
+ // Generate G1 point on BN254 curve using bb.js
16
+ const scalar = Fr.fromString(skReduced.toString());
17
+ const pk1 = await Bn254G1Point.generator(scalar);
18
+ // Compress the point using the primitive method
19
+ return '0x' + pk1.compress().toString('hex');
20
+ }
21
+ /**
22
+ * Generate uncompressed BN254 G1 public key from a private key.
23
+ *
24
+ * @param privateKeyHex - Private key as 0x-prefixed hex string
25
+ * @returns G1 point in affine coordinates
26
+ */ export async function computeBn254G1PublicKey(privateKeyHex) {
27
+ const sk = BigInt(privateKeyHex);
28
+ const skReduced = sk % Fr.MODULUS;
29
+ const scalar = Fr.fromString(skReduced.toString());
30
+ const pk1 = await Bn254G1Point.generator(scalar);
31
+ return {
32
+ x: pk1.x.toBigInt(),
33
+ y: pk1.y.toBigInt()
34
+ };
79
35
  }
80
36
  /**
81
- * BN254 G2 point using foundation field classes.
82
- * Represents a point on the BN254 G2 curve (twist curve) in affine coordinates.
83
- * G2 points use extension field coordinates (Fq2).
84
- */ export class Bn254G2Point {
85
- x;
86
- y;
87
- constructor(x, y){
88
- this.x = x;
89
- this.y = y;
90
- }
91
- toBbApiPoint() {
92
- return {
93
- x: [
94
- this.x[0].toBuffer(),
95
- this.x[1].toBuffer()
96
- ],
97
- y: [
98
- this.y[0].toBuffer(),
99
- this.y[1].toBuffer()
100
- ]
101
- };
102
- }
103
- static fromBbApiPoint(point) {
104
- return new Bn254G2Point([
105
- Fq.fromBuffer(Buffer.from(point.x[0])),
106
- Fq.fromBuffer(Buffer.from(point.x[1]))
107
- ], [
108
- Fq.fromBuffer(Buffer.from(point.y[0])),
109
- Fq.fromBuffer(Buffer.from(point.y[1]))
110
- ]);
111
- }
112
- /**
113
- * Get the generator point for BN254 G2, or perform scalar multiplication.
114
- * When called without arguments, returns the base generator point.
115
- * When called with a scalar, returns scalar * generator.
116
- */ static async generator(scalar) {
117
- if (!scalar) {
118
- return new Bn254G2Point([
119
- Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.x[0])),
120
- Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.x[1]))
121
- ], [
122
- Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.y[0])),
123
- Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.y[1]))
124
- ]);
37
+ * Generate BN254 G2 public key from a private key.
38
+ *
39
+ * @param privateKeyHex - Private key as 0x-prefixed hex string
40
+ * @returns G2 point in affine coordinates
41
+ */ export async function computeBn254G2PublicKey(privateKeyHex) {
42
+ const sk = BigInt(privateKeyHex);
43
+ const skReduced = sk % Fr.MODULUS;
44
+ const scalar = Fr.fromString(skReduced.toString());
45
+ const pk2 = await Bn254G2Point.generator(scalar);
46
+ return {
47
+ x: {
48
+ c0: pk2.x[0].toBigInt(),
49
+ c1: pk2.x[1].toBigInt()
50
+ },
51
+ y: {
52
+ c0: pk2.y[0].toBigInt(),
53
+ c1: pk2.y[1].toBigInt()
125
54
  }
126
- await BarretenbergSync.initSingleton();
127
- const api = BarretenbergSync.getSingleton();
128
- const response = api.bn254G2Mul({
129
- point: BN254_G2_GENERATOR,
130
- scalar: scalar.toBuffer()
131
- });
132
- return Bn254G2Point.fromBbApiPoint(response.point);
133
- }
134
- equals(other) {
135
- return this.x[0].equals(other.x[0]) && this.x[1].equals(other.x[1]) && this.y[0].equals(other.y[0]) && this.y[1].equals(other.y[1]);
136
- }
137
- toString() {
138
- return `Bn254G2Point(x: (${this.x[0].toString()}, ${this.x[1].toString()}), y: (${this.y[0].toString()}, ${this.y[1].toString()}))`;
139
- }
55
+ };
140
56
  }
141
- // Re-export BN254 point utility functions
142
- export { computeBn254G1PublicKeyCompressed, computeBn254G1PublicKey, computeBn254G2PublicKey } from './bn254_utils.js';
@@ -36,4 +36,4 @@ export declare class Ecdsa {
36
36
  */
37
37
  verifySignature(msg: Uint8Array, pubKey: Buffer, sig: EcdsaSignature): Promise<boolean>;
38
38
  }
39
- //# sourceMappingURL=index.d.ts.map
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vZWNkc2EvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhELGNBQWMsZ0JBQWdCLENBQUM7QUFFL0I7OztHQUdHO0FBQ0gscUJBQWEsS0FBSztJQUNKLE9BQU8sQ0FBQyxLQUFLO0lBQXpCLFlBQW9CLEtBQUssR0FBRSxXQUFXLEdBQUcsV0FBeUIsRUFBSTtJQUN0RTs7OztPQUlHO0lBQ1UsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBUWpFO0lBRUQ7Ozs7O09BS0c7SUFDVSxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQVFsRTtJQUVEOzs7OztPQUtHO0lBQ1UsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsY0FBYyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FRbkY7SUFFRDs7Ozs7O09BTUc7SUFDVSxlQUFlLENBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxjQUFjLG9CQW9CaEY7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/ecdsa/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,cAAc,gBAAgB,CAAC;AAE/B;;;GAGG;AACH,qBAAa,KAAK;IACJ,OAAO,CAAC,KAAK;gBAAL,KAAK,GAAE,WAAW,GAAG,WAAyB;IAClE;;;;OAIG;IACU,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUlE;;;;;OAKG;IACU,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM;IAUnE;;;;;OAKG;IACU,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAUpF;;;;;;OAMG;IACU,eAAe,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc;CAqBlF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/ecdsa/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,cAAc,gBAAgB,CAAC;AAE/B;;;GAGG;AACH,qBAAa,KAAK;IACJ,OAAO,CAAC,KAAK;IAAzB,YAAoB,KAAK,GAAE,WAAW,GAAG,WAAyB,EAAI;IACtE;;;;OAIG;IACU,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQjE;IAED;;;;;OAKG;IACU,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,2BAQlE;IAED;;;;;OAKG;IACU,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAQnF;IAED;;;;;;OAMG;IACU,eAAe,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,oBAoBhF;CACF"}
@@ -14,9 +14,7 @@ export * from './signature.js';
14
14
  * @param privateKey - Secp256k1 private key.
15
15
  * @returns A secp256k1 public key.
16
16
  */ async computePublicKey(privateKey) {
17
- await BarretenbergSync.initSingleton({
18
- wasmPath: process.env.BB_WASM_PATH
19
- });
17
+ await BarretenbergSync.initSingleton();
20
18
  const api = BarretenbergSync.getSingleton();
21
19
  const response = this.curve === 'secp256r1' ? api.ecdsaSecp256r1ComputePublicKey({
22
20
  privateKey
@@ -34,9 +32,7 @@ export * from './signature.js';
34
32
  * @param privateKey - The secp256k1 private key of the signer.
35
33
  * @returns An ECDSA signature of the form (r, s, v).
36
34
  */ async constructSignature(msg, privateKey) {
37
- await BarretenbergSync.initSingleton({
38
- wasmPath: process.env.BB_WASM_PATH
39
- });
35
+ await BarretenbergSync.initSingleton();
40
36
  const api = BarretenbergSync.getSingleton();
41
37
  const response = this.curve === 'secp256r1' ? api.ecdsaSecp256r1ConstructSignature({
42
38
  message: msg,
@@ -55,9 +51,7 @@ export * from './signature.js';
55
51
  * @param sig - The ECDSA signature.
56
52
  * @returns The secp256k1 public key of the signer.
57
53
  */ async recoverPublicKey(msg, sig) {
58
- await BarretenbergSync.initSingleton({
59
- wasmPath: process.env.BB_WASM_PATH
60
- });
54
+ await BarretenbergSync.initSingleton();
61
55
  const api = BarretenbergSync.getSingleton();
62
56
  const response = this.curve === 'secp256r1' ? api.ecdsaSecp256r1RecoverPublicKey({
63
57
  message: msg,
@@ -82,9 +76,7 @@ export * from './signature.js';
82
76
  * @param sig - The ECDSA signature.
83
77
  * @returns True or false.
84
78
  */ async verifySignature(msg, pubKey, sig) {
85
- await BarretenbergSync.initSingleton({
86
- wasmPath: process.env.BB_WASM_PATH
87
- });
79
+ await BarretenbergSync.initSingleton();
88
80
  const api = BarretenbergSync.getSingleton();
89
81
  const response = this.curve === 'secp256r1' ? api.ecdsaSecp256r1VerifySignature({
90
82
  message: msg,
@@ -1,21 +1,12 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import type { Signature } from '../signature/index.js';
3
3
  /**
4
4
  * ECDSA signature used for transactions.
5
5
  * @see cpp/barretenberg/cpp/src/barretenberg/crypto/ecdsa/ecdsa.hpp
6
6
  */
7
7
  export declare class EcdsaSignature implements Signature {
8
- /**
9
- * The r byte-array (32 bytes) in an ECDSA signature.
10
- */
11
8
  r: Buffer;
12
- /**
13
- * The s byte-array (32 bytes) in an ECDSA signature.
14
- */
15
9
  s: Buffer;
16
- /**
17
- * The recovery id (1 byte) in an ECDSA signature.
18
- */
19
10
  v: Buffer;
20
11
  constructor(
21
12
  /**
@@ -66,4 +57,4 @@ export declare class EcdsaSignature implements Signature {
66
57
  */
67
58
  toFields(includeV?: boolean): Fr[];
68
59
  }
69
- //# sourceMappingURL=signature.d.ts.map
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY3J5cHRvL2VjZHNhL3NpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHcEQsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdkQ7OztHQUdHO0FBQ0gscUJBQWEsY0FBZSxZQUFXLFNBQVM7SUFLckMsQ0FBQyxFQUFFLE1BQU07SUFJVCxDQUFDLEVBQUUsTUFBTTtJQUlULENBQUMsRUFBRSxNQUFNO0lBWmxCO0lBQ0U7O09BRUc7SUFDSSxDQUFDLEVBQUUsTUFBTTtJQUNoQjs7T0FFRztJQUNJLENBQUMsRUFBRSxNQUFNO0lBQ2hCOztPQUVHO0lBQ0ksQ0FBQyxFQUFFLE1BQU0sRUFXakI7SUFFRDs7O09BR0c7SUFDSCxRQUFRLHdCQUVQO0lBRUQ7Ozs7T0FJRztJQUNILE9BQWMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLGtCQUV0QztJQUVEOzs7Ozs7T0FNRztJQUNILE9BQWMsV0FBVyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxrQkFFeEQ7SUFFRDs7O09BR0c7SUFDSCxPQUFjLE1BQU0sbUJBRW5CO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSxXQUVQO0lBRUQ7Ozs7T0FJRztJQUNILFFBQVEsQ0FBQyxRQUFRLFVBQVEsR0FBRyxFQUFFLEVBQUUsQ0FZL0I7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../../src/crypto/ecdsa/signature.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAG9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;GAGG;AACH,qBAAa,cAAe,YAAW,SAAS;IAE5C;;OAEG;IACI,CAAC,EAAE,MAAM;IAChB;;OAEG;IACI,CAAC,EAAE,MAAM;IAChB;;OAEG;IACI,CAAC,EAAE,MAAM;;IAXhB;;OAEG;IACI,CAAC,EAAE,MAAM;IAChB;;OAEG;IACI,CAAC,EAAE,MAAM;IAChB;;OAEG;IACI,CAAC,EAAE,MAAM;IAalB;;;OAGG;IACH,QAAQ;IAIR;;;;OAIG;WACW,UAAU,CAAC,MAAM,EAAE,MAAM;IAIvC;;;;;;OAMG;WACW,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAIzD;;;OAGG;WACW,MAAM;IAIpB;;;OAGG;IACH,QAAQ;IAIR;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,UAAQ,GAAG,EAAE,EAAE;CAajC"}
1
+ {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../../src/crypto/ecdsa/signature.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;GAGG;AACH,qBAAa,cAAe,YAAW,SAAS;IAKrC,CAAC,EAAE,MAAM;IAIT,CAAC,EAAE,MAAM;IAIT,CAAC,EAAE,MAAM;IAZlB;IACE;;OAEG;IACI,CAAC,EAAE,MAAM;IAChB;;OAEG;IACI,CAAC,EAAE,MAAM;IAChB;;OAEG;IACI,CAAC,EAAE,MAAM,EAWjB;IAED;;;OAGG;IACH,QAAQ,wBAEP;IAED;;;;OAIG;IACH,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,kBAEtC;IAED;;;;;;OAMG;IACH,OAAc,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,kBAExD;IAED;;;OAGG;IACH,OAAc,MAAM,mBAEnB;IAED;;;OAGG;IACH,QAAQ,WAEP;IAED;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,UAAQ,GAAG,EAAE,EAAE,CAY/B;CACF"}
@@ -1,6 +1,6 @@
1
1
  import { toBufferBE } from '@aztec/foundation/bigint-buffer';
2
- import { randomBytes } from '@aztec/foundation/crypto';
3
- import { Fr } from '@aztec/foundation/fields';
2
+ import { randomBytes } from '@aztec/foundation/crypto/random';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { mapTuple } from '@aztec/foundation/serialize';
5
5
  /**
6
6
  * ECDSA signature used for transactions.
@@ -1,4 +1,6 @@
1
- import { Fr, type GrumpkinScalar, Point } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
+ import type { GrumpkinScalar } from '@aztec/foundation/curves/grumpkin';
3
+ import { Point } from '@aztec/foundation/curves/grumpkin';
2
4
  /**
3
5
  * Grumpkin elliptic curve operations.
4
6
  */
@@ -37,4 +39,4 @@ export declare class Grumpkin {
37
39
  */
38
40
  static reduce512BufferToFr(uint512Buf: Buffer): Promise<Fr>;
39
41
  }
40
- //# sourceMappingURL=index.d.ts.map
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vZ3J1bXBraW4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUUxRDs7R0FFRztBQUNILHFCQUFhLFFBQVE7SUFFbkIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLFFBS3JCO0lBRUo7Ozs7O09BS0c7SUFDSCxPQUFvQixHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsY0FBYyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FRNUU7SUFFRDs7Ozs7T0FLRztJQUNILE9BQW9CLEdBQUcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQVExRDtJQUVEOzs7OztPQUtHO0lBQ0gsT0FBb0IsUUFBUSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsY0FBYyxvQkFTbkU7SUFFRDs7O09BR0c7SUFDSCxPQUFvQixXQUFXLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUs3QztJQUVEOzs7O09BSUc7SUFDSCxPQUFvQixtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FLdkU7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/grumpkin/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,KAAK,cAAc,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAE1E;;GAEG;AACH,qBAAa,QAAQ;IAEnB,MAAM,CAAC,QAAQ,CAAC,SAAS,QAKrB;IAEJ;;;;;OAKG;WACiB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC;IAU7E;;;;;OAKG;WACiB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAU3D;;;;;OAKG;WACiB,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc;IAWpE;;;OAGG;WACiB,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC;IAO9C;;;;OAIG;WACiB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;CAMzE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/grumpkin/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAE1D;;GAEG;AACH,qBAAa,QAAQ;IAEnB,MAAM,CAAC,QAAQ,CAAC,SAAS,QAKrB;IAEJ;;;;;OAKG;IACH,OAAoB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,CAQ5E;IAED;;;;;OAKG;IACH,OAAoB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAQ1D;IAED;;;;;OAKG;IACH,OAAoB,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,oBASnE;IAED;;;OAGG;IACH,OAAoB,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC,CAK7C;IAED;;;;OAIG;IACH,OAAoB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAKvE;CACF"}
@@ -1,5 +1,6 @@
1
1
  import { BarretenbergSync } from '@aztec/bb.js';
2
- import { Fr, Point } from '@aztec/foundation/fields';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
+ import { Point } from '@aztec/foundation/curves/grumpkin';
3
4
  /**
4
5
  * Grumpkin elliptic curve operations.
5
6
  */ export class Grumpkin {
@@ -76,9 +77,7 @@ import { Fr, Point } from '@aztec/foundation/fields';
76
77
  * @param scalar - Scalar to multiply by.
77
78
  * @returns Result of the multiplication.
78
79
  */ static async mul(point, scalar) {
79
- await BarretenbergSync.initSingleton({
80
- wasmPath: process.env.BB_WASM_PATH
81
- });
80
+ await BarretenbergSync.initSingleton();
82
81
  const api = BarretenbergSync.getSingleton();
83
82
  const response = api.grumpkinMul({
84
83
  point: {
@@ -98,9 +97,7 @@ import { Fr, Point } from '@aztec/foundation/fields';
98
97
  * @param b - Point b to add to a
99
98
  * @returns Result of the addition.
100
99
  */ static async add(a, b) {
101
- await BarretenbergSync.initSingleton({
102
- wasmPath: process.env.BB_WASM_PATH
103
- });
100
+ await BarretenbergSync.initSingleton();
104
101
  const api = BarretenbergSync.getSingleton();
105
102
  const response = api.grumpkinAdd({
106
103
  pointA: {
@@ -123,9 +120,7 @@ import { Fr, Point } from '@aztec/foundation/fields';
123
120
  * @param scalar - Scalar to multiply by.
124
121
  * @returns Points multiplied by the scalar.
125
122
  */ static async batchMul(points, scalar) {
126
- await BarretenbergSync.initSingleton({
127
- wasmPath: process.env.BB_WASM_PATH
128
- });
123
+ await BarretenbergSync.initSingleton();
129
124
  const api = BarretenbergSync.getSingleton();
130
125
  const response = api.grumpkinBatchMul({
131
126
  points: points.map((p)=>({
@@ -143,9 +138,7 @@ import { Fr, Point } from '@aztec/foundation/fields';
143
138
  * Gets a random field element.
144
139
  * @returns Random field element.
145
140
  */ static async getRandomFr() {
146
- await BarretenbergSync.initSingleton({
147
- wasmPath: process.env.BB_WASM_PATH
148
- });
141
+ await BarretenbergSync.initSingleton();
149
142
  const api = BarretenbergSync.getSingleton();
150
143
  const response = api.grumpkinGetRandomFr({
151
144
  dummy: 0
@@ -157,9 +150,7 @@ import { Fr, Point } from '@aztec/foundation/fields';
157
150
  * @param uint512Buf - The buffer to convert.
158
151
  * @returns Buffer representation of the field element.
159
152
  */ static async reduce512BufferToFr(uint512Buf) {
160
- await BarretenbergSync.initSingleton({
161
- wasmPath: process.env.BB_WASM_PATH
162
- });
153
+ await BarretenbergSync.initSingleton();
163
154
  const api = BarretenbergSync.getSingleton();
164
155
  const response = api.grumpkinReduce512({
165
156
  input: uint512Buf