@aztec/bb-prover 0.85.0-alpha-testnet.2 → 0.85.0-alpha-testnet.4

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 (39) hide show
  1. package/dest/bb/execute.d.ts +1 -1
  2. package/dest/bb/execute.d.ts.map +1 -1
  3. package/dest/bb/execute.js +9 -14
  4. package/dest/prover/client/bb_private_kernel_prover.d.ts.map +1 -0
  5. package/dest/prover/{bb_private_kernel_prover.js → client/bb_private_kernel_prover.js} +3 -3
  6. package/dest/prover/{bb_native_private_kernel_prover.d.ts → client/native/bb_native_private_kernel_prover.d.ts} +3 -4
  7. package/dest/prover/client/native/bb_native_private_kernel_prover.d.ts.map +1 -0
  8. package/dest/prover/{bb_native_private_kernel_prover.js → client/native/bb_native_private_kernel_prover.js} +7 -21
  9. package/dest/{wasm → prover/client/wasm}/bb_wasm_private_kernel_prover.d.ts +1 -1
  10. package/dest/prover/client/wasm/bb_wasm_private_kernel_prover.d.ts.map +1 -0
  11. package/dest/{wasm → prover/client/wasm}/bb_wasm_private_kernel_prover.js +3 -2
  12. package/dest/prover/client/wasm/bundle.d.ts.map +1 -0
  13. package/dest/{wasm → prover/client/wasm}/bundle.js +1 -1
  14. package/dest/prover/client/wasm/lazy.d.ts.map +1 -0
  15. package/dest/{wasm → prover/client/wasm}/lazy.js +1 -1
  16. package/dest/prover/index.d.ts +1 -2
  17. package/dest/prover/index.d.ts.map +1 -1
  18. package/dest/prover/index.js +1 -2
  19. package/dest/prover/{bb_prover.d.ts → server/bb_prover.d.ts} +2 -2
  20. package/dest/prover/server/bb_prover.d.ts.map +1 -0
  21. package/dest/prover/{bb_prover.js → server/bb_prover.js} +7 -7
  22. package/package.json +18 -19
  23. package/src/bb/execute.ts +6 -21
  24. package/src/prover/{bb_private_kernel_prover.ts → client/bb_private_kernel_prover.ts} +3 -3
  25. package/src/prover/{bb_native_private_kernel_prover.ts → client/native/bb_native_private_kernel_prover.ts} +8 -30
  26. package/src/{wasm → prover/client/wasm}/bb_wasm_private_kernel_prover.ts +6 -2
  27. package/src/{wasm → prover/client/wasm}/bundle.ts +1 -1
  28. package/src/{wasm → prover/client/wasm}/lazy.ts +1 -1
  29. package/src/prover/index.ts +1 -2
  30. package/src/prover/{bb_prover.ts → server/bb_prover.ts} +8 -8
  31. package/dest/prover/bb_native_private_kernel_prover.d.ts.map +0 -1
  32. package/dest/prover/bb_private_kernel_prover.d.ts.map +0 -1
  33. package/dest/prover/bb_prover.d.ts.map +0 -1
  34. package/dest/wasm/bb_wasm_private_kernel_prover.d.ts.map +0 -1
  35. package/dest/wasm/bundle.d.ts.map +0 -1
  36. package/dest/wasm/lazy.d.ts.map +0 -1
  37. /package/dest/prover/{bb_private_kernel_prover.d.ts → client/bb_private_kernel_prover.d.ts} +0 -0
  38. /package/dest/{wasm → prover/client/wasm}/bundle.d.ts +0 -0
  39. /package/dest/{wasm → prover/client/wasm}/lazy.d.ts +0 -0
@@ -55,7 +55,7 @@ type BBExecResult = {
55
55
  * @returns The completed partial witness outputted from the circuit
56
56
  */
57
57
  export declare function executeBB(pathToBB: string, command: string, args: string[], logger: LogFn, timeout?: number, resultParser?: (code: number) => boolean): Promise<BBExecResult>;
58
- export declare function executeBbClientIvcProof(pathToBB: string, workingDirectory: string, bytecodeStackPath: string, witnessStackPath: string, log: LogFn, writeVk?: boolean): Promise<BBFailure | BBSuccess>;
58
+ export declare function executeBbClientIvcProof(pathToBB: string, workingDirectory: string, inputsPath: string, log: LogFn, writeVk?: boolean): Promise<BBFailure | BBSuccess>;
59
59
  /**
60
60
  * Used for generating proofs of noir circuits.
61
61
  * It is assumed that the working directory is a temporary and/or random directory used solely for generating this proof.
@@ -1 +1 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/bb/execute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/bb/execute.ts"],"names":[],"mappings":";;AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAMlF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,eAAO,MAAM,WAAW,OAAO,CAAC;AAChC,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AACnD,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AACtD,eAAO,MAAM,6BAA6B,8BAA8B,CAAC;AACzE,eAAO,MAAM,cAAc,UAAU,CAAC;AACtC,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AACzD,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AACpD,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AACxD,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAClE,eAAO,MAAM,0BAA0B,UAAU,CAAC;AAElD,oBAAY,SAAS;IACnB,OAAO,IAAA;IACP,OAAO,IAAA;IACP,eAAe,IAAA;CAChB;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,eAAe,CAAC;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAE7C,MAAM,MAAM,oBAAoB,GAAG,OAAO,WAAW,GAAG,OAAO,cAAc,CAAC;AAE9E,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACvB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,KAAK,EACb,OAAO,CAAC,EAAE,MAAM,EAChB,YAAY,UAAU,MAAM,YAAe,GAC1C,OAAO,CAAC,YAAY,CAAC,CAwCvB;AAED,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,KAAK,EACV,OAAO,UAAQ,GACd,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAoDhC;AAgBD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO,EAClB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,KAAK,GACT,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAiEhC;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,KAAK,GACT,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAuDhC;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CA+DhC;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,gBAAgB,EACxB,MAAM,EAAE,MAAM,EACd,gBAAgB,GAAE,OAAe,GAChC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAwEhC;AAED;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,MAAM,EAC3B,eAAe,EAAE,eAAe,EAChC,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAShC;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,MAAM,EAC3B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAEhC;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,sBAAsB,EACpC,mBAAmB,EAAE,MAAM,EAC3B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAmBhC;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,KAAK,GACT,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CA2BhC;AAkED,wBAAsB,kCAAkC,CACtD,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,KAAK,GACT,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CA8ChC;AAED;;;;;;;;GAQG;AACH,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,eAAe,GAAG,WAAW,EACrC,GAAG,EAAE,KAAK,GACT,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CA0DhC"}
@@ -86,7 +86,7 @@ export var BB_RESULT = /*#__PURE__*/ function(BB_RESULT) {
86
86
  signal: undefined
87
87
  }));
88
88
  }
89
- export async function executeBbClientIvcProof(pathToBB, workingDirectory, bytecodeStackPath, witnessStackPath, log, writeVk = false) {
89
+ export async function executeBbClientIvcProof(pathToBB, workingDirectory, inputsPath, log, writeVk = false) {
90
90
  // Check that the working directory exists
91
91
  try {
92
92
  await fs.access(workingDirectory);
@@ -107,28 +107,23 @@ export async function executeBbClientIvcProof(pathToBB, workingDirectory, byteco
107
107
  }
108
108
  try {
109
109
  // Write the bytecode to the working directory
110
- log(`bytecodePath ${bytecodeStackPath}`);
111
- log(`outputPath ${outputPath}`);
110
+ log(`inputsPath ${inputsPath}`);
111
+ const timer = new Timer();
112
+ const logFunction = (message)=>{
113
+ log(`bb - ${message}`);
114
+ };
112
115
  const args = [
113
116
  '-o',
114
117
  outputPath,
115
- '-b',
116
- bytecodeStackPath,
117
- '-w',
118
- witnessStackPath,
118
+ '--ivc_inputs_path',
119
+ inputsPath,
119
120
  '-v',
120
121
  '--scheme',
121
- 'client_ivc',
122
- '--input_type',
123
- 'runtime_stack'
122
+ 'client_ivc'
124
123
  ];
125
124
  if (writeVk) {
126
125
  args.push('--write_vk');
127
126
  }
128
- const timer = new Timer();
129
- const logFunction = (message)=>{
130
- log(`bb - ${message}`);
131
- };
132
127
  const result = await executeBB(pathToBB, 'prove', args, logFunction);
133
128
  const durationMs = timer.ms();
134
129
  if (result.status == 0) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bb_private_kernel_prover.d.ts","sourceRoot":"","sources":["../../../src/prover/client/bb_private_kernel_prover.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { createLogger } from '@aztec/foundation/log';
2
2
  import { Timer } from '@aztec/foundation/timer';
3
3
  import { convertPrivateKernelInitInputsToWitnessMapWithAbi, convertPrivateKernelInitOutputsFromWitnessMapWithAbi, convertPrivateKernelInnerInputsToWitnessMapWithAbi, convertPrivateKernelInnerOutputsFromWitnessMapWithAbi, convertPrivateKernelResetInputsToWitnessMapWithAbi, convertPrivateKernelResetOutputsFromWitnessMapWithAbi, convertPrivateKernelTailForPublicOutputsFromWitnessMapWithAbi, convertPrivateKernelTailInputsToWitnessMapWithAbi, convertPrivateKernelTailOutputsFromWitnessMapWithAbi, convertPrivateKernelTailToPublicInputsToWitnessMapWithAbi, foreignCallHandler, getPrivateKernelResetArtifactName, updateResetCircuitSampleInputs } from '@aztec/noir-protocol-circuits-types/client';
4
- import { mapProtocolArtifactNameToCircuitName } from '../stats.js';
4
+ import { mapProtocolArtifactNameToCircuitName } from '../../stats.js';
5
5
  export class BBPrivateKernelProver {
6
6
  artifactProvider;
7
7
  simulationProvider;
@@ -81,7 +81,7 @@ export class BBPrivateKernelProver {
81
81
  inputSize: inputs.toBuffer().length,
82
82
  outputSize: output.toBuffer().length
83
83
  });
84
- const verificationKey = (await this.artifactProvider.getCircuitVkByName(circuitType)).keyAsFields;
84
+ const verificationKey = await this.artifactProvider.getCircuitVkByName(circuitType);
85
85
  const bytecode = Buffer.from(compiledCircuit.bytecode, 'base64');
86
86
  const kernelOutput = {
87
87
  publicInputs: output,
@@ -94,7 +94,7 @@ export class BBPrivateKernelProver {
94
94
  async makeEmptyKernelSimulateOutput(publicInputs, circuitType) {
95
95
  const kernelProofOutput = {
96
96
  publicInputs,
97
- verificationKey: (await this.artifactProvider.getCircuitVkByName(circuitType)).keyAsFields,
97
+ verificationKey: await this.artifactProvider.getCircuitVkByName(circuitType),
98
98
  outputWitness: new Map(),
99
99
  bytecode: Buffer.from([])
100
100
  };
@@ -2,10 +2,10 @@
2
2
  /// <reference types="node" resolution-mode="require"/>
3
3
  import { type Logger } from '@aztec/foundation/log';
4
4
  import type { SimulationProvider } from '@aztec/simulator/server';
5
- import type { PrivateExecutionStep } from '@aztec/stdlib/kernel';
5
+ import { type PrivateExecutionStep } from '@aztec/stdlib/kernel';
6
6
  import type { ClientIvcProof } from '@aztec/stdlib/proofs';
7
- import type { BBConfig } from '../config.js';
8
- import { BBPrivateKernelProver } from './bb_private_kernel_prover.js';
7
+ import type { BBConfig } from '../../../config.js';
8
+ import { BBPrivateKernelProver } from '../bb_private_kernel_prover.js';
9
9
  /**
10
10
  * This proof creator implementation uses the native bb binary.
11
11
  */
@@ -17,7 +17,6 @@ export declare class BBNativePrivateKernelProver extends BBPrivateKernelProver {
17
17
  protected log: Logger;
18
18
  private constructor();
19
19
  static new(config: BBConfig, simulationProvider: SimulationProvider, log?: Logger): Promise<BBNativePrivateKernelProver>;
20
- private _createClientIvcProofFiles;
21
20
  private _createClientIvcProof;
22
21
  createClientIvcProof(executionSteps: PrivateExecutionStep[]): Promise<ClientIvcProof>;
23
22
  computeGateCountForCircuit(bytecode: Buffer, circuitName: string): Promise<number>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bb_native_private_kernel_prover.d.ts","sourceRoot":"","sources":["../../../../src/prover/client/native/bb_native_private_kernel_prover.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAElE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,KAAK,oBAAoB,EAAkC,MAAM,sBAAsB,CAAC;AACjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAM3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAEvE;;GAEG;AACH,qBAAa,2BAA4B,SAAQ,qBAAqB;IAElE,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,WAAW;cACA,kBAAkB,EAAE,kBAAkB;cACtC,GAAG;IALxB,OAAO;WAUa,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,MAAM;YAWhF,qBAAqB;IAuBb,oBAAoB,CAAC,cAAc,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAQrF,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBxG,OAAO,CAAC,cAAc;CAavB"}
@@ -1,13 +1,12 @@
1
1
  import { runInDirectory } from '@aztec/foundation/fs';
2
2
  import { createLogger } from '@aztec/foundation/log';
3
- import { serializeWitness } from '@aztec/noir-noirc_abi';
4
3
  import { BundleArtifactProvider } from '@aztec/noir-protocol-circuits-types/client/bundle';
5
- import { encode } from '@msgpack/msgpack';
4
+ import { serializePrivateExecutionSteps } from '@aztec/stdlib/kernel';
6
5
  import { promises as fs } from 'fs';
7
6
  import path from 'path';
8
- import { BB_RESULT, computeGateCountForCircuit, executeBbClientIvcProof } from '../bb/execute.js';
9
- import { BBPrivateKernelProver } from './bb_private_kernel_prover.js';
10
- import { readClientIVCProofFromOutputDirectory } from './proof_utils.js';
7
+ import { BB_RESULT, computeGateCountForCircuit, executeBbClientIvcProof } from '../../../bb/execute.js';
8
+ import { readClientIVCProofFromOutputDirectory } from '../../proof_utils.js';
9
+ import { BBPrivateKernelProver } from '../bb_private_kernel_prover.js';
11
10
  /**
12
11
  * This proof creator implementation uses the native bb binary.
13
12
  */ export class BBNativePrivateKernelProver extends BBPrivateKernelProver {
@@ -25,23 +24,10 @@ import { readClientIVCProofFromOutputDirectory } from './proof_utils.js';
25
24
  });
26
25
  return new BBNativePrivateKernelProver(config.bbBinaryPath, config.bbWorkingDirectory, !!config.bbSkipCleanup, simulationProvider, log);
27
26
  }
28
- // TODO(#7371): This is duplicated.
29
- // Longer term we won't use this hacked together msgpack format
30
- // Leaving duplicated as this eventually bb will provide a serialization
31
- // helper for passing to a generic msgpack RPC endpoint.
32
- async _createClientIvcProofFiles(directory, executionSteps) {
33
- const acirPath = path.join(directory, 'acir.msgpack');
34
- const witnessPath = path.join(directory, 'witnesses.msgpack');
35
- await fs.writeFile(acirPath, encode(executionSteps.map((map)=>map.bytecode)));
36
- await fs.writeFile(witnessPath, encode(executionSteps.map((map)=>serializeWitness(map.witness))));
37
- return {
38
- acirPath,
39
- witnessPath
40
- };
41
- }
42
27
  async _createClientIvcProof(directory, executionSteps) {
43
- await this._createClientIvcProofFiles(directory, executionSteps);
44
- const provingResult = await executeBbClientIvcProof(this.bbBinaryPath, directory, path.join(directory, 'acir.msgpack'), path.join(directory, 'witnesses.msgpack'), this.log.info);
28
+ const inputsPath = path.join(directory, 'ivc-inputs.msgpack');
29
+ await fs.writeFile(inputsPath, serializePrivateExecutionSteps(executionSteps));
30
+ const provingResult = await executeBbClientIvcProof(this.bbBinaryPath, directory, inputsPath, this.log.info);
45
31
  if (provingResult.status === BB_RESULT.FAILURE) {
46
32
  this.log.error(`Failed to generate client ivc proof`);
47
33
  throw new Error(provingResult.reason);
@@ -4,7 +4,7 @@ import type { ArtifactProvider } from '@aztec/noir-protocol-circuits-types/types
4
4
  import type { SimulationProvider } from '@aztec/simulator/client';
5
5
  import type { PrivateExecutionStep } from '@aztec/stdlib/kernel';
6
6
  import { ClientIvcProof } from '@aztec/stdlib/proofs';
7
- import { BBPrivateKernelProver } from '../prover/bb_private_kernel_prover.js';
7
+ import { BBPrivateKernelProver } from '../bb_private_kernel_prover.js';
8
8
  export declare abstract class BBWASMPrivateKernelProver extends BBPrivateKernelProver {
9
9
  protected artifactProvider: ArtifactProvider;
10
10
  protected simulationProvider: SimulationProvider;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bb_wasm_private_kernel_prover.d.ts","sourceRoot":"","sources":["../../../../src/prover/client/wasm/bb_wasm_private_kernel_prover.ts"],"names":[],"mappings":";;AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAClF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAEvE,8BAAsB,yBAA0B,SAAQ,qBAAqB;cAEtD,gBAAgB,EAAE,gBAAgB;cAClC,kBAAkB,EAAE,kBAAkB;IACzD,OAAO,CAAC,OAAO;cACI,GAAG;gBAHH,gBAAgB,EAAE,gBAAgB,EAClC,kBAAkB,EAAE,kBAAkB,EACjD,OAAO,GAAE,MAAU,EACR,GAAG,yCAAiC;IAKnC,oBAAoB,CAAC,cAAc,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAuBrF,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAa3G"}
@@ -4,7 +4,7 @@ import { Timer } from '@aztec/foundation/timer';
4
4
  import { serializeWitness } from '@aztec/noir-noirc_abi';
5
5
  import { ClientIvcProof } from '@aztec/stdlib/proofs';
6
6
  import { ungzip } from 'pako';
7
- import { BBPrivateKernelProver } from '../prover/bb_private_kernel_prover.js';
7
+ import { BBPrivateKernelProver } from '../bb_private_kernel_prover.js';
8
8
  export class BBWASMPrivateKernelProver extends BBPrivateKernelProver {
9
9
  artifactProvider;
10
10
  simulationProvider;
@@ -23,7 +23,7 @@ export class BBWASMPrivateKernelProver extends BBPrivateKernelProver {
23
23
  });
24
24
  // TODO(https://github.com/AztecProtocol/barretenberg/issues/1297): the vk is not provided to the network anymore.
25
25
  // Move this sanity check inside the wasm code and remove the vk from the return value.
26
- const [proof, _vk] = await backend.prove(executionSteps.map((step)=>ungzip(serializeWitness(step.witness))));
26
+ const [proof, _vk] = await backend.prove(executionSteps.map((step)=>ungzip(serializeWitness(step.witness))), executionSteps.map((step)=>step.vk));
27
27
  await backend.destroy();
28
28
  this.log.info(`Generated ClientIVC proof`, {
29
29
  eventName: 'client-ivc-proof-generation',
@@ -33,6 +33,7 @@ export class BBWASMPrivateKernelProver extends BBPrivateKernelProver {
33
33
  return new ClientIvcProof(Buffer.from(proof));
34
34
  }
35
35
  async computeGateCountForCircuit(_bytecode, _circuitName) {
36
+ // Note we do not pass the vk to the backend. This is unneeded for gate counts.
36
37
  const backend = new AztecClientBackend([
37
38
  ungzip(_bytecode)
38
39
  ], {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../../src/prover/client/wasm/bundle.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,qBAAa,+BAAgC,SAAQ,yBAAyB;gBAChE,kBAAkB,EAAE,kBAAkB,EAAE,OAAO,SAAK,EAAE,GAAG,yCAAwC;CAG9G"}
@@ -2,7 +2,7 @@ import { createLogger } from '@aztec/foundation/log';
2
2
  import { BundleArtifactProvider } from '@aztec/noir-protocol-circuits-types/client/bundle';
3
3
  import { BBWASMPrivateKernelProver } from './bb_wasm_private_kernel_prover.js';
4
4
  export class BBWASMBundlePrivateKernelProver extends BBWASMPrivateKernelProver {
5
- constructor(simulationProvider, threads = 1, log = createLogger('bb-prover:wasm:bundle')){
5
+ constructor(simulationProvider, threads = 16, log = createLogger('bb-prover:wasm:bundle')){
6
6
  super(new BundleArtifactProvider(), simulationProvider, threads, log);
7
7
  }
8
8
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../../../src/prover/client/wasm/lazy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,qBAAa,6BAA8B,SAAQ,yBAAyB;gBAC9D,kBAAkB,EAAE,kBAAkB,EAAE,OAAO,SAAK,EAAE,GAAG,yCAAsC;CAG5G"}
@@ -2,7 +2,7 @@ import { createLogger } from '@aztec/foundation/log';
2
2
  import { LazyArtifactProvider } from '@aztec/noir-protocol-circuits-types/client/lazy';
3
3
  import { BBWASMPrivateKernelProver } from './bb_wasm_private_kernel_prover.js';
4
4
  export class BBWASMLazyPrivateKernelProver extends BBWASMPrivateKernelProver {
5
- constructor(simulationProvider, threads = 1, log = createLogger('bb-prover:wasm:lazy')){
5
+ constructor(simulationProvider, threads = 16, log = createLogger('bb-prover:wasm:lazy')){
6
6
  super(new LazyArtifactProvider(), simulationProvider, threads, log);
7
7
  }
8
8
  }
@@ -1,4 +1,3 @@
1
- export * from './bb_prover.js';
2
- export * from './bb_native_private_kernel_prover.js';
1
+ export * from './server/bb_prover.js';
3
2
  export * from './proof_utils.js';
4
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prover/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sCAAsC,CAAC;AACrD,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prover/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
@@ -1,3 +1,2 @@
1
- export * from './bb_prover.js';
2
- export * from './bb_native_private_kernel_prover.js';
1
+ export * from './server/bb_prover.js';
3
2
  export * from './proof_utils.js';
@@ -7,8 +7,8 @@ import { Proof } from '@aztec/stdlib/proofs';
7
7
  import type { BaseOrMergeRollupPublicInputs, BlockMergeRollupInputs, BlockRootOrBlockMergePublicInputs, BlockRootRollupInputs, EmptyBlockRootRollupInputs, MergeRollupInputs, PrivateBaseRollupInputs, PublicBaseRollupInputs, RootRollupInputs, RootRollupPublicInputs, SingleTxBlockRootRollupInputs, TubeInputs } from '@aztec/stdlib/rollup';
8
8
  import type { VerificationKeyData } from '@aztec/stdlib/vks';
9
9
  import { type TelemetryClient } from '@aztec/telemetry-client';
10
- import type { ACVMConfig, BBConfig } from '../config.js';
11
- import { type UltraHonkFlavor } from '../honk.js';
10
+ import type { ACVMConfig, BBConfig } from '../../config.js';
11
+ import { type UltraHonkFlavor } from '../../honk.js';
12
12
  export interface BBProverConfig extends BBConfig, ACVMConfig {
13
13
  circuitFilter?: ServerProtocolArtifact[];
14
14
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bb_prover.d.ts","sourceRoot":"","sources":["../../../src/prover/server/bb_prover.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,0BAA0B,EAC1B,6BAA6B,EAC7B,yCAAyC,EACzC,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EACL,KAAK,sBAAsB,EAsB5B,MAAM,4CAA4C,CAAC;AAIpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EAGzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACnG,OAAO,EAAE,KAAK,EAAgD,MAAM,sBAAsB,CAAC;AAC3F,OAAO,KAAK,EACV,6BAA6B,EAC7B,sBAAsB,EACtB,iCAAiC,EACjC,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,uBAAuB,EACvB,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,6BAA6B,EAC7B,UAAU,EACX,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAc,KAAK,eAAe,EAAiC,MAAM,yBAAyB,CAAC;AAmB1G,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,KAAK,eAAe,EAAgC,MAAM,eAAe,CAAC;AAYnF,MAAM,WAAW,cAAe,SAAQ,QAAQ,EAAE,UAAU;IAE1D,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAC1C;AAED;;GAEG;AACH,qBAAa,oBAAqB,YAAW,mBAAmB;IAGlD,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,eAAe,CAAwB;gBAE3B,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe;IAItE,IAAI,MAAM,6CAET;WAEY,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,GAAE,eAAsC;IAW1F;;;;OAIG;IAEU,kBAAkB,CAC7B,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,6BAA6B,CAAC,kBAAkB,EAAE,OAAO,sBAAsB,CAAC,CAAC;IAe5F;;;;OAIG;IAEU,kBAAkB,CAC7B,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,6BAA6B,CAAC,kBAAkB,EAAE,OAAO,6BAA6B,CAAC,CAAC;IAenG;;;;OAIG;IAIU,WAAW,CACtB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,uBAAuB,CAAC,OAAO,0BAA0B,CAAC,CAAC;IAMtE;;;;OAIG;IACU,yBAAyB,CACpC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CACR,6BAA6B,CAAC,6BAA6B,EAAE,OAAO,yCAAyC,CAAC,CAC/G;IAkBD;;;;OAIG;IACU,wBAAwB,CACnC,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CACR,6BAA6B,CAAC,6BAA6B,EAAE,OAAO,yCAAyC,CAAC,CAC/G;IAkBD;;;;OAIG;IACU,mBAAmB,CAC9B,KAAK,EAAE,iBAAiB,GACvB,OAAO,CACR,6BAA6B,CAAC,6BAA6B,EAAE,OAAO,yCAAyC,CAAC,CAC/G;IAgBD;;;;OAIG;IACU,uBAAuB,CAClC,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CACR,6BAA6B,CAAC,iCAAiC,EAAE,OAAO,yCAAyC,CAAC,CACnH;IAgBY,+BAA+B,CAC1C,KAAK,EAAE,6BAA6B,GACnC,OAAO,CACR,6BAA6B,CAAC,iCAAiC,EAAE,OAAO,yCAAyC,CAAC,CACnH;IAgBD;;;;OAIG;IACU,4BAA4B,CACvC,KAAK,EAAE,0BAA0B,GAChC,OAAO,CACR,6BAA6B,CAAC,iCAAiC,EAAE,OAAO,yCAAyC,CAAC,CACnH;IAgBD;;;;OAIG;IACU,wBAAwB,CACnC,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CACR,6BAA6B,CAAC,iCAAiC,EAAE,OAAO,yCAAyC,CAAC,CACnH;IAgBD;;;;OAIG;IACU,kBAAkB,CAC7B,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,6BAA6B,CAAC,sBAAsB,CAAC,CAAC;YAkBnD,mBAAmB;YAqEnB,WAAW;YAyCX,sBAAsB;YAatB,uBAAuB;YAsBvB,cAAc;IAsCf,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,uBAAuB,CAAC,OAAO,iBAAiB,CAAC,CAAC;IA6BxG;;;;;;;;OAQG;YACW,oBAAoB;IAqDlC;;;;OAIG;IACU,WAAW,CAAC,WAAW,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK;IAK7D,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,mBAAmB;IAMjE,aAAa,CAAC,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK;YAMxF,qBAAqB;IA2BnC;;;;OAIG;IACH,OAAO,CAAC,gCAAgC;YAQ1B,oBAAoB;IAelC,OAAO,CAAC,cAAc;CAYvB"}
@@ -20,13 +20,13 @@ import { Attributes, getTelemetryClient, trackSpan } from '@aztec/telemetry-clie
20
20
  import crypto from 'crypto';
21
21
  import { promises as fs } from 'fs';
22
22
  import * as path from 'path';
23
- import { BB_RESULT, PROOF_FILENAME, PUBLIC_INPUTS_FILENAME, VK_FILENAME, generateAvmProof, generateProof, generateTubeProof, verifyAvmProof, verifyProof } from '../bb/execute.js';
24
- import { getUltraHonkFlavorForCircuit } from '../honk.js';
25
- import { ProverInstrumentation } from '../instrumentation.js';
26
- import { mapProtocolArtifactNameToCircuitName } from '../stats.js';
27
- import { extractAvmVkData, extractVkData } from '../verification_key/verification_key_data.js';
28
- import { PRIVATE_TAIL_CIVC_VK, PUBLIC_TAIL_CIVC_VK } from '../verifier/bb_verifier.js';
29
- import { readProofAsFields, writeClientIVCProofToOutputDirectory } from './proof_utils.js';
23
+ import { BB_RESULT, PROOF_FILENAME, PUBLIC_INPUTS_FILENAME, VK_FILENAME, generateAvmProof, generateProof, generateTubeProof, verifyAvmProof, verifyProof } from '../../bb/execute.js';
24
+ import { getUltraHonkFlavorForCircuit } from '../../honk.js';
25
+ import { ProverInstrumentation } from '../../instrumentation.js';
26
+ import { mapProtocolArtifactNameToCircuitName } from '../../stats.js';
27
+ import { extractAvmVkData, extractVkData } from '../../verification_key/verification_key_data.js';
28
+ import { PRIVATE_TAIL_CIVC_VK, PUBLIC_TAIL_CIVC_VK } from '../../verifier/bb_verifier.js';
29
+ import { readProofAsFields, writeClientIVCProofToOutputDirectory } from '../proof_utils.js';
30
30
  const logger = createLogger('bb-prover');
31
31
  // All `ServerCircuitArtifact` are recursive.
32
32
  const SERVER_CIRCUIT_RECURSIVE = true;
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@aztec/bb-prover",
3
- "version": "0.85.0-alpha-testnet.2",
3
+ "version": "0.85.0-alpha-testnet.4",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./dest/index.js",
7
- "./wasm/bundle": "./dest/wasm/bundle.js",
8
- "./wasm/lazy": "./dest/wasm/lazy.js",
9
- "./prover": "./dest/prover/index.js",
7
+ "./client/wasm/bundle": "./dest/prover/client/wasm/bundle.js",
8
+ "./client/wasm/lazy": "./dest/prover/client/wasm/lazy.js",
9
+ "./client/native": "./dest/prover/client/native/bb_native_private_kernel_prover.js",
10
10
  "./verifier": "./dest/verifier/index.js",
11
11
  "./test": "./dest/test/index.js",
12
12
  "./config": "./dest/config.js"
@@ -68,27 +68,26 @@
68
68
  ]
69
69
  },
70
70
  "dependencies": {
71
- "@aztec/bb.js": "0.85.0-alpha-testnet.2",
72
- "@aztec/constants": "0.85.0-alpha-testnet.2",
73
- "@aztec/foundation": "0.85.0-alpha-testnet.2",
74
- "@aztec/noir-noirc_abi": "0.85.0-alpha-testnet.2",
75
- "@aztec/noir-protocol-circuits-types": "0.85.0-alpha-testnet.2",
76
- "@aztec/noir-types": "0.85.0-alpha-testnet.2",
77
- "@aztec/simulator": "0.85.0-alpha-testnet.2",
78
- "@aztec/stdlib": "0.85.0-alpha-testnet.2",
79
- "@aztec/telemetry-client": "0.85.0-alpha-testnet.2",
80
- "@aztec/world-state": "0.85.0-alpha-testnet.2",
81
- "@msgpack/msgpack": "^3.0.0-beta2",
71
+ "@aztec/bb.js": "0.85.0-alpha-testnet.4",
72
+ "@aztec/constants": "0.85.0-alpha-testnet.4",
73
+ "@aztec/foundation": "0.85.0-alpha-testnet.4",
74
+ "@aztec/noir-noirc_abi": "0.85.0-alpha-testnet.4",
75
+ "@aztec/noir-protocol-circuits-types": "0.85.0-alpha-testnet.4",
76
+ "@aztec/noir-types": "0.85.0-alpha-testnet.4",
77
+ "@aztec/simulator": "0.85.0-alpha-testnet.4",
78
+ "@aztec/stdlib": "0.85.0-alpha-testnet.4",
79
+ "@aztec/telemetry-client": "0.85.0-alpha-testnet.4",
80
+ "@aztec/world-state": "0.85.0-alpha-testnet.4",
82
81
  "commander": "^12.1.0",
83
82
  "pako": "^2.1.0",
84
83
  "source-map-support": "^0.5.21",
85
84
  "tslib": "^2.4.0"
86
85
  },
87
86
  "devDependencies": {
88
- "@aztec/ethereum": "0.85.0-alpha-testnet.2",
89
- "@aztec/kv-store": "0.85.0-alpha-testnet.2",
90
- "@aztec/noir-contracts.js": "0.85.0-alpha-testnet.2",
91
- "@aztec/protocol-contracts": "0.85.0-alpha-testnet.2",
87
+ "@aztec/ethereum": "0.85.0-alpha-testnet.4",
88
+ "@aztec/kv-store": "0.85.0-alpha-testnet.4",
89
+ "@aztec/noir-contracts.js": "0.85.0-alpha-testnet.4",
90
+ "@aztec/protocol-contracts": "0.85.0-alpha-testnet.4",
92
91
  "@jest/globals": "^29.5.0",
93
92
  "@types/jest": "^29.5.0",
94
93
  "@types/node": "^18.7.23",
package/src/bb/execute.ts CHANGED
@@ -119,8 +119,7 @@ export function executeBB(
119
119
  export async function executeBbClientIvcProof(
120
120
  pathToBB: string,
121
121
  workingDirectory: string,
122
- bytecodeStackPath: string,
123
- witnessStackPath: string,
122
+ inputsPath: string,
124
123
  log: LogFn,
125
124
  writeVk = false,
126
125
  ): Promise<BBFailure | BBSuccess> {
@@ -144,30 +143,16 @@ export async function executeBbClientIvcProof(
144
143
 
145
144
  try {
146
145
  // Write the bytecode to the working directory
147
- log(`bytecodePath ${bytecodeStackPath}`);
148
- log(`outputPath ${outputPath}`);
149
- const args = [
150
- '-o',
151
- outputPath,
152
- '-b',
153
- bytecodeStackPath,
154
- '-w',
155
- witnessStackPath,
156
- '-v',
157
- '--scheme',
158
- 'client_ivc',
159
- '--input_type',
160
- 'runtime_stack',
161
- ];
162
- if (writeVk) {
163
- args.push('--write_vk');
164
- }
165
-
146
+ log(`inputsPath ${inputsPath}`);
166
147
  const timer = new Timer();
167
148
  const logFunction = (message: string) => {
168
149
  log(`bb - ${message}`);
169
150
  };
170
151
 
152
+ const args = ['-o', outputPath, '--ivc_inputs_path', inputsPath, '-v', '--scheme', 'client_ivc'];
153
+ if (writeVk) {
154
+ args.push('--write_vk');
155
+ }
171
156
  const result = await executeBB(pathToBB, 'prove', args, logFunction);
172
157
  const durationMs = timer.ms();
173
158
 
@@ -33,7 +33,7 @@ import type { NoirCompiledCircuitWithName } from '@aztec/stdlib/noir';
33
33
  import type { ClientIvcProof } from '@aztec/stdlib/proofs';
34
34
  import type { CircuitSimulationStats, CircuitWitnessGenerationStats } from '@aztec/stdlib/stats';
35
35
 
36
- import { mapProtocolArtifactNameToCircuitName } from '../stats.js';
36
+ import { mapProtocolArtifactNameToCircuitName } from '../../stats.js';
37
37
 
38
38
  export abstract class BBPrivateKernelProver implements PrivateKernelProver {
39
39
  constructor(
@@ -219,7 +219,7 @@ export abstract class BBPrivateKernelProver implements PrivateKernelProver {
219
219
  outputSize: output.toBuffer().length,
220
220
  } satisfies CircuitWitnessGenerationStats);
221
221
 
222
- const verificationKey = (await this.artifactProvider.getCircuitVkByName(circuitType)).keyAsFields;
222
+ const verificationKey = await this.artifactProvider.getCircuitVkByName(circuitType);
223
223
  const bytecode = Buffer.from(compiledCircuit.bytecode, 'base64');
224
224
 
225
225
  const kernelOutput: PrivateKernelSimulateOutput<O> = {
@@ -236,7 +236,7 @@ export abstract class BBPrivateKernelProver implements PrivateKernelProver {
236
236
  >(publicInputs: PublicInputsType, circuitType: ClientProtocolArtifact) {
237
237
  const kernelProofOutput: PrivateKernelSimulateOutput<PublicInputsType> = {
238
238
  publicInputs,
239
- verificationKey: (await this.artifactProvider.getCircuitVkByName(circuitType)).keyAsFields,
239
+ verificationKey: await this.artifactProvider.getCircuitVkByName(circuitType),
240
240
  outputWitness: new Map(),
241
241
  bytecode: Buffer.from([]),
242
242
  };
@@ -1,19 +1,17 @@
1
1
  import { runInDirectory } from '@aztec/foundation/fs';
2
2
  import { type Logger, createLogger } from '@aztec/foundation/log';
3
- import { serializeWitness } from '@aztec/noir-noirc_abi';
4
3
  import { BundleArtifactProvider } from '@aztec/noir-protocol-circuits-types/client/bundle';
5
4
  import type { SimulationProvider } from '@aztec/simulator/server';
6
- import type { PrivateExecutionStep } from '@aztec/stdlib/kernel';
5
+ import { type PrivateExecutionStep, serializePrivateExecutionSteps } from '@aztec/stdlib/kernel';
7
6
  import type { ClientIvcProof } from '@aztec/stdlib/proofs';
8
7
 
9
- import { encode } from '@msgpack/msgpack';
10
8
  import { promises as fs } from 'fs';
11
9
  import path from 'path';
12
10
 
13
- import { BB_RESULT, computeGateCountForCircuit, executeBbClientIvcProof } from '../bb/execute.js';
14
- import type { BBConfig } from '../config.js';
15
- import { BBPrivateKernelProver } from './bb_private_kernel_prover.js';
16
- import { readClientIVCProofFromOutputDirectory } from './proof_utils.js';
11
+ import { BB_RESULT, computeGateCountForCircuit, executeBbClientIvcProof } from '../../../bb/execute.js';
12
+ import type { BBConfig } from '../../../config.js';
13
+ import { readClientIVCProofFromOutputDirectory } from '../../proof_utils.js';
14
+ import { BBPrivateKernelProver } from '../bb_private_kernel_prover.js';
17
15
 
18
16
  /**
19
17
  * This proof creator implementation uses the native bb binary.
@@ -40,33 +38,13 @@ export class BBNativePrivateKernelProver extends BBPrivateKernelProver {
40
38
  );
41
39
  }
42
40
 
43
- // TODO(#7371): This is duplicated.
44
- // Longer term we won't use this hacked together msgpack format
45
- // Leaving duplicated as this eventually bb will provide a serialization
46
- // helper for passing to a generic msgpack RPC endpoint.
47
- private async _createClientIvcProofFiles(directory: string, executionSteps: PrivateExecutionStep[]) {
48
- const acirPath = path.join(directory, 'acir.msgpack');
49
- const witnessPath = path.join(directory, 'witnesses.msgpack');
50
- await fs.writeFile(acirPath, encode(executionSteps.map(map => map.bytecode)));
51
- await fs.writeFile(witnessPath, encode(executionSteps.map(map => serializeWitness(map.witness))));
52
- return {
53
- acirPath,
54
- witnessPath,
55
- };
56
- }
57
-
58
41
  private async _createClientIvcProof(
59
42
  directory: string,
60
43
  executionSteps: PrivateExecutionStep[],
61
44
  ): Promise<ClientIvcProof> {
62
- await this._createClientIvcProofFiles(directory, executionSteps);
63
- const provingResult = await executeBbClientIvcProof(
64
- this.bbBinaryPath,
65
- directory,
66
- path.join(directory, 'acir.msgpack'),
67
- path.join(directory, 'witnesses.msgpack'),
68
- this.log.info,
69
- );
45
+ const inputsPath = path.join(directory, 'ivc-inputs.msgpack');
46
+ await fs.writeFile(inputsPath, serializePrivateExecutionSteps(executionSteps));
47
+ const provingResult = await executeBbClientIvcProof(this.bbBinaryPath, directory, inputsPath, this.log.info);
70
48
 
71
49
  if (provingResult.status === BB_RESULT.FAILURE) {
72
50
  this.log.error(`Failed to generate client ivc proof`);
@@ -9,7 +9,7 @@ import { ClientIvcProof } from '@aztec/stdlib/proofs';
9
9
 
10
10
  import { ungzip } from 'pako';
11
11
 
12
- import { BBPrivateKernelProver } from '../prover/bb_private_kernel_prover.js';
12
+ import { BBPrivateKernelProver } from '../bb_private_kernel_prover.js';
13
13
 
14
14
  export abstract class BBWASMPrivateKernelProver extends BBPrivateKernelProver {
15
15
  constructor(
@@ -31,7 +31,10 @@ export abstract class BBWASMPrivateKernelProver extends BBPrivateKernelProver {
31
31
 
32
32
  // TODO(https://github.com/AztecProtocol/barretenberg/issues/1297): the vk is not provided to the network anymore.
33
33
  // Move this sanity check inside the wasm code and remove the vk from the return value.
34
- const [proof, _vk] = await backend.prove(executionSteps.map(step => ungzip(serializeWitness(step.witness))));
34
+ const [proof, _vk] = await backend.prove(
35
+ executionSteps.map(step => ungzip(serializeWitness(step.witness))),
36
+ executionSteps.map(step => step.vk),
37
+ );
35
38
  await backend.destroy();
36
39
  this.log.info(`Generated ClientIVC proof`, {
37
40
  eventName: 'client-ivc-proof-generation',
@@ -42,6 +45,7 @@ export abstract class BBWASMPrivateKernelProver extends BBPrivateKernelProver {
42
45
  }
43
46
 
44
47
  public override async computeGateCountForCircuit(_bytecode: Buffer, _circuitName: string): Promise<number> {
48
+ // Note we do not pass the vk to the backend. This is unneeded for gate counts.
45
49
  const backend = new AztecClientBackend([ungzip(_bytecode)], {
46
50
  threads: this.threads,
47
51
  logger: this.log.verbose,
@@ -5,7 +5,7 @@ import type { SimulationProvider } from '@aztec/simulator/client';
5
5
  import { BBWASMPrivateKernelProver } from './bb_wasm_private_kernel_prover.js';
6
6
 
7
7
  export class BBWASMBundlePrivateKernelProver extends BBWASMPrivateKernelProver {
8
- constructor(simulationProvider: SimulationProvider, threads = 1, log = createLogger('bb-prover:wasm:bundle')) {
8
+ constructor(simulationProvider: SimulationProvider, threads = 16, log = createLogger('bb-prover:wasm:bundle')) {
9
9
  super(new BundleArtifactProvider(), simulationProvider, threads, log);
10
10
  }
11
11
  }
@@ -5,7 +5,7 @@ import type { SimulationProvider } from '@aztec/simulator/client';
5
5
  import { BBWASMPrivateKernelProver } from './bb_wasm_private_kernel_prover.js';
6
6
 
7
7
  export class BBWASMLazyPrivateKernelProver extends BBWASMPrivateKernelProver {
8
- constructor(simulationProvider: SimulationProvider, threads = 1, log = createLogger('bb-prover:wasm:lazy')) {
8
+ constructor(simulationProvider: SimulationProvider, threads = 16, log = createLogger('bb-prover:wasm:lazy')) {
9
9
  super(new LazyArtifactProvider(), simulationProvider, threads, log);
10
10
  }
11
11
  }
@@ -1,3 +1,2 @@
1
- export * from './bb_prover.js';
2
- export * from './bb_native_private_kernel_prover.js';
1
+ export * from './server/bb_prover.js';
3
2
  export * from './proof_utils.js';
@@ -84,14 +84,14 @@ import {
84
84
  generateTubeProof,
85
85
  verifyAvmProof,
86
86
  verifyProof,
87
- } from '../bb/execute.js';
88
- import type { ACVMConfig, BBConfig } from '../config.js';
89
- import { type UltraHonkFlavor, getUltraHonkFlavorForCircuit } from '../honk.js';
90
- import { ProverInstrumentation } from '../instrumentation.js';
91
- import { mapProtocolArtifactNameToCircuitName } from '../stats.js';
92
- import { extractAvmVkData, extractVkData } from '../verification_key/verification_key_data.js';
93
- import { PRIVATE_TAIL_CIVC_VK, PUBLIC_TAIL_CIVC_VK } from '../verifier/bb_verifier.js';
94
- import { readProofAsFields, writeClientIVCProofToOutputDirectory } from './proof_utils.js';
87
+ } from '../../bb/execute.js';
88
+ import type { ACVMConfig, BBConfig } from '../../config.js';
89
+ import { type UltraHonkFlavor, getUltraHonkFlavorForCircuit } from '../../honk.js';
90
+ import { ProverInstrumentation } from '../../instrumentation.js';
91
+ import { mapProtocolArtifactNameToCircuitName } from '../../stats.js';
92
+ import { extractAvmVkData, extractVkData } from '../../verification_key/verification_key_data.js';
93
+ import { PRIVATE_TAIL_CIVC_VK, PUBLIC_TAIL_CIVC_VK } from '../../verifier/bb_verifier.js';
94
+ import { readProofAsFields, writeClientIVCProofToOutputDirectory } from '../proof_utils.js';
95
95
 
96
96
  const logger = createLogger('bb-prover');
97
97
 
@@ -1 +0,0 @@
1
- {"version":3,"file":"bb_native_private_kernel_prover.d.ts","sourceRoot":"","sources":["../../src/prover/bb_native_private_kernel_prover.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAGlE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAO3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAGtE;;GAEG;AACH,qBAAa,2BAA4B,SAAQ,qBAAqB;IAElE,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,WAAW;cACA,kBAAkB,EAAE,kBAAkB;cACtC,GAAG;IALxB,OAAO;WAUa,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,MAAM;YAehF,0BAA0B;YAW1B,qBAAqB;IA4Bb,oBAAoB,CAAC,cAAc,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAQrF,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBxG,OAAO,CAAC,cAAc;CAavB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"bb_private_kernel_prover.d.ts","sourceRoot":"","sources":["../../src/prover/bb_private_kernel_prover.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"bb_prover.d.ts","sourceRoot":"","sources":["../../src/prover/bb_prover.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"bb_wasm_private_kernel_prover.d.ts","sourceRoot":"","sources":["../../src/wasm/bb_wasm_private_kernel_prover.ts"],"names":[],"mappings":";;AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAClF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAE9E,8BAAsB,yBAA0B,SAAQ,qBAAqB;cAEtD,gBAAgB,EAAE,gBAAgB;cAClC,kBAAkB,EAAE,kBAAkB;IACzD,OAAO,CAAC,OAAO;cACI,GAAG;gBAHH,gBAAgB,EAAE,gBAAgB,EAClC,kBAAkB,EAAE,kBAAkB,EACjD,OAAO,GAAE,MAAU,EACR,GAAG,yCAAiC;IAKnC,oBAAoB,CAAC,cAAc,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAoBrF,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAY3G"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/wasm/bundle.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,qBAAa,+BAAgC,SAAQ,yBAAyB;gBAChE,kBAAkB,EAAE,kBAAkB,EAAE,OAAO,SAAI,EAAE,GAAG,yCAAwC;CAG7G"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/wasm/lazy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,qBAAa,6BAA8B,SAAQ,yBAAyB;gBAC9D,kBAAkB,EAAE,kBAAkB,EAAE,OAAO,SAAI,EAAE,GAAG,yCAAsC;CAG3G"}
File without changes
File without changes