@aztec/bb.js 3.0.0-canary.a9708bd → 3.0.0-devnet.2-patch.1

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 (723) hide show
  1. package/README.md +13 -79
  2. package/build/amd64-linux/bb +0 -0
  3. package/build/amd64-linux/nodejs_module.node +0 -0
  4. package/build/amd64-macos/bb +0 -0
  5. package/build/amd64-macos/nodejs_module.node +0 -0
  6. package/build/arm64-linux/bb +0 -0
  7. package/build/arm64-linux/nodejs_module.node +0 -0
  8. package/build/arm64-macos/bb +0 -0
  9. package/build/arm64-macos/nodejs_module.node +0 -0
  10. package/dest/browser/async_map/index.d.ts +1 -1
  11. package/dest/browser/async_map/index.js +1 -1
  12. package/dest/browser/barretenberg/backend.d.ts +32 -41
  13. package/dest/browser/barretenberg/backend.d.ts.map +1 -1
  14. package/dest/browser/barretenberg/backend.js +128 -108
  15. package/dest/browser/barretenberg/index.d.ts +47 -48
  16. package/dest/browser/barretenberg/index.d.ts.map +1 -1
  17. package/dest/browser/barretenberg/index.js +132 -90
  18. package/dest/browser/barretenberg/testing/bigint-buffer.d.ts +17 -0
  19. package/dest/browser/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  20. package/dest/browser/barretenberg/testing/bigint-buffer.js +37 -0
  21. package/dest/browser/barretenberg/testing/fields.d.ts +16 -0
  22. package/dest/browser/barretenberg/testing/fields.d.ts.map +1 -0
  23. package/dest/browser/barretenberg/testing/fields.js +47 -0
  24. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +2 -2
  25. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  26. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.js +6 -7
  27. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  28. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  29. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +1 -3
  30. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  31. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  32. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +5 -5
  33. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  34. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +20 -11
  35. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +16 -7
  36. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  37. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.js +94 -26
  38. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  39. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  40. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +1 -3
  41. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  42. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  43. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  44. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  45. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  46. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  47. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  48. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  49. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  50. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  51. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.js +1 -1
  52. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  53. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  54. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  55. package/dest/browser/barretenberg_wasm/helpers/browser/index.js +9 -2
  56. package/dest/browser/barretenberg_wasm/helpers/index.d.ts +1 -1
  57. package/dest/browser/barretenberg_wasm/index.d.ts +1 -1
  58. package/dest/browser/barretenberg_wasm/index.d.ts.map +1 -1
  59. package/dest/browser/barretenberg_wasm/index.js +2 -3
  60. package/dest/browser/bb_backends/browser/index.d.ts +11 -0
  61. package/dest/browser/bb_backends/browser/index.d.ts.map +1 -0
  62. package/dest/browser/bb_backends/browser/index.js +39 -0
  63. package/dest/browser/bb_backends/browser/platform.d.ts +4 -0
  64. package/dest/browser/bb_backends/browser/platform.d.ts.map +1 -0
  65. package/dest/browser/bb_backends/browser/platform.js +10 -0
  66. package/dest/browser/bb_backends/index.d.ts +50 -0
  67. package/dest/browser/bb_backends/index.d.ts.map +1 -0
  68. package/dest/browser/bb_backends/index.js +16 -0
  69. package/dest/browser/bb_backends/interface.d.ts +33 -0
  70. package/dest/browser/bb_backends/interface.d.ts.map +1 -0
  71. package/dest/browser/bb_backends/interface.js +2 -0
  72. package/dest/browser/bb_backends/wasm.d.ts +49 -0
  73. package/dest/browser/bb_backends/wasm.d.ts.map +1 -0
  74. package/dest/browser/bb_backends/wasm.js +85 -0
  75. package/dest/browser/bbapi_exception.d.ts +7 -0
  76. package/dest/browser/bbapi_exception.d.ts.map +1 -0
  77. package/dest/browser/bbapi_exception.js +14 -0
  78. package/dest/browser/bin/index.d.ts +3 -0
  79. package/dest/{node/bindgen → browser/bin}/index.d.ts.map +1 -1
  80. package/dest/browser/bin/index.js +11 -0
  81. package/dest/browser/cbind/generate.d.ts +1 -1
  82. package/dest/browser/cbind/generate.js +94 -7
  83. package/dest/browser/cbind/generated/api_types.d.ts +1629 -230
  84. package/dest/browser/cbind/generated/api_types.d.ts.map +1 -1
  85. package/dest/browser/cbind/generated/api_types.js +2349 -479
  86. package/dest/browser/cbind/generated/async.d.ts +53 -14
  87. package/dest/browser/cbind/generated/async.d.ts.map +1 -1
  88. package/dest/browser/cbind/generated/async.js +587 -72
  89. package/dest/browser/cbind/generated/curve_constants.d.ts +45 -0
  90. package/dest/browser/cbind/generated/curve_constants.d.ts.map +1 -0
  91. package/dest/browser/cbind/generated/curve_constants.js +45 -0
  92. package/dest/browser/cbind/generated/sync.d.ts +54 -15
  93. package/dest/browser/cbind/generated/sync.d.ts.map +1 -1
  94. package/dest/browser/cbind/generated/sync.js +549 -72
  95. package/dest/browser/cbind/schema_compiler.d.ts +3 -5
  96. package/dest/browser/cbind/schema_compiler.d.ts.map +1 -1
  97. package/dest/browser/cbind/schema_compiler.js +102 -185
  98. package/dest/browser/crs/browser/cached_net_crs.d.ts +1 -1
  99. package/dest/browser/crs/browser/cached_net_crs.d.ts.map +1 -1
  100. package/dest/browser/crs/browser/cached_net_crs.js +6 -1
  101. package/dest/browser/crs/browser/index.d.ts +1 -1
  102. package/dest/browser/crs/index.d.ts +1 -1
  103. package/dest/browser/crs/net_crs.d.ts +1 -16
  104. package/dest/browser/crs/net_crs.d.ts.map +1 -1
  105. package/dest/browser/crs/net_crs.js +6 -1
  106. package/dest/browser/index.d.ts +6 -3
  107. package/dest/browser/index.d.ts.map +1 -1
  108. package/dest/browser/index.js +6 -3
  109. package/dest/browser/proof/index.d.ts +1 -1
  110. package/dest/browser/proof/index.js +1 -1
  111. package/dest/browser/random/browser/index.d.ts +1 -1
  112. package/dest/browser/random/browser/index.d.ts.map +1 -1
  113. package/dest/browser/random/browser/index.js +1 -1
  114. package/dest/browser/random/index.d.ts +1 -1
  115. package/dest/browser/retry/index.d.ts +1 -1
  116. package/dest/browser/retry/index.js +1 -1
  117. package/dest/node/async_map/index.d.ts +1 -1
  118. package/dest/node/async_map/index.js +1 -1
  119. package/dest/node/barretenberg/__snapshots__/pedersen.test.js.snap +2 -2
  120. package/dest/node/barretenberg/__snapshots__/poseidon.test.js.snap +3 -3
  121. package/dest/node/barretenberg/backend.d.ts +32 -41
  122. package/dest/node/barretenberg/backend.d.ts.map +1 -1
  123. package/dest/node/barretenberg/backend.js +128 -108
  124. package/dest/node/barretenberg/blake2s.test.d.ts +1 -1
  125. package/dest/node/barretenberg/blake2s.test.js +21 -18
  126. package/dest/node/barretenberg/index.d.ts +47 -48
  127. package/dest/node/barretenberg/index.d.ts.map +1 -1
  128. package/dest/node/barretenberg/index.js +132 -90
  129. package/dest/node/barretenberg/pedersen.test.d.ts +1 -1
  130. package/dest/node/barretenberg/pedersen.test.js +25 -18
  131. package/dest/node/barretenberg/poseidon.bench.test.d.ts +2 -0
  132. package/dest/node/barretenberg/poseidon.bench.test.d.ts.map +1 -0
  133. package/dest/node/barretenberg/poseidon.bench.test.js +218 -0
  134. package/dest/node/barretenberg/poseidon.test.d.ts +1 -1
  135. package/dest/node/barretenberg/poseidon.test.js +16 -16
  136. package/dest/node/barretenberg/testing/bigint-buffer.d.ts +17 -0
  137. package/dest/node/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  138. package/dest/node/barretenberg/testing/bigint-buffer.js +37 -0
  139. package/dest/node/barretenberg/testing/fields.d.ts +16 -0
  140. package/dest/node/barretenberg/testing/fields.d.ts.map +1 -0
  141. package/dest/node/barretenberg/testing/fields.js +47 -0
  142. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  143. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +2 -2
  144. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  145. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +6 -7
  146. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  147. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  148. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +1 -3
  149. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  150. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  151. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  152. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  153. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +1 -3
  154. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +1 -1
  155. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
  156. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +5 -5
  157. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  158. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +20 -11
  159. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +16 -7
  160. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  161. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +94 -26
  162. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  163. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  164. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +1 -3
  165. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  166. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  167. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  168. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  169. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +1 -3
  170. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +1 -1
  171. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +1 -7
  172. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  173. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  174. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  175. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  176. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  177. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  178. package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +1 -1
  179. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  180. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
  181. package/dest/node/barretenberg_wasm/fetch_code/node/index.js +1 -1
  182. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  183. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  184. package/dest/node/barretenberg_wasm/helpers/browser/index.js +9 -2
  185. package/dest/node/barretenberg_wasm/helpers/index.d.ts +1 -1
  186. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +5 -6
  187. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  188. package/dest/node/barretenberg_wasm/helpers/node/index.js +14 -6
  189. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts +2 -2
  190. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -1
  191. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.js +1 -1
  192. package/dest/node/barretenberg_wasm/index.d.ts +1 -1
  193. package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
  194. package/dest/node/barretenberg_wasm/index.js +2 -3
  195. package/dest/node/barretenberg_wasm/index.test.d.ts +1 -1
  196. package/dest/node/barretenberg_wasm/index.test.js +11 -10
  197. package/dest/node/bb_backends/browser/index.d.ts +11 -0
  198. package/dest/node/bb_backends/browser/index.d.ts.map +1 -0
  199. package/dest/node/bb_backends/browser/index.js +39 -0
  200. package/dest/node/bb_backends/browser/platform.d.ts +4 -0
  201. package/dest/node/bb_backends/browser/platform.d.ts.map +1 -0
  202. package/dest/node/bb_backends/browser/platform.js +10 -0
  203. package/dest/node/bb_backends/index.d.ts +50 -0
  204. package/dest/node/bb_backends/index.d.ts.map +1 -0
  205. package/dest/node/bb_backends/index.js +16 -0
  206. package/dest/node/bb_backends/interface.d.ts +33 -0
  207. package/dest/node/bb_backends/interface.d.ts.map +1 -0
  208. package/dest/node/bb_backends/interface.js +2 -0
  209. package/dest/node/bb_backends/node/index.d.ts +11 -0
  210. package/dest/node/bb_backends/node/index.d.ts.map +1 -0
  211. package/dest/node/bb_backends/node/index.js +86 -0
  212. package/dest/node/bb_backends/node/native_pipe.d.ts +25 -0
  213. package/dest/node/bb_backends/node/native_pipe.d.ts.map +1 -0
  214. package/dest/node/bb_backends/node/native_pipe.js +114 -0
  215. package/dest/node/bb_backends/node/native_shm.d.ts +28 -0
  216. package/dest/node/bb_backends/node/native_shm.d.ts.map +1 -0
  217. package/dest/node/bb_backends/node/native_shm.js +172 -0
  218. package/dest/node/bb_backends/node/native_shm_async.d.ts +51 -0
  219. package/dest/node/bb_backends/node/native_shm_async.d.ts.map +1 -0
  220. package/dest/node/bb_backends/node/native_shm_async.js +232 -0
  221. package/dest/node/bb_backends/node/native_socket.d.ts +34 -0
  222. package/dest/node/bb_backends/node/native_socket.d.ts.map +1 -0
  223. package/dest/node/bb_backends/node/native_socket.js +281 -0
  224. package/dest/node/bb_backends/node/platform.d.ts +27 -0
  225. package/dest/node/bb_backends/node/platform.d.ts.map +1 -0
  226. package/dest/node/bb_backends/node/platform.js +129 -0
  227. package/dest/node/bb_backends/wasm.d.ts +49 -0
  228. package/dest/node/bb_backends/wasm.d.ts.map +1 -0
  229. package/dest/node/bb_backends/wasm.js +85 -0
  230. package/dest/node/bbapi/exception_handling.test.d.ts +2 -0
  231. package/dest/node/bbapi/exception_handling.test.d.ts.map +1 -0
  232. package/dest/node/bbapi/exception_handling.test.js +48 -0
  233. package/dest/node/bbapi_exception.d.ts +7 -0
  234. package/dest/node/bbapi_exception.d.ts.map +1 -0
  235. package/dest/node/bbapi_exception.js +14 -0
  236. package/dest/node/benchmark/index.d.ts +1 -1
  237. package/dest/node/benchmark/index.js +1 -1
  238. package/dest/node/benchmark/timer.d.ts +1 -1
  239. package/dest/node/benchmark/timer.d.ts.map +1 -1
  240. package/dest/node/benchmark/timer.js +2 -1
  241. package/dest/node/bin/index.d.ts +3 -0
  242. package/dest/node/bin/index.d.ts.map +1 -0
  243. package/dest/node/bin/index.js +11 -0
  244. package/dest/node/cbind/generate.d.ts +1 -1
  245. package/dest/node/cbind/generate.js +94 -7
  246. package/dest/node/cbind/generated/api_types.d.ts +1629 -230
  247. package/dest/node/cbind/generated/api_types.d.ts.map +1 -1
  248. package/dest/node/cbind/generated/api_types.js +2349 -479
  249. package/dest/node/cbind/generated/async.d.ts +53 -14
  250. package/dest/node/cbind/generated/async.d.ts.map +1 -1
  251. package/dest/node/cbind/generated/async.js +587 -72
  252. package/dest/node/cbind/generated/curve_constants.d.ts +45 -0
  253. package/dest/node/cbind/generated/curve_constants.d.ts.map +1 -0
  254. package/dest/node/cbind/generated/curve_constants.js +45 -0
  255. package/dest/node/cbind/generated/sync.d.ts +54 -15
  256. package/dest/node/cbind/generated/sync.d.ts.map +1 -1
  257. package/dest/node/cbind/generated/sync.js +549 -72
  258. package/dest/node/cbind/schema_compiler.d.ts +3 -5
  259. package/dest/node/cbind/schema_compiler.d.ts.map +1 -1
  260. package/dest/node/cbind/schema_compiler.js +102 -185
  261. package/dest/node/crs/browser/cached_net_crs.d.ts +1 -1
  262. package/dest/node/crs/browser/cached_net_crs.d.ts.map +1 -1
  263. package/dest/node/crs/browser/cached_net_crs.js +6 -1
  264. package/dest/node/crs/browser/index.d.ts +1 -1
  265. package/dest/node/crs/index.d.ts +1 -1
  266. package/dest/node/crs/net_crs.d.ts +1 -16
  267. package/dest/node/crs/net_crs.d.ts.map +1 -1
  268. package/dest/node/crs/net_crs.js +6 -1
  269. package/dest/node/crs/node/index.d.ts +1 -1
  270. package/dest/node/crs/node/index.d.ts.map +1 -1
  271. package/dest/node/crs/node/index.js +11 -6
  272. package/dest/node/index.d.ts +6 -3
  273. package/dest/node/index.d.ts.map +1 -1
  274. package/dest/node/index.js +6 -3
  275. package/dest/node/proof/index.d.ts +1 -1
  276. package/dest/node/proof/index.js +1 -1
  277. package/dest/node/random/browser/index.d.ts +1 -1
  278. package/dest/node/random/browser/index.d.ts.map +1 -1
  279. package/dest/node/random/browser/index.js +1 -1
  280. package/dest/node/random/index.d.ts +1 -1
  281. package/dest/node/random/node/index.d.ts +1 -1
  282. package/dest/node/random/node/index.js +1 -1
  283. package/dest/node/retry/index.d.ts +1 -1
  284. package/dest/node/retry/index.js +1 -1
  285. package/dest/node-cjs/async_map/index.d.ts +1 -1
  286. package/dest/node-cjs/async_map/index.js +1 -1
  287. package/dest/node-cjs/barretenberg/backend.d.ts +32 -41
  288. package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
  289. package/dest/node-cjs/barretenberg/backend.js +131 -111
  290. package/dest/node-cjs/barretenberg/blake2s.test.d.ts +1 -1
  291. package/dest/node-cjs/barretenberg/blake2s.test.js +22 -19
  292. package/dest/node-cjs/barretenberg/index.d.ts +47 -48
  293. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
  294. package/dest/node-cjs/barretenberg/index.js +136 -93
  295. package/dest/node-cjs/barretenberg/pedersen.test.d.ts +1 -1
  296. package/dest/node-cjs/barretenberg/pedersen.test.js +27 -20
  297. package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts +2 -0
  298. package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts.map +1 -0
  299. package/dest/node-cjs/barretenberg/poseidon.bench.test.js +220 -0
  300. package/dest/node-cjs/barretenberg/poseidon.test.d.ts +1 -1
  301. package/dest/node-cjs/barretenberg/poseidon.test.js +16 -16
  302. package/dest/node-cjs/barretenberg/testing/bigint-buffer.d.ts +17 -0
  303. package/dest/node-cjs/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  304. package/dest/node-cjs/barretenberg/testing/bigint-buffer.js +43 -0
  305. package/dest/node-cjs/barretenberg/testing/fields.d.ts +16 -0
  306. package/dest/node-cjs/barretenberg/testing/fields.d.ts.map +1 -0
  307. package/dest/node-cjs/barretenberg/testing/fields.js +51 -0
  308. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  309. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +2 -2
  310. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  311. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +8 -9
  312. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  313. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  314. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +3 -5
  315. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  316. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  317. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  318. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  319. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +1 -3
  320. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +1 -1
  321. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
  322. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +5 -5
  323. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  324. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +20 -11
  325. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +16 -7
  326. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  327. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +94 -26
  328. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  329. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  330. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +3 -5
  331. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  332. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  333. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  334. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  335. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +1 -3
  336. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +1 -1
  337. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +1 -7
  338. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  339. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  340. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  341. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  342. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  343. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  344. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  345. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  346. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +2 -2
  347. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  348. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
  349. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +2 -2
  350. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  351. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  352. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +9 -2
  353. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts +1 -1
  354. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +5 -6
  355. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  356. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +15 -7
  357. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts +2 -2
  358. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -1
  359. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.js +1 -1
  360. package/dest/node-cjs/barretenberg_wasm/index.d.ts +1 -1
  361. package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -1
  362. package/dest/node-cjs/barretenberg_wasm/index.js +2 -3
  363. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts +1 -1
  364. package/dest/node-cjs/barretenberg_wasm/index.test.js +11 -10
  365. package/dest/node-cjs/bb_backends/browser/index.d.ts +11 -0
  366. package/dest/node-cjs/bb_backends/browser/index.d.ts.map +1 -0
  367. package/dest/node-cjs/bb_backends/browser/index.js +43 -0
  368. package/dest/node-cjs/bb_backends/browser/platform.d.ts +4 -0
  369. package/dest/node-cjs/bb_backends/browser/platform.d.ts.map +1 -0
  370. package/dest/node-cjs/bb_backends/browser/platform.js +15 -0
  371. package/dest/node-cjs/bb_backends/index.d.ts +50 -0
  372. package/dest/node-cjs/bb_backends/index.d.ts.map +1 -0
  373. package/dest/node-cjs/bb_backends/index.js +18 -0
  374. package/dest/node-cjs/bb_backends/interface.d.ts +33 -0
  375. package/dest/node-cjs/bb_backends/interface.d.ts.map +1 -0
  376. package/dest/node-cjs/bb_backends/interface.js +3 -0
  377. package/dest/node-cjs/bb_backends/node/index.d.ts +11 -0
  378. package/dest/node-cjs/bb_backends/node/index.d.ts.map +1 -0
  379. package/dest/node-cjs/bb_backends/node/index.js +90 -0
  380. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts +25 -0
  381. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts.map +1 -0
  382. package/dest/node-cjs/bb_backends/node/native_pipe.js +118 -0
  383. package/dest/node-cjs/bb_backends/node/native_shm.d.ts +28 -0
  384. package/dest/node-cjs/bb_backends/node/native_shm.d.ts.map +1 -0
  385. package/dest/node-cjs/bb_backends/node/native_shm.js +176 -0
  386. package/dest/node-cjs/bb_backends/node/native_shm_async.d.ts +51 -0
  387. package/dest/node-cjs/bb_backends/node/native_shm_async.d.ts.map +1 -0
  388. package/dest/node-cjs/bb_backends/node/native_shm_async.js +236 -0
  389. package/dest/node-cjs/bb_backends/node/native_socket.d.ts +34 -0
  390. package/dest/node-cjs/bb_backends/node/native_socket.d.ts.map +1 -0
  391. package/dest/node-cjs/bb_backends/node/native_socket.js +286 -0
  392. package/dest/node-cjs/bb_backends/node/platform.d.ts +27 -0
  393. package/dest/node-cjs/bb_backends/node/platform.d.ts.map +1 -0
  394. package/dest/node-cjs/bb_backends/node/platform.js +136 -0
  395. package/dest/node-cjs/bb_backends/wasm.d.ts +49 -0
  396. package/dest/node-cjs/bb_backends/wasm.d.ts.map +1 -0
  397. package/dest/node-cjs/bb_backends/wasm.js +90 -0
  398. package/dest/node-cjs/bbapi/exception_handling.test.d.ts +2 -0
  399. package/dest/node-cjs/bbapi/exception_handling.test.d.ts.map +1 -0
  400. package/dest/node-cjs/bbapi/exception_handling.test.js +50 -0
  401. package/dest/node-cjs/bbapi_exception.d.ts +7 -0
  402. package/dest/node-cjs/bbapi_exception.d.ts.map +1 -0
  403. package/dest/node-cjs/bbapi_exception.js +18 -0
  404. package/dest/node-cjs/benchmark/index.d.ts +1 -1
  405. package/dest/node-cjs/benchmark/index.js +2 -2
  406. package/dest/node-cjs/benchmark/timer.d.ts +1 -1
  407. package/dest/node-cjs/benchmark/timer.d.ts.map +1 -1
  408. package/dest/node-cjs/benchmark/timer.js +2 -1
  409. package/dest/node-cjs/bin/index.d.ts +3 -0
  410. package/dest/node-cjs/{bindgen → bin}/index.d.ts.map +1 -1
  411. package/dest/node-cjs/bin/index.js +13 -0
  412. package/dest/node-cjs/cbind/generate.d.ts +1 -1
  413. package/dest/node-cjs/cbind/generate.js +93 -6
  414. package/dest/node-cjs/cbind/generated/api_types.d.ts +1629 -230
  415. package/dest/node-cjs/cbind/generated/api_types.d.ts.map +1 -1
  416. package/dest/node-cjs/cbind/generated/api_types.js +2555 -519
  417. package/dest/node-cjs/cbind/generated/async.d.ts +53 -14
  418. package/dest/node-cjs/cbind/generated/async.d.ts.map +1 -1
  419. package/dest/node-cjs/cbind/generated/async.js +586 -71
  420. package/dest/node-cjs/cbind/generated/curve_constants.d.ts +45 -0
  421. package/dest/node-cjs/cbind/generated/curve_constants.d.ts.map +1 -0
  422. package/dest/node-cjs/cbind/generated/curve_constants.js +48 -0
  423. package/dest/node-cjs/cbind/generated/sync.d.ts +54 -15
  424. package/dest/node-cjs/cbind/generated/sync.d.ts.map +1 -1
  425. package/dest/node-cjs/cbind/generated/sync.js +548 -71
  426. package/dest/node-cjs/cbind/schema_compiler.d.ts +3 -5
  427. package/dest/node-cjs/cbind/schema_compiler.d.ts.map +1 -1
  428. package/dest/node-cjs/cbind/schema_compiler.js +102 -186
  429. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts +1 -1
  430. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts.map +1 -1
  431. package/dest/node-cjs/crs/browser/cached_net_crs.js +6 -1
  432. package/dest/node-cjs/crs/browser/index.d.ts +1 -1
  433. package/dest/node-cjs/crs/browser/index.js +2 -2
  434. package/dest/node-cjs/crs/index.d.ts +1 -1
  435. package/dest/node-cjs/crs/index.js +2 -2
  436. package/dest/node-cjs/crs/net_crs.d.ts +1 -16
  437. package/dest/node-cjs/crs/net_crs.d.ts.map +1 -1
  438. package/dest/node-cjs/crs/net_crs.js +6 -1
  439. package/dest/node-cjs/crs/node/index.d.ts +1 -1
  440. package/dest/node-cjs/crs/node/index.d.ts.map +1 -1
  441. package/dest/node-cjs/crs/node/index.js +11 -6
  442. package/dest/node-cjs/index.d.ts +6 -3
  443. package/dest/node-cjs/index.d.ts.map +1 -1
  444. package/dest/node-cjs/index.js +29 -12
  445. package/dest/node-cjs/proof/index.d.ts +1 -1
  446. package/dest/node-cjs/proof/index.js +1 -1
  447. package/dest/node-cjs/random/browser/index.d.ts +1 -1
  448. package/dest/node-cjs/random/browser/index.d.ts.map +1 -1
  449. package/dest/node-cjs/random/browser/index.js +1 -1
  450. package/dest/node-cjs/random/index.d.ts +1 -1
  451. package/dest/node-cjs/random/node/index.d.ts +1 -1
  452. package/dest/node-cjs/random/node/index.js +1 -1
  453. package/dest/node-cjs/retry/index.d.ts +1 -1
  454. package/dest/node-cjs/retry/index.js +1 -1
  455. package/package.json +12 -10
  456. package/src/barretenberg/__snapshots__/pedersen.test.ts.snap +2 -2
  457. package/src/barretenberg/__snapshots__/poseidon.test.ts.snap +3 -3
  458. package/src/barretenberg/backend.ts +165 -154
  459. package/src/barretenberg/blake2s.test.ts +20 -21
  460. package/src/barretenberg/index.ts +144 -130
  461. package/src/barretenberg/pedersen.test.ts +24 -17
  462. package/src/barretenberg/poseidon.bench.test.ts +271 -0
  463. package/src/barretenberg/poseidon.test.ts +15 -15
  464. package/src/barretenberg/testing/fields.ts +63 -0
  465. package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +4 -5
  466. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +0 -2
  467. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +0 -7
  468. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +0 -2
  469. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.ts +0 -9
  470. package/src/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.ts +17 -9
  471. package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +104 -20
  472. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +0 -2
  473. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +0 -7
  474. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +0 -2
  475. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.ts +0 -7
  476. package/src/barretenberg_wasm/barretenberg_wasm_thread/index.ts +3 -2
  477. package/src/barretenberg_wasm/helpers/browser/index.ts +8 -1
  478. package/src/barretenberg_wasm/helpers/node/index.ts +13 -6
  479. package/src/barretenberg_wasm/index.test.ts +12 -11
  480. package/src/barretenberg_wasm/index.ts +1 -2
  481. package/src/bb_backends/browser/index.ts +50 -0
  482. package/src/bb_backends/browser/platform.ts +11 -0
  483. package/src/bb_backends/index.ts +55 -0
  484. package/src/bb_backends/interface.ts +35 -0
  485. package/src/bb_backends/node/index.ts +107 -0
  486. package/src/bb_backends/node/native_pipe.ts +127 -0
  487. package/src/bb_backends/node/native_shm.ts +190 -0
  488. package/src/bb_backends/node/native_shm_async.ts +261 -0
  489. package/src/bb_backends/node/native_socket.ts +325 -0
  490. package/src/bb_backends/node/platform.ts +156 -0
  491. package/src/bb_backends/wasm.ts +102 -0
  492. package/src/bbapi/exception_handling.test.ts +54 -0
  493. package/src/bbapi_exception.ts +13 -0
  494. package/src/bin/index.ts +14 -0
  495. package/src/cbind/README.md +1 -1
  496. package/src/cbind/generate.ts +99 -6
  497. package/src/cbind/generated/api_types.ts +4241 -0
  498. package/src/cbind/generated/async.ts +717 -0
  499. package/src/cbind/generated/curve_constants.ts +53 -0
  500. package/src/cbind/generated/sync.ts +663 -0
  501. package/src/cbind/schema_compiler.ts +156 -244
  502. package/src/crs/node/index.ts +4 -5
  503. package/src/index.ts +33 -1
  504. package/dest/browser/barretenberg_api/index.d.ts +0 -109
  505. package/dest/browser/barretenberg_api/index.d.ts.map +0 -1
  506. package/dest/browser/barretenberg_api/index.js +0 -699
  507. package/dest/browser/bigint-array/index.d.ts +0 -17
  508. package/dest/browser/bigint-array/index.d.ts.map +0 -1
  509. package/dest/browser/bigint-array/index.js +0 -37
  510. package/dest/browser/cbind/generated/native.d.ts +0 -31
  511. package/dest/browser/cbind/generated/native.d.ts.map +0 -1
  512. package/dest/browser/cbind/generated/native.js +0 -234
  513. package/dest/browser/log/browser/index.d.ts +0 -6
  514. package/dest/browser/log/browser/index.d.ts.map +0 -1
  515. package/dest/browser/log/browser/index.js +0 -28
  516. package/dest/browser/log/index.d.ts +0 -2
  517. package/dest/browser/log/index.d.ts.map +0 -1
  518. package/dest/browser/log/index.js +0 -2
  519. package/dest/browser/log/types.d.ts +0 -6
  520. package/dest/browser/log/types.d.ts.map +0 -1
  521. package/dest/browser/log/types.js +0 -2
  522. package/dest/browser/serialize/buffer_reader.d.ts +0 -28
  523. package/dest/browser/serialize/buffer_reader.d.ts.map +0 -1
  524. package/dest/browser/serialize/buffer_reader.js +0 -66
  525. package/dest/browser/serialize/index.d.ts +0 -4
  526. package/dest/browser/serialize/index.d.ts.map +0 -1
  527. package/dest/browser/serialize/index.js +0 -4
  528. package/dest/browser/serialize/output_type.d.ts +0 -11
  529. package/dest/browser/serialize/output_type.d.ts.map +0 -1
  530. package/dest/browser/serialize/output_type.js +0 -44
  531. package/dest/browser/serialize/serialize.d.ts +0 -53
  532. package/dest/browser/serialize/serialize.d.ts.map +0 -1
  533. package/dest/browser/serialize/serialize.js +0 -139
  534. package/dest/browser/types/fields.d.ts +0 -43
  535. package/dest/browser/types/fields.d.ts.map +0 -1
  536. package/dest/browser/types/fields.js +0 -102
  537. package/dest/browser/types/fixed_size_buffer.d.ts +0 -26
  538. package/dest/browser/types/fixed_size_buffer.d.ts.map +0 -1
  539. package/dest/browser/types/fixed_size_buffer.js +0 -51
  540. package/dest/browser/types/index.d.ts +0 -6
  541. package/dest/browser/types/index.d.ts.map +0 -1
  542. package/dest/browser/types/index.js +0 -6
  543. package/dest/browser/types/point.d.ts +0 -16
  544. package/dest/browser/types/point.d.ts.map +0 -1
  545. package/dest/browser/types/point.js +0 -31
  546. package/dest/browser/types/ptr.d.ts +0 -13
  547. package/dest/browser/types/ptr.d.ts.map +0 -1
  548. package/dest/browser/types/ptr.js +0 -19
  549. package/dest/browser/types/raw_buffer.d.ts +0 -3
  550. package/dest/browser/types/raw_buffer.d.ts.map +0 -1
  551. package/dest/browser/types/raw_buffer.js +0 -5
  552. package/dest/node/barretenberg/common.test.d.ts +0 -2
  553. package/dest/node/barretenberg/common.test.d.ts.map +0 -1
  554. package/dest/node/barretenberg/common.test.js +0 -20
  555. package/dest/node/barretenberg_api/index.d.ts +0 -109
  556. package/dest/node/barretenberg_api/index.d.ts.map +0 -1
  557. package/dest/node/barretenberg_api/index.js +0 -699
  558. package/dest/node/bigint-array/index.d.ts +0 -17
  559. package/dest/node/bigint-array/index.d.ts.map +0 -1
  560. package/dest/node/bigint-array/index.js +0 -37
  561. package/dest/node/bindgen/function_declaration.d.ts +0 -11
  562. package/dest/node/bindgen/function_declaration.d.ts.map +0 -1
  563. package/dest/node/bindgen/function_declaration.js +0 -2
  564. package/dest/node/bindgen/index.d.ts +0 -2
  565. package/dest/node/bindgen/index.js +0 -15
  566. package/dest/node/bindgen/mappings.d.ts +0 -4
  567. package/dest/node/bindgen/mappings.d.ts.map +0 -1
  568. package/dest/node/bindgen/mappings.js +0 -64
  569. package/dest/node/bindgen/rust.d.ts +0 -2
  570. package/dest/node/bindgen/rust.d.ts.map +0 -1
  571. package/dest/node/bindgen/rust.js +0 -43
  572. package/dest/node/bindgen/to_camel_case.d.ts +0 -2
  573. package/dest/node/bindgen/to_camel_case.d.ts.map +0 -1
  574. package/dest/node/bindgen/to_camel_case.js +0 -11
  575. package/dest/node/bindgen/typescript.d.ts +0 -2
  576. package/dest/node/bindgen/typescript.d.ts.map +0 -1
  577. package/dest/node/bindgen/typescript.js +0 -100
  578. package/dest/node/cbind/generated/native.d.ts +0 -31
  579. package/dest/node/cbind/generated/native.d.ts.map +0 -1
  580. package/dest/node/cbind/generated/native.js +0 -234
  581. package/dest/node/log/browser/index.d.ts +0 -6
  582. package/dest/node/log/browser/index.d.ts.map +0 -1
  583. package/dest/node/log/browser/index.js +0 -28
  584. package/dest/node/log/index.d.ts +0 -2
  585. package/dest/node/log/index.d.ts.map +0 -1
  586. package/dest/node/log/index.js +0 -2
  587. package/dest/node/log/node/index.d.ts +0 -6
  588. package/dest/node/log/node/index.d.ts.map +0 -1
  589. package/dest/node/log/node/index.js +0 -40
  590. package/dest/node/log/types.d.ts +0 -6
  591. package/dest/node/log/types.d.ts.map +0 -1
  592. package/dest/node/log/types.js +0 -2
  593. package/dest/node/main.d.ts +0 -13
  594. package/dest/node/main.d.ts.map +0 -1
  595. package/dest/node/main.js +0 -459
  596. package/dest/node/serialize/buffer_reader.d.ts +0 -28
  597. package/dest/node/serialize/buffer_reader.d.ts.map +0 -1
  598. package/dest/node/serialize/buffer_reader.js +0 -66
  599. package/dest/node/serialize/index.d.ts +0 -4
  600. package/dest/node/serialize/index.d.ts.map +0 -1
  601. package/dest/node/serialize/index.js +0 -4
  602. package/dest/node/serialize/output_type.d.ts +0 -11
  603. package/dest/node/serialize/output_type.d.ts.map +0 -1
  604. package/dest/node/serialize/output_type.js +0 -44
  605. package/dest/node/serialize/serialize.d.ts +0 -53
  606. package/dest/node/serialize/serialize.d.ts.map +0 -1
  607. package/dest/node/serialize/serialize.js +0 -139
  608. package/dest/node/types/fields.d.ts +0 -43
  609. package/dest/node/types/fields.d.ts.map +0 -1
  610. package/dest/node/types/fields.js +0 -102
  611. package/dest/node/types/fixed_size_buffer.d.ts +0 -26
  612. package/dest/node/types/fixed_size_buffer.d.ts.map +0 -1
  613. package/dest/node/types/fixed_size_buffer.js +0 -51
  614. package/dest/node/types/index.d.ts +0 -6
  615. package/dest/node/types/index.d.ts.map +0 -1
  616. package/dest/node/types/index.js +0 -6
  617. package/dest/node/types/point.d.ts +0 -16
  618. package/dest/node/types/point.d.ts.map +0 -1
  619. package/dest/node/types/point.js +0 -31
  620. package/dest/node/types/ptr.d.ts +0 -13
  621. package/dest/node/types/ptr.d.ts.map +0 -1
  622. package/dest/node/types/ptr.js +0 -19
  623. package/dest/node/types/raw_buffer.d.ts +0 -3
  624. package/dest/node/types/raw_buffer.d.ts.map +0 -1
  625. package/dest/node/types/raw_buffer.js +0 -5
  626. package/dest/node-cjs/barretenberg/common.test.d.ts +0 -2
  627. package/dest/node-cjs/barretenberg/common.test.d.ts.map +0 -1
  628. package/dest/node-cjs/barretenberg/common.test.js +0 -22
  629. package/dest/node-cjs/barretenberg_api/index.d.ts +0 -109
  630. package/dest/node-cjs/barretenberg_api/index.d.ts.map +0 -1
  631. package/dest/node-cjs/barretenberg_api/index.js +0 -704
  632. package/dest/node-cjs/bigint-array/index.d.ts +0 -17
  633. package/dest/node-cjs/bigint-array/index.d.ts.map +0 -1
  634. package/dest/node-cjs/bigint-array/index.js +0 -43
  635. package/dest/node-cjs/bindgen/function_declaration.d.ts +0 -11
  636. package/dest/node-cjs/bindgen/function_declaration.d.ts.map +0 -1
  637. package/dest/node-cjs/bindgen/function_declaration.js +0 -3
  638. package/dest/node-cjs/bindgen/index.d.ts +0 -2
  639. package/dest/node-cjs/bindgen/index.js +0 -17
  640. package/dest/node-cjs/bindgen/mappings.d.ts +0 -4
  641. package/dest/node-cjs/bindgen/mappings.d.ts.map +0 -1
  642. package/dest/node-cjs/bindgen/mappings.js +0 -69
  643. package/dest/node-cjs/bindgen/rust.d.ts +0 -2
  644. package/dest/node-cjs/bindgen/rust.d.ts.map +0 -1
  645. package/dest/node-cjs/bindgen/rust.js +0 -47
  646. package/dest/node-cjs/bindgen/to_camel_case.d.ts +0 -2
  647. package/dest/node-cjs/bindgen/to_camel_case.d.ts.map +0 -1
  648. package/dest/node-cjs/bindgen/to_camel_case.js +0 -14
  649. package/dest/node-cjs/bindgen/typescript.d.ts +0 -2
  650. package/dest/node-cjs/bindgen/typescript.d.ts.map +0 -1
  651. package/dest/node-cjs/bindgen/typescript.js +0 -104
  652. package/dest/node-cjs/cbind/generated/native.d.ts +0 -31
  653. package/dest/node-cjs/cbind/generated/native.d.ts.map +0 -1
  654. package/dest/node-cjs/cbind/generated/native.js +0 -238
  655. package/dest/node-cjs/log/browser/index.d.ts +0 -6
  656. package/dest/node-cjs/log/browser/index.d.ts.map +0 -1
  657. package/dest/node-cjs/log/browser/index.js +0 -30
  658. package/dest/node-cjs/log/index.d.ts +0 -2
  659. package/dest/node-cjs/log/index.d.ts.map +0 -1
  660. package/dest/node-cjs/log/index.js +0 -8
  661. package/dest/node-cjs/log/node/index.d.ts +0 -6
  662. package/dest/node-cjs/log/node/index.d.ts.map +0 -1
  663. package/dest/node-cjs/log/node/index.js +0 -42
  664. package/dest/node-cjs/log/types.d.ts +0 -6
  665. package/dest/node-cjs/log/types.d.ts.map +0 -1
  666. package/dest/node-cjs/log/types.js +0 -3
  667. package/dest/node-cjs/main.d.ts +0 -13
  668. package/dest/node-cjs/main.d.ts.map +0 -1
  669. package/dest/node-cjs/main.js +0 -470
  670. package/dest/node-cjs/serialize/buffer_reader.d.ts +0 -28
  671. package/dest/node-cjs/serialize/buffer_reader.d.ts.map +0 -1
  672. package/dest/node-cjs/serialize/buffer_reader.js +0 -70
  673. package/dest/node-cjs/serialize/index.d.ts +0 -4
  674. package/dest/node-cjs/serialize/index.d.ts.map +0 -1
  675. package/dest/node-cjs/serialize/index.js +0 -7
  676. package/dest/node-cjs/serialize/output_type.d.ts +0 -11
  677. package/dest/node-cjs/serialize/output_type.d.ts.map +0 -1
  678. package/dest/node-cjs/serialize/output_type.js +0 -51
  679. package/dest/node-cjs/serialize/serialize.d.ts +0 -53
  680. package/dest/node-cjs/serialize/serialize.d.ts.map +0 -1
  681. package/dest/node-cjs/serialize/serialize.js +0 -160
  682. package/dest/node-cjs/types/fields.d.ts +0 -43
  683. package/dest/node-cjs/types/fields.d.ts.map +0 -1
  684. package/dest/node-cjs/types/fields.js +0 -107
  685. package/dest/node-cjs/types/fixed_size_buffer.d.ts +0 -26
  686. package/dest/node-cjs/types/fixed_size_buffer.d.ts.map +0 -1
  687. package/dest/node-cjs/types/fixed_size_buffer.js +0 -57
  688. package/dest/node-cjs/types/index.d.ts +0 -6
  689. package/dest/node-cjs/types/index.d.ts.map +0 -1
  690. package/dest/node-cjs/types/index.js +0 -9
  691. package/dest/node-cjs/types/point.d.ts +0 -16
  692. package/dest/node-cjs/types/point.d.ts.map +0 -1
  693. package/dest/node-cjs/types/point.js +0 -35
  694. package/dest/node-cjs/types/ptr.d.ts +0 -13
  695. package/dest/node-cjs/types/ptr.d.ts.map +0 -1
  696. package/dest/node-cjs/types/ptr.js +0 -23
  697. package/dest/node-cjs/types/raw_buffer.d.ts +0 -3
  698. package/dest/node-cjs/types/raw_buffer.d.ts.map +0 -1
  699. package/dest/node-cjs/types/raw_buffer.js +0 -9
  700. package/src/barretenberg/common.test.ts +0 -23
  701. package/src/barretenberg_api/index.ts +0 -1216
  702. package/src/bindgen/function_declaration.ts +0 -11
  703. package/src/bindgen/index.ts +0 -17
  704. package/src/bindgen/mappings.ts +0 -67
  705. package/src/bindgen/rust.ts +0 -52
  706. package/src/bindgen/to_camel_case.ts +0 -10
  707. package/src/bindgen/typescript.ts +0 -116
  708. package/src/log/browser/index.ts +0 -35
  709. package/src/log/index.ts +0 -1
  710. package/src/log/node/index.ts +0 -52
  711. package/src/log/types.ts +0 -6
  712. package/src/main.ts +0 -534
  713. package/src/serialize/buffer_reader.ts +0 -85
  714. package/src/serialize/index.ts +0 -3
  715. package/src/serialize/output_type.ts +0 -53
  716. package/src/serialize/serialize.ts +0 -157
  717. package/src/types/fields.ts +0 -126
  718. package/src/types/fixed_size_buffer.ts +0 -59
  719. package/src/types/index.ts +0 -5
  720. package/src/types/point.ts +0 -38
  721. package/src/types/ptr.ts +0 -20
  722. package/src/types/raw_buffer.ts +0 -3
  723. /package/src/{bigint-array/index.ts → barretenberg/testing/bigint-buffer.ts} +0 -0
package/src/main.ts DELETED
@@ -1,534 +0,0 @@
1
- #!/usr/bin/env node
2
- import 'source-map-support/register.js';
3
- import { Crs, Barretenberg, RawBuffer } from './index.js';
4
- import { createDebugLogger, initLogger } from './log/index.js';
5
- import { readFileSync, writeFileSync } from 'fs';
6
- import { gunzipSync } from 'zlib';
7
- import { Command } from 'commander';
8
- import { UltraHonkBackendOptions } from './barretenberg/backend.js';
9
-
10
- let debug: (msg: string) => void;
11
-
12
- const threads = +process.env.HARDWARE_CONCURRENCY! || undefined;
13
-
14
- function getBytecode(bytecodePath: string): Uint8Array {
15
- const extension = bytecodePath.substring(bytecodePath.lastIndexOf('.') + 1);
16
-
17
- if (extension == 'json') {
18
- const encodedCircuit = JSON.parse(readFileSync(bytecodePath, 'utf8'));
19
- const decompressed = gunzipSync(Buffer.from(encodedCircuit.bytecode, 'base64'));
20
- return Uint8Array.from(decompressed);
21
- }
22
-
23
- const encodedCircuit = readFileSync(bytecodePath);
24
- const decompressed = gunzipSync(encodedCircuit);
25
- return Uint8Array.from(decompressed);
26
- }
27
-
28
- // TODO(https://github.com/AztecProtocol/barretenberg/issues/1126): split this into separate Plonk and Honk functions as their gate count differs
29
- async function getGatesUltra(bytecodePath: string, recursive: boolean, honkRecursion: boolean, api: Barretenberg) {
30
- const { total } = await computeCircuitSize(bytecodePath, recursive, honkRecursion, api);
31
- return total;
32
- }
33
-
34
- function getWitness(witnessPath: string): Uint8Array {
35
- const data = readFileSync(witnessPath);
36
- const decompressed = gunzipSync(data);
37
- return Uint8Array.from(decompressed);
38
- }
39
-
40
- async function computeCircuitSize(bytecodePath: string, recursive: boolean, honkRecursion: boolean, api: Barretenberg) {
41
- debug(`Computing circuit size for ${bytecodePath}`);
42
- const bytecode = getBytecode(bytecodePath);
43
- const [total, subgroup] = await api.acirGetCircuitSizes(bytecode, recursive, honkRecursion);
44
- return { total, subgroup };
45
- }
46
-
47
- async function initUltraHonk(bytecodePath: string, crsPath: string) {
48
- const api = await Barretenberg.new({
49
- threads,
50
- });
51
-
52
- // TODO(https://github.com/AztecProtocol/barretenberg/issues/1248): Get rid of this call to avoid building the circuit twice.
53
- // TODO(https://github.com/AztecProtocol/barretenberg/issues/1126): use specific UltraHonk function
54
- // recursive here is useless for UH, as it does not affect anything
55
- const circuitSize = await getGatesUltra(bytecodePath, /*recursive=*/ false, /*honkRecursion=*/ true, api);
56
- // TODO(https://github.com/AztecProtocol/barretenberg/issues/811): remove subgroupSizeOverride hack for goblin
57
- const dyadicCircuitSize = Math.pow(2, Math.ceil(Math.log2(circuitSize)));
58
-
59
- debug(`Loading CRS for UltraHonk with circuit-size=${circuitSize} dyadic-circuit-size=${dyadicCircuitSize}`);
60
- const crs = await Crs.new(dyadicCircuitSize + 1, crsPath);
61
-
62
- // Load CRS into wasm global CRS state.
63
- // TODO: Make RawBuffer be default behavior, and have a specific Vector type for when wanting length prefixed.
64
- await api.srsInitSrs(new RawBuffer(crs.getG1Data()), crs.numPoints, new RawBuffer(crs.getG2Data()));
65
- return { api, circuitSize, dyadicCircuitSize };
66
- }
67
-
68
- async function initLite(crsPath: string) {
69
- const api = await Barretenberg.new({ threads: 1 });
70
-
71
- // Plus 1 needed! (Move +1 into Crs?)
72
- const crs = await Crs.new(1, crsPath);
73
-
74
- // Load CRS into wasm global CRS state.
75
- await api.srsInitSrs(new RawBuffer(crs.getG1Data()), crs.numPoints, new RawBuffer(crs.getG2Data()));
76
-
77
- return { api };
78
- }
79
-
80
- export async function proveAndVerifyUltraHonk(bytecodePath: string, witnessPath: string, crsPath: string) {
81
- /* eslint-disable camelcase */
82
- const { api } = await initUltraHonk(bytecodePath, crsPath);
83
- try {
84
- const bytecode = getBytecode(bytecodePath);
85
- const witness = getWitness(witnessPath);
86
-
87
- const verified = await api.acirProveAndVerifyUltraHonk(bytecode, witness);
88
- return verified;
89
- } finally {
90
- await api.destroy();
91
- }
92
- /* eslint-enable camelcase */
93
- }
94
-
95
- export async function proveAndVerifyMegaHonk(bytecodePath: string, witnessPath: string, crsPath: string) {
96
- /* eslint-disable camelcase */
97
- const { api } = await initUltraHonk(bytecodePath, crsPath);
98
- try {
99
- const bytecode = getBytecode(bytecodePath);
100
- const witness = getWitness(witnessPath);
101
-
102
- const verified = await api.acirProveAndVerifyMegaHonk(bytecode, witness);
103
- return verified;
104
- } finally {
105
- await api.destroy();
106
- }
107
- /* eslint-enable camelcase */
108
- }
109
-
110
- export async function gateCountUltra(bytecodePath: string, recursive: boolean, honkRecursion: boolean) {
111
- const api = await Barretenberg.new({ threads: 1 });
112
- try {
113
- const numberOfGates = await getGatesUltra(bytecodePath, recursive, honkRecursion, api);
114
- debug(`Number of gates: ${numberOfGates}`);
115
- // Create an 8-byte buffer and write the number into it.
116
- // Writing number directly to stdout will result in a variable sized
117
- // input depending on the size.
118
- const buffer = Buffer.alloc(8);
119
- buffer.writeBigInt64LE(BigInt(numberOfGates));
120
-
121
- process.stdout.write(Uint8Array.from(buffer));
122
- } finally {
123
- await api.destroy();
124
- }
125
- }
126
-
127
- export async function contractUltraHonk(bytecodePath: string, vkPath: string, crsPath: string, outputPath: string) {
128
- const { api } = await initUltraHonk(bytecodePath, crsPath);
129
- try {
130
- debug(`Creating UltraHonk verifier contract bytecode=${bytecodePath} vk=${vkPath}`);
131
- const bytecode = getBytecode(bytecodePath);
132
- const vk = new RawBuffer(readFileSync(vkPath));
133
- const contract = await api.acirHonkSolidityVerifier(bytecode, vk);
134
-
135
- if (outputPath === '-') {
136
- process.stdout.write(contract);
137
- debug(`Solidity verifier contract written to stdout`);
138
- } else {
139
- writeFileSync(outputPath, contract);
140
- debug(`Solidity verifier contract written to ${outputPath}`);
141
- }
142
- } finally {
143
- await api.destroy();
144
- }
145
- }
146
-
147
- export async function proveUltraHonk(
148
- bytecodePath: string,
149
- witnessPath: string,
150
- crsPath: string,
151
- vkPath: string,
152
- outputPath: string,
153
- options?: UltraHonkBackendOptions,
154
- ) {
155
- const { api } = await initUltraHonk(bytecodePath, crsPath);
156
- try {
157
- debug(`Creating UltraHonk proof bytecode=${bytecodePath}`);
158
- const bytecode = getBytecode(bytecodePath);
159
- const witness = getWitness(witnessPath);
160
-
161
- const acirProveUltraHonk = options?.keccak
162
- ? api.acirProveUltraKeccakHonk.bind(api)
163
- : options?.keccakZK
164
- ? api.acirProveUltraKeccakZkHonk.bind(api)
165
- : options?.starknet
166
- ? api.acirProveUltraStarknetHonk.bind(api)
167
- : options?.starknetZK
168
- ? api.acirProveUltraStarknetZkHonk.bind(api)
169
- : api.acirProveUltraZKHonk.bind(api);
170
- const proof = await acirProveUltraHonk(bytecode, witness, new RawBuffer(readFileSync(vkPath)));
171
-
172
- if (outputPath === '-') {
173
- process.stdout.write(proof);
174
- debug(`Proof written to stdout`);
175
- } else {
176
- writeFileSync(outputPath, proof);
177
- debug(`Proof written to ${outputPath}`);
178
- }
179
- } finally {
180
- await api.destroy();
181
- }
182
- }
183
-
184
- export async function writeVkUltraHonk(
185
- bytecodePath: string,
186
- crsPath: string,
187
- outputPath: string,
188
- options?: UltraHonkBackendOptions,
189
- ) {
190
- const { api } = await initUltraHonk(bytecodePath, crsPath);
191
- try {
192
- const bytecode = getBytecode(bytecodePath);
193
- debug(`Initializing UltraHonk verification key bytecode=${bytecodePath}`);
194
-
195
- const acirWriteVkUltraHonk = options?.keccak
196
- ? api.acirWriteVkUltraKeccakHonk.bind(api)
197
- : options?.keccakZK
198
- ? api.acirWriteVkUltraKeccakZkHonk.bind(api)
199
- : options?.starknet
200
- ? api.acirWriteVkUltraStarknetHonk.bind(api)
201
- : options?.starknetZK
202
- ? api.acirWriteVkUltraStarknetZkHonk.bind(api)
203
- : api.acirWriteVkUltraHonk.bind(api);
204
- const vk = await acirWriteVkUltraHonk(bytecode);
205
-
206
- if (outputPath === '-') {
207
- process.stdout.write(vk);
208
- debug(`Verification key written to stdout`);
209
- } else {
210
- writeFileSync(outputPath, vk);
211
- debug(`Verification key written to ${outputPath}`);
212
- }
213
- } finally {
214
- await api.destroy();
215
- }
216
- }
217
-
218
- export async function verifyUltraHonk(
219
- proofPath: string,
220
- vkPath: string,
221
- crsPath: string,
222
- options?: UltraHonkBackendOptions,
223
- ) {
224
- const { api } = await initLite(crsPath);
225
- try {
226
- const acirVerifyUltraHonk = options?.keccak
227
- ? api.acirVerifyUltraKeccakHonk.bind(api)
228
- : options?.keccakZK
229
- ? api.acirVerifyUltraKeccakZkHonk.bind(api)
230
- : options?.starknet
231
- ? api.acirVerifyUltraStarknetHonk.bind(api)
232
- : options?.starknetZK
233
- ? api.acirVerifyUltraStarknetZkHonk.bind(api)
234
- : api.acirVerifyUltraZKHonk.bind(api);
235
- const verified = await acirVerifyUltraHonk(
236
- Uint8Array.from(readFileSync(proofPath)),
237
- new RawBuffer(readFileSync(vkPath)),
238
- );
239
-
240
- debug(`Verification ${verified ? 'successful' : 'failed'}`);
241
- return verified;
242
- } finally {
243
- await api.destroy();
244
- }
245
- }
246
-
247
- export async function proofAsFieldsUltraHonk(proofPath: string, outputPath: string, crsPath: string) {
248
- const { api } = await initLite(crsPath);
249
- try {
250
- debug(`Outputting UltraHonk proof as vector of fields proof=${proofPath}`);
251
- const proofAsFields = await api.acirProofAsFieldsUltraHonk(Uint8Array.from(readFileSync(proofPath)));
252
- const jsonProofAsFields = JSON.stringify(proofAsFields.map(f => f.toString()));
253
-
254
- if (outputPath === '-') {
255
- process.stdout.write(jsonProofAsFields);
256
- debug(`Proof as fields written to stdout`);
257
- } else {
258
- writeFileSync(outputPath, jsonProofAsFields);
259
- debug(`Proof as fields written to ${outputPath}`);
260
- }
261
- } finally {
262
- await api.destroy();
263
- }
264
- }
265
-
266
- export async function vkAsFieldsUltraHonk(vkPath: string, vkeyOutputPath: string, crsPath: string) {
267
- const { api } = await initLite(crsPath);
268
-
269
- try {
270
- debug(`Serializing vk byte array into field elements vk=${vkPath}`);
271
- const vkAsFields = await api.acirVkAsFieldsUltraHonk(new RawBuffer(readFileSync(vkPath)));
272
- const jsonVKAsFields = JSON.stringify(vkAsFields.map(f => f.toString()));
273
-
274
- if (vkeyOutputPath === '-') {
275
- process.stdout.write(jsonVKAsFields);
276
- debug(`Verification key as fields written to stdout`);
277
- } else {
278
- writeFileSync(vkeyOutputPath, jsonVKAsFields);
279
- debug(`Verification key as fields written to ${vkeyOutputPath}`);
280
- }
281
- } finally {
282
- await api.destroy();
283
- }
284
- }
285
-
286
- const program = new Command('bb');
287
-
288
- program.option('-v, --verbose', 'enable verbose logging', false);
289
- program.option('-c, --crs-path <path>', 'set crs path', './crs');
290
-
291
- function handleGlobalOptions() {
292
- initLogger({ useStdErr: true, level: program.opts().verbose ? 'debug' : 'info' });
293
- debug = createDebugLogger('bb');
294
- return { crsPath: program.opts().crsPath };
295
- }
296
-
297
- const deprecatedCommandError = () => async () => {
298
- console.error(
299
- `Error: UltraPlonk is now deprecated (see https://github.com/AztecProtocol/barretenberg/issues/1377). Use UltraHonk!`,
300
- );
301
- process.exit(1);
302
- };
303
-
304
- program
305
- .command('prove_and_verify')
306
- .description('Generate a proof and verify it. Process exits with success or failure code. [DEPRECATED]')
307
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
308
- .option('-r, --recursive', 'Whether to use a SNARK friendly proof', false)
309
- .option('-w, --witness-path <path>', 'Specify the witness path', './target/witness.gz')
310
- .action(deprecatedCommandError());
311
-
312
- program
313
- .command('prove_and_verify_ultra_honk')
314
- .description('Generate an UltraHonk proof and verify it. Process exits with success or failure code.')
315
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
316
- .option('-w, --witness-path <path>', 'Specify the witness path', './target/witness.gz')
317
- .action(async ({ bytecodePath, witnessPath }) => {
318
- const { crsPath } = handleGlobalOptions();
319
- const result = await proveAndVerifyUltraHonk(bytecodePath, witnessPath, crsPath);
320
- process.exit(result ? 0 : 1);
321
- });
322
-
323
- program
324
- .command('prove_and_verify_mega_honk')
325
- .description('Generate a MegaHonk proof and verify it. Process exits with success or failure code.')
326
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
327
- .option('-w, --witness-path <path>', 'Specify the witness path', './target/witness.gz')
328
- .action(async ({ bytecodePath, witnessPath }) => {
329
- const { crsPath } = handleGlobalOptions();
330
- const result = await proveAndVerifyMegaHonk(bytecodePath, witnessPath, crsPath);
331
- process.exit(result ? 0 : 1);
332
- });
333
-
334
- program
335
- .command('prove')
336
- .description('Generate a proof and write it to a file. [DEPRECATED]')
337
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
338
- .option('-r, --recursive', 'Create a SNARK friendly proof', false)
339
- .option('-w, --witness-path <path>', 'Specify the witness path', './target/witness.gz')
340
- .option('-o, --output-path <path>', 'Specify the proof output path', './proofs/proof')
341
- .action(deprecatedCommandError());
342
-
343
- program
344
- .command('gates')
345
- .description('Print Ultra Builder gate count to standard output.')
346
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
347
- .option('-r, --recursive', 'Create a SNARK friendly proof', false)
348
- .option('-hr, --honk-recursion', 'Specify whether to use UltraHonk recursion', false)
349
- .action(async ({ bytecodePath, recursive, honkRecursion: honkRecursion }) => {
350
- handleGlobalOptions();
351
- await gateCountUltra(bytecodePath, recursive, honkRecursion);
352
- });
353
-
354
- program
355
- .command('verify')
356
- .description('Verify a proof. Process exists with success or failure code. [DEPRECATED]')
357
- .requiredOption('-p, --proof-path <path>', 'Specify the path to the proof')
358
- .requiredOption('-k, --vk <path>', 'path to a verification key. avoids recomputation.')
359
- .action(deprecatedCommandError());
360
-
361
- program
362
- .command('contract')
363
- .description('Output solidity verification key contract. [DEPRECATED]')
364
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
365
- .option('-o, --output-path <path>', 'Specify the path to write the contract', './target/contract.sol')
366
- .requiredOption('-k, --vk-path <path>', 'Path to a verification key. avoids recomputation.')
367
- .action(deprecatedCommandError());
368
-
369
- program
370
- .command('contract_ultra_honk')
371
- .description('Output solidity verification key contract.')
372
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
373
- .option('-o, --output-path <path>', 'Specify the path to write the contract', './target/contract.sol')
374
- .requiredOption('-k, --vk-path <path>', 'Path to a verification key.')
375
- .action(async ({ bytecodePath, outputPath, vkPath }) => {
376
- const { crsPath } = handleGlobalOptions();
377
- await contractUltraHonk(bytecodePath, vkPath, crsPath, outputPath);
378
- });
379
-
380
- program
381
- .command('write_vk')
382
- .description('Output verification key. [DEPRECATED]')
383
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
384
- .option('-r, --recursive', 'Create a SNARK friendly proof', false)
385
- .option('-o, --output-path <path>', 'Specify the path to write the key')
386
- .action(deprecatedCommandError());
387
-
388
- program
389
- .command('write_pk')
390
- .description('Output proving key. [DEPRECATED]')
391
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
392
- .option('-r, --recursive', 'Create a SNARK friendly proof', false)
393
- .requiredOption('-o, --output-path <path>', 'Specify the path to write the key')
394
- .action(deprecatedCommandError());
395
-
396
- program
397
- .command('proof_as_fields')
398
- .description('Return the proof as fields elements. [DEPRECATED]')
399
- .requiredOption('-p, --proof-path <path>', 'Specify the proof path')
400
- .requiredOption('-k, --vk-path <path>', 'Path to verification key.')
401
- .requiredOption('-o, --output-path <path>', 'Specify the JSON path to write the proof fields')
402
- .action(deprecatedCommandError());
403
-
404
- program
405
- .command('vk_as_fields')
406
- .description(
407
- 'Return the verification key represented as fields elements. Also return the verification key hash. [DEPRECATED]',
408
- )
409
- .requiredOption('-k, --vk-path <path>', 'Path to verification key.')
410
- .requiredOption('-o, --output-path <path>', 'Specify the JSON path to write the verification key fields and key hash')
411
- .action(deprecatedCommandError());
412
-
413
- program
414
- .command('prove_ultra_honk')
415
- .description('Generate a proof and write it to a file.')
416
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
417
- .option('-w, --witness-path <path>', 'Specify the witness path', './target/witness.gz')
418
- .option('-k, --vk-path <path>', 'path to a verification key. avoids recomputation.')
419
- .option('-o, --output-path <path>', 'Specify the proof output path', './proofs/proof')
420
- .action(async ({ bytecodePath, witnessPath, vkPath, outputPath }) => {
421
- const { crsPath } = handleGlobalOptions();
422
- debug(`Creating UltraHonk proof bytecodePath=${bytecodePath}, witnessPath=${witnessPath}, vkPath=${vkPath}`);
423
- await proveUltraHonk(bytecodePath, witnessPath, crsPath, vkPath, outputPath);
424
- });
425
-
426
- program
427
- .command('prove_ultra_keccak_honk')
428
- .description('Generate a proof and write it to a file.')
429
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
430
- .option('-w, --witness-path <path>', 'Specify the witness path', './target/witness.gz')
431
- .option('-k, --vk-path <path>', 'path to a verification key. avoids recomputation.')
432
- .option('-o, --output-path <path>', 'Specify the proof output path', './proofs/proof')
433
- .action(async ({ bytecodePath, witnessPath, vkPath, outputPath }) => {
434
- const { crsPath } = handleGlobalOptions();
435
- await proveUltraHonk(bytecodePath, witnessPath, crsPath, vkPath, outputPath, { keccak: true });
436
- });
437
-
438
- program
439
- .command('prove_ultra_starknet_honk')
440
- .description('Generate a proof and write it to a file.')
441
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
442
- .option('-w, --witness-path <path>', 'Specify the witness path', './target/witness.gz')
443
- .option('-k, --vk-path <path>', 'path to a verification key. avoids recomputation.')
444
- .option('-o, --output-path <path>', 'Specify the proof output path', './proofs/proof')
445
- .action(async ({ bytecodePath, witnessPath, vkPath, outputPath }) => {
446
- const { crsPath } = handleGlobalOptions();
447
- await proveUltraHonk(bytecodePath, witnessPath, crsPath, vkPath, outputPath, { starknet: true });
448
- });
449
-
450
- program
451
- .command('write_vk_ultra_honk')
452
- .description('Output verification key.')
453
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
454
- .requiredOption('-o, --output-path <path>', 'Specify the path to write the key')
455
- .action(async ({ bytecodePath, outputPath }) => {
456
- const { crsPath } = handleGlobalOptions();
457
- debug(`Writing verification key to ${outputPath}`);
458
- await writeVkUltraHonk(bytecodePath, crsPath, outputPath);
459
- });
460
-
461
- program
462
- .command('write_vk_ultra_keccak_honk')
463
- .description('Output verification key.')
464
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
465
- .requiredOption('-o, --output-path <path>', 'Specify the path to write the key')
466
- .action(async ({ bytecodePath, outputPath }) => {
467
- const { crsPath } = handleGlobalOptions();
468
- await writeVkUltraHonk(bytecodePath, crsPath, outputPath, { keccak: true });
469
- });
470
-
471
- program
472
- .command('write_vk_ultra_starknet_honk')
473
- .description('Output verification key.')
474
- .option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
475
- .requiredOption('-o, --output-path <path>', 'Specify the path to write the key')
476
- .action(async ({ bytecodePath, outputPath }) => {
477
- const { crsPath } = handleGlobalOptions();
478
- await writeVkUltraHonk(bytecodePath, crsPath, outputPath, { starknet: true });
479
- });
480
-
481
- program
482
- .command('verify_ultra_honk')
483
- .description('Verify a proof. Process exists with success or failure code.')
484
- .requiredOption('-p, --proof-path <path>', 'Specify the path to the proof')
485
- .requiredOption('-k, --vk-path <path>', 'path to a verification key. avoids recomputation.')
486
- .action(async ({ proofPath, vkPath }) => {
487
- const { crsPath } = handleGlobalOptions();
488
- const result = await verifyUltraHonk(proofPath, vkPath, crsPath);
489
- process.exit(result ? 0 : 1);
490
- });
491
-
492
- program
493
- .command('verify_ultra_keccak_honk')
494
- .description('Verify a proof. Process exists with success or failure code.')
495
- .requiredOption('-p, --proof-path <path>', 'Specify the path to the proof')
496
- .requiredOption('-k, --vk-path <path>', 'path to a verification key. avoids recomputation.')
497
- .action(async ({ proofPath, vkPath }) => {
498
- const { crsPath } = handleGlobalOptions();
499
- const result = await verifyUltraHonk(proofPath, vkPath, crsPath, { keccak: true });
500
- process.exit(result ? 0 : 1);
501
- });
502
-
503
- program
504
- .command('verify_ultra_starknet_honk')
505
- .description('Verify a proof. Process exists with success or failure code.')
506
- .requiredOption('-p, --proof-path <path>', 'Specify the path to the proof')
507
- .requiredOption('-k, --vk <path>', 'path to a verification key. avoids recomputation.')
508
- .action(async ({ proofPath, vk }) => {
509
- const { crsPath } = handleGlobalOptions();
510
- const result = await verifyUltraHonk(proofPath, vk, crsPath, { starknet: true });
511
- process.exit(result ? 0 : 1);
512
- });
513
-
514
- program
515
- .command('proof_as_fields_honk')
516
- .description('Return the proof as fields elements')
517
- .requiredOption('-p, --proof-path <path>', 'Specify the proof path')
518
- .requiredOption('-o, --output-path <path>', 'Specify the JSON path to write the proof fields')
519
- .action(async ({ proofPath, outputPath }) => {
520
- const { crsPath } = handleGlobalOptions();
521
- await proofAsFieldsUltraHonk(proofPath, outputPath, crsPath);
522
- });
523
-
524
- program
525
- .command('vk_as_fields_ultra_honk')
526
- .description('Return the verification key represented as fields elements.')
527
- .requiredOption('-k, --vk-path <path>', 'Path to verification key.')
528
- .requiredOption('-o, --output-path <path>', 'Specify the JSON path to write the verification key fields.')
529
- .action(async ({ vkPath, outputPath }) => {
530
- const { crsPath } = handleGlobalOptions();
531
- await vkAsFieldsUltraHonk(vkPath, outputPath, crsPath);
532
- });
533
-
534
- program.name('bb.js').parse(process.argv);
@@ -1,85 +0,0 @@
1
- export class BufferReader {
2
- private index: number;
3
- constructor(
4
- private buffer: Uint8Array,
5
- offset = 0,
6
- ) {
7
- this.index = offset;
8
- }
9
-
10
- public static asReader(bufferOrReader: Uint8Array | BufferReader) {
11
- return bufferOrReader instanceof BufferReader ? bufferOrReader : new BufferReader(bufferOrReader);
12
- }
13
-
14
- public readNumber(): number {
15
- const dataView = new DataView(this.buffer.buffer, this.buffer.byteOffset + this.index, 4);
16
- this.index += 4;
17
- return dataView.getUint32(0, false);
18
- }
19
-
20
- public readBoolean(): boolean {
21
- this.index += 1;
22
- return Boolean(this.buffer.at(this.index - 1));
23
- }
24
-
25
- public readBytes(n: number): Uint8Array {
26
- this.index += n;
27
- return this.buffer.slice(this.index - n, this.index);
28
- }
29
-
30
- public readNumberVector(): number[] {
31
- return this.readVector({
32
- fromBuffer: (reader: BufferReader) => reader.readNumber(),
33
- });
34
- }
35
-
36
- public readVector<T>(itemDeserializer: { fromBuffer: (reader: BufferReader) => T }): T[] {
37
- const size = this.readNumber();
38
- const result = new Array<T>(size);
39
- for (let i = 0; i < size; i++) {
40
- result[i] = itemDeserializer.fromBuffer(this);
41
- }
42
- return result;
43
- }
44
-
45
- public readArray<T>(
46
- size: number,
47
- itemDeserializer: {
48
- fromBuffer: (reader: BufferReader) => T;
49
- },
50
- ): T[] {
51
- const result = new Array<T>(size);
52
- for (let i = 0; i < size; i++) {
53
- result[i] = itemDeserializer.fromBuffer(this);
54
- }
55
- return result;
56
- }
57
-
58
- public readObject<T>(deserializer: { fromBuffer: (reader: BufferReader) => T }): T {
59
- return deserializer.fromBuffer(this);
60
- }
61
-
62
- public peekBytes(n?: number) {
63
- return this.buffer.subarray(this.index, n ? this.index + n : undefined);
64
- }
65
-
66
- public readString(): string {
67
- return new TextDecoder().decode(this.readBuffer());
68
- }
69
-
70
- public readBuffer(): Uint8Array {
71
- const size = this.readNumber();
72
- return this.readBytes(size);
73
- }
74
-
75
- public readMap<T>(deserializer: { fromBuffer: (reader: BufferReader) => T }): { [key: string]: T } {
76
- const numEntries = this.readNumber();
77
- const map: { [key: string]: T } = {};
78
- for (let i = 0; i < numEntries; i++) {
79
- const key = this.readString();
80
- const value = this.readObject<T>(deserializer);
81
- map[key] = value;
82
- }
83
- return map;
84
- }
85
- }
@@ -1,3 +0,0 @@
1
- export * from './buffer_reader.js';
2
- export * from './output_type.js';
3
- export * from './serialize.js';
@@ -1,53 +0,0 @@
1
- import { BufferReader } from './buffer_reader.js';
2
-
3
- export interface OutputType<T = any> {
4
- SIZE_IN_BYTES?: number;
5
- fromBuffer: (b: Uint8Array | BufferReader) => T;
6
- }
7
-
8
- export function BoolDeserializer(): OutputType {
9
- return {
10
- SIZE_IN_BYTES: 1,
11
- fromBuffer: (buf: Uint8Array | BufferReader) => {
12
- const reader = BufferReader.asReader(buf);
13
- return reader.readBoolean();
14
- },
15
- };
16
- }
17
-
18
- export function NumberDeserializer(): OutputType {
19
- return {
20
- SIZE_IN_BYTES: 4,
21
- fromBuffer: (buf: Uint8Array | BufferReader) => {
22
- const reader = BufferReader.asReader(buf);
23
- return reader.readNumber();
24
- },
25
- };
26
- }
27
-
28
- export function VectorDeserializer<T>(t: OutputType<T>): OutputType {
29
- return {
30
- fromBuffer: (buf: Uint8Array | BufferReader) => {
31
- const reader = BufferReader.asReader(buf);
32
- return reader.readVector(t);
33
- },
34
- };
35
- }
36
-
37
- export function BufferDeserializer(): OutputType {
38
- return {
39
- fromBuffer: (buf: Uint8Array | BufferReader) => {
40
- const reader = BufferReader.asReader(buf);
41
- return reader.readBuffer();
42
- },
43
- };
44
- }
45
-
46
- export function StringDeserializer(): OutputType {
47
- return {
48
- fromBuffer: (buf: Uint8Array | BufferReader) => {
49
- const reader = BufferReader.asReader(buf);
50
- return reader.readString();
51
- },
52
- };
53
- }