@aztec/bb.js 0.85.0 → 0.86.0

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 (221) hide show
  1. package/dest/browser/733.655674bbbb79bdf168c4.js +7 -0
  2. package/dest/browser/barretenberg-threads.js +2 -29
  3. package/dest/browser/barretenberg.js +2 -29
  4. package/dest/browser/index.js +11017 -8241
  5. package/dest/browser/main.worker.js +1316 -0
  6. package/dest/browser/thread.worker.js +1200 -0
  7. package/dest/node/barretenberg/backend.d.ts +12 -8
  8. package/dest/node/barretenberg/backend.d.ts.map +1 -1
  9. package/dest/node/barretenberg/backend.js +64 -15
  10. package/dest/node/barretenberg/index.d.ts +3 -1
  11. package/dest/node/barretenberg/index.d.ts.map +1 -1
  12. package/dest/node/barretenberg/index.js +6 -3
  13. package/dest/node/barretenberg_api/index.d.ts +23 -33
  14. package/dest/node/barretenberg_api/index.d.ts.map +1 -1
  15. package/dest/node/barretenberg_api/index.js +110 -190
  16. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  17. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  18. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  19. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +9 -4
  20. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -2
  21. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -1
  22. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +5 -5
  23. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  24. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  25. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +2 -2
  26. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  27. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  28. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +9 -4
  29. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -2
  30. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -1
  31. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +5 -5
  32. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  33. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  34. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +2 -2
  35. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +7 -1
  36. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  37. package/dest/node/barretenberg_wasm/helpers/browser/index.js +15 -2
  38. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +1 -1
  39. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  40. package/dest/node/barretenberg_wasm/helpers/node/index.js +1 -1
  41. package/dest/node/barretenberg_wasm/index.d.ts +0 -13
  42. package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
  43. package/dest/node/barretenberg_wasm/index.js +2 -18
  44. package/dest/node/barretenberg_wasm/index.test.js +6 -6
  45. package/dest/node/bindgen/mappings.d.ts.map +1 -1
  46. package/dest/node/bindgen/mappings.js +2 -1
  47. package/dest/node/bindgen/typescript.js +4 -4
  48. package/dest/node/index.d.ts +2 -2
  49. package/dest/node/index.d.ts.map +1 -1
  50. package/dest/node/index.js +1 -1
  51. package/dest/node/main.d.ts +0 -1
  52. package/dest/node/main.d.ts.map +1 -1
  53. package/dest/node/main.js +41 -38
  54. package/dest/node-cjs/barretenberg/backend.d.ts +12 -8
  55. package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
  56. package/dest/node-cjs/barretenberg/backend.js +64 -15
  57. package/dest/node-cjs/barretenberg/index.d.ts +3 -1
  58. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
  59. package/dest/node-cjs/barretenberg/index.js +12 -9
  60. package/dest/node-cjs/barretenberg_api/index.d.ts +23 -33
  61. package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -1
  62. package/dest/node-cjs/barretenberg_api/index.js +109 -189
  63. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  64. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  65. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  66. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +9 -4
  67. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -2
  68. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -1
  69. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +5 -5
  70. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  71. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  72. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +2 -2
  73. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  74. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  75. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +9 -4
  76. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -2
  77. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -1
  78. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +5 -5
  79. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  80. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  81. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +2 -2
  82. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +7 -1
  83. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  84. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +17 -3
  85. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +1 -1
  86. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  87. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +1 -1
  88. package/dest/node-cjs/barretenberg_wasm/index.d.ts +0 -13
  89. package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -1
  90. package/dest/node-cjs/barretenberg_wasm/index.js +6 -23
  91. package/dest/node-cjs/barretenberg_wasm/index.test.js +6 -6
  92. package/dest/node-cjs/bindgen/mappings.d.ts.map +1 -1
  93. package/dest/node-cjs/bindgen/mappings.js +2 -1
  94. package/dest/node-cjs/bindgen/typescript.js +4 -4
  95. package/dest/node-cjs/index.d.ts +2 -2
  96. package/dest/node-cjs/index.d.ts.map +1 -1
  97. package/dest/node-cjs/index.js +1 -1
  98. package/dest/node-cjs/main.d.ts +0 -1
  99. package/dest/node-cjs/main.d.ts.map +1 -1
  100. package/dest/node-cjs/main.js +42 -40
  101. package/package.json +10 -12
  102. package/src/barretenberg/backend.ts +86 -18
  103. package/src/barretenberg/index.ts +7 -3
  104. package/src/barretenberg_api/index.ts +175 -343
  105. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +8 -3
  106. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +4 -6
  107. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +1 -1
  108. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +8 -3
  109. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +4 -6
  110. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +1 -1
  111. package/src/barretenberg_wasm/helpers/browser/index.ts +18 -2
  112. package/src/barretenberg_wasm/helpers/node/index.ts +2 -2
  113. package/src/barretenberg_wasm/index.test.ts +7 -7
  114. package/src/barretenberg_wasm/index.ts +1 -24
  115. package/src/bindgen/mappings.ts +1 -0
  116. package/src/bindgen/typescript.ts +4 -4
  117. package/src/index.ts +2 -2
  118. package/src/main.ts +43 -42
  119. package/dest/browser/522.6386c00ebfb22619e11b.js +0 -3
  120. package/dest/browser/barretenberg/backend.d.ts +0 -89
  121. package/dest/browser/barretenberg/backend.d.ts.map +0 -1
  122. package/dest/browser/barretenberg/index.d.ts +0 -51
  123. package/dest/browser/barretenberg/index.d.ts.map +0 -1
  124. package/dest/browser/barretenberg/verifier.d.ts +0 -16
  125. package/dest/browser/barretenberg/verifier.d.ts.map +0 -1
  126. package/dest/browser/barretenberg_api/index.d.ts +0 -114
  127. package/dest/browser/barretenberg_api/index.d.ts.map +0 -1
  128. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +0 -44
  129. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +0 -1
  130. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +0 -2
  131. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +0 -1
  132. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +0 -3
  133. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +0 -1
  134. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +0 -4
  135. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +0 -1
  136. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +0 -21
  137. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +0 -1
  138. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +0 -47
  139. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +0 -1
  140. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +0 -2
  141. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +0 -1
  142. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +0 -3
  143. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +0 -1
  144. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +0 -4
  145. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +0 -1
  146. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +0 -28
  147. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +0 -1
  148. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +0 -3
  149. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +0 -1
  150. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +0 -3
  151. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +0 -1
  152. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +0 -2
  153. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts.map +0 -1
  154. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +0 -2
  155. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts.map +0 -1
  156. package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts +0 -2
  157. package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts.map +0 -1
  158. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +0 -6
  159. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +0 -1
  160. package/dest/browser/barretenberg_wasm/helpers/index.d.ts +0 -2
  161. package/dest/browser/barretenberg_wasm/helpers/index.d.ts.map +0 -1
  162. package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts +0 -22
  163. package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts.map +0 -1
  164. package/dest/browser/barretenberg_wasm/helpers/node/node_endpoint.d.ts +0 -8
  165. package/dest/browser/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +0 -1
  166. package/dest/browser/barretenberg_wasm/index.d.ts +0 -18
  167. package/dest/browser/barretenberg_wasm/index.d.ts.map +0 -1
  168. package/dest/browser/bigint-array/index.d.ts +0 -18
  169. package/dest/browser/bigint-array/index.d.ts.map +0 -1
  170. package/dest/browser/crs/browser/cached_net_crs.d.ts +0 -43
  171. package/dest/browser/crs/browser/cached_net_crs.d.ts.map +0 -1
  172. package/dest/browser/crs/browser/index.d.ts +0 -2
  173. package/dest/browser/crs/browser/index.d.ts.map +0 -1
  174. package/dest/browser/crs/index.d.ts +0 -2
  175. package/dest/browser/crs/index.d.ts.map +0 -1
  176. package/dest/browser/crs/net_crs.d.ts +0 -85
  177. package/dest/browser/crs/net_crs.d.ts.map +0 -1
  178. package/dest/browser/crs/node/index.d.ts +0 -38
  179. package/dest/browser/crs/node/index.d.ts.map +0 -1
  180. package/dest/browser/index.d.ts +0 -5
  181. package/dest/browser/index.d.ts.map +0 -1
  182. package/dest/browser/proof/index.d.ts +0 -20
  183. package/dest/browser/proof/index.d.ts.map +0 -1
  184. package/dest/browser/random/browser/index.d.ts +0 -2
  185. package/dest/browser/random/browser/index.d.ts.map +0 -1
  186. package/dest/browser/random/index.d.ts +0 -2
  187. package/dest/browser/random/index.d.ts.map +0 -1
  188. package/dest/browser/random/node/index.d.ts +0 -2
  189. package/dest/browser/random/node/index.d.ts.map +0 -1
  190. package/dest/browser/retry/index.d.ts +0 -26
  191. package/dest/browser/retry/index.d.ts.map +0 -1
  192. package/dest/browser/serialize/buffer_reader.d.ts +0 -28
  193. package/dest/browser/serialize/buffer_reader.d.ts.map +0 -1
  194. package/dest/browser/serialize/index.d.ts +0 -4
  195. package/dest/browser/serialize/index.d.ts.map +0 -1
  196. package/dest/browser/serialize/output_type.d.ts +0 -11
  197. package/dest/browser/serialize/output_type.d.ts.map +0 -1
  198. package/dest/browser/serialize/serialize.d.ts +0 -53
  199. package/dest/browser/serialize/serialize.d.ts.map +0 -1
  200. package/dest/browser/thread.worker.worker.worker.js.LICENSE.txt +0 -5
  201. package/dest/browser/types/fields.d.ts +0 -44
  202. package/dest/browser/types/fields.d.ts.map +0 -1
  203. package/dest/browser/types/fixed_size_buffer.d.ts +0 -26
  204. package/dest/browser/types/fixed_size_buffer.d.ts.map +0 -1
  205. package/dest/browser/types/index.d.ts +0 -6
  206. package/dest/browser/types/index.d.ts.map +0 -1
  207. package/dest/browser/types/point.d.ts +0 -17
  208. package/dest/browser/types/point.d.ts.map +0 -1
  209. package/dest/browser/types/ptr.d.ts +0 -13
  210. package/dest/browser/types/ptr.d.ts.map +0 -1
  211. package/dest/browser/types/raw_buffer.d.ts +0 -3
  212. package/dest/browser/types/raw_buffer.d.ts.map +0 -1
  213. package/dest/node/barretenberg/schnorr.test.d.ts +0 -2
  214. package/dest/node/barretenberg/schnorr.test.d.ts.map +0 -1
  215. package/dest/node/barretenberg/schnorr.test.js +0 -113
  216. package/dest/node-cjs/barretenberg/schnorr.test.d.ts +0 -2
  217. package/dest/node-cjs/barretenberg/schnorr.test.d.ts.map +0 -1
  218. package/dest/node-cjs/barretenberg/schnorr.test.js +0 -115
  219. package/src/barretenberg/schnorr.test.ts +0 -182
  220. /package/dest/browser/{main.worker.worker.js.LICENSE.txt → main.worker.js.LICENSE.txt} +0 -0
  221. /package/dest/browser/{thread.worker.worker.js.LICENSE.txt → thread.worker.js.LICENSE.txt} +0 -0
@@ -1,7 +1,6 @@
1
1
  // WARNING: FILE CODE GENERATED BY BINDGEN UTILITY. DO NOT EDIT!
2
2
  /* eslint-disable @typescript-eslint/no-unused-vars */
3
- import { BarretenbergWasmMain } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
4
- import { BarretenbergWasmWorker, BarretenbergWasm } from '../barretenberg_wasm/index.js';
3
+ import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
5
4
  import {
6
5
  BufferDeserializer,
7
6
  NumberDeserializer,
@@ -11,30 +10,10 @@ import {
11
10
  serializeBufferable,
12
11
  OutputType,
13
12
  } from '../serialize/index.js';
14
- import { Fr, Fq, Point, Buffer32, Buffer128, Ptr } from '../types/index.js';
15
- function parseBigEndianU32Array(buffer: Uint8Array, hasSizePrefix = false): number[] {
16
- const dv = new DataView(buffer.buffer, buffer.byteOffset, buffer.byteLength);
17
-
18
- let offset = 0;
19
- let count = buffer.byteLength >>> 2; // default is entire buffer length / 4
20
-
21
- if (hasSizePrefix) {
22
- // Read the first 4 bytes as the size (big-endian).
23
- count = dv.getUint32(0, /* littleEndian= */ false);
24
- offset = 4;
25
- }
26
-
27
- const out: number[] = new Array(count);
28
- for (let i = 0; i < count; i++) {
29
- out[i] = dv.getUint32(offset, false);
30
- offset += 4;
31
- }
32
-
33
- return out;
34
- }
13
+ import { Fr, Point, Buffer32, Ptr } from '../types/index.js';
35
14
 
36
15
  export class BarretenbergApi {
37
- constructor(protected wasm: BarretenbergWasmWorker | BarretenbergWasmMain) {}
16
+ constructor(protected wasm: BarretenbergWasmMainWorker) {}
38
17
 
39
18
  async pedersenCommit(inputsBuffer: Fr[], ctxIndex: number): Promise<Point> {
40
19
  const inArgs = [inputsBuffer, ctxIndex].map(serializeBufferable);
@@ -96,11 +75,11 @@ export class BarretenbergApi {
96
75
  return out[0];
97
76
  }
98
77
 
99
- async poseidon2HashAccumulate(inputsBuffer: Fr[]): Promise<Fr> {
78
+ async poseidon2Hashes(inputsBuffer: Fr[]): Promise<Fr> {
100
79
  const inArgs = [inputsBuffer].map(serializeBufferable);
101
80
  const outTypes: OutputType[] = [Fr];
102
81
  const result = await this.wasm.callWasmExport(
103
- 'poseidon2_hash_accumulate',
82
+ 'poseidon2_hashes',
104
83
  inArgs,
105
84
  outTypes.map(t => t.SIZE_IN_BYTES),
106
85
  );
@@ -108,11 +87,11 @@ export class BarretenbergApi {
108
87
  return out[0];
109
88
  }
110
89
 
111
- async poseidon2Hashes(inputsBuffer: Fr[]): Promise<Fr> {
90
+ async poseidon2Permutation(inputsBuffer: Fr[]): Promise<Fr[]> {
112
91
  const inArgs = [inputsBuffer].map(serializeBufferable);
113
- const outTypes: OutputType[] = [Fr];
92
+ const outTypes: OutputType[] = [VectorDeserializer(Fr)];
114
93
  const result = await this.wasm.callWasmExport(
115
- 'poseidon2_hashes',
94
+ 'poseidon2_permutation',
116
95
  inArgs,
117
96
  outTypes.map(t => t.SIZE_IN_BYTES),
118
97
  );
@@ -120,11 +99,11 @@ export class BarretenbergApi {
120
99
  return out[0];
121
100
  }
122
101
 
123
- async poseidon2Permutation(inputsBuffer: Fr[]): Promise<Fr[]> {
102
+ async poseidon2HashAccumulate(inputsBuffer: Fr[]): Promise<Fr> {
124
103
  const inArgs = [inputsBuffer].map(serializeBufferable);
125
- const outTypes: OutputType[] = [VectorDeserializer(Fr)];
104
+ const outTypes: OutputType[] = [Fr];
126
105
  const result = await this.wasm.callWasmExport(
127
- 'poseidon2_permutation',
106
+ 'poseidon2_hash_accumulate',
128
107
  inArgs,
129
108
  outTypes.map(t => t.SIZE_IN_BYTES),
130
109
  );
@@ -156,127 +135,6 @@ export class BarretenbergApi {
156
135
  return out[0];
157
136
  }
158
137
 
159
- async schnorrComputePublicKey(privateKey: Fr): Promise<Point> {
160
- const inArgs = [privateKey].map(serializeBufferable);
161
- const outTypes: OutputType[] = [Point];
162
- const result = await this.wasm.callWasmExport(
163
- 'schnorr_compute_public_key',
164
- inArgs,
165
- outTypes.map(t => t.SIZE_IN_BYTES),
166
- );
167
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
168
- return out[0];
169
- }
170
-
171
- async schnorrNegatePublicKey(publicKeyBuffer: Point): Promise<Point> {
172
- const inArgs = [publicKeyBuffer].map(serializeBufferable);
173
- const outTypes: OutputType[] = [Point];
174
- const result = await this.wasm.callWasmExport(
175
- 'schnorr_negate_public_key',
176
- inArgs,
177
- outTypes.map(t => t.SIZE_IN_BYTES),
178
- );
179
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
180
- return out[0];
181
- }
182
-
183
- async schnorrConstructSignature(message: Uint8Array, privateKey: Fr): Promise<[Buffer32, Buffer32]> {
184
- const inArgs = [message, privateKey].map(serializeBufferable);
185
- const outTypes: OutputType[] = [Buffer32, Buffer32];
186
- const result = await this.wasm.callWasmExport(
187
- 'schnorr_construct_signature',
188
- inArgs,
189
- outTypes.map(t => t.SIZE_IN_BYTES),
190
- );
191
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
192
- return out as any;
193
- }
194
-
195
- async schnorrVerifySignature(message: Uint8Array, pubKey: Point, sigS: Buffer32, sigE: Buffer32): Promise<boolean> {
196
- const inArgs = [message, pubKey, sigS, sigE].map(serializeBufferable);
197
- const outTypes: OutputType[] = [BoolDeserializer()];
198
- const result = await this.wasm.callWasmExport(
199
- 'schnorr_verify_signature',
200
- inArgs,
201
- outTypes.map(t => t.SIZE_IN_BYTES),
202
- );
203
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
204
- return out[0];
205
- }
206
-
207
- async schnorrMultisigCreateMultisigPublicKey(privateKey: Fq): Promise<Buffer128> {
208
- const inArgs = [privateKey].map(serializeBufferable);
209
- const outTypes: OutputType[] = [Buffer128];
210
- const result = await this.wasm.callWasmExport(
211
- 'schnorr_multisig_create_multisig_public_key',
212
- inArgs,
213
- outTypes.map(t => t.SIZE_IN_BYTES),
214
- );
215
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
216
- return out[0];
217
- }
218
-
219
- async schnorrMultisigValidateAndCombineSignerPubkeys(signerPubkeyBuf: Buffer128[]): Promise<[Point, boolean]> {
220
- const inArgs = [signerPubkeyBuf].map(serializeBufferable);
221
- const outTypes: OutputType[] = [Point, BoolDeserializer()];
222
- const result = await this.wasm.callWasmExport(
223
- 'schnorr_multisig_validate_and_combine_signer_pubkeys',
224
- inArgs,
225
- outTypes.map(t => t.SIZE_IN_BYTES),
226
- );
227
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
228
- return out as any;
229
- }
230
-
231
- async schnorrMultisigConstructSignatureRound1(): Promise<[Buffer128, Buffer128]> {
232
- const inArgs = [].map(serializeBufferable);
233
- const outTypes: OutputType[] = [Buffer128, Buffer128];
234
- const result = await this.wasm.callWasmExport(
235
- 'schnorr_multisig_construct_signature_round_1',
236
- inArgs,
237
- outTypes.map(t => t.SIZE_IN_BYTES),
238
- );
239
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
240
- return out as any;
241
- }
242
-
243
- async schnorrMultisigConstructSignatureRound2(
244
- message: Uint8Array,
245
- privateKey: Fq,
246
- signerRoundOnePrivateBuf: Buffer128,
247
- signerPubkeysBuf: Buffer128[],
248
- roundOnePublicBuf: Buffer128[],
249
- ): Promise<[Fq, boolean]> {
250
- const inArgs = [message, privateKey, signerRoundOnePrivateBuf, signerPubkeysBuf, roundOnePublicBuf].map(
251
- serializeBufferable,
252
- );
253
- const outTypes: OutputType[] = [Fq, BoolDeserializer()];
254
- const result = await this.wasm.callWasmExport(
255
- 'schnorr_multisig_construct_signature_round_2',
256
- inArgs,
257
- outTypes.map(t => t.SIZE_IN_BYTES),
258
- );
259
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
260
- return out as any;
261
- }
262
-
263
- async schnorrMultisigCombineSignatures(
264
- message: Uint8Array,
265
- signerPubkeysBuf: Buffer128[],
266
- roundOneBuf: Buffer128[],
267
- roundTwoBuf: Fq[],
268
- ): Promise<[Buffer32, Buffer32, boolean]> {
269
- const inArgs = [message, signerPubkeysBuf, roundOneBuf, roundTwoBuf].map(serializeBufferable);
270
- const outTypes: OutputType[] = [Buffer32, Buffer32, BoolDeserializer()];
271
- const result = await this.wasm.callWasmExport(
272
- 'schnorr_multisig_combine_signatures',
273
- inArgs,
274
- outTypes.map(t => t.SIZE_IN_BYTES),
275
- );
276
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
277
- return out as any;
278
- }
279
-
280
138
  async aesEncryptBufferCbc(input: Uint8Array, iv: Uint8Array, key: Uint8Array, length: number): Promise<Uint8Array> {
281
139
  const inArgs = [input, iv, key, length].map(serializeBufferable);
282
140
  const outTypes: OutputType[] = [BufferDeserializer()];
@@ -374,22 +232,7 @@ export class BarretenbergApi {
374
232
  outTypes.map(t => t.SIZE_IN_BYTES),
375
233
  );
376
234
  const out = result.map((r, i) => outTypes[i].fromBuffer(r));
377
- return out as [number, number];
378
- }
379
-
380
- async acirGatesAztecClient(
381
- // cf acirProveAztecClient
382
- acirVec: Uint8Array[],
383
- ): Promise<number[]> {
384
- const inArgs = [acirVec].map(serializeBufferable);
385
- const outTypes: OutputType[] = [BufferDeserializer()];
386
- const resultBuffer = await this.wasm.callWasmExport(
387
- 'acir_gates_aztec_client',
388
- inArgs,
389
- outTypes.map(t => t.SIZE_IN_BYTES),
390
- );
391
-
392
- return parseBigEndianU32Array(resultBuffer[0], /*hasSizePrefix=*/ true);
235
+ return out as any;
393
236
  }
394
237
 
395
238
  async acirNewAcirComposer(sizeHint: number): Promise<Ptr> {
@@ -445,10 +288,7 @@ export class BarretenbergApi {
445
288
  return out[0];
446
289
  }
447
290
 
448
- async acirProveAndVerifyUltraHonk(
449
- constraintSystemBuf: Uint8Array,
450
- witnessBuf: Uint8Array,
451
- ): Promise<boolean> {
291
+ async acirProveAndVerifyUltraHonk(constraintSystemBuf: Uint8Array, witnessBuf: Uint8Array): Promise<boolean> {
452
292
  const inArgs = [constraintSystemBuf, witnessBuf].map(serializeBufferable);
453
293
  const outTypes: OutputType[] = [BoolDeserializer()];
454
294
  const result = await this.wasm.callWasmExport(
@@ -460,10 +300,7 @@ export class BarretenbergApi {
460
300
  return out[0];
461
301
  }
462
302
 
463
- async acirProveAndVerifyMegaHonk(
464
- constraintSystemBuf: Uint8Array,
465
- witnessBuf: Uint8Array,
466
- ): Promise<boolean> {
303
+ async acirProveAndVerifyMegaHonk(constraintSystemBuf: Uint8Array, witnessBuf: Uint8Array): Promise<boolean> {
467
304
  const inArgs = [constraintSystemBuf, witnessBuf].map(serializeBufferable);
468
305
  const outTypes: OutputType[] = [BoolDeserializer()];
469
306
  const result = await this.wasm.callWasmExport(
@@ -475,6 +312,30 @@ export class BarretenbergApi {
475
312
  return out[0];
476
313
  }
477
314
 
315
+ async acirProveAztecClient(ivcInputsBuf: Uint8Array): Promise<[Uint8Array, Uint8Array]> {
316
+ const inArgs = [ivcInputsBuf].map(serializeBufferable);
317
+ const outTypes: OutputType[] = [BufferDeserializer(), BufferDeserializer()];
318
+ const result = await this.wasm.callWasmExport(
319
+ 'acir_prove_aztec_client',
320
+ inArgs,
321
+ outTypes.map(t => t.SIZE_IN_BYTES),
322
+ );
323
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
324
+ return out as any;
325
+ }
326
+
327
+ async acirVerifyAztecClient(proofBuf: Uint8Array, vkBuf: Uint8Array): Promise<boolean> {
328
+ const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
329
+ const outTypes: OutputType[] = [BoolDeserializer()];
330
+ const result = await this.wasm.callWasmExport(
331
+ 'acir_verify_aztec_client',
332
+ inArgs,
333
+ outTypes.map(t => t.SIZE_IN_BYTES),
334
+ );
335
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
336
+ return out[0];
337
+ }
338
+
478
339
  async acirLoadVerificationKey(acirComposerPtr: Ptr, vkBuf: Uint8Array): Promise<void> {
479
340
  const inArgs = [acirComposerPtr, vkBuf].map(serializeBufferable);
480
341
  const outTypes: OutputType[] = [];
@@ -547,6 +408,18 @@ export class BarretenbergApi {
547
408
  return out[0];
548
409
  }
549
410
 
411
+ async acirHonkSolidityVerifier(proofBuf: Uint8Array, vkBuf: Uint8Array): Promise<string> {
412
+ const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
413
+ const outTypes: OutputType[] = [StringDeserializer()];
414
+ const result = await this.wasm.callWasmExport(
415
+ 'acir_honk_solidity_verifier',
416
+ inArgs,
417
+ outTypes.map(t => t.SIZE_IN_BYTES),
418
+ );
419
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
420
+ return out[0];
421
+ }
422
+
550
423
  async acirSerializeProofIntoFields(
551
424
  acirComposerPtr: Ptr,
552
425
  proofBuf: Uint8Array,
@@ -575,11 +448,11 @@ export class BarretenbergApi {
575
448
  return out as any;
576
449
  }
577
450
 
578
- async acirProveAndVerifyAztecClient(acirVec: Uint8Array[], witnessVec: Uint8Array[]): Promise<boolean> {
451
+ async acirProveUltraHonk(acirVec: Uint8Array, witnessVec: Uint8Array): Promise<Uint8Array> {
579
452
  const inArgs = [acirVec, witnessVec].map(serializeBufferable);
580
- const outTypes: OutputType[] = [BoolDeserializer()];
453
+ const outTypes: OutputType[] = [BufferDeserializer()];
581
454
  const result = await this.wasm.callWasmExport(
582
- 'acir_prove_and_verify_aztec_client',
455
+ 'acir_prove_ultra_honk',
583
456
  inArgs,
584
457
  outTypes.map(t => t.SIZE_IN_BYTES),
585
458
  );
@@ -587,23 +460,11 @@ export class BarretenbergApi {
587
460
  return out[0];
588
461
  }
589
462
 
590
- async acirProveAztecClient(acirVec: Uint8Array[], witnessVec: Uint8Array[]): Promise<[Uint8Array, Uint8Array]> {
463
+ async acirProveUltraKeccakHonk(acirVec: Uint8Array, witnessVec: Uint8Array): Promise<Uint8Array> {
591
464
  const inArgs = [acirVec, witnessVec].map(serializeBufferable);
592
- const outTypes: OutputType[] = [BufferDeserializer(), BufferDeserializer()];
593
- const result = await this.wasm.callWasmExport(
594
- 'acir_prove_aztec_client',
595
- inArgs,
596
- outTypes.map(t => t.SIZE_IN_BYTES),
597
- );
598
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
599
- return [out[0], out[1]];
600
- }
601
-
602
- async acirVerifyAztecClient(proofBuf: Uint8Array, vkBuf: Uint8Array): Promise<boolean> {
603
- const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
604
- const outTypes: OutputType[] = [BoolDeserializer()];
465
+ const outTypes: OutputType[] = [BufferDeserializer()];
605
466
  const result = await this.wasm.callWasmExport(
606
- 'acir_verify_aztec_client',
467
+ 'acir_prove_ultra_keccak_honk',
607
468
  inArgs,
608
469
  outTypes.map(t => t.SIZE_IN_BYTES),
609
470
  );
@@ -611,11 +472,11 @@ export class BarretenbergApi {
611
472
  return out[0];
612
473
  }
613
474
 
614
- async acirProveUltraHonk(acirVec: Uint8Array, witnessVec: Uint8Array): Promise<Uint8Array> {
475
+ async acirProveUltraStarknetHonk(acirVec: Uint8Array, witnessVec: Uint8Array): Promise<Uint8Array> {
615
476
  const inArgs = [acirVec, witnessVec].map(serializeBufferable);
616
477
  const outTypes: OutputType[] = [BufferDeserializer()];
617
478
  const result = await this.wasm.callWasmExport(
618
- 'acir_prove_ultra_honk',
479
+ 'acir_prove_ultra_starknet_honk',
619
480
  inArgs,
620
481
  outTypes.map(t => t.SIZE_IN_BYTES),
621
482
  );
@@ -623,11 +484,11 @@ export class BarretenbergApi {
623
484
  return out[0];
624
485
  }
625
486
 
626
- async acirProveUltraKeccakHonk(acirVec: Uint8Array, witnessVec: Uint8Array): Promise<Uint8Array> {
627
- const inArgs = [acirVec, witnessVec].map(serializeBufferable);
628
- const outTypes: OutputType[] = [BufferDeserializer()];
487
+ async acirVerifyUltraHonk(proofBuf: Uint8Array, vkBuf: Uint8Array): Promise<boolean> {
488
+ const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
489
+ const outTypes: OutputType[] = [BoolDeserializer()];
629
490
  const result = await this.wasm.callWasmExport(
630
- 'acir_prove_ultra_keccak_honk',
491
+ 'acir_verify_ultra_honk',
631
492
  inArgs,
632
493
  outTypes.map(t => t.SIZE_IN_BYTES),
633
494
  );
@@ -635,11 +496,11 @@ export class BarretenbergApi {
635
496
  return out[0];
636
497
  }
637
498
 
638
- async acirVerifyUltraHonk(proofBuf: Uint8Array, vkBuf: Uint8Array): Promise<boolean> {
499
+ async acirVerifyUltraKeccakHonk(proofBuf: Uint8Array, vkBuf: Uint8Array): Promise<boolean> {
639
500
  const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
640
501
  const outTypes: OutputType[] = [BoolDeserializer()];
641
502
  const result = await this.wasm.callWasmExport(
642
- 'acir_verify_ultra_honk',
503
+ 'acir_verify_ultra_keccak_honk',
643
504
  inArgs,
644
505
  outTypes.map(t => t.SIZE_IN_BYTES),
645
506
  );
@@ -647,11 +508,11 @@ export class BarretenbergApi {
647
508
  return out[0];
648
509
  }
649
510
 
650
- async acirVerifyUltraKeccakHonk(proofBuf: Uint8Array, vkBuf: Uint8Array): Promise<boolean> {
511
+ async acirVerifyUltraStarknetHonk(proofBuf: Uint8Array, vkBuf: Uint8Array): Promise<boolean> {
651
512
  const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
652
513
  const outTypes: OutputType[] = [BoolDeserializer()];
653
514
  const result = await this.wasm.callWasmExport(
654
- 'acir_verify_ultra_keccak_honk',
515
+ 'acir_verify_ultra_starknet_honk',
655
516
  inArgs,
656
517
  outTypes.map(t => t.SIZE_IN_BYTES),
657
518
  );
@@ -683,11 +544,11 @@ export class BarretenbergApi {
683
544
  return out[0];
684
545
  }
685
546
 
686
- async acirHonkSolidityVerifier(acirVec: Uint8Array, vkBuf: Uint8Array): Promise<string> {
687
- const inArgs = [acirVec, vkBuf].map(serializeBufferable);
547
+ async acirWriteVkUltraStarknetHonk(acirVec: Uint8Array): Promise<Uint8Array> {
548
+ const inArgs = [acirVec].map(serializeBufferable);
688
549
  const outTypes: OutputType[] = [BufferDeserializer()];
689
550
  const result = await this.wasm.callWasmExport(
690
- 'acir_honk_solidity_verifier',
551
+ 'acir_write_vk_ultra_starknet_honk',
691
552
  inArgs,
692
553
  outTypes.map(t => t.SIZE_IN_BYTES),
693
554
  );
@@ -730,9 +591,21 @@ export class BarretenbergApi {
730
591
  const out = result.map((r, i) => outTypes[i].fromBuffer(r));
731
592
  return out[0];
732
593
  }
594
+
595
+ async acirGatesAztecClient(ivcInputsBuf: Uint8Array): Promise<Uint8Array> {
596
+ const inArgs = [ivcInputsBuf].map(serializeBufferable);
597
+ const outTypes: OutputType[] = [BufferDeserializer()];
598
+ const result = await this.wasm.callWasmExport(
599
+ 'acir_gates_aztec_client',
600
+ inArgs,
601
+ outTypes.map(t => t.SIZE_IN_BYTES),
602
+ );
603
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
604
+ return out[0];
605
+ }
733
606
  }
734
607
  export class BarretenbergApiSync {
735
- constructor(protected wasm: BarretenbergWasm) {}
608
+ constructor(protected wasm: BarretenbergWasmMain) {}
736
609
 
737
610
  pedersenCommit(inputsBuffer: Fr[], ctxIndex: number): Point {
738
611
  const inArgs = [inputsBuffer, ctxIndex].map(serializeBufferable);
@@ -794,11 +667,11 @@ export class BarretenbergApiSync {
794
667
  return out[0];
795
668
  }
796
669
 
797
- poseidon2HashAccumulate(inputsBuffer: Fr[]): Fr {
670
+ poseidon2Hashes(inputsBuffer: Fr[]): Fr {
798
671
  const inArgs = [inputsBuffer].map(serializeBufferable);
799
672
  const outTypes: OutputType[] = [Fr];
800
673
  const result = this.wasm.callWasmExport(
801
- 'poseidon2_hash_accumulate',
674
+ 'poseidon2_hashes',
802
675
  inArgs,
803
676
  outTypes.map(t => t.SIZE_IN_BYTES),
804
677
  );
@@ -806,11 +679,11 @@ export class BarretenbergApiSync {
806
679
  return out[0];
807
680
  }
808
681
 
809
- poseidon2Hashes(inputsBuffer: Fr[]): Fr {
682
+ poseidon2Permutation(inputsBuffer: Fr[]): Fr[] {
810
683
  const inArgs = [inputsBuffer].map(serializeBufferable);
811
- const outTypes: OutputType[] = [Fr];
684
+ const outTypes: OutputType[] = [VectorDeserializer(Fr)];
812
685
  const result = this.wasm.callWasmExport(
813
- 'poseidon2_hashes',
686
+ 'poseidon2_permutation',
814
687
  inArgs,
815
688
  outTypes.map(t => t.SIZE_IN_BYTES),
816
689
  );
@@ -818,11 +691,11 @@ export class BarretenbergApiSync {
818
691
  return out[0];
819
692
  }
820
693
 
821
- poseidon2Permutation(inputsBuffer: Fr[]): Fr[] {
694
+ poseidon2HashAccumulate(inputsBuffer: Fr[]): Fr {
822
695
  const inArgs = [inputsBuffer].map(serializeBufferable);
823
- const outTypes: OutputType[] = [VectorDeserializer(Fr)];
696
+ const outTypes: OutputType[] = [Fr];
824
697
  const result = this.wasm.callWasmExport(
825
- 'poseidon2_permutation',
698
+ 'poseidon2_hash_accumulate',
826
699
  inArgs,
827
700
  outTypes.map(t => t.SIZE_IN_BYTES),
828
701
  );
@@ -854,127 +727,6 @@ export class BarretenbergApiSync {
854
727
  return out[0];
855
728
  }
856
729
 
857
- schnorrComputePublicKey(privateKey: Fr): Point {
858
- const inArgs = [privateKey].map(serializeBufferable);
859
- const outTypes: OutputType[] = [Point];
860
- const result = this.wasm.callWasmExport(
861
- 'schnorr_compute_public_key',
862
- inArgs,
863
- outTypes.map(t => t.SIZE_IN_BYTES),
864
- );
865
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
866
- return out[0];
867
- }
868
-
869
- schnorrNegatePublicKey(publicKeyBuffer: Point): Point {
870
- const inArgs = [publicKeyBuffer].map(serializeBufferable);
871
- const outTypes: OutputType[] = [Point];
872
- const result = this.wasm.callWasmExport(
873
- 'schnorr_negate_public_key',
874
- inArgs,
875
- outTypes.map(t => t.SIZE_IN_BYTES),
876
- );
877
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
878
- return out[0];
879
- }
880
-
881
- schnorrConstructSignature(message: Uint8Array, privateKey: Fr): [Buffer32, Buffer32] {
882
- const inArgs = [message, privateKey].map(serializeBufferable);
883
- const outTypes: OutputType[] = [Buffer32, Buffer32];
884
- const result = this.wasm.callWasmExport(
885
- 'schnorr_construct_signature',
886
- inArgs,
887
- outTypes.map(t => t.SIZE_IN_BYTES),
888
- );
889
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
890
- return out as any;
891
- }
892
-
893
- schnorrVerifySignature(message: Uint8Array, pubKey: Point, sigS: Buffer32, sigE: Buffer32): boolean {
894
- const inArgs = [message, pubKey, sigS, sigE].map(serializeBufferable);
895
- const outTypes: OutputType[] = [BoolDeserializer()];
896
- const result = this.wasm.callWasmExport(
897
- 'schnorr_verify_signature',
898
- inArgs,
899
- outTypes.map(t => t.SIZE_IN_BYTES),
900
- );
901
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
902
- return out[0];
903
- }
904
-
905
- schnorrMultisigCreateMultisigPublicKey(privateKey: Fq): Buffer128 {
906
- const inArgs = [privateKey].map(serializeBufferable);
907
- const outTypes: OutputType[] = [Buffer128];
908
- const result = this.wasm.callWasmExport(
909
- 'schnorr_multisig_create_multisig_public_key',
910
- inArgs,
911
- outTypes.map(t => t.SIZE_IN_BYTES),
912
- );
913
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
914
- return out[0];
915
- }
916
-
917
- schnorrMultisigValidateAndCombineSignerPubkeys(signerPubkeyBuf: Buffer128[]): [Point, boolean] {
918
- const inArgs = [signerPubkeyBuf].map(serializeBufferable);
919
- const outTypes: OutputType[] = [Point, BoolDeserializer()];
920
- const result = this.wasm.callWasmExport(
921
- 'schnorr_multisig_validate_and_combine_signer_pubkeys',
922
- inArgs,
923
- outTypes.map(t => t.SIZE_IN_BYTES),
924
- );
925
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
926
- return out as any;
927
- }
928
-
929
- schnorrMultisigConstructSignatureRound1(): [Buffer128, Buffer128] {
930
- const inArgs = [].map(serializeBufferable);
931
- const outTypes: OutputType[] = [Buffer128, Buffer128];
932
- const result = this.wasm.callWasmExport(
933
- 'schnorr_multisig_construct_signature_round_1',
934
- inArgs,
935
- outTypes.map(t => t.SIZE_IN_BYTES),
936
- );
937
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
938
- return out as any;
939
- }
940
-
941
- schnorrMultisigConstructSignatureRound2(
942
- message: Uint8Array,
943
- privateKey: Fq,
944
- signerRoundOnePrivateBuf: Buffer128,
945
- signerPubkeysBuf: Buffer128[],
946
- roundOnePublicBuf: Buffer128[],
947
- ): [Fq, boolean] {
948
- const inArgs = [message, privateKey, signerRoundOnePrivateBuf, signerPubkeysBuf, roundOnePublicBuf].map(
949
- serializeBufferable,
950
- );
951
- const outTypes: OutputType[] = [Fq, BoolDeserializer()];
952
- const result = this.wasm.callWasmExport(
953
- 'schnorr_multisig_construct_signature_round_2',
954
- inArgs,
955
- outTypes.map(t => t.SIZE_IN_BYTES),
956
- );
957
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
958
- return out as any;
959
- }
960
-
961
- schnorrMultisigCombineSignatures(
962
- message: Uint8Array,
963
- signerPubkeysBuf: Buffer128[],
964
- roundOneBuf: Buffer128[],
965
- roundTwoBuf: Fq[],
966
- ): [Buffer32, Buffer32, boolean] {
967
- const inArgs = [message, signerPubkeysBuf, roundOneBuf, roundTwoBuf].map(serializeBufferable);
968
- const outTypes: OutputType[] = [Buffer32, Buffer32, BoolDeserializer()];
969
- const result = this.wasm.callWasmExport(
970
- 'schnorr_multisig_combine_signatures',
971
- inArgs,
972
- outTypes.map(t => t.SIZE_IN_BYTES),
973
- );
974
- const out = result.map((r, i) => outTypes[i].fromBuffer(r));
975
- return out as any;
976
- }
977
-
978
730
  aesEncryptBufferCbc(input: Uint8Array, iv: Uint8Array, key: Uint8Array, length: number): Uint8Array {
979
731
  const inArgs = [input, iv, key, length].map(serializeBufferable);
980
732
  const outTypes: OutputType[] = [BufferDeserializer()];
@@ -1059,11 +811,7 @@ export class BarretenbergApiSync {
1059
811
  return;
1060
812
  }
1061
813
 
1062
- acirGetCircuitSizes(
1063
- constraintSystemBuf: Uint8Array,
1064
- recursive: boolean,
1065
- honkRecursion: boolean,
1066
- ): [number, number, number] {
814
+ acirGetCircuitSizes(constraintSystemBuf: Uint8Array, recursive: boolean, honkRecursion: boolean): [number, number] {
1067
815
  const inArgs = [constraintSystemBuf, recursive, honkRecursion].map(serializeBufferable);
1068
816
  const outTypes: OutputType[] = [NumberDeserializer(), NumberDeserializer()];
1069
817
  const result = this.wasm.callWasmExport(
@@ -1152,6 +900,30 @@ export class BarretenbergApiSync {
1152
900
  return out[0];
1153
901
  }
1154
902
 
903
+ acirProveAztecClient(ivcInputsBuf: Uint8Array): [Uint8Array, Uint8Array] {
904
+ const inArgs = [ivcInputsBuf].map(serializeBufferable);
905
+ const outTypes: OutputType[] = [BufferDeserializer(), BufferDeserializer()];
906
+ const result = this.wasm.callWasmExport(
907
+ 'acir_prove_aztec_client',
908
+ inArgs,
909
+ outTypes.map(t => t.SIZE_IN_BYTES),
910
+ );
911
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
912
+ return out as any;
913
+ }
914
+
915
+ acirVerifyAztecClient(proofBuf: Uint8Array, vkBuf: Uint8Array): boolean {
916
+ const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
917
+ const outTypes: OutputType[] = [BoolDeserializer()];
918
+ const result = this.wasm.callWasmExport(
919
+ 'acir_verify_aztec_client',
920
+ inArgs,
921
+ outTypes.map(t => t.SIZE_IN_BYTES),
922
+ );
923
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
924
+ return out[0];
925
+ }
926
+
1155
927
  acirLoadVerificationKey(acirComposerPtr: Ptr, vkBuf: Uint8Array): void {
1156
928
  const inArgs = [acirComposerPtr, vkBuf].map(serializeBufferable);
1157
929
  const outTypes: OutputType[] = [];
@@ -1224,6 +996,18 @@ export class BarretenbergApiSync {
1224
996
  return out[0];
1225
997
  }
1226
998
 
999
+ acirHonkSolidityVerifier(proofBuf: Uint8Array, vkBuf: Uint8Array): string {
1000
+ const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
1001
+ const outTypes: OutputType[] = [StringDeserializer()];
1002
+ const result = this.wasm.callWasmExport(
1003
+ 'acir_honk_solidity_verifier',
1004
+ inArgs,
1005
+ outTypes.map(t => t.SIZE_IN_BYTES),
1006
+ );
1007
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
1008
+ return out[0];
1009
+ }
1010
+
1227
1011
  acirSerializeProofIntoFields(acirComposerPtr: Ptr, proofBuf: Uint8Array, numInnerPublicInputs: number): Fr[] {
1228
1012
  const inArgs = [acirComposerPtr, proofBuf, numInnerPublicInputs].map(serializeBufferable);
1229
1013
  const outTypes: OutputType[] = [VectorDeserializer(Fr)];
@@ -1260,6 +1044,18 @@ export class BarretenbergApiSync {
1260
1044
  return out[0];
1261
1045
  }
1262
1046
 
1047
+ acirProveUltraKeccakHonk(acirVec: Uint8Array, witnessVec: Uint8Array): Uint8Array {
1048
+ const inArgs = [acirVec, witnessVec].map(serializeBufferable);
1049
+ const outTypes: OutputType[] = [BufferDeserializer()];
1050
+ const result = this.wasm.callWasmExport(
1051
+ 'acir_prove_ultra_keccak_honk',
1052
+ inArgs,
1053
+ outTypes.map(t => t.SIZE_IN_BYTES),
1054
+ );
1055
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
1056
+ return out[0];
1057
+ }
1058
+
1263
1059
  acirVerifyUltraHonk(proofBuf: Uint8Array, vkBuf: Uint8Array): boolean {
1264
1060
  const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
1265
1061
  const outTypes: OutputType[] = [BoolDeserializer()];
@@ -1272,6 +1068,18 @@ export class BarretenbergApiSync {
1272
1068
  return out[0];
1273
1069
  }
1274
1070
 
1071
+ acirVerifyUltraKeccakHonk(proofBuf: Uint8Array, vkBuf: Uint8Array): boolean {
1072
+ const inArgs = [proofBuf, vkBuf].map(serializeBufferable);
1073
+ const outTypes: OutputType[] = [BoolDeserializer()];
1074
+ const result = this.wasm.callWasmExport(
1075
+ 'acir_verify_ultra_keccak_honk',
1076
+ inArgs,
1077
+ outTypes.map(t => t.SIZE_IN_BYTES),
1078
+ );
1079
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
1080
+ return out[0];
1081
+ }
1082
+
1275
1083
  acirWriteVkUltraHonk(acirVec: Uint8Array): Uint8Array {
1276
1084
  const inArgs = [acirVec].map(serializeBufferable);
1277
1085
  const outTypes: OutputType[] = [BufferDeserializer()];
@@ -1284,6 +1092,18 @@ export class BarretenbergApiSync {
1284
1092
  return out[0];
1285
1093
  }
1286
1094
 
1095
+ acirWriteVkUltraKeccakHonk(acirVec: Uint8Array): Uint8Array {
1096
+ const inArgs = [acirVec].map(serializeBufferable);
1097
+ const outTypes: OutputType[] = [BufferDeserializer()];
1098
+ const result = this.wasm.callWasmExport(
1099
+ 'acir_write_vk_ultra_keccak_honk',
1100
+ inArgs,
1101
+ outTypes.map(t => t.SIZE_IN_BYTES),
1102
+ );
1103
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
1104
+ return out[0];
1105
+ }
1106
+
1287
1107
  acirProofAsFieldsUltraHonk(proofBuf: Uint8Array): Fr[] {
1288
1108
  const inArgs = [proofBuf].map(serializeBufferable);
1289
1109
  const outTypes: OutputType[] = [VectorDeserializer(Fr)];
@@ -1319,4 +1139,16 @@ export class BarretenbergApiSync {
1319
1139
  const out = result.map((r, i) => outTypes[i].fromBuffer(r));
1320
1140
  return out[0];
1321
1141
  }
1142
+
1143
+ acirGatesAztecClient(ivcInputsBuf: Uint8Array): Uint8Array {
1144
+ const inArgs = [ivcInputsBuf].map(serializeBufferable);
1145
+ const outTypes: OutputType[] = [BufferDeserializer()];
1146
+ const result = this.wasm.callWasmExport(
1147
+ 'acir_gates_aztec_client',
1148
+ inArgs,
1149
+ outTypes.map(t => t.SIZE_IN_BYTES),
1150
+ );
1151
+ const out = result.map((r, i) => outTypes[i].fromBuffer(r));
1152
+ return out[0];
1153
+ }
1322
1154
  }