@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.
- package/dest/browser/733.655674bbbb79bdf168c4.js +7 -0
- package/dest/browser/barretenberg-threads.js +2 -29
- package/dest/browser/barretenberg.js +2 -29
- package/dest/browser/index.js +11017 -8241
- package/dest/browser/main.worker.js +1316 -0
- package/dest/browser/thread.worker.js +1200 -0
- package/dest/node/barretenberg/backend.d.ts +12 -8
- package/dest/node/barretenberg/backend.d.ts.map +1 -1
- package/dest/node/barretenberg/backend.js +64 -15
- package/dest/node/barretenberg/index.d.ts +3 -1
- package/dest/node/barretenberg/index.d.ts.map +1 -1
- package/dest/node/barretenberg/index.js +6 -3
- package/dest/node/barretenberg_api/index.d.ts +23 -33
- package/dest/node/barretenberg_api/index.d.ts.map +1 -1
- package/dest/node/barretenberg_api/index.js +110 -190
- package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +9 -4
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -2
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +5 -5
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +2 -2
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +9 -4
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -2
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +5 -5
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +2 -2
- package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +7 -1
- package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/helpers/browser/index.js +15 -2
- package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/helpers/node/index.js +1 -1
- package/dest/node/barretenberg_wasm/index.d.ts +0 -13
- package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/index.js +2 -18
- package/dest/node/barretenberg_wasm/index.test.js +6 -6
- package/dest/node/bindgen/mappings.d.ts.map +1 -1
- package/dest/node/bindgen/mappings.js +2 -1
- package/dest/node/bindgen/typescript.js +4 -4
- package/dest/node/index.d.ts +2 -2
- package/dest/node/index.d.ts.map +1 -1
- package/dest/node/index.js +1 -1
- package/dest/node/main.d.ts +0 -1
- package/dest/node/main.d.ts.map +1 -1
- package/dest/node/main.js +41 -38
- package/dest/node-cjs/barretenberg/backend.d.ts +12 -8
- package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/backend.js +64 -15
- package/dest/node-cjs/barretenberg/index.d.ts +3 -1
- package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/index.js +12 -9
- package/dest/node-cjs/barretenberg_api/index.d.ts +23 -33
- package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_api/index.js +109 -189
- package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +9 -4
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -2
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +5 -5
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +2 -2
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +9 -4
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -2
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +5 -5
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +2 -2
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +7 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +17 -3
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +1 -1
- package/dest/node-cjs/barretenberg_wasm/index.d.ts +0 -13
- package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/index.js +6 -23
- package/dest/node-cjs/barretenberg_wasm/index.test.js +6 -6
- package/dest/node-cjs/bindgen/mappings.d.ts.map +1 -1
- package/dest/node-cjs/bindgen/mappings.js +2 -1
- package/dest/node-cjs/bindgen/typescript.js +4 -4
- package/dest/node-cjs/index.d.ts +2 -2
- package/dest/node-cjs/index.d.ts.map +1 -1
- package/dest/node-cjs/index.js +1 -1
- package/dest/node-cjs/main.d.ts +0 -1
- package/dest/node-cjs/main.d.ts.map +1 -1
- package/dest/node-cjs/main.js +42 -40
- package/package.json +10 -12
- package/src/barretenberg/backend.ts +86 -18
- package/src/barretenberg/index.ts +7 -3
- package/src/barretenberg_api/index.ts +175 -343
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +8 -3
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +4 -6
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +1 -1
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +8 -3
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +4 -6
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +1 -1
- package/src/barretenberg_wasm/helpers/browser/index.ts +18 -2
- package/src/barretenberg_wasm/helpers/node/index.ts +2 -2
- package/src/barretenberg_wasm/index.test.ts +7 -7
- package/src/barretenberg_wasm/index.ts +1 -24
- package/src/bindgen/mappings.ts +1 -0
- package/src/bindgen/typescript.ts +4 -4
- package/src/index.ts +2 -2
- package/src/main.ts +43 -42
- package/dest/browser/522.6386c00ebfb22619e11b.js +0 -3
- package/dest/browser/barretenberg/backend.d.ts +0 -89
- package/dest/browser/barretenberg/backend.d.ts.map +0 -1
- package/dest/browser/barretenberg/index.d.ts +0 -51
- package/dest/browser/barretenberg/index.d.ts.map +0 -1
- package/dest/browser/barretenberg/verifier.d.ts +0 -16
- package/dest/browser/barretenberg/verifier.d.ts.map +0 -1
- package/dest/browser/barretenberg_api/index.d.ts +0 -114
- package/dest/browser/barretenberg_api/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +0 -44
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +0 -4
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +0 -21
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +0 -47
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +0 -4
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +0 -28
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +0 -6
- package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/helpers/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts +0 -22
- package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/node/node_endpoint.d.ts +0 -8
- package/dest/browser/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/index.d.ts +0 -18
- package/dest/browser/barretenberg_wasm/index.d.ts.map +0 -1
- package/dest/browser/bigint-array/index.d.ts +0 -18
- package/dest/browser/bigint-array/index.d.ts.map +0 -1
- package/dest/browser/crs/browser/cached_net_crs.d.ts +0 -43
- package/dest/browser/crs/browser/cached_net_crs.d.ts.map +0 -1
- package/dest/browser/crs/browser/index.d.ts +0 -2
- package/dest/browser/crs/browser/index.d.ts.map +0 -1
- package/dest/browser/crs/index.d.ts +0 -2
- package/dest/browser/crs/index.d.ts.map +0 -1
- package/dest/browser/crs/net_crs.d.ts +0 -85
- package/dest/browser/crs/net_crs.d.ts.map +0 -1
- package/dest/browser/crs/node/index.d.ts +0 -38
- package/dest/browser/crs/node/index.d.ts.map +0 -1
- package/dest/browser/index.d.ts +0 -5
- package/dest/browser/index.d.ts.map +0 -1
- package/dest/browser/proof/index.d.ts +0 -20
- package/dest/browser/proof/index.d.ts.map +0 -1
- package/dest/browser/random/browser/index.d.ts +0 -2
- package/dest/browser/random/browser/index.d.ts.map +0 -1
- package/dest/browser/random/index.d.ts +0 -2
- package/dest/browser/random/index.d.ts.map +0 -1
- package/dest/browser/random/node/index.d.ts +0 -2
- package/dest/browser/random/node/index.d.ts.map +0 -1
- package/dest/browser/retry/index.d.ts +0 -26
- package/dest/browser/retry/index.d.ts.map +0 -1
- package/dest/browser/serialize/buffer_reader.d.ts +0 -28
- package/dest/browser/serialize/buffer_reader.d.ts.map +0 -1
- package/dest/browser/serialize/index.d.ts +0 -4
- package/dest/browser/serialize/index.d.ts.map +0 -1
- package/dest/browser/serialize/output_type.d.ts +0 -11
- package/dest/browser/serialize/output_type.d.ts.map +0 -1
- package/dest/browser/serialize/serialize.d.ts +0 -53
- package/dest/browser/serialize/serialize.d.ts.map +0 -1
- package/dest/browser/thread.worker.worker.worker.js.LICENSE.txt +0 -5
- package/dest/browser/types/fields.d.ts +0 -44
- package/dest/browser/types/fields.d.ts.map +0 -1
- package/dest/browser/types/fixed_size_buffer.d.ts +0 -26
- package/dest/browser/types/fixed_size_buffer.d.ts.map +0 -1
- package/dest/browser/types/index.d.ts +0 -6
- package/dest/browser/types/index.d.ts.map +0 -1
- package/dest/browser/types/point.d.ts +0 -17
- package/dest/browser/types/point.d.ts.map +0 -1
- package/dest/browser/types/ptr.d.ts +0 -13
- package/dest/browser/types/ptr.d.ts.map +0 -1
- package/dest/browser/types/raw_buffer.d.ts +0 -3
- package/dest/browser/types/raw_buffer.d.ts.map +0 -1
- package/dest/node/barretenberg/schnorr.test.d.ts +0 -2
- package/dest/node/barretenberg/schnorr.test.d.ts.map +0 -1
- package/dest/node/barretenberg/schnorr.test.js +0 -113
- package/dest/node-cjs/barretenberg/schnorr.test.d.ts +0 -2
- package/dest/node-cjs/barretenberg/schnorr.test.d.ts.map +0 -1
- package/dest/node-cjs/barretenberg/schnorr.test.js +0 -115
- package/src/barretenberg/schnorr.test.ts +0 -182
- /package/dest/browser/{main.worker.worker.js.LICENSE.txt → main.worker.js.LICENSE.txt} +0 -0
- /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,
|
|
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:
|
|
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
|
|
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
|
-
'
|
|
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
|
|
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
|
-
'
|
|
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
|
|
102
|
+
async poseidon2HashAccumulate(inputsBuffer: Fr[]): Promise<Fr> {
|
|
124
103
|
const inArgs = [inputsBuffer].map(serializeBufferable);
|
|
125
|
-
const outTypes: OutputType[] = [
|
|
104
|
+
const outTypes: OutputType[] = [Fr];
|
|
126
105
|
const result = await this.wasm.callWasmExport(
|
|
127
|
-
'
|
|
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
|
|
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
|
|
451
|
+
async acirProveUltraHonk(acirVec: Uint8Array, witnessVec: Uint8Array): Promise<Uint8Array> {
|
|
579
452
|
const inArgs = [acirVec, witnessVec].map(serializeBufferable);
|
|
580
|
-
const outTypes: OutputType[] = [
|
|
453
|
+
const outTypes: OutputType[] = [BufferDeserializer()];
|
|
581
454
|
const result = await this.wasm.callWasmExport(
|
|
582
|
-
'
|
|
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
|
|
463
|
+
async acirProveUltraKeccakHonk(acirVec: Uint8Array, witnessVec: Uint8Array): Promise<Uint8Array> {
|
|
591
464
|
const inArgs = [acirVec, witnessVec].map(serializeBufferable);
|
|
592
|
-
const outTypes: OutputType[] = [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
|
-
'
|
|
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
|
|
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
|
-
'
|
|
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
|
|
627
|
-
const inArgs = [
|
|
628
|
-
const outTypes: OutputType[] = [
|
|
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
|
-
'
|
|
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
|
|
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
|
-
'
|
|
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
|
|
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
|
-
'
|
|
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
|
|
687
|
-
const inArgs = [acirVec
|
|
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
|
-
'
|
|
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:
|
|
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
|
-
|
|
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
|
-
'
|
|
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
|
-
|
|
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
|
-
'
|
|
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
|
-
|
|
694
|
+
poseidon2HashAccumulate(inputsBuffer: Fr[]): Fr {
|
|
822
695
|
const inArgs = [inputsBuffer].map(serializeBufferable);
|
|
823
|
-
const outTypes: OutputType[] = [
|
|
696
|
+
const outTypes: OutputType[] = [Fr];
|
|
824
697
|
const result = this.wasm.callWasmExport(
|
|
825
|
-
'
|
|
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
|
}
|