@aztec/bb.js 2.0.0-nightly.20250821 → 2.0.0-nightly.20250823
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/barretenberg/backend.d.ts.map +1 -1
- package/dest/browser/barretenberg/backend.js +6 -13
- package/dest/browser/barretenberg/index.d.ts +1 -2
- package/dest/browser/barretenberg/index.d.ts.map +1 -1
- package/dest/browser/barretenberg/index.js +1 -4
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
- package/dest/browser/cbind/generated/api_types.d.ts +0 -25
- package/dest/browser/cbind/generated/api_types.d.ts.map +1 -1
- package/dest/browser/cbind/generated/api_types.js +1 -25
- package/dest/browser/cbind/generated/async.d.ts +1 -2
- package/dest/browser/cbind/generated/async.d.ts.map +1 -1
- package/dest/browser/cbind/generated/async.js +2 -11
- package/dest/browser/cbind/generated/native.d.ts +1 -2
- package/dest/browser/cbind/generated/native.d.ts.map +1 -1
- package/dest/browser/cbind/generated/native.js +2 -11
- package/dest/browser/cbind/generated/sync.d.ts +1 -2
- package/dest/browser/cbind/generated/sync.d.ts.map +1 -1
- package/dest/browser/cbind/generated/sync.js +2 -10
- package/dest/browser/proof/index.js +3 -3
- package/dest/node/barretenberg/backend.d.ts.map +1 -1
- package/dest/node/barretenberg/backend.js +6 -13
- package/dest/node/barretenberg/index.d.ts +1 -2
- package/dest/node/barretenberg/index.d.ts.map +1 -1
- package/dest/node/barretenberg/index.js +1 -4
- package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node/cbind/generated/api_types.d.ts +0 -25
- package/dest/node/cbind/generated/api_types.d.ts.map +1 -1
- package/dest/node/cbind/generated/api_types.js +1 -25
- package/dest/node/cbind/generated/async.d.ts +1 -2
- package/dest/node/cbind/generated/async.d.ts.map +1 -1
- package/dest/node/cbind/generated/async.js +2 -11
- package/dest/node/cbind/generated/native.d.ts +1 -2
- package/dest/node/cbind/generated/native.d.ts.map +1 -1
- package/dest/node/cbind/generated/native.js +2 -11
- package/dest/node/cbind/generated/sync.d.ts +1 -2
- package/dest/node/cbind/generated/sync.d.ts.map +1 -1
- package/dest/node/cbind/generated/sync.js +2 -10
- package/dest/node/proof/index.js +3 -3
- package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/backend.js +6 -13
- package/dest/node-cjs/barretenberg/index.d.ts +1 -2
- package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/index.js +1 -4
- package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node-cjs/cbind/generated/api_types.d.ts +0 -25
- package/dest/node-cjs/cbind/generated/api_types.d.ts.map +1 -1
- package/dest/node-cjs/cbind/generated/api_types.js +1 -29
- package/dest/node-cjs/cbind/generated/async.d.ts +1 -2
- package/dest/node-cjs/cbind/generated/async.d.ts.map +1 -1
- package/dest/node-cjs/cbind/generated/async.js +1 -10
- package/dest/node-cjs/cbind/generated/native.d.ts +1 -2
- package/dest/node-cjs/cbind/generated/native.d.ts.map +1 -1
- package/dest/node-cjs/cbind/generated/native.js +1 -10
- package/dest/node-cjs/cbind/generated/sync.d.ts +1 -2
- package/dest/node-cjs/cbind/generated/sync.d.ts.map +1 -1
- package/dest/node-cjs/cbind/generated/sync.js +1 -9
- package/dest/node-cjs/proof/index.js +3 -3
- package/package.json +1 -1
- package/src/barretenberg/backend.ts +8 -12
- package/src/barretenberg/index.ts +2 -4
- package/src/proof/index.ts +3 -3
|
@@ -231,7 +231,7 @@ export class AztecClientBackend {
|
|
|
231
231
|
await this.instantiate();
|
|
232
232
|
|
|
233
233
|
// Queue IVC start with the number of circuits
|
|
234
|
-
this.api.clientIvcStart({ numCircuits: this.acirBuf.length
|
|
234
|
+
this.api.clientIvcStart({ numCircuits: this.acirBuf.length });
|
|
235
235
|
|
|
236
236
|
// Queue load and accumulate for each circuit
|
|
237
237
|
for (let i = 0; i < this.acirBuf.length; i++) {
|
|
@@ -248,23 +248,18 @@ export class AztecClientBackend {
|
|
|
248
248
|
verificationKey: Buffer.from(vk),
|
|
249
249
|
}
|
|
250
250
|
});
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
this.api.clientIvcHidingKernel({
|
|
258
|
-
witness: Buffer.from(witness),
|
|
259
|
-
});
|
|
260
|
-
}
|
|
251
|
+
|
|
252
|
+
// Accumulate with witness
|
|
253
|
+
this.api.clientIvcAccumulate({
|
|
254
|
+
witness: Buffer.from(witness),
|
|
255
|
+
});
|
|
256
|
+
|
|
261
257
|
}
|
|
262
258
|
|
|
263
259
|
|
|
264
260
|
|
|
265
261
|
// Generate the proof (and wait for all previous steps to finish)
|
|
266
262
|
const proveResult = await this.api.clientIvcProve({});
|
|
267
|
-
|
|
268
263
|
// The API currently expects a msgpack-encoded API.
|
|
269
264
|
const proof = new Encoder({useRecords: false}).encode(fromClientIVCProof(proveResult.proof));
|
|
270
265
|
// Generate the VK
|
|
@@ -273,6 +268,7 @@ export class AztecClientBackend {
|
|
|
273
268
|
bytecode: this.acirBuf[this.acirBuf.length - 1],
|
|
274
269
|
} });
|
|
275
270
|
|
|
271
|
+
|
|
276
272
|
// Note: Verification may not work correctly until we properly serialize the proof
|
|
277
273
|
if (!(await this.verify(proof, vkResult.bytes))) {
|
|
278
274
|
throw new AztecClientBackendError('Failed to verify the private (ClientIVC) transaction proof!');
|
|
@@ -8,7 +8,7 @@ import { RawBuffer } from '../types/raw_buffer.js';
|
|
|
8
8
|
import { fetchModuleAndThreads } from '../barretenberg_wasm/index.js';
|
|
9
9
|
import { createDebugLogger } from '../log/index.js';
|
|
10
10
|
import { AsyncApi } from '../cbind/generated/async.js';
|
|
11
|
-
import { BbApiBase, CircuitComputeVk, CircuitProve, CircuitVerify, ClientIvcAccumulate, ClientIvcComputeIvcVk, ClientIvcStats, ClientIvcLoad, ClientIvcProve, ClientIvcStart, ClientIvcVerify, VkAsFields
|
|
11
|
+
import { BbApiBase, CircuitComputeVk, CircuitProve, CircuitVerify, ClientIvcAccumulate, ClientIvcComputeIvcVk, ClientIvcStats, ClientIvcLoad, ClientIvcProve, ClientIvcStart, ClientIvcVerify, VkAsFields } from '../cbind/generated/api_types.js';
|
|
12
12
|
|
|
13
13
|
export { BarretenbergVerifier } from './verifier.js';
|
|
14
14
|
export { UltraHonkBackend, AztecClientBackend } from './backend.js';
|
|
@@ -133,9 +133,7 @@ export class Barretenberg extends BarretenbergApi {
|
|
|
133
133
|
return this.bbApi.clientIvcAccumulate(command);
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
|
|
137
|
-
return this.bbApi.clientIvcHidingKernel(command);
|
|
138
|
-
}
|
|
136
|
+
|
|
139
137
|
|
|
140
138
|
|
|
141
139
|
async clientIvcProve(command: ClientIvcProve) {
|
package/src/proof/index.ts
CHANGED
|
@@ -77,15 +77,15 @@ export function uint8ArrayToHex(buffer: Uint8Array): string {
|
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
export function hexToUint8Array(hex: string): Uint8Array {
|
|
80
|
-
const
|
|
80
|
+
const sanitizedHex = BigInt(hex).toString(16).padStart(64, '0');
|
|
81
81
|
|
|
82
|
-
const len =
|
|
82
|
+
const len = sanitizedHex.length / 2;
|
|
83
83
|
const u8 = new Uint8Array(len);
|
|
84
84
|
|
|
85
85
|
let i = 0;
|
|
86
86
|
let j = 0;
|
|
87
87
|
while (i < len) {
|
|
88
|
-
u8[i] = parseInt(
|
|
88
|
+
u8[i] = parseInt(sanitizedHex.slice(j, j + 2), 16);
|
|
89
89
|
i += 1;
|
|
90
90
|
j += 2;
|
|
91
91
|
}
|