@aztec/foundation 0.0.0-test.1 → 0.0.1-commit.5476d83

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 (618) hide show
  1. package/dest/array/array.d.ts +6 -9
  2. package/dest/array/array.d.ts.map +1 -1
  3. package/dest/array/array.js +11 -11
  4. package/dest/array/index.d.ts +1 -1
  5. package/dest/async-map/index.d.ts +1 -1
  6. package/dest/async-pool/index.d.ts +1 -1
  7. package/dest/async-pool/index.d.ts.map +1 -1
  8. package/dest/async-pool/index.js +1 -0
  9. package/dest/bigint/index.d.ts +7 -0
  10. package/dest/bigint/index.d.ts.map +1 -0
  11. package/dest/bigint/index.js +15 -0
  12. package/dest/bigint-buffer/index.d.ts +1 -3
  13. package/dest/bigint-buffer/index.d.ts.map +1 -1
  14. package/dest/branded-types/epoch.d.ts +42 -0
  15. package/dest/branded-types/epoch.d.ts.map +1 -0
  16. package/dest/branded-types/epoch.js +59 -0
  17. package/dest/branded-types/index.d.ts +4 -0
  18. package/dest/branded-types/index.d.ts.map +1 -0
  19. package/dest/branded-types/index.js +2 -0
  20. package/dest/branded-types/slot.d.ts +42 -0
  21. package/dest/branded-types/slot.d.ts.map +1 -0
  22. package/dest/branded-types/slot.js +59 -0
  23. package/dest/branded-types/types.d.ts +5 -0
  24. package/dest/branded-types/types.d.ts.map +1 -0
  25. package/dest/branded-types/types.js +1 -0
  26. package/dest/buffer/buffer16.d.ts +77 -0
  27. package/dest/buffer/buffer16.d.ts.map +1 -0
  28. package/dest/buffer/buffer16.js +100 -0
  29. package/dest/buffer/buffer32.d.ts +4 -11
  30. package/dest/buffer/buffer32.d.ts.map +1 -1
  31. package/dest/buffer/buffer32.js +6 -6
  32. package/dest/buffer/index.d.ts +2 -1
  33. package/dest/buffer/index.d.ts.map +1 -1
  34. package/dest/buffer/index.js +1 -0
  35. package/dest/collection/array.d.ts +17 -4
  36. package/dest/collection/array.d.ts.map +1 -1
  37. package/dest/collection/array.js +57 -3
  38. package/dest/collection/index.d.ts +1 -1
  39. package/dest/collection/object.d.ts +17 -1
  40. package/dest/collection/object.d.ts.map +1 -1
  41. package/dest/collection/object.js +25 -0
  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 +49 -2
  48. package/dest/config/index.d.ts.map +1 -1
  49. package/dest/config/index.js +115 -7
  50. package/dest/config/network_config.d.ts +42 -0
  51. package/dest/config/network_config.d.ts.map +1 -0
  52. package/dest/config/network_config.js +9 -0
  53. package/dest/config/network_name.d.ts +3 -0
  54. package/dest/config/network_name.d.ts.map +1 -0
  55. package/dest/config/network_name.js +19 -0
  56. package/dest/config/secret_value.d.ts +28 -0
  57. package/dest/config/secret_value.d.ts.map +1 -0
  58. package/dest/config/secret_value.js +34 -0
  59. package/dest/crypto/aes128/index.d.ts +3 -5
  60. package/dest/crypto/aes128/index.d.ts.map +1 -1
  61. package/dest/crypto/aes128/index.js +19 -6
  62. package/dest/crypto/bls/bn254_keystore.d.ts +296 -0
  63. package/dest/crypto/bls/bn254_keystore.d.ts.map +1 -0
  64. package/dest/crypto/bls/bn254_keystore.js +218 -0
  65. package/dest/crypto/bls/index.d.ts +13 -0
  66. package/dest/crypto/bls/index.d.ts.map +1 -0
  67. package/dest/crypto/bls/index.js +87 -0
  68. package/dest/crypto/bn254/bn254_utils.d.ts +39 -0
  69. package/dest/crypto/bn254/bn254_utils.d.ts.map +1 -0
  70. package/dest/crypto/bn254/bn254_utils.js +56 -0
  71. package/dest/crypto/bn254/index.d.ts +55 -0
  72. package/dest/crypto/bn254/index.d.ts.map +1 -0
  73. package/dest/crypto/bn254/index.js +145 -0
  74. package/dest/crypto/ecdsa/index.d.ts +3 -3
  75. package/dest/crypto/ecdsa/index.d.ts.map +1 -1
  76. package/dest/crypto/ecdsa/index.js +62 -48
  77. package/dest/crypto/ecdsa/signature.d.ts +2 -13
  78. package/dest/crypto/ecdsa/signature.d.ts.map +1 -1
  79. package/dest/crypto/grumpkin/index.d.ts +7 -14
  80. package/dest/crypto/grumpkin/index.d.ts.map +1 -1
  81. package/dest/crypto/grumpkin/index.js +59 -54
  82. package/dest/crypto/index.d.ts +3 -1
  83. package/dest/crypto/index.d.ts.map +1 -1
  84. package/dest/crypto/index.js +2 -0
  85. package/dest/crypto/keccak/index.d.ts +3 -5
  86. package/dest/crypto/keccak/index.d.ts.map +1 -1
  87. package/dest/crypto/keys/index.d.ts +1 -3
  88. package/dest/crypto/keys/index.d.ts.map +1 -1
  89. package/dest/crypto/keys/index.js +7 -4
  90. package/dest/crypto/pedersen/index.d.ts +1 -1
  91. package/dest/crypto/pedersen/pedersen.noble.d.ts +3 -5
  92. package/dest/crypto/pedersen/pedersen.noble.d.ts.map +1 -1
  93. package/dest/crypto/pedersen/pedersen.wasm.d.ts +3 -5
  94. package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -1
  95. package/dest/crypto/pedersen/pedersen.wasm.js +23 -13
  96. package/dest/crypto/poseidon/index.d.ts +1 -3
  97. package/dest/crypto/poseidon/index.d.ts.map +1 -1
  98. package/dest/crypto/poseidon/index.js +32 -17
  99. package/dest/crypto/random/index.d.ts +2 -4
  100. package/dest/crypto/random/index.d.ts.map +1 -1
  101. package/dest/crypto/random/index.js +2 -34
  102. package/dest/crypto/random/randomness_singleton.d.ts +1 -3
  103. package/dest/crypto/random/randomness_singleton.d.ts.map +1 -1
  104. package/dest/crypto/schnorr/index.d.ts +1 -1
  105. package/dest/crypto/schnorr/index.d.ts.map +1 -1
  106. package/dest/crypto/schnorr/index.js +29 -37
  107. package/dest/crypto/schnorr/signature.d.ts +4 -6
  108. package/dest/crypto/schnorr/signature.d.ts.map +1 -1
  109. package/dest/crypto/secp256k1/index.d.ts +5 -7
  110. package/dest/crypto/secp256k1/index.d.ts.map +1 -1
  111. package/dest/crypto/secp256k1/index.js +23 -18
  112. package/dest/crypto/secp256k1-signer/index.d.ts +1 -1
  113. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts +1 -1
  114. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts.map +1 -1
  115. package/dest/crypto/secp256k1-signer/utils.d.ts +56 -5
  116. package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -1
  117. package/dest/crypto/secp256k1-signer/utils.js +92 -6
  118. package/dest/crypto/serialize.d.ts +5 -7
  119. package/dest/crypto/serialize.d.ts.map +1 -1
  120. package/dest/crypto/sha256/index.d.ts +22 -5
  121. package/dest/crypto/sha256/index.d.ts.map +1 -1
  122. package/dest/crypto/sha256/index.js +42 -0
  123. package/dest/crypto/sha512/index.d.ts +2 -4
  124. package/dest/crypto/sha512/index.d.ts.map +1 -1
  125. package/dest/crypto/signature/index.d.ts +1 -3
  126. package/dest/crypto/signature/index.d.ts.map +1 -1
  127. package/dest/crypto/sync/index.d.ts +1 -1
  128. package/dest/crypto/sync/index.js +1 -1
  129. package/dest/crypto/sync/pedersen/index.d.ts +3 -5
  130. package/dest/crypto/sync/pedersen/index.d.ts.map +1 -1
  131. package/dest/crypto/sync/pedersen/index.js +17 -10
  132. package/dest/crypto/sync/poseidon/index.d.ts +1 -3
  133. package/dest/crypto/sync/poseidon/index.d.ts.map +1 -1
  134. package/dest/crypto/sync/poseidon/index.js +27 -12
  135. package/dest/decorators/index.d.ts +1 -1
  136. package/dest/decorators/memoize.d.ts +1 -1
  137. package/dest/decorators/memoize.d.ts.map +1 -1
  138. package/dest/error/index.d.ts +4 -4
  139. package/dest/error/index.d.ts.map +1 -1
  140. package/dest/eth-address/index.d.ts +16 -8
  141. package/dest/eth-address/index.d.ts.map +1 -1
  142. package/dest/eth-address/index.js +22 -0
  143. package/dest/eth-signature/eth_signature.d.ts +17 -18
  144. package/dest/eth-signature/eth_signature.d.ts.map +1 -1
  145. package/dest/eth-signature/eth_signature.js +31 -17
  146. package/dest/eth-signature/index.d.ts +1 -1
  147. package/dest/fields/bls12_fields.d.ts +148 -0
  148. package/dest/fields/bls12_fields.d.ts.map +1 -0
  149. package/dest/fields/bls12_fields.js +359 -0
  150. package/dest/fields/bls12_point.d.ts +220 -0
  151. package/dest/fields/bls12_point.d.ts.map +1 -0
  152. package/dest/fields/bls12_point.js +398 -0
  153. package/dest/fields/coordinate.d.ts +1 -6
  154. package/dest/fields/coordinate.d.ts.map +1 -1
  155. package/dest/fields/fields.d.ts +16 -4
  156. package/dest/fields/fields.d.ts.map +1 -1
  157. package/dest/fields/fields.js +57 -15
  158. package/dest/fields/index.d.ts +3 -1
  159. package/dest/fields/index.d.ts.map +1 -1
  160. package/dest/fields/index.js +2 -0
  161. package/dest/fields/point.d.ts +13 -15
  162. package/dest/fields/point.d.ts.map +1 -1
  163. package/dest/fields/point.js +20 -3
  164. package/dest/fs/index.d.ts +2 -1
  165. package/dest/fs/index.d.ts.map +1 -1
  166. package/dest/fs/index.js +1 -0
  167. package/dest/fs/run_in_dir.d.ts +1 -1
  168. package/dest/fs/try_rm_dir.d.ts +3 -0
  169. package/dest/fs/try_rm_dir.d.ts.map +1 -0
  170. package/dest/fs/try_rm_dir.js +16 -0
  171. package/dest/index.d.ts +3 -3
  172. package/dest/index.d.ts.map +1 -1
  173. package/dest/index.js +2 -2
  174. package/dest/iterable/all.d.ts +1 -1
  175. package/dest/iterable/filter.d.ts +1 -1
  176. package/dest/iterable/filter.js +1 -1
  177. package/dest/iterable/index.d.ts +1 -1
  178. package/dest/iterable/isAsyncIt.d.ts +1 -1
  179. package/dest/iterable/map.d.ts +1 -1
  180. package/dest/iterable/map.js +1 -1
  181. package/dest/iterable/peek.d.ts +1 -1
  182. package/dest/iterable/sort.d.ts +1 -1
  183. package/dest/iterable/take.d.ts +1 -1
  184. package/dest/iterable/toArray.d.ts +1 -1
  185. package/dest/jest/env.js +48 -0
  186. package/dest/jest/setupAfterEnv.js +3 -0
  187. package/dest/json-rpc/client/fetch.d.ts +3 -3
  188. package/dest/json-rpc/client/fetch.d.ts.map +1 -1
  189. package/dest/json-rpc/client/fetch.js +16 -30
  190. package/dest/json-rpc/client/index.d.ts +1 -1
  191. package/dest/json-rpc/client/safe_json_rpc_client.d.ts +10 -4
  192. package/dest/json-rpc/client/safe_json_rpc_client.d.ts.map +1 -1
  193. package/dest/json-rpc/client/safe_json_rpc_client.js +173 -13
  194. package/dest/json-rpc/client/undici.d.ts +1 -1
  195. package/dest/json-rpc/client/undici.d.ts.map +1 -1
  196. package/dest/json-rpc/client/undici.js +6 -7
  197. package/dest/json-rpc/convert.d.ts +3 -10
  198. package/dest/json-rpc/convert.d.ts.map +1 -1
  199. package/dest/json-rpc/convert.js +1 -9
  200. package/dest/json-rpc/errors.d.ts +4 -0
  201. package/dest/json-rpc/errors.d.ts.map +1 -0
  202. package/dest/json-rpc/errors.js +6 -0
  203. package/dest/json-rpc/fixtures/class_a.d.ts +4 -2
  204. package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -1
  205. package/dest/json-rpc/fixtures/class_b.d.ts +4 -2
  206. package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -1
  207. package/dest/json-rpc/fixtures/test_state.d.ts +1 -1
  208. package/dest/json-rpc/fixtures/test_state.d.ts.map +1 -1
  209. package/dest/json-rpc/index.d.ts +3 -2
  210. package/dest/json-rpc/index.d.ts.map +1 -1
  211. package/dest/json-rpc/index.js +2 -1
  212. package/dest/json-rpc/js_utils.d.ts +1 -1
  213. package/dest/json-rpc/js_utils.d.ts.map +1 -1
  214. package/dest/json-rpc/server/index.d.ts +1 -1
  215. package/dest/json-rpc/server/safe_json_rpc_server.d.ts +22 -23
  216. package/dest/json-rpc/server/safe_json_rpc_server.d.ts.map +1 -1
  217. package/dest/json-rpc/server/safe_json_rpc_server.js +161 -56
  218. package/dest/json-rpc/server/telemetry.d.ts +1 -1
  219. package/dest/json-rpc/test/index.d.ts +1 -1
  220. package/dest/json-rpc/test/integration.d.ts +2 -3
  221. package/dest/json-rpc/test/integration.d.ts.map +1 -1
  222. package/dest/log/console.d.ts +1 -1
  223. package/dest/log/console.d.ts.map +1 -1
  224. package/dest/log/gcloud-logger-config.d.ts +1 -2
  225. package/dest/log/gcloud-logger-config.d.ts.map +1 -1
  226. package/dest/log/gcloud-logger-config.js +1 -9
  227. package/dest/log/index.d.ts +5 -5
  228. package/dest/log/index.d.ts.map +1 -1
  229. package/dest/log/index.js +4 -4
  230. package/dest/log/libp2p_logger.d.ts +1 -1
  231. package/dest/log/libp2p_logger.js +13 -2
  232. package/dest/log/log-filters.d.ts +1 -1
  233. package/dest/log/log-levels.d.ts +1 -1
  234. package/dest/log/log_fn.d.ts +2 -2
  235. package/dest/log/log_fn.d.ts.map +1 -1
  236. package/dest/log/noir_debug_log_util.d.ts +14 -0
  237. package/dest/log/noir_debug_log_util.d.ts.map +1 -0
  238. package/dest/log/noir_debug_log_util.js +14 -0
  239. package/dest/log/pino-logger.d.ts +4 -4
  240. package/dest/log/pino-logger.d.ts.map +1 -1
  241. package/dest/log/pino-logger.js +28 -2
  242. package/dest/message/index.d.ts +1 -1
  243. package/dest/message/index.d.ts.map +1 -1
  244. package/dest/mutex/index.d.ts +1 -1
  245. package/dest/mutex/index.d.ts.map +1 -1
  246. package/dest/mutex/mutex_database.d.ts +1 -1
  247. package/dest/mutex/mutex_database.d.ts.map +1 -1
  248. package/dest/noir/index.d.ts +1 -1
  249. package/dest/noir/noir_package_config.d.ts +9 -9
  250. package/dest/number/index.d.ts +3 -0
  251. package/dest/number/index.d.ts.map +1 -0
  252. package/dest/number/index.js +12 -0
  253. package/dest/profiler/index.d.ts +2 -0
  254. package/dest/profiler/index.d.ts.map +1 -0
  255. package/dest/profiler/index.js +1 -0
  256. package/dest/profiler/profiler.d.ts +8 -0
  257. package/dest/profiler/profiler.d.ts.map +1 -0
  258. package/dest/profiler/profiler.js +97 -0
  259. package/dest/promise/index.d.ts +1 -1
  260. package/dest/promise/running-promise.d.ts +2 -2
  261. package/dest/promise/running-promise.d.ts.map +1 -1
  262. package/dest/promise/running-promise.js +2 -2
  263. package/dest/promise/utils.d.ts +1 -1
  264. package/dest/queue/base_memory_queue.d.ts +1 -1
  265. package/dest/queue/base_memory_queue.d.ts.map +1 -1
  266. package/dest/queue/batch_queue.d.ts +2 -2
  267. package/dest/queue/batch_queue.d.ts.map +1 -1
  268. package/dest/queue/batch_queue.js +1 -1
  269. package/dest/queue/bounded_serial_queue.d.ts +1 -1
  270. package/dest/queue/bounded_serial_queue.d.ts.map +1 -1
  271. package/dest/queue/fifo_memory_queue.d.ts +1 -1
  272. package/dest/queue/fifo_memory_queue.d.ts.map +1 -1
  273. package/dest/queue/index.d.ts +1 -1
  274. package/dest/queue/priority_memory_queue.d.ts +1 -1
  275. package/dest/queue/priority_memory_queue.d.ts.map +1 -1
  276. package/dest/queue/priority_queue.d.ts +1 -1
  277. package/dest/queue/priority_queue.d.ts.map +1 -1
  278. package/dest/queue/semaphore.d.ts +1 -1
  279. package/dest/queue/semaphore.d.ts.map +1 -1
  280. package/dest/queue/serial_queue.d.ts +3 -3
  281. package/dest/queue/serial_queue.d.ts.map +1 -1
  282. package/dest/queue/serial_queue.js +7 -5
  283. package/dest/retry/index.d.ts +4 -3
  284. package/dest/retry/index.d.ts.map +1 -1
  285. package/dest/retry/index.js +2 -2
  286. package/dest/running-promise/index.d.ts +1 -1
  287. package/dest/schemas/api.d.ts +1 -1
  288. package/dest/schemas/api.d.ts.map +1 -1
  289. package/dest/schemas/index.d.ts +1 -1
  290. package/dest/schemas/parse.d.ts +1 -1
  291. package/dest/schemas/parse.js +1 -1
  292. package/dest/schemas/schemas.d.ts +15 -18
  293. package/dest/schemas/schemas.d.ts.map +1 -1
  294. package/dest/schemas/schemas.js +20 -8
  295. package/dest/schemas/types.d.ts +1 -1
  296. package/dest/schemas/utils.d.ts +4 -6
  297. package/dest/schemas/utils.d.ts.map +1 -1
  298. package/dest/schemas/utils.js +15 -5
  299. package/dest/serialize/buffer_reader.d.ts +28 -3
  300. package/dest/serialize/buffer_reader.d.ts.map +1 -1
  301. package/dest/serialize/buffer_reader.js +44 -2
  302. package/dest/serialize/field_reader.d.ts +11 -2
  303. package/dest/serialize/field_reader.d.ts.map +1 -1
  304. package/dest/serialize/field_reader.js +18 -1
  305. package/dest/serialize/free_funcs.d.ts +24 -22
  306. package/dest/serialize/free_funcs.d.ts.map +1 -1
  307. package/dest/serialize/free_funcs.js +21 -27
  308. package/dest/serialize/index.d.ts +1 -1
  309. package/dest/serialize/serialize.d.ts +5 -6
  310. package/dest/serialize/serialize.d.ts.map +1 -1
  311. package/dest/serialize/type_registry.d.ts +1 -1
  312. package/dest/serialize/type_registry.d.ts.map +1 -1
  313. package/dest/serialize/types.d.ts +1 -1
  314. package/dest/sleep/index.d.ts +1 -1
  315. package/dest/sleep/index.d.ts.map +1 -1
  316. package/dest/string/index.d.ts +8 -3
  317. package/dest/string/index.d.ts.map +1 -1
  318. package/dest/string/index.js +27 -1
  319. package/dest/testing/files/index.d.ts +2 -3
  320. package/dest/testing/files/index.d.ts.map +1 -1
  321. package/dest/testing/files/index.js +3 -3
  322. package/dest/testing/formatting.d.ts +4 -0
  323. package/dest/testing/formatting.d.ts.map +1 -0
  324. package/dest/testing/formatting.js +3 -0
  325. package/dest/testing/index.d.ts +2 -1
  326. package/dest/testing/index.d.ts.map +1 -1
  327. package/dest/testing/index.js +1 -0
  328. package/dest/testing/port_allocator.d.ts +1 -1
  329. package/dest/testing/snapshot_serializer.d.ts +1 -1
  330. package/dest/testing/test_data.d.ts +1 -1
  331. package/dest/timer/date.d.ts +3 -2
  332. package/dest/timer/date.d.ts.map +1 -1
  333. package/dest/timer/date.js +5 -3
  334. package/dest/timer/elapsed.d.ts +1 -1
  335. package/dest/timer/index.d.ts +2 -2
  336. package/dest/timer/index.d.ts.map +1 -1
  337. package/dest/timer/index.js +1 -1
  338. package/dest/timer/timeout.d.ts +19 -6
  339. package/dest/timer/timeout.d.ts.map +1 -1
  340. package/dest/timer/timeout.js +43 -22
  341. package/dest/timer/timer.d.ts +1 -1
  342. package/dest/timer/timer.d.ts.map +1 -1
  343. package/dest/transport/dispatch/create_dispatch_fn.d.ts +1 -1
  344. package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +1 -1
  345. package/dest/transport/dispatch/create_dispatch_proxy.d.ts +1 -1
  346. package/dest/transport/dispatch/messages.d.ts +1 -1
  347. package/dest/transport/index.d.ts +1 -2
  348. package/dest/transport/index.d.ts.map +1 -1
  349. package/dest/transport/index.js +0 -1
  350. package/dest/transport/interface/connector.d.ts +1 -1
  351. package/dest/transport/interface/connector.d.ts.map +1 -1
  352. package/dest/transport/interface/listener.d.ts +1 -2
  353. package/dest/transport/interface/listener.d.ts.map +1 -1
  354. package/dest/transport/interface/socket.d.ts +1 -1
  355. package/dest/transport/interface/socket.d.ts.map +1 -1
  356. package/dest/transport/interface/transferable.d.ts +1 -1
  357. package/dest/transport/node/index.d.ts +1 -1
  358. package/dest/transport/node/node_connector.d.ts +1 -2
  359. package/dest/transport/node/node_connector.d.ts.map +1 -1
  360. package/dest/transport/node/node_connector_socket.d.ts +1 -2
  361. package/dest/transport/node/node_connector_socket.d.ts.map +1 -1
  362. package/dest/transport/node/node_listener.d.ts +1 -2
  363. package/dest/transport/node/node_listener.d.ts.map +1 -1
  364. package/dest/transport/node/node_listener_socket.d.ts +1 -2
  365. package/dest/transport/node/node_listener_socket.d.ts.map +1 -1
  366. package/dest/transport/transport_client.d.ts +1 -2
  367. package/dest/transport/transport_client.d.ts.map +1 -1
  368. package/dest/transport/transport_server.d.ts +1 -10
  369. package/dest/transport/transport_server.d.ts.map +1 -1
  370. package/dest/trees/balanced_merkle_tree.d.ts +22 -0
  371. package/dest/trees/balanced_merkle_tree.d.ts.map +1 -0
  372. package/dest/trees/balanced_merkle_tree.js +64 -0
  373. package/dest/trees/hasher.d.ts +5 -7
  374. package/dest/trees/hasher.d.ts.map +1 -1
  375. package/dest/trees/index.d.ts +3 -1
  376. package/dest/trees/index.d.ts.map +1 -1
  377. package/dest/trees/index.js +2 -0
  378. package/dest/trees/indexed_merkle_tree.d.ts +1 -3
  379. package/dest/trees/indexed_merkle_tree.d.ts.map +1 -1
  380. package/dest/trees/indexed_merkle_tree_calculator.d.ts +2 -4
  381. package/dest/trees/indexed_merkle_tree_calculator.d.ts.map +1 -1
  382. package/dest/trees/indexed_tree_leaf.d.ts +1 -3
  383. package/dest/trees/indexed_tree_leaf.d.ts.map +1 -1
  384. package/dest/trees/membership_witness.d.ts +5 -10
  385. package/dest/trees/membership_witness.d.ts.map +1 -1
  386. package/dest/trees/membership_witness.js +13 -0
  387. package/dest/trees/merkle_tree.d.ts +1 -3
  388. package/dest/trees/merkle_tree.d.ts.map +1 -1
  389. package/dest/trees/merkle_tree_calculator.d.ts +2 -4
  390. package/dest/trees/merkle_tree_calculator.d.ts.map +1 -1
  391. package/dest/trees/sibling_path.d.ts +5 -41
  392. package/dest/trees/sibling_path.d.ts.map +1 -1
  393. package/dest/trees/unbalanced_merkle_tree.d.ts +23 -10
  394. package/dest/trees/unbalanced_merkle_tree.d.ts.map +1 -1
  395. package/dest/trees/unbalanced_merkle_tree.js +72 -50
  396. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts +49 -0
  397. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts.map +1 -0
  398. package/dest/trees/unbalanced_merkle_tree_calculator.js +158 -0
  399. package/dest/trees/unbalanced_tree_store.d.ts +2 -1
  400. package/dest/trees/unbalanced_tree_store.d.ts.map +1 -1
  401. package/dest/trees/unbalanced_tree_store.js +6 -0
  402. package/dest/types/index.d.ts +26 -3
  403. package/dest/types/index.d.ts.map +1 -1
  404. package/dest/url/index.d.ts +1 -1
  405. package/dest/url/index.d.ts.map +1 -1
  406. package/dest/url/index.js +1 -1
  407. package/dest/validation/index.d.ts +1 -1
  408. package/package.json +39 -43
  409. package/src/array/array.ts +13 -16
  410. package/src/async-pool/index.ts +1 -0
  411. package/src/bigint/index.ts +20 -0
  412. package/src/branded-types/epoch.ts +88 -0
  413. package/src/branded-types/index.ts +4 -0
  414. package/src/branded-types/slot.ts +88 -0
  415. package/src/branded-types/types.ts +2 -0
  416. package/src/buffer/buffer16.ts +133 -0
  417. package/src/buffer/buffer32.ts +8 -6
  418. package/src/buffer/index.ts +1 -0
  419. package/src/collection/array.ts +66 -4
  420. package/src/collection/object.ts +37 -0
  421. package/src/config/env_var.ts +152 -52
  422. package/src/config/index.ts +191 -8
  423. package/src/config/network_config.ts +16 -0
  424. package/src/config/network_name.ts +28 -0
  425. package/src/config/secret_value.ts +49 -0
  426. package/src/crypto/aes128/index.ts +19 -10
  427. package/src/crypto/bls/bn254_keystore.ts +287 -0
  428. package/src/crypto/bls/index.ts +77 -0
  429. package/src/crypto/bn254/bn254_utils.ts +64 -0
  430. package/src/crypto/bn254/index.ts +173 -0
  431. package/src/crypto/ecdsa/index.ts +41 -23
  432. package/src/crypto/grumpkin/index.ts +35 -45
  433. package/src/crypto/index.ts +2 -0
  434. package/src/crypto/keys/index.ts +5 -5
  435. package/src/crypto/pedersen/pedersen.wasm.ts +22 -18
  436. package/src/crypto/poseidon/index.ts +32 -24
  437. package/src/crypto/random/index.ts +2 -40
  438. package/src/crypto/schnorr/index.ts +20 -17
  439. package/src/crypto/secp256k1/index.ts +15 -11
  440. package/src/crypto/secp256k1-signer/utils.ts +120 -7
  441. package/src/crypto/sha256/index.ts +47 -0
  442. package/src/crypto/sync/index.ts +1 -1
  443. package/src/crypto/sync/pedersen/index.ts +16 -15
  444. package/src/crypto/sync/poseidon/index.ts +27 -22
  445. package/src/eth-address/index.ts +28 -2
  446. package/src/eth-signature/eth_signature.ts +44 -22
  447. package/src/fields/bls12_fields.ts +463 -0
  448. package/src/fields/bls12_point.ts +450 -0
  449. package/src/fields/fields.ts +53 -9
  450. package/src/fields/index.ts +2 -0
  451. package/src/fields/point.ts +20 -3
  452. package/src/fs/index.ts +1 -0
  453. package/src/fs/try_rm_dir.ts +15 -0
  454. package/src/index.ts +2 -2
  455. package/src/iterable/filter.ts +1 -1
  456. package/src/iterable/map.ts +1 -1
  457. package/src/jest/env.mjs +52 -0
  458. package/src/jest/setupAfterEnv.mjs +3 -0
  459. package/src/json-rpc/client/fetch.ts +14 -33
  460. package/src/json-rpc/client/safe_json_rpc_client.ts +226 -13
  461. package/src/json-rpc/client/undici.ts +8 -15
  462. package/src/json-rpc/convert.ts +3 -12
  463. package/src/json-rpc/errors.ts +6 -0
  464. package/src/json-rpc/fixtures/class_a.ts +4 -1
  465. package/src/json-rpc/fixtures/class_b.ts +4 -1
  466. package/src/json-rpc/index.ts +2 -1
  467. package/src/json-rpc/server/safe_json_rpc_server.ts +141 -48
  468. package/src/json-rpc/test/integration.ts +1 -1
  469. package/src/log/console.ts +4 -1
  470. package/src/log/gcloud-logger-config.ts +3 -7
  471. package/src/log/index.ts +4 -4
  472. package/src/log/libp2p_logger.ts +21 -2
  473. package/src/log/log_fn.ts +1 -1
  474. package/src/log/noir_debug_log_util.ts +21 -0
  475. package/src/log/pino-logger.ts +33 -2
  476. package/src/message/index.ts +5 -1
  477. package/src/mutex/mutex_database.ts +2 -3
  478. package/src/number/index.ts +14 -0
  479. package/src/profiler/index.ts +1 -0
  480. package/src/profiler/profiler.ts +125 -0
  481. package/src/promise/running-promise.ts +2 -2
  482. package/src/queue/batch_queue.ts +1 -1
  483. package/src/queue/bounded_serial_queue.ts +4 -1
  484. package/src/queue/serial_queue.ts +5 -5
  485. package/src/retry/index.ts +10 -5
  486. package/src/schemas/api.ts +4 -4
  487. package/src/schemas/parse.ts +1 -1
  488. package/src/schemas/schemas.ts +28 -10
  489. package/src/schemas/utils.ts +21 -8
  490. package/src/serialize/buffer_reader.ts +60 -3
  491. package/src/serialize/field_reader.ts +27 -3
  492. package/src/serialize/free_funcs.ts +25 -31
  493. package/src/serialize/serialize.ts +2 -0
  494. package/src/string/index.ts +36 -1
  495. package/src/testing/files/index.ts +7 -3
  496. package/src/testing/formatting.ts +3 -0
  497. package/src/testing/index.ts +1 -0
  498. package/src/timer/date.ts +9 -3
  499. package/src/timer/index.ts +1 -1
  500. package/src/timer/timeout.ts +54 -19
  501. package/src/transport/index.ts +0 -1
  502. package/src/transport/interface/connector.ts +0 -1
  503. package/src/transport/interface/listener.ts +2 -3
  504. package/src/transport/interface/socket.ts +2 -3
  505. package/src/transport/transport_client.ts +3 -4
  506. package/src/transport/transport_server.ts +4 -1
  507. package/src/trees/balanced_merkle_tree.ts +82 -0
  508. package/src/trees/hasher.ts +4 -4
  509. package/src/trees/index.ts +2 -0
  510. package/src/trees/indexed_merkle_tree.ts +5 -1
  511. package/src/trees/indexed_merkle_tree_calculator.ts +2 -2
  512. package/src/trees/membership_witness.ts +13 -0
  513. package/src/trees/merkle_tree.ts +4 -1
  514. package/src/trees/merkle_tree_calculator.ts +9 -4
  515. package/src/trees/unbalanced_merkle_tree.ts +98 -42
  516. package/src/trees/unbalanced_merkle_tree_calculator.ts +187 -0
  517. package/src/trees/unbalanced_tree_store.ts +5 -1
  518. package/src/types/index.ts +25 -4
  519. package/src/url/index.ts +0 -1
  520. package/dest/crypto/pedersen/pedersen.elliptic.d.ts +0 -13
  521. package/dest/crypto/pedersen/pedersen.elliptic.d.ts.map +0 -1
  522. package/dest/crypto/pedersen/pedersen.elliptic.js +0 -582
  523. package/dest/log/debug.d.ts +0 -56
  524. package/dest/log/debug.d.ts.map +0 -1
  525. package/dest/log/debug.js +0 -75
  526. package/dest/log/log_history.d.ts +0 -31
  527. package/dest/log/log_history.d.ts.map +0 -1
  528. package/dest/log/log_history.js +0 -38
  529. package/dest/transport/browser/index.d.ts +0 -5
  530. package/dest/transport/browser/index.d.ts.map +0 -1
  531. package/dest/transport/browser/index.js +0 -4
  532. package/dest/transport/browser/message_port_socket.d.ts +0 -37
  533. package/dest/transport/browser/message_port_socket.d.ts.map +0 -1
  534. package/dest/transport/browser/message_port_socket.js +0 -42
  535. package/dest/transport/browser/shared_worker_connector.d.ts +0 -19
  536. package/dest/transport/browser/shared_worker_connector.d.ts.map +0 -1
  537. package/dest/transport/browser/shared_worker_connector.js +0 -19
  538. package/dest/transport/browser/shared_worker_listener.d.ts +0 -38
  539. package/dest/transport/browser/shared_worker_listener.d.ts.map +0 -1
  540. package/dest/transport/browser/shared_worker_listener.js +0 -33
  541. package/dest/transport/browser/worker_connector.d.ts +0 -26
  542. package/dest/transport/browser/worker_connector.d.ts.map +0 -1
  543. package/dest/transport/browser/worker_connector.js +0 -30
  544. package/dest/transport/browser/worker_listener.d.ts +0 -39
  545. package/dest/transport/browser/worker_listener.d.ts.map +0 -1
  546. package/dest/transport/browser/worker_listener.js +0 -35
  547. package/dest/wasm/empty_wasi_sdk.d.ts +0 -130
  548. package/dest/wasm/empty_wasi_sdk.d.ts.map +0 -1
  549. package/dest/wasm/empty_wasi_sdk.js +0 -148
  550. package/dest/wasm/index.d.ts +0 -2
  551. package/dest/wasm/index.d.ts.map +0 -1
  552. package/dest/wasm/index.js +0 -1
  553. package/dest/wasm/wasm_module.d.ts +0 -136
  554. package/dest/wasm/wasm_module.d.ts.map +0 -1
  555. package/dest/wasm/wasm_module.js +0 -196
  556. package/dest/worker/browser/index.d.ts +0 -3
  557. package/dest/worker/browser/index.d.ts.map +0 -1
  558. package/dest/worker/browser/index.js +0 -2
  559. package/dest/worker/browser/start_web_module.d.ts +0 -7
  560. package/dest/worker/browser/start_web_module.d.ts.map +0 -1
  561. package/dest/worker/browser/start_web_module.js +0 -27
  562. package/dest/worker/browser/web_data_store.d.ts +0 -24
  563. package/dest/worker/browser/web_data_store.d.ts.map +0 -1
  564. package/dest/worker/browser/web_data_store.js +0 -29
  565. package/dest/worker/browser/web_worker.d.ts +0 -10
  566. package/dest/worker/browser/web_worker.d.ts.map +0 -1
  567. package/dest/worker/browser/web_worker.js +0 -25
  568. package/dest/worker/data_store.d.ts +0 -21
  569. package/dest/worker/data_store.d.ts.map +0 -1
  570. package/dest/worker/data_store.js +0 -3
  571. package/dest/worker/index.d.ts +0 -3
  572. package/dest/worker/index.d.ts.map +0 -1
  573. package/dest/worker/index.js +0 -1
  574. package/dest/worker/node/index.d.ts +0 -3
  575. package/dest/worker/node/index.d.ts.map +0 -1
  576. package/dest/worker/node/index.js +0 -2
  577. package/dest/worker/node/node_data_store.d.ts +0 -13
  578. package/dest/worker/node/node_data_store.d.ts.map +0 -1
  579. package/dest/worker/node/node_data_store.js +0 -20
  580. package/dest/worker/node/node_worker.d.ts +0 -6
  581. package/dest/worker/node/node_worker.d.ts.map +0 -1
  582. package/dest/worker/node/node_worker.js +0 -22
  583. package/dest/worker/node/start_node_module.d.ts +0 -7
  584. package/dest/worker/node/start_node_module.d.ts.map +0 -1
  585. package/dest/worker/node/start_node_module.js +0 -31
  586. package/dest/worker/wasm_worker.d.ts +0 -9
  587. package/dest/worker/wasm_worker.d.ts.map +0 -1
  588. package/dest/worker/wasm_worker.js +0 -3
  589. package/dest/worker/worker_pool.d.ts +0 -40
  590. package/dest/worker/worker_pool.d.ts.map +0 -1
  591. package/dest/worker/worker_pool.js +0 -51
  592. package/src/crypto/pedersen/pedersen.elliptic.ts +0 -584
  593. package/src/log/debug.ts +0 -104
  594. package/src/log/log_history.ts +0 -44
  595. package/src/transport/browser/index.ts +0 -4
  596. package/src/transport/browser/message_port_socket.ts +0 -48
  597. package/src/transport/browser/shared_worker_connector.ts +0 -21
  598. package/src/transport/browser/shared_worker_listener.ts +0 -53
  599. package/src/transport/browser/worker_connector.ts +0 -30
  600. package/src/transport/browser/worker_listener.ts +0 -54
  601. package/src/wasm/README.md +0 -6
  602. package/src/wasm/empty_wasi_sdk.ts +0 -166
  603. package/src/wasm/fixtures/gcd.wasm +0 -0
  604. package/src/wasm/fixtures/gcd.wat +0 -27
  605. package/src/wasm/index.ts +0 -1
  606. package/src/wasm/wasm_module.ts +0 -260
  607. package/src/worker/browser/index.ts +0 -2
  608. package/src/worker/browser/start_web_module.ts +0 -24
  609. package/src/worker/browser/web_data_store.ts +0 -38
  610. package/src/worker/browser/web_worker.ts +0 -25
  611. package/src/worker/data_store.ts +0 -19
  612. package/src/worker/index.ts +0 -2
  613. package/src/worker/node/index.ts +0 -2
  614. package/src/worker/node/node_data_store.ts +0 -27
  615. package/src/worker/node/node_worker.ts +0 -23
  616. package/src/worker/node/start_node_module.ts +0 -30
  617. package/src/worker/wasm_worker.ts +0 -7
  618. package/src/worker/worker_pool.ts +0 -73
@@ -0,0 +1,56 @@
1
+ import { Fr } from '../../fields/fields.js';
2
+ import { Bn254G1Point, Bn254G2Point } from './index.js';
3
+ /**
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
+ };
35
+ }
36
+ /**
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()
54
+ }
55
+ };
56
+ }
@@ -0,0 +1,55 @@
1
+ import { Fq, Fr } from '../../fields/fields.js';
2
+ /**
3
+ * BN254 G1 point using foundation field classes.
4
+ * Represents a point on the BN254 elliptic curve in affine coordinates.
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
+ /**
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).
38
+ */
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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vYm4yNTQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVoRDs7O0dBR0c7QUFDSCxxQkFBYSxZQUFZO2FBRUwsQ0FBQyxFQUFFLEVBQUU7YUFDTCxDQUFDLEVBQUUsRUFBRTtJQUZ2QixZQUNrQixDQUFDLEVBQUUsRUFBRSxFQUNMLENBQUMsRUFBRSxFQUFFLEVBQ25CO0lBRUosT0FBTyxDQUFDLFlBQVk7SUFPcEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxjQUFjO0lBSXZCLFNBQVMsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLENBT2xDO0lBRUQ7Ozs7T0FJRztJQUNILE9BQWEsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBaUJ6RDtJQUVEOzs7O09BSUc7SUFDSCxPQUFhLGNBQWMsQ0FBQyxVQUFVLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FZckU7SUFFRDs7OztPQUlHO0lBQ0gsUUFBUSxJQUFJLE1BQU0sQ0FTakI7SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFlBQVksR0FBRyxPQUFPLENBRW5DO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7Q0FDRjtBQUVEOzs7O0dBSUc7QUFDSCxxQkFBYSxZQUFZO2FBRUwsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQzthQUNYLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFGN0IsWUFDa0IsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUNYLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFDekI7SUFFSixPQUFPLENBQUMsWUFBWTtJQU9wQixPQUFPLENBQUMsTUFBTSxDQUFDLGNBQWM7SUFPN0I7Ozs7T0FJRztJQUNILE9BQWEsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBaUJ6RDtJQUVELE1BQU0sQ0FBQyxLQUFLLEVBQUUsWUFBWSxHQUFHLE9BQU8sQ0FPbkM7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtDQUNGO0FBR0QsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0JBQWtCLENBQUMifQ==
@@ -0,0 +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;IAFvB,YACkB,CAAC,EAAE,EAAE,EACL,CAAC,EAAE,EAAE,EACnB;IAEJ,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,MAAM,CAAC,cAAc;IAIvB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAOlC;IAED;;;;OAIG;IACH,OAAa,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAiBzD;IAED;;;;OAIG;IACH,OAAa,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAYrE;IAED;;;;OAIG;IACH,QAAQ,IAAI,MAAM,CASjB;IAED,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAEnC;IAED,QAAQ,IAAI,MAAM,CAEjB;CACF;AAED;;;;GAIG;AACH,qBAAa,YAAY;aAEL,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;aACX,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAF7B,YACkB,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EACX,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EACzB;IAEJ,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,MAAM,CAAC,cAAc;IAO7B;;;;OAIG;IACH,OAAa,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAiBzD;IAED,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAOnC;IAED,QAAQ,IAAI,MAAM,CAEjB;CACF;AAGD,OAAO,EAAE,iCAAiC,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,145 @@
1
+ import { BN254_G1_GENERATOR, BN254_G2_GENERATOR, BarretenbergSync } from '@aztec/bb.js';
2
+ import { Fq } from '../../fields/fields.js';
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
+ if (compressed.length !== 32) {
53
+ throw new Error('Invalid compressed point length');
54
+ }
55
+ await BarretenbergSync.initSingleton();
56
+ const api = BarretenbergSync.getSingleton();
57
+ const response = api.bn254G1FromCompressed({
58
+ compressed: new Uint8Array(compressed)
59
+ });
60
+ return Bn254G1Point.fromBbApiPoint(response.point);
61
+ }
62
+ /**
63
+ * Compress this BN254 G1 point to 32 bytes.
64
+ * The compressed format encodes the x-coordinate and the sign bit of the y-coordinate
65
+ * in the most significant bit (bit 255).
66
+ */ compress() {
67
+ const xBytes = this.x.toBuffer();
68
+ // Get the least significant bit of y to determine the sign
69
+ const yLsb = this.y.toBigInt() & 1n;
70
+ // If y is odd, set the most significant bit (bit 255) of the output
71
+ if (yLsb === 1n) {
72
+ xBytes[0] |= 0x80;
73
+ }
74
+ return xBytes;
75
+ }
76
+ equals(other) {
77
+ return this.x.equals(other.x) && this.y.equals(other.y);
78
+ }
79
+ toString() {
80
+ return `Bn254G1Point(x: ${this.x.toString()}, y: ${this.y.toString()})`;
81
+ }
82
+ }
83
+ /**
84
+ * BN254 G2 point using foundation field classes.
85
+ * Represents a point on the BN254 G2 curve (twist curve) in affine coordinates.
86
+ * G2 points use extension field coordinates (Fq2).
87
+ */ export class Bn254G2Point {
88
+ x;
89
+ y;
90
+ constructor(x, y){
91
+ this.x = x;
92
+ this.y = y;
93
+ }
94
+ toBbApiPoint() {
95
+ return {
96
+ x: [
97
+ this.x[0].toBuffer(),
98
+ this.x[1].toBuffer()
99
+ ],
100
+ y: [
101
+ this.y[0].toBuffer(),
102
+ this.y[1].toBuffer()
103
+ ]
104
+ };
105
+ }
106
+ static fromBbApiPoint(point) {
107
+ return new Bn254G2Point([
108
+ Fq.fromBuffer(Buffer.from(point.x[0])),
109
+ Fq.fromBuffer(Buffer.from(point.x[1]))
110
+ ], [
111
+ Fq.fromBuffer(Buffer.from(point.y[0])),
112
+ Fq.fromBuffer(Buffer.from(point.y[1]))
113
+ ]);
114
+ }
115
+ /**
116
+ * Get the generator point for BN254 G2, or perform scalar multiplication.
117
+ * When called without arguments, returns the base generator point.
118
+ * When called with a scalar, returns scalar * generator.
119
+ */ static async generator(scalar) {
120
+ if (!scalar) {
121
+ return new Bn254G2Point([
122
+ Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.x[0])),
123
+ Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.x[1]))
124
+ ], [
125
+ Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.y[0])),
126
+ Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.y[1]))
127
+ ]);
128
+ }
129
+ await BarretenbergSync.initSingleton();
130
+ const api = BarretenbergSync.getSingleton();
131
+ const response = api.bn254G2Mul({
132
+ point: BN254_G2_GENERATOR,
133
+ scalar: scalar.toBuffer()
134
+ });
135
+ return Bn254G2Point.fromBbApiPoint(response.point);
136
+ }
137
+ equals(other) {
138
+ 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]);
139
+ }
140
+ toString() {
141
+ return `Bn254G2Point(x: (${this.x[0].toString()}, ${this.x[1].toString()}), y: (${this.y[0].toString()}, ${this.y[1].toString()}))`;
142
+ }
143
+ }
144
+ // Re-export BN254 point utility functions
145
+ export { computeBn254G1PublicKeyCompressed, computeBn254G1PublicKey, computeBn254G2PublicKey } from './bn254_utils.js';
@@ -1,5 +1,3 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
1
  import { EcdsaSignature } from './signature.js';
4
2
  export * from './signature.js';
5
3
  /**
@@ -7,6 +5,8 @@ export * from './signature.js';
7
5
  * TODO: Replace with codegen api on bb.js.
8
6
  */
9
7
  export declare class Ecdsa {
8
+ private curve;
9
+ constructor(curve?: 'secp256k1' | 'secp256r1');
10
10
  /**
11
11
  * Computes a secp256k1 public key from a private key.
12
12
  * @param privateKey - Secp256k1 private key.
@@ -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":";;AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,cAAc,gBAAgB,CAAC;AAE/B;;;GAGG;AACH,qBAAa,KAAK;IAChB;;;;OAIG;IACU,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMlE;;;;;OAKG;IACU,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM;IASnE;;;;;OAKG;IACU,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IASpF;;;;;;OAMG;IACU,eAAe,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc;CAQlF"}
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"}
@@ -1,24 +1,30 @@
1
1
  import { BarretenbergSync } from '@aztec/bb.js';
2
- import { numToInt32BE } from '@aztec/foundation/serialize';
3
- import { concatenateUint8Arrays } from '../serialize.js';
4
2
  import { EcdsaSignature } from './signature.js';
5
3
  export * from './signature.js';
6
4
  /**
7
5
  * ECDSA signature construction and helper operations.
8
6
  * TODO: Replace with codegen api on bb.js.
9
7
  */ export class Ecdsa {
8
+ curve;
9
+ constructor(curve = 'secp256k1'){
10
+ this.curve = curve;
11
+ }
10
12
  /**
11
13
  * Computes a secp256k1 public key from a private key.
12
14
  * @param privateKey - Secp256k1 private key.
13
15
  * @returns A secp256k1 public key.
14
16
  */ async computePublicKey(privateKey) {
15
- const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
16
- const [result] = api.getWasm().callWasmExport('ecdsa__compute_public_key', [
17
+ await BarretenbergSync.initSingleton();
18
+ const api = BarretenbergSync.getSingleton();
19
+ const response = this.curve === 'secp256r1' ? api.ecdsaSecp256r1ComputePublicKey({
20
+ privateKey
21
+ }) : api.ecdsaSecp256k1ComputePublicKey({
17
22
  privateKey
18
- ], [
19
- 64
23
+ });
24
+ return Buffer.concat([
25
+ Buffer.from(response.publicKey.x),
26
+ Buffer.from(response.publicKey.y)
20
27
  ]);
21
- return Buffer.from(result);
22
28
  }
23
29
  /**
24
30
  * Constructs an ECDSA signature given a msg and a private key.
@@ -26,20 +32,18 @@ export * from './signature.js';
26
32
  * @param privateKey - The secp256k1 private key of the signer.
27
33
  * @returns An ECDSA signature of the form (r, s, v).
28
34
  */ async constructSignature(msg, privateKey) {
29
- const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
30
- const messageArray = concatenateUint8Arrays([
31
- numToInt32BE(msg.length),
32
- msg
33
- ]);
34
- const [r, s, v] = api.getWasm().callWasmExport('ecdsa__construct_signature_', [
35
- messageArray,
35
+ await BarretenbergSync.initSingleton();
36
+ const api = BarretenbergSync.getSingleton();
37
+ const response = this.curve === 'secp256r1' ? api.ecdsaSecp256r1ConstructSignature({
38
+ message: msg,
36
39
  privateKey
37
- ], [
38
- 32,
39
- 32,
40
- 1
41
- ]);
42
- return new EcdsaSignature(Buffer.from(r), Buffer.from(s), Buffer.from(v));
40
+ }) : api.ecdsaSecp256k1ConstructSignature({
41
+ message: msg,
42
+ privateKey
43
+ });
44
+ return new EcdsaSignature(Buffer.from(response.r), Buffer.from(response.s), Buffer.from([
45
+ response.v
46
+ ]));
43
47
  }
44
48
  /**
45
49
  * Recovers a secp256k1 public key from an ECDSA signature (similar to ecrecover).
@@ -47,20 +51,23 @@ export * from './signature.js';
47
51
  * @param sig - The ECDSA signature.
48
52
  * @returns The secp256k1 public key of the signer.
49
53
  */ async recoverPublicKey(msg, sig) {
50
- const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
51
- const messageArray = concatenateUint8Arrays([
52
- numToInt32BE(msg.length),
53
- msg
54
- ]);
55
- const [result] = api.getWasm().callWasmExport('ecdsa__recover_public_key_from_signature_', [
56
- messageArray,
57
- sig.r,
58
- sig.s,
59
- sig.v
60
- ], [
61
- 64
54
+ await BarretenbergSync.initSingleton();
55
+ const api = BarretenbergSync.getSingleton();
56
+ const response = this.curve === 'secp256r1' ? api.ecdsaSecp256r1RecoverPublicKey({
57
+ message: msg,
58
+ r: sig.r,
59
+ s: sig.s,
60
+ v: sig.v[0]
61
+ }) : api.ecdsaSecp256k1RecoverPublicKey({
62
+ message: msg,
63
+ r: sig.r,
64
+ s: sig.s,
65
+ v: sig.v[0]
66
+ });
67
+ return Buffer.concat([
68
+ Buffer.from(response.publicKey.x),
69
+ Buffer.from(response.publicKey.y)
62
70
  ]);
63
- return Buffer.from(result);
64
71
  }
65
72
  /**
66
73
  * Verifies and ECDSA signature given a secp256k1 public key.
@@ -69,20 +76,27 @@ export * from './signature.js';
69
76
  * @param sig - The ECDSA signature.
70
77
  * @returns True or false.
71
78
  */ async verifySignature(msg, pubKey, sig) {
72
- const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
73
- const messageArray = concatenateUint8Arrays([
74
- numToInt32BE(msg.length),
75
- msg
76
- ]);
77
- const [result] = api.getWasm().callWasmExport('ecdsa__verify_signature_', [
78
- messageArray,
79
- pubKey,
80
- sig.r,
81
- sig.s,
82
- sig.v
83
- ], [
84
- 1
85
- ]);
86
- return result[0] === 1;
79
+ await BarretenbergSync.initSingleton();
80
+ const api = BarretenbergSync.getSingleton();
81
+ const response = this.curve === 'secp256r1' ? api.ecdsaSecp256r1VerifySignature({
82
+ message: msg,
83
+ publicKey: {
84
+ x: pubKey.subarray(0, 32),
85
+ y: pubKey.subarray(32, 64)
86
+ },
87
+ r: sig.r,
88
+ s: sig.s,
89
+ v: sig.v[0]
90
+ }) : api.ecdsaSecp256k1VerifySignature({
91
+ message: msg,
92
+ publicKey: {
93
+ x: pubKey.subarray(0, 32),
94
+ y: pubKey.subarray(32, 64)
95
+ },
96
+ r: sig.r,
97
+ s: sig.s,
98
+ v: sig.v[0]
99
+ });
100
+ return response.verified;
87
101
  }
88
102
  }
@@ -1,5 +1,3 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
1
  import { Fr } from '@aztec/foundation/fields';
4
2
  import type { Signature } from '../signature/index.js';
5
3
  /**
@@ -7,17 +5,8 @@ import type { Signature } from '../signature/index.js';
7
5
  * @see cpp/barretenberg/cpp/src/barretenberg/crypto/ecdsa/ecdsa.hpp
8
6
  */
9
7
  export declare class EcdsaSignature implements Signature {
10
- /**
11
- * The r byte-array (32 bytes) in an ECDSA signature.
12
- */
13
8
  r: Buffer;
14
- /**
15
- * The s byte-array (32 bytes) in an ECDSA signature.
16
- */
17
9
  s: Buffer;
18
- /**
19
- * The recovery id (1 byte) in an ECDSA signature.
20
- */
21
10
  v: Buffer;
22
11
  constructor(
23
12
  /**
@@ -36,7 +25,7 @@ export declare class EcdsaSignature implements Signature {
36
25
  * Converts an ECDSA signature to a buffer.
37
26
  * @returns A buffer.
38
27
  */
39
- toBuffer(): Buffer;
28
+ toBuffer(): Buffer<ArrayBuffer>;
40
29
  /**
41
30
  * Deserializes the signature from a buffer.
42
31
  * @param buffer - The buffer from which to deserialize the signature.
@@ -68,4 +57,4 @@ export declare class EcdsaSignature implements Signature {
68
57
  */
69
58
  toFields(includeV?: boolean): Fr[];
70
59
  }
71
- //# sourceMappingURL=signature.d.ts.map
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY3J5cHRvL2VjZHNhL3NpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHOUMsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdkQ7OztHQUdHO0FBQ0gscUJBQWEsY0FBZSxZQUFXLFNBQVM7SUFLckMsQ0FBQyxFQUFFLE1BQU07SUFJVCxDQUFDLEVBQUUsTUFBTTtJQUlULENBQUMsRUFBRSxNQUFNO0lBWmxCO0lBQ0U7O09BRUc7SUFDSSxDQUFDLEVBQUUsTUFBTTtJQUNoQjs7T0FFRztJQUNJLENBQUMsRUFBRSxNQUFNO0lBQ2hCOztPQUVHO0lBQ0ksQ0FBQyxFQUFFLE1BQU0sRUFXakI7SUFFRDs7O09BR0c7SUFDSCxRQUFRLHdCQUVQO0lBRUQ7Ozs7T0FJRztJQUNILE9BQWMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLGtCQUV0QztJQUVEOzs7Ozs7T0FNRztJQUNILE9BQWMsV0FBVyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxrQkFFeEQ7SUFFRDs7O09BR0c7SUFDSCxPQUFjLE1BQU0sbUJBRW5CO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSxXQUVQO0lBRUQ7Ozs7T0FJRztJQUNILFFBQVEsQ0FBQyxRQUFRLFVBQVEsR0FBRyxFQUFFLEVBQUUsQ0FZL0I7Q0FDRiJ9
@@ -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,0BAA0B,CAAC;AAG9C,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,47 +1,40 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
1
  import { Fr, type GrumpkinScalar, Point } from '@aztec/foundation/fields';
4
2
  /**
5
3
  * Grumpkin elliptic curve operations.
6
4
  */
7
5
  export declare class Grumpkin {
8
- static generator: Point;
9
- /**
10
- * Point generator
11
- * @returns The generator for the curve.
12
- */
13
- generator(): Point;
6
+ static readonly generator: Point;
14
7
  /**
15
8
  * Multiplies a point by a scalar (adds the point `scalar` amount of times).
16
9
  * @param point - Point to multiply.
17
10
  * @param scalar - Scalar to multiply by.
18
11
  * @returns Result of the multiplication.
19
12
  */
20
- mul(point: Point, scalar: GrumpkinScalar): Promise<Point>;
13
+ static mul(point: Point, scalar: GrumpkinScalar): Promise<Point>;
21
14
  /**
22
15
  * Add two points.
23
16
  * @param a - Point a in the addition
24
17
  * @param b - Point b to add to a
25
18
  * @returns Result of the addition.
26
19
  */
27
- add(a: Point, b: Point): Promise<Point>;
20
+ static add(a: Point, b: Point): Promise<Point>;
28
21
  /**
29
22
  * Multiplies a set of points by a scalar.
30
23
  * @param points - Points to multiply.
31
24
  * @param scalar - Scalar to multiply by.
32
25
  * @returns Points multiplied by the scalar.
33
26
  */
34
- batchMul(points: Point[], scalar: GrumpkinScalar): Promise<Point[]>;
27
+ static batchMul(points: Point[], scalar: GrumpkinScalar): Promise<Point[]>;
35
28
  /**
36
29
  * Gets a random field element.
37
30
  * @returns Random field element.
38
31
  */
39
- getRandomFr(): Promise<Fr>;
32
+ static getRandomFr(): Promise<Fr>;
40
33
  /**
41
34
  * Converts a 512 bits long buffer to a field.
42
35
  * @param uint512Buf - The buffer to convert.
43
36
  * @returns Buffer representation of the field element.
44
37
  */
45
- reduce512BufferToFr(uint512Buf: Buffer): Promise<Fr>;
38
+ static reduce512BufferToFr(uint512Buf: Buffer): Promise<Fr>;
46
39
  }
47
- //# sourceMappingURL=index.d.ts.map
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vZ3J1bXBraW4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxLQUFLLGNBQWMsRUFBRSxLQUFLLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUxRTs7R0FFRztBQUNILHFCQUFhLFFBQVE7SUFFbkIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLFFBS3JCO0lBRUo7Ozs7O09BS0c7SUFDSCxPQUFvQixHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsY0FBYyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FRNUU7SUFFRDs7Ozs7T0FLRztJQUNILE9BQW9CLEdBQUcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQVExRDtJQUVEOzs7OztPQUtHO0lBQ0gsT0FBb0IsUUFBUSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsY0FBYyxvQkFTbkU7SUFFRDs7O09BR0c7SUFDSCxPQUFvQixXQUFXLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUs3QztJQUVEOzs7O09BSUc7SUFDSCxPQUFvQixtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FLdkU7Q0FDRiJ9
@@ -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,SAAS,QAKZ;IAEJ;;;OAGG;IACI,SAAS,IAAI,KAAK;IAIzB;;;;;OAKG;IACU,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC;IAMtE;;;;;OAKG;IACU,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAMpD;;;;;OAKG;IACU,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc;IAqB7D;;;OAGG;IACU,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC;IAMvC;;;;OAIG;IACU,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;CAOlE"}
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;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"}