@aztec/bb.js 0.5.0 → 0.5.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 (343) hide show
  1. package/README.md +29 -24
  2. package/dest/browser/barretenberg/index.d.ts +20 -0
  3. package/dest/browser/barretenberg/index.d.ts.map +1 -0
  4. package/dest/browser/barretenberg_api/index.d.ts +1 -51
  5. package/dest/browser/barretenberg_api/index.d.ts.map +1 -1
  6. package/dest/browser/barretenberg_binder/heap_allocator.d.ts +1 -1
  7. package/dest/browser/barretenberg_binder/heap_allocator.d.ts.map +1 -1
  8. package/dest/browser/barretenberg_binder/index.d.ts +1 -7
  9. package/dest/browser/barretenberg_binder/index.d.ts.map +1 -1
  10. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +40 -0
  11. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -0
  12. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +2 -0
  13. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -0
  14. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +3 -0
  15. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -0
  16. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +4 -0
  17. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -0
  18. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +37 -0
  19. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -0
  20. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +4 -0
  21. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -0
  22. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +28 -0
  23. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -0
  24. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +2 -0
  25. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts.map +1 -0
  26. package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts +3 -0
  27. package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -0
  28. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +6 -0
  29. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -0
  30. package/dest/browser/barretenberg_wasm/helpers/index.d.ts +2 -0
  31. package/dest/browser/barretenberg_wasm/helpers/index.d.ts.map +1 -0
  32. package/dest/{node/barretenberg_wasm → browser/barretenberg_wasm/helpers}/node/index.d.ts +7 -5
  33. package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts.map +1 -0
  34. package/dest/browser/barretenberg_wasm/{node → helpers/node}/node_endpoint.d.ts +2 -2
  35. package/dest/browser/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -0
  36. package/dest/browser/barretenberg_wasm/index.d.ts +13 -1
  37. package/dest/browser/barretenberg_wasm/index.d.ts.map +1 -1
  38. package/dest/browser/crs/browser/cached_net_crs.d.ts +1 -1
  39. package/dest/browser/crs/browser/cached_net_crs.d.ts.map +1 -1
  40. package/dest/browser/crs/index.d.ts +1 -1
  41. package/dest/browser/crs/index.d.ts.map +1 -1
  42. package/dest/browser/index.d.ts +2 -4
  43. package/dest/browser/index.d.ts.map +1 -1
  44. package/dest/browser/index.js +2 -6
  45. package/dest/browser/index.js.LICENSE.txt +14 -0
  46. package/dest/browser/index.worker.js.LICENSE.txt +5 -0
  47. package/dest/browser/index.worker.worker.js.LICENSE.txt +5 -0
  48. package/dest/browser/random/index.d.ts +1 -1
  49. package/dest/browser/random/index.d.ts.map +1 -1
  50. package/dest/browser/types/index.d.ts +1 -1
  51. package/dest/browser/types/index.d.ts.map +1 -1
  52. package/dest/{node/types/node → browser/types}/point.d.ts +2 -2
  53. package/dest/browser/types/point.d.ts.map +1 -0
  54. package/dest/node/barretenberg/index.d.ts +20 -0
  55. package/dest/node/barretenberg/index.d.ts.map +1 -0
  56. package/dest/node/barretenberg/index.js +38 -0
  57. package/dest/node/barretenberg-threads.wasm +0 -0
  58. package/dest/node/barretenberg_api/blake2s.test.js +7 -7
  59. package/dest/node/barretenberg_api/common.test.js +3 -3
  60. package/dest/node/barretenberg_api/index.d.ts +1 -51
  61. package/dest/node/barretenberg_api/index.d.ts.map +1 -1
  62. package/dest/node/barretenberg_api/index.js +1 -189
  63. package/dest/node/barretenberg_api/pedersen.test.js +29 -29
  64. package/dest/node/barretenberg_api/schnorr.test.js +37 -36
  65. package/dest/node/barretenberg_binder/heap_allocator.d.ts +1 -1
  66. package/dest/node/barretenberg_binder/heap_allocator.d.ts.map +1 -1
  67. package/dest/node/barretenberg_binder/index.d.ts +1 -7
  68. package/dest/node/barretenberg_binder/index.d.ts.map +1 -1
  69. package/dest/node/barretenberg_binder/index.js +10 -30
  70. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +40 -0
  71. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -0
  72. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +123 -0
  73. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +2 -0
  74. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -0
  75. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +10 -0
  76. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +3 -0
  77. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -0
  78. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +12 -0
  79. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +4 -0
  80. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -0
  81. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +8 -0
  82. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +2 -0
  83. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts.map +1 -0
  84. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +9 -0
  85. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +37 -0
  86. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -0
  87. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +83 -0
  88. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +2 -0
  89. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -0
  90. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +10 -0
  91. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +3 -0
  92. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -0
  93. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +12 -0
  94. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +4 -0
  95. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -0
  96. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +8 -0
  97. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +2 -0
  98. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts.map +1 -0
  99. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +9 -0
  100. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +28 -0
  101. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -0
  102. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.js +40 -0
  103. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +2 -0
  104. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -0
  105. package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +9 -0
  106. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts +2 -0
  107. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts.map +1 -0
  108. package/dest/node/barretenberg_wasm/fetch_code/index.js +2 -0
  109. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +3 -0
  110. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -0
  111. package/dest/node/barretenberg_wasm/fetch_code/node/index.js +9 -0
  112. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +6 -0
  113. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -0
  114. package/dest/node/barretenberg_wasm/helpers/browser/index.js +18 -0
  115. package/dest/node/barretenberg_wasm/helpers/index.d.ts +2 -0
  116. package/dest/node/barretenberg_wasm/helpers/index.d.ts.map +1 -0
  117. package/dest/node/barretenberg_wasm/helpers/index.js +2 -0
  118. package/dest/{browser/barretenberg_wasm → node/barretenberg_wasm/helpers}/node/index.d.ts +7 -5
  119. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -0
  120. package/dest/node/barretenberg_wasm/helpers/node/index.js +36 -0
  121. package/dest/node/barretenberg_wasm/{node → helpers/node}/node_endpoint.d.ts +2 -2
  122. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -0
  123. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.js +28 -0
  124. package/dest/node/barretenberg_wasm/index.d.ts +13 -1
  125. package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
  126. package/dest/node/barretenberg_wasm/index.js +19 -2
  127. package/dest/node/barretenberg_wasm/index.test.d.ts +2 -0
  128. package/dest/node/barretenberg_wasm/index.test.d.ts.map +1 -0
  129. package/dest/node/barretenberg_wasm/index.test.js +38 -0
  130. package/dest/node/bindgen/typescript.d.ts.map +1 -1
  131. package/dest/node/bindgen/typescript.js +2 -35
  132. package/dest/node/crs/browser/cached_net_crs.d.ts +1 -1
  133. package/dest/node/crs/browser/cached_net_crs.d.ts.map +1 -1
  134. package/dest/node/crs/browser/cached_net_crs.js +2 -4
  135. package/dest/node/crs/index.d.ts.map +1 -1
  136. package/dest/node/crs/index.js +1 -1
  137. package/dest/node/examples/simple.rawtest.d.ts +2 -0
  138. package/dest/node/examples/simple.rawtest.d.ts.map +1 -0
  139. package/dest/node/examples/simple.rawtest.js +29 -0
  140. package/dest/node/examples/simple.test.js +5 -5
  141. package/dest/node/index.d.ts +2 -4
  142. package/dest/node/index.d.ts.map +1 -1
  143. package/dest/node/index.js +3 -5
  144. package/dest/node/info.json +22 -0
  145. package/dest/node/main.d.ts +2 -1
  146. package/dest/node/main.d.ts.map +1 -1
  147. package/dest/node/main.js +46 -26
  148. package/dest/node/random/index.d.ts.map +1 -1
  149. package/dest/node/random/index.js +1 -1
  150. package/dest/node/types/fields.js +5 -3
  151. package/dest/node/types/fixed_size_buffer.js +7 -4
  152. package/dest/node/types/index.d.ts +1 -1
  153. package/dest/node/types/index.d.ts.map +1 -1
  154. package/dest/node/types/index.js +2 -2
  155. package/dest/{browser/types/node → node/types}/point.d.ts +2 -2
  156. package/dest/node/types/point.d.ts.map +1 -0
  157. package/dest/node/types/point.js +32 -0
  158. package/dest/node/types/ptr.js +3 -2
  159. package/package.json +35 -27
  160. package/src/barretenberg/index.ts +42 -0
  161. package/src/barretenberg_api/blake2s.test.ts +7 -8
  162. package/src/barretenberg_api/common.test.ts +3 -3
  163. package/src/barretenberg_api/index.ts +1 -306
  164. package/src/barretenberg_api/pedersen.test.ts +31 -30
  165. package/src/barretenberg_api/schnorr.test.ts +73 -59
  166. package/src/barretenberg_binder/heap_allocator.ts +1 -1
  167. package/src/barretenberg_binder/index.ts +12 -29
  168. package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +136 -0
  169. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +10 -0
  170. package/src/barretenberg_wasm/{browser/worker.ts → barretenberg_wasm_main/factory/browser/main.worker.ts} +4 -2
  171. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +8 -0
  172. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.ts +10 -0
  173. package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +105 -0
  174. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +10 -0
  175. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +15 -0
  176. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +8 -0
  177. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.ts +10 -0
  178. package/src/barretenberg_wasm/barretenberg_wasm_thread/index.ts +47 -0
  179. package/src/barretenberg_wasm/fetch_code/browser/index.ts +9 -0
  180. package/src/barretenberg_wasm/fetch_code/browser/wasm-module.d.ts +4 -0
  181. package/src/barretenberg_wasm/fetch_code/index.ts +1 -0
  182. package/src/barretenberg_wasm/fetch_code/node/index.ts +9 -0
  183. package/src/barretenberg_wasm/helpers/browser/index.ts +22 -0
  184. package/src/barretenberg_wasm/helpers/index.ts +1 -0
  185. package/src/barretenberg_wasm/{node → helpers/node}/index.ts +9 -14
  186. package/src/barretenberg_wasm/{barretenberg_wasm.test.ts → index.test.ts} +15 -27
  187. package/src/barretenberg_wasm/index.ts +22 -1
  188. package/src/bindgen/typescript.ts +1 -38
  189. package/src/crs/browser/cached_net_crs.ts +1 -3
  190. package/src/crs/index.ts +1 -1
  191. package/src/examples/simple.rawtest.ts +37 -0
  192. package/src/examples/simple.test.ts +5 -5
  193. package/src/index.ts +2 -4
  194. package/src/info.json +22 -0
  195. package/src/main.ts +48 -28
  196. package/src/random/index.ts +1 -1
  197. package/src/types/index.ts +1 -1
  198. package/src/types/{node/point.ts → point.ts} +2 -2
  199. package/dest/barretenberg-threads.wasm +0 -0
  200. package/dest/barretenberg.wasm +0 -0
  201. package/dest/browser/539.js +0 -2014
  202. package/dest/browser/995.js +0 -578
  203. package/dest/browser/async_map/index.js +0 -16
  204. package/dest/browser/barretenberg_api/blake2s.test.d.ts +0 -2
  205. package/dest/browser/barretenberg_api/blake2s.test.d.ts.map +0 -1
  206. package/dest/browser/barretenberg_api/blake2s.test.js +0 -30
  207. package/dest/browser/barretenberg_api/common.test.d.ts +0 -2
  208. package/dest/browser/barretenberg_api/common.test.d.ts.map +0 -1
  209. package/dest/browser/barretenberg_api/common.test.js +0 -18
  210. package/dest/browser/barretenberg_api/index.js +0 -379
  211. package/dest/browser/barretenberg_api/pedersen.test.d.ts +0 -2
  212. package/dest/browser/barretenberg_api/pedersen.test.d.ts.map +0 -1
  213. package/dest/browser/barretenberg_api/pedersen.test.js +0 -69
  214. package/dest/browser/barretenberg_api/schnorr.test.d.ts +0 -2
  215. package/dest/browser/barretenberg_api/schnorr.test.d.ts.map +0 -1
  216. package/dest/browser/barretenberg_api/schnorr.test.js +0 -113
  217. package/dest/browser/barretenberg_binder/heap_allocator.js +0 -59
  218. package/dest/browser/barretenberg_binder/heap_allocator_sync.d.ts +0 -22
  219. package/dest/browser/barretenberg_binder/heap_allocator_sync.d.ts.map +0 -1
  220. package/dest/browser/barretenberg_binder/heap_allocator_sync.js +0 -58
  221. package/dest/browser/barretenberg_binder/index.js +0 -73
  222. package/dest/browser/barretenberg_wasm/barretenberg_wasm.d.ts +0 -48
  223. package/dest/browser/barretenberg_wasm/barretenberg_wasm.d.ts.map +0 -1
  224. package/dest/browser/barretenberg_wasm/barretenberg_wasm.js +0 -208
  225. package/dest/browser/barretenberg_wasm/barretenberg_wasm.test.d.ts +0 -2
  226. package/dest/browser/barretenberg_wasm/barretenberg_wasm.test.d.ts.map +0 -1
  227. package/dest/browser/barretenberg_wasm/barretenberg_wasm.test.js +0 -47
  228. package/dest/browser/barretenberg_wasm/browser/index.d.ts +0 -8
  229. package/dest/browser/barretenberg_wasm/browser/index.d.ts.map +0 -1
  230. package/dest/browser/barretenberg_wasm/browser/index.js +0 -29
  231. package/dest/browser/barretenberg_wasm/browser/worker.d.ts +0 -2
  232. package/dest/browser/barretenberg_wasm/browser/worker.d.ts.map +0 -1
  233. package/dest/browser/barretenberg_wasm/browser/worker.js +0 -11
  234. package/dest/browser/barretenberg_wasm/index.js +0 -2
  235. package/dest/browser/barretenberg_wasm/node/index.d.ts.map +0 -1
  236. package/dest/browser/barretenberg_wasm/node/index.js +0 -40
  237. package/dest/browser/barretenberg_wasm/node/node_endpoint.d.ts.map +0 -1
  238. package/dest/browser/barretenberg_wasm/node/node_endpoint.js +0 -28
  239. package/dest/browser/barretenberg_wasm/node/worker.d.ts +0 -2
  240. package/dest/browser/barretenberg_wasm/node/worker.d.ts.map +0 -1
  241. package/dest/browser/barretenberg_wasm/node/worker.js +0 -9
  242. package/dest/browser/bigint-array/index.js +0 -21
  243. package/dest/browser/bindgen/function_declaration.d.ts +0 -11
  244. package/dest/browser/bindgen/function_declaration.d.ts.map +0 -1
  245. package/dest/browser/bindgen/function_declaration.js +0 -2
  246. package/dest/browser/bindgen/index.d.ts +0 -2
  247. package/dest/browser/bindgen/index.d.ts.map +0 -1
  248. package/dest/browser/bindgen/index.js +0 -15
  249. package/dest/browser/bindgen/mappings.d.ts +0 -4
  250. package/dest/browser/bindgen/mappings.d.ts.map +0 -1
  251. package/dest/browser/bindgen/mappings.js +0 -63
  252. package/dest/browser/bindgen/rust.d.ts +0 -2
  253. package/dest/browser/bindgen/rust.d.ts.map +0 -1
  254. package/dest/browser/bindgen/rust.js +0 -43
  255. package/dest/browser/bindgen/to_camel_case.d.ts +0 -2
  256. package/dest/browser/bindgen/to_camel_case.d.ts.map +0 -1
  257. package/dest/browser/bindgen/to_camel_case.js +0 -11
  258. package/dest/browser/bindgen/typescript.d.ts +0 -2
  259. package/dest/browser/bindgen/typescript.d.ts.map +0 -1
  260. package/dest/browser/bindgen/typescript.js +0 -80
  261. package/dest/browser/crs/browser/cached_net_crs.js +0 -56
  262. package/dest/browser/crs/browser/index.js +0 -2
  263. package/dest/browser/crs/index.js +0 -2
  264. package/dest/browser/crs/net_crs.js +0 -59
  265. package/dest/browser/crs/node/ignition_files_crs.js +0 -51
  266. package/dest/browser/crs/node/index.js +0 -54
  267. package/dest/browser/examples/simple.test.d.ts +0 -2
  268. package/dest/browser/examples/simple.test.d.ts.map +0 -1
  269. package/dest/browser/examples/simple.test.js +0 -22
  270. package/dest/browser/factory/index.d.ts +0 -21
  271. package/dest/browser/factory/index.d.ts.map +0 -1
  272. package/dest/browser/factory/index.js +0 -34
  273. package/dest/browser/main.d.ts +0 -10
  274. package/dest/browser/main.d.ts.map +0 -1
  275. package/dest/browser/main.js +0 -6586
  276. package/dest/browser/random/browser/index.js +0 -31
  277. package/dest/browser/random/index.js +0 -2
  278. package/dest/browser/random/node/index.js +0 -5
  279. package/dest/browser/serialize/buffer_reader.js +0 -66
  280. package/dest/browser/serialize/index.js +0 -4
  281. package/dest/browser/serialize/output_type.js +0 -44
  282. package/dest/browser/serialize/serialize.js +0 -139
  283. package/dest/browser/types/browser/index.d.ts +0 -2
  284. package/dest/browser/types/browser/index.d.ts.map +0 -1
  285. package/dest/browser/types/browser/index.js +0 -2
  286. package/dest/browser/types/browser/point.d.ts +0 -16
  287. package/dest/browser/types/browser/point.d.ts.map +0 -1
  288. package/dest/browser/types/browser/point.js +0 -46
  289. package/dest/browser/types/fields.js +0 -84
  290. package/dest/browser/types/fixed_size_buffer.js +0 -51
  291. package/dest/browser/types/index.js +0 -6
  292. package/dest/browser/types/node/index.d.ts +0 -2
  293. package/dest/browser/types/node/index.d.ts.map +0 -1
  294. package/dest/browser/types/node/index.js +0 -2
  295. package/dest/browser/types/node/point.d.ts.map +0 -1
  296. package/dest/browser/types/node/point.js +0 -31
  297. package/dest/browser/types/ptr.js +0 -19
  298. package/dest/browser/types/raw_buffer.js +0 -5
  299. package/dest/node/barretenberg_binder/heap_allocator_sync.d.ts +0 -22
  300. package/dest/node/barretenberg_binder/heap_allocator_sync.d.ts.map +0 -1
  301. package/dest/node/barretenberg_binder/heap_allocator_sync.js +0 -58
  302. package/dest/node/barretenberg_wasm/barretenberg_wasm.d.ts +0 -50
  303. package/dest/node/barretenberg_wasm/barretenberg_wasm.d.ts.map +0 -1
  304. package/dest/node/barretenberg_wasm/barretenberg_wasm.js +0 -208
  305. package/dest/node/barretenberg_wasm/barretenberg_wasm.test.d.ts +0 -2
  306. package/dest/node/barretenberg_wasm/barretenberg_wasm.test.d.ts.map +0 -1
  307. package/dest/node/barretenberg_wasm/barretenberg_wasm.test.js +0 -47
  308. package/dest/node/barretenberg_wasm/browser/index.d.ts +0 -8
  309. package/dest/node/barretenberg_wasm/browser/index.d.ts.map +0 -1
  310. package/dest/node/barretenberg_wasm/browser/index.js +0 -29
  311. package/dest/node/barretenberg_wasm/browser/worker.d.ts +0 -2
  312. package/dest/node/barretenberg_wasm/browser/worker.d.ts.map +0 -1
  313. package/dest/node/barretenberg_wasm/browser/worker.js +0 -11
  314. package/dest/node/barretenberg_wasm/node/index.d.ts.map +0 -1
  315. package/dest/node/barretenberg_wasm/node/index.js +0 -40
  316. package/dest/node/barretenberg_wasm/node/node_endpoint.d.ts.map +0 -1
  317. package/dest/node/barretenberg_wasm/node/node_endpoint.js +0 -28
  318. package/dest/node/barretenberg_wasm/node/worker.d.ts +0 -2
  319. package/dest/node/barretenberg_wasm/node/worker.d.ts.map +0 -1
  320. package/dest/node/barretenberg_wasm/node/worker.js +0 -9
  321. package/dest/node/factory/index.d.ts +0 -21
  322. package/dest/node/factory/index.d.ts.map +0 -1
  323. package/dest/node/factory/index.js +0 -34
  324. package/dest/node/types/browser/index.d.ts +0 -2
  325. package/dest/node/types/browser/index.d.ts.map +0 -1
  326. package/dest/node/types/browser/index.js +0 -2
  327. package/dest/node/types/browser/point.d.ts +0 -16
  328. package/dest/node/types/browser/point.d.ts.map +0 -1
  329. package/dest/node/types/browser/point.js +0 -46
  330. package/dest/node/types/node/index.d.ts +0 -2
  331. package/dest/node/types/node/index.d.ts.map +0 -1
  332. package/dest/node/types/node/index.js +0 -2
  333. package/dest/node/types/node/point.d.ts.map +0 -1
  334. package/dest/node/types/node/point.js +0 -31
  335. package/src/barretenberg_binder/heap_allocator_sync.ts +0 -61
  336. package/src/barretenberg_wasm/barretenberg_wasm.ts +0 -250
  337. package/src/barretenberg_wasm/browser/index.ts +0 -35
  338. package/src/barretenberg_wasm/node/worker.ts +0 -10
  339. package/src/factory/index.ts +0 -36
  340. package/src/types/browser/index.ts +0 -1
  341. package/src/types/browser/point.ts +0 -50
  342. package/src/types/node/index.ts +0 -1
  343. /package/src/barretenberg_wasm/{node → helpers/node}/node_endpoint.ts +0 -0
@@ -1,60 +1,60 @@
1
- import { newBarretenbergApiSync } from '../factory/index.js';
1
+ import { Barretenberg } from '../barretenberg/index.js';
2
2
  import { Fr } from '../types/index.js';
3
3
  describe('pedersen', () => {
4
4
  let api;
5
5
  beforeAll(async () => {
6
- api = await newBarretenbergApiSync();
7
- api.pedersenHashInit();
8
- });
6
+ api = await Barretenberg.new(1);
7
+ await api.pedersenHashInit();
8
+ }, 30000);
9
9
  afterAll(async () => {
10
10
  await api.destroy();
11
11
  });
12
- it('pedersenCompressFields', () => {
13
- const result = api.pedersenCompressFields(new Fr(4n), new Fr(8n));
12
+ it('pedersenCompressFields', async () => {
13
+ const result = await api.pedersenCompressFields(new Fr(4n), new Fr(8n));
14
14
  expect(result).toEqual(new Fr(16672613430297770667465722499387909817686322516130512258122141976728892914370n));
15
15
  });
16
- it('pedersenPlookupCompressFields', () => {
17
- const result = api.pedersenPlookupCompressFields(new Fr(4n), new Fr(8n));
16
+ it('pedersenPlookupCompressFields', async () => {
17
+ const result = await api.pedersenPlookupCompressFields(new Fr(4n), new Fr(8n));
18
18
  expect(result).toEqual(new Fr(21568810706345846819294487214368613840251909831689369685420108292337497444070n));
19
19
  });
20
- it('pedersenCompress', () => {
21
- const result = api.pedersenCompress([new Fr(4n), new Fr(8n), new Fr(12n)]);
20
+ it('pedersenCompress', async () => {
21
+ const result = await api.pedersenCompress([new Fr(4n), new Fr(8n), new Fr(12n)]);
22
22
  expect(result).toEqual(new Fr(20749503715308760529311051818180468653739005441229560405092292242074298877245n));
23
23
  });
24
- it('pedersenPlookupCompress', () => {
25
- const result = api.pedersenPlookupCompress([new Fr(4n), new Fr(8n), new Fr(12n)]);
24
+ it('pedersenPlookupCompress', async () => {
25
+ const result = await api.pedersenPlookupCompress([new Fr(4n), new Fr(8n), new Fr(12n)]);
26
26
  expect(result).toEqual(new Fr(4213911891650716450883144878301329379460622830501147795631256054071351353887n));
27
27
  });
28
- it('pedersenCompressWithHashIndex', () => {
29
- const result = api.pedersenCompressWithHashIndex([new Fr(4n), new Fr(8n)], 7);
28
+ it('pedersenCompressWithHashIndex', async () => {
29
+ const result = await api.pedersenCompressWithHashIndex([new Fr(4n), new Fr(8n)], 7);
30
30
  expect(result).toEqual(new Fr(11068631634751286805527305272746775861010877976108429785597565355072506728435n));
31
31
  });
32
- it('pedersenCommit', () => {
33
- const result = api.pedersenCommit([new Fr(4n), new Fr(8n), new Fr(12n)]);
32
+ it('pedersenCommit', async () => {
33
+ const result = await api.pedersenCommit([new Fr(4n), new Fr(8n), new Fr(12n)]);
34
34
  expect(result).toEqual(new Fr(20749503715308760529311051818180468653739005441229560405092292242074298877245n));
35
35
  });
36
- it('pedersenPlookupCommit', () => {
37
- const result = api.pedersenPlookupCommit([new Fr(4n), new Fr(8n)]);
36
+ it('pedersenPlookupCommit', async () => {
37
+ const result = await api.pedersenPlookupCommit([new Fr(4n), new Fr(8n)]);
38
38
  expect(result).toEqual(new Fr(21568810706345846819294487214368613840251909831689369685420108292337497444070n));
39
39
  });
40
- it('pedersenBufferToField', () => {
41
- const result = api.pedersenBufferToField(Buffer.from('Hello world! I am a buffer to be converted to a field!'));
40
+ it('pedersenBufferToField', async () => {
41
+ const result = await api.pedersenBufferToField(Buffer.from('Hello world! I am a buffer to be converted to a field!'));
42
42
  expect(result).toEqual(new Fr(4923399520610513632896240312051201308554838580477778325691012985962614653619n));
43
43
  });
44
- it('pedersenHashPair', () => {
45
- const result = api.pedersenHashPair(new Fr(4n), new Fr(8n));
44
+ it('pedersenHashPair', async () => {
45
+ const result = await api.pedersenHashPair(new Fr(4n), new Fr(8n));
46
46
  expect(result).toEqual(new Fr(7508407170365331152493586290597472346478280823936748458450026785528968221772n));
47
47
  });
48
- it('pedersenHashMultiple', () => {
49
- const result = api.pedersenHashMultiple([new Fr(4n), new Fr(8n), new Fr(12n)]);
48
+ it('pedersenHashMultiple', async () => {
49
+ const result = await api.pedersenHashMultiple([new Fr(4n), new Fr(8n), new Fr(12n)]);
50
50
  expect(result).toEqual(new Fr(641613987782189905475142047603559162464012327378197326488471789040703504911n));
51
51
  });
52
- it('pedersenHashMultipleWithHashIndex', () => {
53
- const result = api.pedersenHashMultipleWithHashIndex([new Fr(4n), new Fr(8n)], 7);
52
+ it('pedersenHashMultipleWithHashIndex', async () => {
53
+ const result = await api.pedersenHashMultipleWithHashIndex([new Fr(4n), new Fr(8n)], 7);
54
54
  expect(result).toEqual(new Fr(14181105996307540196932058280391669339364159586581375348016341320932872505408n));
55
55
  });
56
- it('pedersenHashToTree', () => {
57
- const result = api.pedersenHashToTree([new Fr(4n), new Fr(8n), new Fr(12n), new Fr(16n)]);
56
+ it('pedersenHashToTree', async () => {
57
+ const result = await api.pedersenHashToTree([new Fr(4n), new Fr(8n), new Fr(12n), new Fr(16n)]);
58
58
  expect(result).toEqual([
59
59
  new Fr(4n),
60
60
  new Fr(8n),
@@ -66,4 +66,4 @@ describe('pedersen', () => {
66
66
  ]);
67
67
  });
68
68
  });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVkZXJzZW4udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmdfYXBpL3BlZGVyc2VuLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3ZDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsR0FBRyxFQUFFO0lBQ3hCLElBQUksR0FBd0IsQ0FBQztJQUU3QixTQUFTLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbkIsR0FBRyxHQUFHLE1BQU0sc0JBQXNCLEVBQUUsQ0FBQztRQUNyQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUN6QixDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNsQixNQUFNLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN0QixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx3QkFBd0IsRUFBRSxHQUFHLEVBQUU7UUFDaEMsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbEUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyw4RUFBOEUsQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsK0JBQStCLEVBQUUsR0FBRyxFQUFFO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3pFLE1BQU0sQ0FBQyxN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
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVkZXJzZW4udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmdfYXBpL3BlZGVyc2VuLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2QyxRQUFRLENBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRTtJQUN4QixJQUFJLEdBQWlCLENBQUM7SUFFdEIsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ25CLEdBQUcsR0FBRyxNQUFNLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsTUFBTSxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMvQixDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFVixRQUFRLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbEIsTUFBTSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDdEMsTUFBTSxNQUFNLEdBQUcsTUFBTSxHQUFHLENBQUMsc0JBQXNCLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4RSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLDhFQUE4RSxDQUFDLENBQUMsQ0FBQztJQUNqSCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQywrQkFBK0IsRUFBRSxLQUFLLElBQUksRUFBRTtRQUM3QyxNQUFNLE1BQU0sR0FBRyxNQUFNLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxJ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
@@ -1,113 +1,114 @@
1
1
  import { TextEncoder } from 'util';
2
2
  import { Buffer128, Buffer32, Fr, Point } from '../types/index.js';
3
- import { newBarretenbergApiSync } from '../factory/index.js';
3
+ import { Barretenberg } from '../barretenberg/index.js';
4
+ import { asyncMap } from '../async_map/index.js';
4
5
  describe('schnorr', () => {
5
6
  const msg = Buffer.from(new TextEncoder().encode('The quick brown dog jumped over the lazy fox.'));
6
7
  let api;
7
8
  beforeAll(async () => {
8
- api = await newBarretenbergApiSync();
9
- api.pedersenInit();
10
- });
9
+ api = await Barretenberg.new(1);
10
+ await api.pedersenInit();
11
+ }, 30000);
11
12
  afterAll(async () => {
12
13
  await api.destroy();
13
14
  });
14
- it('should verify signature', () => {
15
+ it('should verify signature', async () => {
15
16
  const pk = Fr.fromBuffer(new Uint8Array([
16
17
  0x0b, 0x9b, 0x3a, 0xde, 0xe6, 0xb3, 0xd8, 0x1b, 0x28, 0xa0, 0x88, 0x6b, 0x2a, 0x84, 0x15, 0xc7, 0xda, 0x31,
17
18
  0x29, 0x1a, 0x5e, 0x96, 0xbb, 0x7a, 0x56, 0x63, 0x9e, 0x17, 0x7d, 0x30, 0x1b, 0xeb,
18
19
  ]));
19
- const pubKey = api.schnorrComputePublicKey(pk);
20
- const [s, e] = api.schnorrConstructSignature(msg, pk);
21
- const verified = api.schnorrVerifySignature(msg, pubKey, s, e);
20
+ const pubKey = await api.schnorrComputePublicKey(pk);
21
+ const [s, e] = await api.schnorrConstructSignature(msg, pk);
22
+ const verified = await api.schnorrVerifySignature(msg, pubKey, s, e);
22
23
  expect(verified).toBe(true);
23
24
  });
24
- it('public key negation should work', () => {
25
+ it('public key negation should work', async () => {
25
26
  const publicKeyStr = '0x164f01b1011a1b292217acf53eef4d74f625f6e9bd5edfdb74c56fd81aafeebb21912735f9266a3719f61c1eb747ddee0cac9917f5c807485d356709b529b62c';
26
27
  const publicKey = Point.fromString(publicKeyStr);
27
28
  // hardcoded expected negated public key
28
29
  const expectedInvertedStr = '0x164f01b1011a1b292217acf53eef4d74f625f6e9bd5edfdb74c56fd81aafeebb0ed3273ce80b35f29e5a2997ca397a6f1b874f3083f16948e6ac8e8a3ad649d5';
29
30
  const expectedInverted = Point.fromString(expectedInvertedStr);
30
31
  // negate - should match expected negated key
31
- const negatedPublicKey = api.schnorrNegatePublicKey(publicKey);
32
+ const negatedPublicKey = await api.schnorrNegatePublicKey(publicKey);
32
33
  expect(negatedPublicKey.equals(expectedInverted)).toEqual(true);
33
34
  // negate again - should be original public key now
34
- expect(api.schnorrNegatePublicKey(negatedPublicKey).equals(publicKey)).toEqual(true);
35
+ expect((await api.schnorrNegatePublicKey(negatedPublicKey)).equals(publicKey)).toEqual(true);
35
36
  });
36
- it('should create + verify multi signature', () => {
37
+ it('should create + verify multi signature', async () => {
37
38
  // set up multisig accounts
38
39
  const numSigners = 7;
39
40
  const pks = [...Array(numSigners)].map(() => Fr.random());
40
- const pubKeys = pks.map(pk => api.schnorrMultisigCreateMultisigPublicKey(pk));
41
+ const pubKeys = await asyncMap(pks, pk => api.schnorrMultisigCreateMultisigPublicKey(pk));
41
42
  // round one
42
43
  const roundOnePublicOutputs = [];
43
44
  const roundOnePrivateOutputs = [];
44
45
  for (let i = 0; i < numSigners; ++i) {
45
- const [publicOutput, privateOutput] = api.schnorrMultisigConstructSignatureRound1();
46
+ const [publicOutput, privateOutput] = await api.schnorrMultisigConstructSignatureRound1();
46
47
  roundOnePublicOutputs.push(publicOutput);
47
48
  roundOnePrivateOutputs.push(privateOutput);
48
49
  }
49
50
  // round two
50
- const roundTwoOutputs = pks.map((pk, i) => api.schnorrMultisigConstructSignatureRound2(msg, pk, roundOnePrivateOutputs[i], pubKeys, roundOnePublicOutputs)[0]);
51
+ const roundTwoOutputs = await asyncMap(pks, async (pk, i) => (await api.schnorrMultisigConstructSignatureRound2(msg, pk, roundOnePrivateOutputs[i], pubKeys, roundOnePublicOutputs))[0]);
51
52
  // generate signature
52
- const [s, e] = api.schnorrMultisigCombineSignatures(msg, pubKeys, roundOnePublicOutputs, roundTwoOutputs);
53
- const [combinedKey] = api.schnorrMultisigValidateAndCombineSignerPubkeys(pubKeys);
53
+ const [s, e] = await api.schnorrMultisigCombineSignatures(msg, pubKeys, roundOnePublicOutputs, roundTwoOutputs);
54
+ const [combinedKey] = await api.schnorrMultisigValidateAndCombineSignerPubkeys(pubKeys);
54
55
  expect(combinedKey).not.toEqual(Buffer.alloc(64));
55
- const verified = api.schnorrVerifySignature(msg, combinedKey, s, e);
56
+ const verified = await api.schnorrVerifySignature(msg, combinedKey, s, e);
56
57
  expect(verified).toBe(true);
57
58
  });
58
- it('should identify invalid multi signature', () => {
59
+ it('should identify invalid multi signature', async () => {
59
60
  const pks = [...Array(3)].map(() => Fr.random());
60
- const pubKeys = pks.map(pk => api.schnorrMultisigCreateMultisigPublicKey(pk));
61
- const [combinedKey] = api.schnorrMultisigValidateAndCombineSignerPubkeys(pubKeys);
62
- const verified = api.schnorrVerifySignature(msg, combinedKey, Buffer32.random(), Buffer32.random());
61
+ const pubKeys = await asyncMap(pks, pk => api.schnorrMultisigCreateMultisigPublicKey(pk));
62
+ const [combinedKey] = await api.schnorrMultisigValidateAndCombineSignerPubkeys(pubKeys);
63
+ const verified = await api.schnorrVerifySignature(msg, combinedKey, Buffer32.random(), Buffer32.random());
63
64
  expect(verified).toBe(false);
64
65
  });
65
- it('should not construct invalid multi signature', () => {
66
+ it('should not construct invalid multi signature', async () => {
66
67
  // set up multisig accounts
67
68
  const numSigners = 7;
68
69
  const pks = [...Array(numSigners)].map(() => Fr.random());
69
- const pubKeys = pks.map(pk => api.schnorrMultisigCreateMultisigPublicKey(pk));
70
+ const pubKeys = await asyncMap(pks, pk => api.schnorrMultisigCreateMultisigPublicKey(pk));
70
71
  // round one
71
72
  const roundOnePublicOutputs = [];
72
73
  const roundOnePrivateOutputs = [];
73
74
  for (let i = 0; i < numSigners; ++i) {
74
- const [publicOutput, privateOutput] = api.schnorrMultisigConstructSignatureRound1();
75
+ const [publicOutput, privateOutput] = await api.schnorrMultisigConstructSignatureRound1();
75
76
  roundOnePublicOutputs.push(publicOutput);
76
77
  roundOnePrivateOutputs.push(privateOutput);
77
78
  }
78
79
  // round two
79
- const roundTwoOutputs = pks.map((pk, i) => api.schnorrMultisigConstructSignatureRound2(msg, pk, roundOnePrivateOutputs[i], pubKeys, roundOnePublicOutputs)[0]);
80
+ const roundTwoOutputs = await asyncMap(pks, async (pk, i) => (await api.schnorrMultisigConstructSignatureRound2(msg, pk, roundOnePrivateOutputs[i], pubKeys, roundOnePublicOutputs))[0]);
80
81
  // wrong number of data
81
82
  {
82
- expect(api.schnorrMultisigCombineSignatures(msg, pubKeys.slice(0, -1), roundOnePublicOutputs.slice(0, -1), roundTwoOutputs.slice(0, -1))[2]).toBe(false);
83
+ expect((await api.schnorrMultisigCombineSignatures(msg, pubKeys.slice(0, -1), roundOnePublicOutputs.slice(0, -1), roundTwoOutputs.slice(0, -1)))[2]).toBe(false);
83
84
  }
84
85
  // invalid round two output
85
86
  {
86
87
  const invalidOutputs = [...roundTwoOutputs];
87
- invalidOutputs[1] = api.schnorrMultisigConstructSignatureRound2(msg, pks[2], // <- Wrong private key.
88
- roundOnePrivateOutputs[1], pubKeys, roundOnePublicOutputs)[0];
89
- expect(api.schnorrMultisigCombineSignatures(msg, pubKeys, roundOnePublicOutputs, invalidOutputs)[2]).toBe(false);
88
+ invalidOutputs[1] = (await api.schnorrMultisigConstructSignatureRound2(msg, pks[2], // <- Wrong private key.
89
+ roundOnePrivateOutputs[1], pubKeys, roundOnePublicOutputs))[0];
90
+ expect((await api.schnorrMultisigCombineSignatures(msg, pubKeys, roundOnePublicOutputs, invalidOutputs))[2]).toBe(false);
90
91
  }
91
92
  // contains duplicates
92
93
  {
93
94
  const invalidOutputs = [...roundTwoOutputs];
94
95
  invalidOutputs[1] = roundTwoOutputs[2];
95
- expect(api.schnorrMultisigCombineSignatures(msg, pubKeys, roundOnePublicOutputs, invalidOutputs)[2]).toBe(false);
96
+ expect((await api.schnorrMultisigCombineSignatures(msg, pubKeys, roundOnePublicOutputs, invalidOutputs))[2]).toBe(false);
96
97
  }
97
98
  });
98
- it('should not create combined key from public keys containing invalid key', () => {
99
+ it('should not create combined key from public keys containing invalid key', async () => {
99
100
  const pks = [...Array(5)].map(() => Fr.random());
100
- const pubKeys = pks.map(pk => api.schnorrMultisigCreateMultisigPublicKey(pk));
101
+ const pubKeys = await asyncMap(pks, pk => api.schnorrMultisigCreateMultisigPublicKey(pk));
101
102
  // not a valid point
102
103
  {
103
104
  pubKeys[1] = new Buffer128(Buffer.alloc(128));
104
- expect(api.schnorrMultisigValidateAndCombineSignerPubkeys(pubKeys)[1]).toBe(false);
105
+ expect((await api.schnorrMultisigValidateAndCombineSignerPubkeys(pubKeys))[1]).toBe(false);
105
106
  }
106
107
  // contains duplicates
107
108
  {
108
109
  pubKeys[1] = pubKeys[2];
109
- expect(api.schnorrMultisigValidateAndCombineSignerPubkeys(pubKeys)[1]).toBe(false);
110
+ expect((await api.schnorrMultisigValidateAndCombineSignerPubkeys(pubKeys))[1]).toBe(false);
110
111
  }
111
112
  });
112
113
  });
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nobm9yci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhcnJldGVuYmVyZ19hcGkvc2Nobm9yci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTdELFFBQVEsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFO0lBQ3ZCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsK0NBQStDLENBQUMsQ0FBQyxDQUFDO0lBQ25HLElBQUksR0FBd0IsQ0FBQztJQUU3QixTQUFTLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbkIsR0FBRyxHQUFHLE1BQU0sc0JBQXNCLEVBQUUsQ0FBQztRQUNyQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckIsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbEIsTUFBTSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMseUJBQXlCLEVBQUUsR0FBRyxFQUFFO1FBQ2pDLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQ3RCLElBQUksVUFBVSxDQUFDO1lBQ2IsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVB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
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nobm9yci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhcnJldGVuYmVyZ19hcGkvc2Nobm9yci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFakQsUUFBUSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUU7SUFDdkIsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDLENBQUM7SUFDbkcsSUFBSSxHQUFpQixDQUFDO0lBRXRCLFNBQVMsQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNuQixHQUFHLEdBQUcsTUFBTSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLE1BQU0sR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzNCLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUVWLFFBQVEsQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNsQixNQUFNLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN0QixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN2QyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUN0QixJQUFJLFVBQVUsQ0FBQztZQUNiLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFB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
@@ -1,5 +1,5 @@
1
1
  import { Bufferable, OutputType } from '../serialize/index.js';
2
- import { BarretenbergWasm, BarretenbergWasmWorker } from '../barretenberg_wasm/barretenberg_wasm.js';
2
+ import { BarretenbergWasm, BarretenbergWasmWorker } from '../barretenberg_wasm/index.js';
3
3
  /**
4
4
  * Keeps track of heap allocations so they can be easily freed.
5
5
  * The WASM memory layout has 1024 bytes of unused "scratch" space at the start (addresses 0-1023).
@@ -1 +1 @@
1
- {"version":3,"file":"heap_allocator.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_binder/heap_allocator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAuB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAGrG;;;;;;;GAOG;AACH,qBAAa,aAAa;IAKZ,OAAO,CAAC,IAAI;IAJxB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,mBAAmB,CAAQ;gBAEf,IAAI,EAAE,gBAAgB,GAAG,sBAAsB;IAE7D,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE;IAerC,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE;IAgBtC,YAAY,CAAC,GAAG,EAAE,MAAM;IAMlB,OAAO;CAKd"}
1
+ {"version":3,"file":"heap_allocator.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_binder/heap_allocator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAuB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAGzF;;;;;;;GAOG;AACH,qBAAa,aAAa;IAKZ,OAAO,CAAC,IAAI;IAJxB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,mBAAmB,CAAQ;gBAEf,IAAI,EAAE,gBAAgB,GAAG,sBAAsB;IAE7D,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE;IAerC,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE;IAgBtC,YAAY,CAAC,GAAG,EAAE,MAAM;IAMlB,OAAO;CAKd"}
@@ -1,4 +1,4 @@
1
- import { BarretenbergWasm, BarretenbergWasmWorker } from '../barretenberg_wasm/barretenberg_wasm.js';
1
+ import { BarretenbergWasm, BarretenbergWasmWorker } from '../barretenberg_wasm/index.js';
2
2
  import { Bufferable, OutputType } from '../serialize/index.js';
3
3
  /**
4
4
  * Calls a WASM export function, handles allocating/freeing of memory, and serializing/deserializing to types.
@@ -23,10 +23,4 @@ export declare class BarretenbergBinder {
23
23
  callWasmExport(funcName: string, inArgs: Bufferable[], outTypes: OutputType[]): Promise<any[]>;
24
24
  private deserializeOutputArgs;
25
25
  }
26
- export declare class BarretenbergBinderSync {
27
- wasm: BarretenbergWasm;
28
- constructor(wasm: BarretenbergWasm);
29
- callWasmExport(funcName: string, inArgs: Bufferable[], outTypes: OutputType[]): any[];
30
- private deserializeOutputArgs;
31
- }
32
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_binder/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAErG,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAI/D;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,kBAAkB;IACV,IAAI,EAAE,gBAAgB,GAAG,sBAAsB;gBAA/C,IAAI,EAAE,gBAAgB,GAAG,sBAAsB;IAE5D,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE;IAUnF,OAAO,CAAC,qBAAqB;CAY9B;AAED,qBAAa,sBAAsB;IACd,IAAI,EAAE,gBAAgB;gBAAtB,IAAI,EAAE,gBAAgB;IAEzC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE;IAU7E,OAAO,CAAC,qBAAqB;CAY9B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_binder/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEzF,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAM/D;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,kBAAkB;IACV,IAAI,EAAE,gBAAgB,GAAG,sBAAsB;gBAA/C,IAAI,EAAE,gBAAgB,GAAG,sBAAsB;IAE5D,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE;IAUnF,OAAO,CAAC,qBAAqB;CAoB9B"}
@@ -1,6 +1,7 @@
1
1
  import { HeapAllocator } from './heap_allocator.js';
2
2
  import { asyncMap } from '../async_map/index.js';
3
- import { HeapAllocatorSync } from './heap_allocator_sync.js';
3
+ // import createDebug from 'debug';
4
+ // const debug = createDebug('bb.js:barretenberg_binder');
4
5
  /**
5
6
  * Calls a WASM export function, handles allocating/freeing of memory, and serializing/deserializing to types.
6
7
  *
@@ -27,7 +28,7 @@ export class BarretenbergBinder {
27
28
  const inPtrs = await alloc.copyToMemory(inArgs);
28
29
  const outPtrs = await alloc.getOutputPtrs(outTypes);
29
30
  await this.wasm.call(funcName, ...inPtrs, ...outPtrs);
30
- const outArgs = this.deserializeOutputArgs(outTypes, outPtrs, alloc);
31
+ const outArgs = await this.deserializeOutputArgs(outTypes, outPtrs, alloc);
31
32
  await alloc.freeAll();
32
33
  return outArgs;
33
34
  }
@@ -39,35 +40,14 @@ export class BarretenbergBinder {
39
40
  }
40
41
  const slice = await this.wasm.getMemorySlice(outPtrs[i], outPtrs[i] + 4);
41
42
  const ptr = new DataView(slice.buffer, slice.byteOffset, slice.byteLength).getUint32(0, true);
43
+ // Add our heap buffer to the dealloc list.
42
44
  alloc.addOutputPtr(ptr);
43
- return t.fromBuffer(await this.wasm.getMemorySlice(ptr));
45
+ // The length will be found in the first 4 bytes of the buffer, big endian. See to_heap_buffer.
46
+ const lslice = await this.wasm.getMemorySlice(ptr, ptr + 4);
47
+ const length = new DataView(lslice.buffer, lslice.byteOffset, lslice.byteLength).getUint32(0, false);
48
+ const buf = await this.wasm.getMemorySlice(ptr + 4, ptr + 4 + length);
49
+ return t.fromBuffer(buf);
44
50
  });
45
51
  }
46
52
  }
47
- export class BarretenbergBinderSync {
48
- constructor(wasm) {
49
- this.wasm = wasm;
50
- }
51
- callWasmExport(funcName, inArgs, outTypes) {
52
- const alloc = new HeapAllocatorSync(this.wasm);
53
- const inPtrs = alloc.copyToMemory(inArgs);
54
- const outPtrs = alloc.getOutputPtrs(outTypes);
55
- this.wasm.call(funcName, ...inPtrs, ...outPtrs);
56
- const outArgs = this.deserializeOutputArgs(outTypes, outPtrs, alloc);
57
- alloc.freeAll();
58
- return outArgs;
59
- }
60
- deserializeOutputArgs(outTypes, outPtrs, alloc) {
61
- return outTypes.map((t, i) => {
62
- if (t.SIZE_IN_BYTES) {
63
- const slice = this.wasm.getMemorySlice(outPtrs[i], outPtrs[i] + t.SIZE_IN_BYTES);
64
- return t.fromBuffer(slice);
65
- }
66
- const slice = this.wasm.getMemorySlice(outPtrs[i], outPtrs[i] + 4);
67
- const ptr = new DataView(slice.buffer, slice.byteOffset, slice.byteLength).getUint32(0, true);
68
- alloc.addOutputPtr(ptr);
69
- return t.fromBuffer(this.wasm.getMemorySlice(ptr));
70
- });
71
- }
72
- }
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX2JpbmRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTdEOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixZQUFtQixJQUErQztRQUEvQyxTQUFJLEdBQUosSUFBSSxDQUEyQztJQUFHLENBQUM7SUFFdEUsS0FBSyxDQUFDLGNBQWMsQ0FBQyxRQUFnQixFQUFFLE1BQW9CLEVBQUUsUUFBc0I7UUFDakYsTUFBTSxLQUFLLEdBQUcsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNDLE1BQU0sTUFBTSxHQUFHLE1BQU0sS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoRCxNQUFNLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEQsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUN0RCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRSxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN0QixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8scUJBQXFCLENBQUMsUUFBc0IsRUFBRSxPQUFpQixFQUFFLEtBQW9CO1FBQzNGLE9BQU8sUUFBUSxDQUFDLFFBQVEs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
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX2JpbmRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELG1DQUFtQztBQUVuQywwREFBMEQ7QUFFMUQ7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQW1CLElBQStDO1FBQS9DLFNBQUksR0FBSixJQUFJLENBQTJDO0lBQUcsQ0FBQztJQUV0RSxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQWdCLEVBQUUsTUFBb0IsRUFBRSxRQUFzQjtRQUNqRixNQUFNLEtBQUssR0FBRyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELE1BQU0sT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNwRCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDO1FBQ3RELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDM0UsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDdEIsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVPLHFCQUFxQixDQUFDLFFBQXNCLEVBQUUsT0FBaUIsRUFBRSxLQUFvQjtRQUMzRixPQUFPLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsQ0FBQyxhQUFhLEVBQUU7Z0JBQ25CLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQ3ZGLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUM1QjtZQUNELE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN6RSxNQUFNLEdBQUcsR0FBRyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFFOUYsMkNBQTJDO1lBQzNDLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFeEIsK0ZBQStGO1lBQy9GLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUM1RCxNQUFNLE1BQU0sR0FBRyxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFckcsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUM7WUFDdEUsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIn0=
@@ -0,0 +1,40 @@
1
+ export declare class BarretenbergWasmBase {
2
+ protected memStore: {
3
+ [key: string]: Uint8Array;
4
+ };
5
+ protected memory: WebAssembly.Memory;
6
+ protected instance: WebAssembly.Instance;
7
+ protected logger: (msg: string) => void;
8
+ protected getImportObj(memory: WebAssembly.Memory): {
9
+ wasi_snapshot_preview1: {
10
+ random_get: (out: any, length: number) => void;
11
+ clock_time_get: (a1: number, a2: number, out: number) => void;
12
+ proc_exit: () => never;
13
+ };
14
+ env: {
15
+ /**
16
+ * The 'info' call we use for logging in C++, calls this under the hood.
17
+ * The native code will just print to std:err (to avoid std::cout which is used for IPC).
18
+ * Here we just emit the log line for the client to decide what to do with.
19
+ */
20
+ logstr: (addr: number) => void;
21
+ get_data: (keyAddr: number, outBufAddr: number) => void;
22
+ set_data: (keyAddr: number, dataAddr: number, dataLength: number) => void;
23
+ memory: WebAssembly.Memory;
24
+ };
25
+ };
26
+ exports(): any;
27
+ /**
28
+ * When returning values from the WASM, use >>> operator to convert signed representation to unsigned representation.
29
+ */
30
+ call(name: string, ...args: any): number;
31
+ memSize(): number;
32
+ /**
33
+ * Returns a copy of the data, not a view.
34
+ */
35
+ getMemorySlice(start: number, end: number): Uint8Array;
36
+ writeMemory(offset: number, arr: Uint8Array): void;
37
+ private getMemory;
38
+ private stringFromAddress;
39
+ }
40
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/barretenberg_wasm/barretenberg_wasm_base/index.ts"],"names":[],"mappings":"AAMA,qBAAa,oBAAoB;IAC/B,SAAS,CAAC,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;KAAE,CAAM;IACvD,SAAS,CAAC,MAAM,EAAG,WAAW,CAAC,MAAM,CAAC;IACtC,SAAS,CAAC,QAAQ,EAAG,WAAW,CAAC,QAAQ,CAAC;IAC1C,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAS;IAEhD,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM;;8BAOzB,GAAG,UAAU,MAAM;iCAMhB,MAAM,MAAM,MAAM,OAAO,MAAM;;;;YAgBpD;;;;eAIG;2BACY,MAAM;gCAUD,MAAM,cAAc,MAAM;gCAa1B,MAAM,YAAY,MAAM,cAAc,MAAM;;;;IAe/D,OAAO,IAAI,GAAG;IAIrB;;OAEG;IACI,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG;IAc/B,OAAO;IAId;;OAEG;IACI,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAIzC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU;IAOlD,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,iBAAiB;CAQ1B"}
@@ -0,0 +1,123 @@
1
+ import createDebug from 'debug';
2
+ import { randomBytes } from '../../random/index.js';
3
+ import { killSelf } from '../helpers/index.js';
4
+ const debug = createDebug('bb.js:wasm');
5
+ export class BarretenbergWasmBase {
6
+ constructor() {
7
+ this.memStore = {};
8
+ this.logger = debug;
9
+ }
10
+ getImportObj(memory) {
11
+ /* eslint-disable camelcase */
12
+ const importObj = {
13
+ // We need to implement a part of the wasi api:
14
+ // https://github.com/WebAssembly/WASI/blob/main/phases/snapshot/docs.md
15
+ // We literally only need to support random_get, everything else is noop implementated in barretenberg.wasm.
16
+ wasi_snapshot_preview1: {
17
+ random_get: (out, length) => {
18
+ out = out >>> 0;
19
+ const randomData = randomBytes(length);
20
+ const mem = this.getMemory();
21
+ mem.set(randomData, out);
22
+ },
23
+ clock_time_get: (a1, a2, out) => {
24
+ out = out >>> 0;
25
+ const ts = BigInt(new Date().getTime()) * 1000000n;
26
+ const view = new DataView(this.getMemory().buffer);
27
+ view.setBigUint64(out, ts, true);
28
+ },
29
+ proc_exit: () => {
30
+ this.logger('PANIC: proc_exit was called. This is maybe caused by "joining" with unstable wasi pthreads.');
31
+ this.logger(new Error().stack);
32
+ killSelf();
33
+ },
34
+ },
35
+ // These are functions implementations for imports we've defined are needed.
36
+ // The native C++ build defines these in a module called "env". We must implement TypeScript versions here.
37
+ env: {
38
+ /**
39
+ * The 'info' call we use for logging in C++, calls this under the hood.
40
+ * The native code will just print to std:err (to avoid std::cout which is used for IPC).
41
+ * Here we just emit the log line for the client to decide what to do with.
42
+ */
43
+ logstr: (addr) => {
44
+ const str = this.stringFromAddress(addr);
45
+ const m = this.getMemory();
46
+ const str2 = `${str} (mem: ${(m.length / (1024 * 1024)).toFixed(2)}MiB)`;
47
+ this.logger(str2);
48
+ if (str2.startsWith('WARNING:')) {
49
+ this.logger(new Error().stack);
50
+ }
51
+ },
52
+ get_data: (keyAddr, outBufAddr) => {
53
+ const key = this.stringFromAddress(keyAddr);
54
+ outBufAddr = outBufAddr >>> 0;
55
+ const data = this.memStore[key];
56
+ if (!data) {
57
+ this.logger(`get_data miss ${key}`);
58
+ return;
59
+ }
60
+ // this.logger(`get_data hit ${key} size: ${data.length} dest: ${outBufAddr}`);
61
+ // this.logger(Buffer.from(data.slice(0, 64)).toString('hex'));
62
+ this.writeMemory(outBufAddr, data);
63
+ },
64
+ set_data: (keyAddr, dataAddr, dataLength) => {
65
+ const key = this.stringFromAddress(keyAddr);
66
+ dataAddr = dataAddr >>> 0;
67
+ this.memStore[key] = this.getMemorySlice(dataAddr, dataAddr + dataLength);
68
+ // this.logger(`set_data: ${key} length: ${dataLength}`);
69
+ },
70
+ memory,
71
+ },
72
+ };
73
+ /* eslint-enable camelcase */
74
+ return importObj;
75
+ }
76
+ exports() {
77
+ return this.instance.exports;
78
+ }
79
+ /**
80
+ * When returning values from the WASM, use >>> operator to convert signed representation to unsigned representation.
81
+ */
82
+ call(name, ...args) {
83
+ if (!this.exports()[name]) {
84
+ throw new Error(`WASM function ${name} not found.`);
85
+ }
86
+ try {
87
+ return this.exports()[name](...args) >>> 0;
88
+ }
89
+ catch (err) {
90
+ const message = `WASM function ${name} aborted, error: ${err}`;
91
+ this.logger(message);
92
+ this.logger(err.stack);
93
+ throw err;
94
+ }
95
+ }
96
+ memSize() {
97
+ return this.getMemory().length;
98
+ }
99
+ /**
100
+ * Returns a copy of the data, not a view.
101
+ */
102
+ getMemorySlice(start, end) {
103
+ return this.getMemory().subarray(start, end).slice();
104
+ }
105
+ writeMemory(offset, arr) {
106
+ const mem = this.getMemory();
107
+ mem.set(arr, offset);
108
+ }
109
+ // PRIVATE METHODS
110
+ getMemory() {
111
+ return new Uint8Array(this.memory.buffer);
112
+ }
113
+ stringFromAddress(addr) {
114
+ addr = addr >>> 0;
115
+ const m = this.getMemory();
116
+ let i = addr;
117
+ for (; m[i] !== 0; ++i)
118
+ ;
119
+ const textDecoder = new TextDecoder('ascii');
120
+ return textDecoder.decode(m.slice(addr, i));
121
+ }
122
+ }
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vYmFycmV0ZW5iZXJnX3dhc21fYmFzZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFdBQVcsTUFBTSxPQUFPLENBQUM7QUFDaEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUUvQyxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7QUFFeEMsTUFBTSxPQUFPLG9CQUFvQjtJQUFqQztRQUNZLGFBQVEsR0FBa0MsRUFBRSxDQUFDO1FBRzdDLFdBQU0sR0FBMEIsS0FBSyxDQUFDO0lBNkhsRCxDQUFDO0lBM0hXLFlBQVksQ0FBQyxNQUEwQjtRQUMvQyw4QkFBOEI7UUFDOUIsTUFBTSxTQUFTLEdBQUc7WUFDaEIsK0NBQStDO1lBQy9DLHdFQUF3RTtZQUN4RSw0R0FBNEc7WUFDNUcsc0JBQXNCLEVBQUU7Z0JBQ3RCLFVBQVUsRUFBRSxDQUFDLEdBQVEsRUFBRSxNQUFjLEVBQUUsRUFBRTtvQkFDdkMsR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUM7b0JBQ2hCLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDdkMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO29CQUM3QixHQUFHLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDM0IsQ0FBQztnQkFDRCxjQUFjLEVBQUUsQ0FBQyxFQUFVLEVBQUUsRUFBVSxFQUFFLEdBQVcsRUFBRSxFQUFFO29CQUN0RCxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQztvQkFDaEIsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxFQUFF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
@@ -0,0 +1,2 @@
1
+ export declare function createMainWorker(): any;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts"],"names":[],"mappings":"AAGA,wBAAgB,gBAAgB,QAM/B"}
@@ -0,0 +1,10 @@
1
+ import debug from 'debug';
2
+ import MainWorker from './main.worker.js';
3
+ export function createMainWorker() {
4
+ const worker = new MainWorker();
5
+ const debugStr = debug.disable();
6
+ debug.enable(debugStr);
7
+ worker.postMessage({ debug: debugStr });
8
+ return worker;
9
+ }
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vYmFycmV0ZW5iZXJnX3dhc21fbWFpbi9mYWN0b3J5L2Jyb3dzZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sVUFBVSxNQUFNLGtCQUFrQixDQUFDO0FBRTFDLE1BQU0sVUFBVSxnQkFBZ0I7SUFDOUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztJQUNoQyxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QixNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDeEMsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyJ9
@@ -0,0 +1,3 @@
1
+ declare const _default: any;
2
+ export default _default;
3
+ //# sourceMappingURL=main.worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.worker.d.ts","sourceRoot":"","sources":["../../../../../../src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts"],"names":[],"mappings":";AAcA,wBAA2B"}