@aztec/bb-prover 0.87.6 → 0.87.8
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/bb/execute.d.ts.map +1 -1
- package/dest/bb/execute.js +2 -15
- package/dest/config.d.ts +1 -0
- package/dest/config.d.ts.map +1 -1
- package/dest/test/test_verifier.d.ts +1 -0
- package/dest/test/test_verifier.d.ts.map +1 -1
- package/dest/test/test_verifier.js +3 -0
- package/dest/verifier/bb_verifier.d.ts +1 -0
- package/dest/verifier/bb_verifier.d.ts.map +1 -1
- package/dest/verifier/bb_verifier.js +3 -0
- package/dest/verifier/index.d.ts +1 -0
- package/dest/verifier/index.d.ts.map +1 -1
- package/dest/verifier/index.js +1 -0
- package/dest/verifier/queued_ivc_verifier.d.ts +11 -0
- package/dest/verifier/queued_ivc_verifier.d.ts.map +1 -0
- package/dest/verifier/queued_ivc_verifier.js +16 -0
- package/package.json +16 -18
- package/src/bb/execute.ts +2 -15
- package/src/config.ts +1 -0
- package/src/test/test_verifier.ts +4 -0
- package/src/verifier/bb_verifier.ts +4 -0
- package/src/verifier/index.ts +1 -0
- package/src/verifier/queued_ivc_verifier.ts +25 -0
package/dest/bb/execute.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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;
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/bb/execute.ts"],"names":[],"mappings":"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"}
|
package/dest/bb/execute.js
CHANGED
|
@@ -3,7 +3,6 @@ import { Timer } from '@aztec/foundation/timer';
|
|
|
3
3
|
import * as proc from 'child_process';
|
|
4
4
|
import { promises as fs } from 'fs';
|
|
5
5
|
import { basename, dirname, join } from 'path';
|
|
6
|
-
import pidusage from 'pidusage';
|
|
7
6
|
export const VK_FILENAME = 'vk';
|
|
8
7
|
export const VK_FIELDS_FILENAME = 'vk_fields.json';
|
|
9
8
|
export const PUBLIC_INPUTS_FILENAME = 'public_inputs';
|
|
@@ -57,23 +56,11 @@ export var BB_RESULT = /*#__PURE__*/ function(BB_RESULT) {
|
|
|
57
56
|
}
|
|
58
57
|
bb.stdout.on('data', (data)=>{
|
|
59
58
|
const message = data.toString('utf-8').replace(/\n$/, '');
|
|
60
|
-
|
|
61
|
-
if (err) {
|
|
62
|
-
logger(message);
|
|
63
|
-
} else {
|
|
64
|
-
logger(`${message} (mem: ${(stats.memory / 1024 / 1024).toFixed(2)}MiB)`);
|
|
65
|
-
}
|
|
66
|
-
});
|
|
59
|
+
logger(message);
|
|
67
60
|
});
|
|
68
61
|
bb.stderr.on('data', (data)=>{
|
|
69
62
|
const message = data.toString('utf-8').replace(/\n$/, '');
|
|
70
|
-
|
|
71
|
-
if (err) {
|
|
72
|
-
logger(message);
|
|
73
|
-
} else {
|
|
74
|
-
logger(`${message} (mem: ${(stats.memory / 1024 / 1024).toFixed(2)}MiB)`);
|
|
75
|
-
}
|
|
76
|
-
});
|
|
63
|
+
logger(message);
|
|
77
64
|
});
|
|
78
65
|
bb.on('close', (exitCode, signal)=>{
|
|
79
66
|
if (timeoutId) {
|
package/dest/config.d.ts
CHANGED
package/dest/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,6DAA6D;IAC7D,aAAa,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,6DAA6D;IAC7D,aAAa,EAAE,OAAO,CAAC;IACvB,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,UAAU;IACzB,kCAAkC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,0DAA0D;IAC1D,oBAAoB,EAAE,MAAM,CAAC;CAC9B"}
|
|
@@ -2,5 +2,6 @@ import type { ClientProtocolCircuitVerifier } from '@aztec/stdlib/interfaces/ser
|
|
|
2
2
|
import type { Tx } from '@aztec/stdlib/tx';
|
|
3
3
|
export declare class TestCircuitVerifier implements ClientProtocolCircuitVerifier {
|
|
4
4
|
verifyProof(_tx: Tx): Promise<boolean>;
|
|
5
|
+
stop(): Promise<void>;
|
|
5
6
|
}
|
|
6
7
|
//# sourceMappingURL=test_verifier.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test_verifier.d.ts","sourceRoot":"","sources":["../../src/test/test_verifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAE3C,qBAAa,mBAAoB,YAAW,6BAA6B;IACvE,WAAW,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"test_verifier.d.ts","sourceRoot":"","sources":["../../src/test/test_verifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAE3C,qBAAa,mBAAoB,YAAW,6BAA6B;IACvE,WAAW,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAI/B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
|
|
@@ -11,6 +11,7 @@ export declare class BBCircuitVerifier implements ClientProtocolCircuitVerifier
|
|
|
11
11
|
private config;
|
|
12
12
|
private logger;
|
|
13
13
|
private constructor();
|
|
14
|
+
stop(): Promise<void>;
|
|
14
15
|
static new(config: BBConfig, logger?: Logger): Promise<BBCircuitVerifier>;
|
|
15
16
|
getVerificationKeyData(circuitType: ServerProtocolArtifact): VerificationKeyData;
|
|
16
17
|
verifyProofForCircuit(circuit: ServerProtocolArtifact, proof: Proof): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bb_verifier.d.ts","sourceRoot":"","sources":["../../src/verifier/bb_verifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAElE,OAAO,KAAK,EAA0B,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAChH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAc7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAQ7C,eAAO,MAAM,oBAAoB,QAA0D,CAAC;AAC5F,eAAO,MAAM,mBAAmB,QAAyD,CAAC;AAE1F,qBAAa,iBAAkB,YAAW,6BAA6B;IAEnE,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,MAAM;IAFhB,OAAO;
|
|
1
|
+
{"version":3,"file":"bb_verifier.d.ts","sourceRoot":"","sources":["../../src/verifier/bb_verifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAElE,OAAO,KAAK,EAA0B,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAChH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAc7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAQ7C,eAAO,MAAM,oBAAoB,QAA0D,CAAC;AAC5F,eAAO,MAAM,mBAAmB,QAAyD,CAAC;AAE1F,qBAAa,iBAAkB,YAAW,6BAA6B;IAEnE,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,MAAM;IAFhB,OAAO;IAKA,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;WAIR,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAqC;IAK9E,sBAAsB,CAAC,WAAW,EAAE,sBAAsB,GAAG,mBAAmB;IAQ1E,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK;IAqCnE,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CA4CnD"}
|
|
@@ -20,6 +20,9 @@ export class BBCircuitVerifier {
|
|
|
20
20
|
this.config = config;
|
|
21
21
|
this.logger = logger;
|
|
22
22
|
}
|
|
23
|
+
stop() {
|
|
24
|
+
return Promise.resolve();
|
|
25
|
+
}
|
|
23
26
|
static async new(config, logger = createLogger('bb-prover:verifier')) {
|
|
24
27
|
await fs.mkdir(config.bbWorkingDirectory, {
|
|
25
28
|
recursive: true
|
package/dest/verifier/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/verifier/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/verifier/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC"}
|
package/dest/verifier/index.js
CHANGED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ClientProtocolCircuitVerifier } from '@aztec/stdlib/interfaces/server';
|
|
2
|
+
import type { Tx } from '@aztec/stdlib/tx';
|
|
3
|
+
import type { BBConfig } from '../config.js';
|
|
4
|
+
export declare class QueuedIVCVerifier implements ClientProtocolCircuitVerifier {
|
|
5
|
+
private verifier;
|
|
6
|
+
private queue;
|
|
7
|
+
constructor(config: BBConfig, verifier: ClientProtocolCircuitVerifier);
|
|
8
|
+
verifyProof(tx: Tx): Promise<boolean>;
|
|
9
|
+
stop(): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=queued_ivc_verifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queued_ivc_verifier.d.ts","sourceRoot":"","sources":["../../src/verifier/queued_ivc_verifier.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,qBAAa,iBAAkB,YAAW,6BAA6B;IAKnE,OAAO,CAAC,QAAQ;IAJlB,OAAO,CAAC,KAAK,CAAc;gBAGzB,MAAM,EAAE,QAAQ,EACR,QAAQ,EAAE,6BAA6B;IAM1C,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAI5C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAGtB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { SerialQueue } from '@aztec/foundation/queue';
|
|
2
|
+
export class QueuedIVCVerifier {
|
|
3
|
+
verifier;
|
|
4
|
+
queue;
|
|
5
|
+
constructor(config, verifier){
|
|
6
|
+
this.verifier = verifier;
|
|
7
|
+
this.queue = new SerialQueue();
|
|
8
|
+
this.queue.start(config.numConcurrentIVCVerifiers);
|
|
9
|
+
}
|
|
10
|
+
verifyProof(tx) {
|
|
11
|
+
return this.queue.put(()=>this.verifier.verifyProof(tx));
|
|
12
|
+
}
|
|
13
|
+
stop() {
|
|
14
|
+
return this.queue.end();
|
|
15
|
+
}
|
|
16
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/bb-prover",
|
|
3
|
-
"version": "0.87.
|
|
3
|
+
"version": "0.87.8",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
@@ -66,32 +66,30 @@
|
|
|
66
66
|
]
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
|
-
"@aztec/bb.js": "0.87.
|
|
70
|
-
"@aztec/constants": "0.87.
|
|
71
|
-
"@aztec/foundation": "0.87.
|
|
72
|
-
"@aztec/noir-noirc_abi": "0.87.
|
|
73
|
-
"@aztec/noir-protocol-circuits-types": "0.87.
|
|
74
|
-
"@aztec/noir-types": "0.87.
|
|
75
|
-
"@aztec/simulator": "0.87.
|
|
76
|
-
"@aztec/stdlib": "0.87.
|
|
77
|
-
"@aztec/telemetry-client": "0.87.
|
|
78
|
-
"@aztec/world-state": "0.87.
|
|
69
|
+
"@aztec/bb.js": "0.87.8",
|
|
70
|
+
"@aztec/constants": "0.87.8",
|
|
71
|
+
"@aztec/foundation": "0.87.8",
|
|
72
|
+
"@aztec/noir-noirc_abi": "0.87.8",
|
|
73
|
+
"@aztec/noir-protocol-circuits-types": "0.87.8",
|
|
74
|
+
"@aztec/noir-types": "0.87.8",
|
|
75
|
+
"@aztec/simulator": "0.87.8",
|
|
76
|
+
"@aztec/stdlib": "0.87.8",
|
|
77
|
+
"@aztec/telemetry-client": "0.87.8",
|
|
78
|
+
"@aztec/world-state": "0.87.8",
|
|
79
79
|
"commander": "^12.1.0",
|
|
80
80
|
"pako": "^2.1.0",
|
|
81
|
-
"pidusage": "^4.0.1",
|
|
82
81
|
"source-map-support": "^0.5.21",
|
|
83
82
|
"tslib": "^2.4.0"
|
|
84
83
|
},
|
|
85
84
|
"devDependencies": {
|
|
86
|
-
"@aztec/ethereum": "0.87.
|
|
87
|
-
"@aztec/kv-store": "0.87.
|
|
88
|
-
"@aztec/noir-contracts.js": "0.87.
|
|
89
|
-
"@aztec/noir-test-contracts.js": "0.87.
|
|
90
|
-
"@aztec/protocol-contracts": "0.87.
|
|
85
|
+
"@aztec/ethereum": "0.87.8",
|
|
86
|
+
"@aztec/kv-store": "0.87.8",
|
|
87
|
+
"@aztec/noir-contracts.js": "0.87.8",
|
|
88
|
+
"@aztec/noir-test-contracts.js": "0.87.8",
|
|
89
|
+
"@aztec/protocol-contracts": "0.87.8",
|
|
91
90
|
"@jest/globals": "^29.5.0",
|
|
92
91
|
"@types/jest": "^29.5.0",
|
|
93
92
|
"@types/node": "^22.15.17",
|
|
94
|
-
"@types/pidusage": "^2.0.5",
|
|
95
93
|
"@types/source-map-support": "^0.5.10",
|
|
96
94
|
"jest": "^29.5.0",
|
|
97
95
|
"jest-mock-extended": "^3.0.3",
|
package/src/bb/execute.ts
CHANGED
|
@@ -6,7 +6,6 @@ import type { AvmCircuitInputs, AvmCircuitPublicInputs } from '@aztec/stdlib/avm
|
|
|
6
6
|
import * as proc from 'child_process';
|
|
7
7
|
import { promises as fs } from 'fs';
|
|
8
8
|
import { basename, dirname, join } from 'path';
|
|
9
|
-
import pidusage from 'pidusage';
|
|
10
9
|
|
|
11
10
|
import type { UltraHonkFlavor } from '../honk.js';
|
|
12
11
|
|
|
@@ -98,23 +97,11 @@ export function executeBB(
|
|
|
98
97
|
|
|
99
98
|
bb.stdout.on('data', data => {
|
|
100
99
|
const message = data.toString('utf-8').replace(/\n$/, '');
|
|
101
|
-
|
|
102
|
-
if (err) {
|
|
103
|
-
logger(message);
|
|
104
|
-
} else {
|
|
105
|
-
logger(`${message} (mem: ${(stats.memory / 1024 / 1024).toFixed(2)}MiB)`);
|
|
106
|
-
}
|
|
107
|
-
});
|
|
100
|
+
logger(message);
|
|
108
101
|
});
|
|
109
102
|
bb.stderr.on('data', data => {
|
|
110
103
|
const message = data.toString('utf-8').replace(/\n$/, '');
|
|
111
|
-
|
|
112
|
-
if (err) {
|
|
113
|
-
logger(message);
|
|
114
|
-
} else {
|
|
115
|
-
logger(`${message} (mem: ${(stats.memory / 1024 / 1024).toFixed(2)}MiB)`);
|
|
116
|
-
}
|
|
117
|
-
});
|
|
104
|
+
logger(message);
|
|
118
105
|
});
|
|
119
106
|
bb.on('close', (exitCode: number, signal?: string) => {
|
|
120
107
|
if (timeoutId) {
|
package/src/config.ts
CHANGED
|
@@ -37,6 +37,10 @@ export class BBCircuitVerifier implements ClientProtocolCircuitVerifier {
|
|
|
37
37
|
private logger: Logger,
|
|
38
38
|
) {}
|
|
39
39
|
|
|
40
|
+
public stop(): Promise<void> {
|
|
41
|
+
return Promise.resolve();
|
|
42
|
+
}
|
|
43
|
+
|
|
40
44
|
public static async new(config: BBConfig, logger = createLogger('bb-prover:verifier')) {
|
|
41
45
|
await fs.mkdir(config.bbWorkingDirectory, { recursive: true });
|
|
42
46
|
return new BBCircuitVerifier(config, logger);
|
package/src/verifier/index.ts
CHANGED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { SerialQueue } from '@aztec/foundation/queue';
|
|
2
|
+
import type { ClientProtocolCircuitVerifier } from '@aztec/stdlib/interfaces/server';
|
|
3
|
+
import type { Tx } from '@aztec/stdlib/tx';
|
|
4
|
+
|
|
5
|
+
import type { BBConfig } from '../config.js';
|
|
6
|
+
|
|
7
|
+
export class QueuedIVCVerifier implements ClientProtocolCircuitVerifier {
|
|
8
|
+
private queue: SerialQueue;
|
|
9
|
+
|
|
10
|
+
public constructor(
|
|
11
|
+
config: BBConfig,
|
|
12
|
+
private verifier: ClientProtocolCircuitVerifier,
|
|
13
|
+
) {
|
|
14
|
+
this.queue = new SerialQueue();
|
|
15
|
+
this.queue.start(config.numConcurrentIVCVerifiers);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
public verifyProof(tx: Tx): Promise<boolean> {
|
|
19
|
+
return this.queue.put(() => this.verifier.verifyProof(tx));
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
stop(): Promise<void> {
|
|
23
|
+
return this.queue.end();
|
|
24
|
+
}
|
|
25
|
+
}
|