@aztec/bb.js 0.86.0-starknet.1 → 0.87.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/dest/browser/barretenberg-threads.js +1 -1
  2. package/dest/browser/barretenberg.js +1 -1
  3. package/dest/browser/index.js +125 -209
  4. package/dest/browser/main.worker.js +116 -116
  5. package/dest/browser/thread.worker.js +116 -116
  6. package/dest/node/barretenberg/backend.d.ts.map +1 -1
  7. package/dest/node/barretenberg/backend.js +1 -1
  8. package/dest/node/barretenberg/index.d.ts.map +1 -1
  9. package/dest/node/barretenberg/index.js +5 -5
  10. package/dest/node/barretenberg/verifier.d.ts +0 -2
  11. package/dest/node/barretenberg/verifier.d.ts.map +1 -1
  12. package/dest/node/barretenberg/verifier.js +2 -12
  13. package/dest/node/barretenberg_api/index.d.ts +0 -10
  14. package/dest/node/barretenberg_api/index.d.ts.map +1 -1
  15. package/dest/node/barretenberg_api/index.js +2 -72
  16. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  17. package/dest/node/bigint-array/index.d.ts +1 -0
  18. package/dest/node/bigint-array/index.d.ts.map +1 -1
  19. package/dest/node/bindgen/mappings.js +2 -2
  20. package/dest/node/bindgen/typescript.js +1 -1
  21. package/dest/node/crs/net_crs.d.ts.map +1 -1
  22. package/dest/node/crs/net_crs.js +6 -7
  23. package/dest/node/crs/node/index.js +4 -4
  24. package/dest/node/main.d.ts +0 -8
  25. package/dest/node/main.d.ts.map +1 -1
  26. package/dest/node/main.js +3 -193
  27. package/dest/node/proof/index.d.ts +0 -1
  28. package/dest/node/proof/index.d.ts.map +1 -1
  29. package/dest/node/proof/index.js +1 -8
  30. package/dest/node/serialize/buffer_reader.d.ts.map +1 -1
  31. package/dest/node/serialize/buffer_reader.js +1 -1
  32. package/dest/node/types/fields.d.ts +1 -0
  33. package/dest/node/types/fields.d.ts.map +1 -1
  34. package/dest/node/types/fields.js +1 -1
  35. package/dest/node/types/point.d.ts +1 -0
  36. package/dest/node/types/point.d.ts.map +1 -1
  37. package/dest/node/types/point.js +1 -1
  38. package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
  39. package/dest/node-cjs/barretenberg/backend.js +1 -1
  40. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
  41. package/dest/node-cjs/barretenberg/index.js +5 -5
  42. package/dest/node-cjs/barretenberg/verifier.d.ts +0 -2
  43. package/dest/node-cjs/barretenberg/verifier.d.ts.map +1 -1
  44. package/dest/node-cjs/barretenberg/verifier.js +1 -11
  45. package/dest/node-cjs/barretenberg_api/index.d.ts +0 -10
  46. package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -1
  47. package/dest/node-cjs/barretenberg_api/index.js +1 -71
  48. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  49. package/dest/node-cjs/bigint-array/index.d.ts +1 -0
  50. package/dest/node-cjs/bigint-array/index.d.ts.map +1 -1
  51. package/dest/node-cjs/bindgen/mappings.js +2 -2
  52. package/dest/node-cjs/bindgen/typescript.js +1 -1
  53. package/dest/node-cjs/crs/net_crs.d.ts.map +1 -1
  54. package/dest/node-cjs/crs/net_crs.js +6 -7
  55. package/dest/node-cjs/crs/node/index.js +4 -4
  56. package/dest/node-cjs/main.d.ts +0 -8
  57. package/dest/node-cjs/main.d.ts.map +1 -1
  58. package/dest/node-cjs/main.js +4 -202
  59. package/dest/node-cjs/proof/index.d.ts +0 -1
  60. package/dest/node-cjs/proof/index.d.ts.map +1 -1
  61. package/dest/node-cjs/proof/index.js +2 -10
  62. package/dest/node-cjs/serialize/buffer_reader.d.ts.map +1 -1
  63. package/dest/node-cjs/serialize/buffer_reader.js +1 -1
  64. package/dest/node-cjs/types/fields.d.ts +1 -0
  65. package/dest/node-cjs/types/fields.d.ts.map +1 -1
  66. package/dest/node-cjs/types/fields.js +1 -1
  67. package/dest/node-cjs/types/point.d.ts +1 -0
  68. package/dest/node-cjs/types/point.d.ts.map +1 -1
  69. package/dest/node-cjs/types/point.js +1 -1
  70. package/package.json +7 -8
  71. package/src/barretenberg/backend.ts +24 -22
  72. package/src/barretenberg/index.ts +9 -5
  73. package/src/barretenberg/verifier.ts +1 -13
  74. package/src/barretenberg_api/index.ts +0 -128
  75. package/src/bindgen/mappings.ts +1 -1
  76. package/src/bindgen/typescript.ts +4 -4
  77. package/src/crs/net_crs.ts +5 -6
  78. package/src/crs/node/index.ts +3 -3
  79. package/src/index.html +1 -1
  80. package/src/main.ts +14 -230
  81. package/src/proof/index.ts +0 -12
  82. package/src/serialize/buffer_reader.ts +4 -1
  83. package/src/types/fields.ts +2 -2
  84. package/src/types/point.ts +4 -1
  85. package/dest/node/crs/node/ignition_files_crs.d.ts +0 -38
  86. package/dest/node/crs/node/ignition_files_crs.d.ts.map +0 -1
  87. package/dest/node/crs/node/ignition_files_crs.js +0 -65
  88. package/dest/node/examples/simple.rawtest.d.ts +0 -2
  89. package/dest/node/examples/simple.rawtest.d.ts.map +0 -1
  90. package/dest/node/examples/simple.rawtest.js +0 -30
  91. package/dest/node/examples/simple.test.d.ts +0 -2
  92. package/dest/node/examples/simple.test.d.ts.map +0 -1
  93. package/dest/node/examples/simple.test.js +0 -23
  94. package/dest/node-cjs/crs/node/ignition_files_crs.d.ts +0 -38
  95. package/dest/node-cjs/crs/node/ignition_files_crs.d.ts.map +0 -1
  96. package/dest/node-cjs/crs/node/ignition_files_crs.js +0 -69
  97. package/dest/node-cjs/examples/simple.rawtest.d.ts +0 -2
  98. package/dest/node-cjs/examples/simple.rawtest.d.ts.map +0 -1
  99. package/dest/node-cjs/examples/simple.rawtest.js +0 -33
  100. package/dest/node-cjs/examples/simple.test.d.ts +0 -2
  101. package/dest/node-cjs/examples/simple.test.d.ts.map +0 -1
  102. package/dest/node-cjs/examples/simple.test.js +0 -25
  103. package/src/crs/node/ignition_files_crs.ts +0 -74
  104. package/src/examples/simple.rawtest.ts +0 -38
  105. package/src/examples/simple.test.ts +0 -28
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=simple.rawtest.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simple.rawtest.d.ts","sourceRoot":"","sources":["../../../src/examples/simple.rawtest.ts"],"names":[],"mappings":""}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const index_js_1 = require("../crs/index.js");
5
- const debug_1 = tslib_1.__importDefault(require("debug"));
6
- const index_js_2 = require("../barretenberg/index.js");
7
- const index_js_3 = require("../types/index.js");
8
- debug_1.default.enable('*');
9
- const debug = (0, debug_1.default)('simple_test');
10
- async function main() {
11
- const CIRCUIT_SIZE = 2 ** 19;
12
- debug('starting test...');
13
- const api = await index_js_2.Barretenberg.new();
14
- // // Important to init slab allocator as first thing, to ensure maximum memory efficiency.
15
- // TODO(https://github.com/AztecProtocol/barretenberg/issues/1129): Do slab allocator initialization?
16
- // await api.commonInitSlabAllocator(CIRCUIT_SIZE);
17
- // Plus 1 needed!
18
- const crs = await index_js_1.Crs.new(CIRCUIT_SIZE + 1);
19
- await api.srsInitSrs(new index_js_3.RawBuffer(crs.getG1Data()), crs.numPoints, new index_js_3.RawBuffer(crs.getG2Data()));
20
- const iterations = 10;
21
- let totalTime = 0;
22
- for (let i = 0; i < iterations; ++i) {
23
- const start = new Date().getTime();
24
- debug(`iteration ${i} starting...`);
25
- await api.examplesSimpleCreateAndVerifyProof();
26
- totalTime += new Date().getTime() - start;
27
- }
28
- await api.destroy();
29
- debug(`avg iteration time: ${totalTime / iterations}ms`);
30
- debug('test complete.');
31
- }
32
- void main();
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLnJhd3Rlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXhhbXBsZXMvc2ltcGxlLnJhd3Rlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQXNDO0FBQ3RDLDBEQUFnQztBQUNoQyx1REFBd0Q7QUFDeEQsZ0RBQThDO0FBRTlDLGVBQVcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDeEIsTUFBTSxLQUFLLEdBQUcsSUFBQSxlQUFXLEVBQUMsYUFBYSxDQUFDLENBQUM7QUFFekMsS0FBSyxVQUFVLElBQUk7SUFDakIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUU3QixLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMxQixNQUFNLEdBQUcsR0FBRyxNQUFNLHVCQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7SUFFckMsMkZBQTJGO0lBQzNGLHFHQUFxRztJQUNyRyxtREFBbUQ7SUFFbkQsaUJBQWlCO0lBQ2pCLE1BQU0sR0FBRyxHQUFHLE1BQU0sY0FBRyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDNUMsTUFBTSxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksb0JBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksb0JBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRXBHLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUN0QixJQUFJLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFDbEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sS0FBSyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbkMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNwQyxNQUFNLEdBQUcsQ0FBQyxrQ0FBa0MsRUFBRSxDQUFDO1FBQy9DLFNBQVMsSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLEtBQUssQ0FBQztJQUM1QyxDQUFDO0lBRUQsTUFBTSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7SUFFcEIsS0FBSyxDQUFDLHVCQUF1QixTQUFTLEdBQUcsVUFBVSxJQUFJLENBQUMsQ0FBQztJQUN6RCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUMxQixDQUFDO0FBRUQsS0FBSyxJQUFJLEVBQUUsQ0FBQyJ9
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=simple.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simple.test.d.ts","sourceRoot":"","sources":["../../../src/examples/simple.test.ts"],"names":[],"mappings":""}
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const index_js_1 = require("../crs/index.js");
4
- const index_js_2 = require("../barretenberg/index.js");
5
- const index_js_3 = require("../types/index.js");
6
- describe('simple', () => {
7
- let api;
8
- beforeAll(async () => {
9
- api = await index_js_2.Barretenberg.new();
10
- // // Important to init slab allocator as first thing, to ensure maximum memory efficiency.
11
- // TODO(https://github.com/AztecProtocol/barretenberg/issues/1129): Do slab allocator initialization?
12
- // const CIRCUIT_SIZE = 2 ** 19;
13
- // await api.commonInitSlabAllocator(CIRCUIT_SIZE);
14
- const crs = await index_js_1.Crs.new(2 ** 20 + 1);
15
- await api.srsInitSrs(new index_js_3.RawBuffer(crs.getG1Data()), crs.numPoints, new index_js_3.RawBuffer(crs.getG2Data()));
16
- }, 60000);
17
- afterAll(async () => {
18
- await api.destroy();
19
- }, 10000);
20
- it('should construct 512k gate proof', async () => {
21
- const valid = await api.examplesSimpleCreateAndVerifyProof();
22
- expect(valid).toBe(true);
23
- }, 300000);
24
- });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXhhbXBsZXMvc2ltcGxlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw4Q0FBc0M7QUFDdEMsdURBQXdEO0FBQ3hELGdEQUE4QztBQUU5QyxRQUFRLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtJQUN0QixJQUFJLEdBQWlCLENBQUM7SUFFdEIsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ25CLEdBQUcsR0FBRyxNQUFNLHVCQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7UUFFL0IsMkZBQTJGO1FBQzNGLHFHQUFxRztRQUNyRyxnQ0FBZ0M7UUFDaEMsbURBQW1EO1FBRW5ELE1BQU0sR0FBRyxHQUFHLE1BQU0sY0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLG9CQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLG9CQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN0RyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFVixRQUFRLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbEIsTUFBTSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdEIsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRVYsRUFBRSxDQUFDLGtDQUFrQyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ2hELE1BQU0sS0FBSyxHQUFHLE1BQU0sR0FBRyxDQUFDLGtDQUFrQyxFQUFFLENBQUM7UUFDN0QsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDYixDQUFDLENBQUMsQ0FBQyJ9
@@ -1,74 +0,0 @@
1
- import { existsSync } from 'fs';
2
- import { readFile } from 'fs/promises';
3
- import { dirname } from 'path';
4
- import { fileURLToPath } from 'url';
5
-
6
- function getCurrentDir() {
7
- if (typeof __dirname !== 'undefined') {
8
- return __dirname;
9
- } else {
10
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
11
- // @ts-ignore
12
- return dirname(fileURLToPath(import.meta.url));
13
- }
14
- }
15
-
16
- /**
17
- * The path to our SRS object, assuming that we are in e.g. barretenberg/ts/dest/node/crs/node folder.
18
- */
19
- export const SRS_DEV_PATH = getCurrentDir() + '/../../../../../cpp/srs_db/ignition/monomial';
20
- export const GRUMPKIN_SRS_DEV_PATH = getCurrentDir() + '/../../../../../cpp/srs_db/grumpkin/monomial';
21
-
22
- /**
23
- * Downloader for CRS from a local file (for Node).
24
- */
25
- export class IgnitionFilesCrs {
26
- private data!: Uint8Array;
27
- private g2Data!: Uint8Array;
28
-
29
- constructor(
30
- /**
31
- * The number of circuit gates.
32
- */
33
- public readonly numPoints: number,
34
- private path = SRS_DEV_PATH,
35
- ) {}
36
-
37
- pathExists() {
38
- return existsSync(this.path);
39
- }
40
-
41
- /**
42
- * Read the data file.
43
- */
44
- async init() {
45
- // We need this.numPoints number of g1 points.
46
- // numPoints should be circuitSize + 1.
47
- const g1Start = 28;
48
- const g1End = g1Start + this.numPoints * 64;
49
-
50
- const data = await readFile(this.path + '/transcript00.dat');
51
- this.data = data.subarray(g1Start, g1End);
52
-
53
- // TODO(https://github.com/AztecProtocol/barretenberg/issues/811): proper abstraction from Grumpkin which does not have g2
54
- if (existsSync(this.path + '/g2.dat')) {
55
- this.g2Data = await readFile(this.path + '/g2.dat');
56
- }
57
- }
58
-
59
- /**
60
- * G1 points data for prover key.
61
- * @returns The points data.
62
- */
63
- getG1Data(): Uint8Array {
64
- return this.data;
65
- }
66
-
67
- /**
68
- * G2 points data for verification key.
69
- * @returns The points data.
70
- */
71
- getG2Data(): Uint8Array {
72
- return this.g2Data;
73
- }
74
- }
@@ -1,38 +0,0 @@
1
- import { Crs } from '../crs/index.js';
2
- import createDebug from 'debug';
3
- import { Barretenberg } from '../barretenberg/index.js';
4
- import { RawBuffer } from '../types/index.js';
5
-
6
- createDebug.enable('*');
7
- const debug = createDebug('simple_test');
8
-
9
- async function main() {
10
- const CIRCUIT_SIZE = 2 ** 19;
11
-
12
- debug('starting test...');
13
- const api = await Barretenberg.new();
14
-
15
- // // Important to init slab allocator as first thing, to ensure maximum memory efficiency.
16
- // TODO(https://github.com/AztecProtocol/barretenberg/issues/1129): Do slab allocator initialization?
17
- // await api.commonInitSlabAllocator(CIRCUIT_SIZE);
18
-
19
- // Plus 1 needed!
20
- const crs = await Crs.new(CIRCUIT_SIZE + 1);
21
- await api.srsInitSrs(new RawBuffer(crs.getG1Data()), crs.numPoints, new RawBuffer(crs.getG2Data()));
22
-
23
- const iterations = 10;
24
- let totalTime = 0;
25
- for (let i = 0; i < iterations; ++i) {
26
- const start = new Date().getTime();
27
- debug(`iteration ${i} starting...`);
28
- await api.examplesSimpleCreateAndVerifyProof();
29
- totalTime += new Date().getTime() - start;
30
- }
31
-
32
- await api.destroy();
33
-
34
- debug(`avg iteration time: ${totalTime / iterations}ms`);
35
- debug('test complete.');
36
- }
37
-
38
- void main();
@@ -1,28 +0,0 @@
1
- import { Crs } from '../crs/index.js';
2
- import { Barretenberg } from '../barretenberg/index.js';
3
- import { RawBuffer } from '../types/index.js';
4
-
5
- describe('simple', () => {
6
- let api: Barretenberg;
7
-
8
- beforeAll(async () => {
9
- api = await Barretenberg.new();
10
-
11
- // // Important to init slab allocator as first thing, to ensure maximum memory efficiency.
12
- // TODO(https://github.com/AztecProtocol/barretenberg/issues/1129): Do slab allocator initialization?
13
- // const CIRCUIT_SIZE = 2 ** 19;
14
- // await api.commonInitSlabAllocator(CIRCUIT_SIZE);
15
-
16
- const crs = await Crs.new(2 ** 20 + 1);
17
- await api.srsInitSrs(new RawBuffer(crs.getG1Data()), crs.numPoints, new RawBuffer(crs.getG2Data()));
18
- }, 60000);
19
-
20
- afterAll(async () => {
21
- await api.destroy();
22
- }, 10000);
23
-
24
- it('should construct 512k gate proof', async () => {
25
- const valid = await api.examplesSimpleCreateAndVerifyProof();
26
- expect(valid).toBe(true);
27
- }, 300000);
28
- });