@aztec/merkle-tree 0.1.0-alpha23 → 0.1.0-alpha40
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/.tsbuildinfo +1 -1
- package/dest/index.d.ts +0 -2
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +1 -3
- package/dest/interfaces/indexed_tree.d.ts +2 -1
- package/dest/interfaces/indexed_tree.d.ts.map +1 -1
- package/dest/interfaces/merkle_tree.d.ts +1 -1
- package/dest/interfaces/merkle_tree.d.ts.map +1 -1
- package/dest/load_tree.d.ts +1 -1
- package/dest/load_tree.d.ts.map +1 -1
- package/dest/load_tree.js +1 -1
- package/dest/new_tree.d.ts +1 -1
- package/dest/new_tree.d.ts.map +1 -1
- package/dest/new_tree.js +1 -1
- package/dest/pedersen.d.ts +1 -28
- package/dest/pedersen.d.ts.map +1 -1
- package/dest/pedersen.js +1 -28
- package/dest/sparse_tree/sparse_tree.test.js +12 -11
- package/dest/standard_indexed_tree/standard_indexed_tree.d.ts +1 -1
- package/dest/standard_indexed_tree/standard_indexed_tree.d.ts.map +1 -1
- package/dest/standard_indexed_tree/standard_indexed_tree.js +4 -4
- package/dest/standard_indexed_tree/test/standard_indexed_tree.test.js +5 -6
- package/dest/standard_indexed_tree/test/standard_indexed_tree_with_append.d.ts.map +1 -1
- package/dest/standard_indexed_tree/test/standard_indexed_tree_with_append.js +1 -1
- package/dest/standard_tree/standard_tree.test.js +4 -4
- package/dest/test/standard_based_test_suite.d.ts +1 -1
- package/dest/test/standard_based_test_suite.d.ts.map +1 -1
- package/dest/test/standard_based_test_suite.js +5 -4
- package/dest/test/test_suite.d.ts +1 -1
- package/dest/test/test_suite.d.ts.map +1 -1
- package/dest/test/test_suite.js +4 -3
- package/dest/test/utils/create_mem_down.d.ts +2 -2
- package/dest/test/utils/create_mem_down.d.ts.map +1 -1
- package/dest/test/utils/create_mem_down.js +1 -1
- package/dest/tree_base.d.ts +1 -2
- package/dest/tree_base.d.ts.map +1 -1
- package/dest/tree_base.js +2 -2
- package/package.json +4 -3
- package/src/index.ts +0 -2
- package/src/interfaces/indexed_tree.ts +3 -1
- package/src/interfaces/merkle_tree.ts +1 -1
- package/src/load_tree.ts +3 -1
- package/src/new_tree.ts +3 -1
- package/src/pedersen.ts +2 -29
- package/src/sparse_tree/sparse_tree.test.ts +15 -13
- package/src/standard_indexed_tree/standard_indexed_tree.ts +4 -3
- package/src/standard_indexed_tree/test/standard_indexed_tree.test.ts +7 -7
- package/src/standard_indexed_tree/test/standard_indexed_tree_with_append.ts +1 -0
- package/src/standard_tree/standard_tree.test.ts +6 -4
- package/src/test/standard_based_test_suite.ts +9 -6
- package/src/test/test_suite.ts +7 -4
- package/src/test/utils/create_mem_down.ts +1 -1
- package/src/tree_base.ts +4 -3
- package/tsconfig.json +3 -0
- package/dest/hasher.d.ts +0 -11
- package/dest/hasher.d.ts.map +0 -1
- package/dest/hasher.js +0 -2
- package/dest/sibling_path/sibling_path.d.ts +0 -92
- package/dest/sibling_path/sibling_path.d.ts.map +0 -1
- package/dest/sibling_path/sibling_path.js +0 -120
- package/src/hasher.ts +0 -9
- package/src/sibling_path/sibling_path.ts +0 -139
package/dest/test/test_suite.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import { CircuitsWasm } from '@aztec/circuits.js';
|
|
2
|
+
import { SiblingPath } from '@aztec/types';
|
|
1
3
|
import { default as levelup } from 'levelup';
|
|
2
|
-
import { Pedersen
|
|
4
|
+
import { Pedersen } from '../index.js';
|
|
3
5
|
import { appendLeaves } from './utils/append_leaves.js';
|
|
4
6
|
import { createMemDown } from './utils/create_mem_down.js';
|
|
5
|
-
import { CircuitsWasm } from '@aztec/circuits.js';
|
|
6
7
|
const expectSameTrees = async (tree1, tree2, includeUncommitted = true) => {
|
|
7
8
|
const size = tree1.getNumLeaves(includeUncommitted);
|
|
8
9
|
expect(size).toBe(tree2.getNumLeaves(includeUncommitted));
|
|
@@ -115,4 +116,4 @@ export const treeTestSuite = (testName, createDb, createFromName) => {
|
|
|
115
116
|
});
|
|
116
117
|
});
|
|
117
118
|
};
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9zdWl0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3Rlc3Rfc3VpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWxELE9BQU8sRUFBVSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFbkQsT0FBTyxFQUFFLE9BQU8sSUFBSSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFN0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUd2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTNELE1BQU0sZUFBZSxHQUFHLEtBQUssRUFDM0IsS0FBc0MsRUFDdEMsS0FBc0MsRUFDdEMsa0JBQWtCLEdBQUcsSUFBSSxFQUN6QixFQUFFO0lBQ0YsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3BELE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7SUFDMUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBRWxILEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUU7UUFDN0IsTUFBTSxZQUFZLEdBQUcsTUFBTSxLQUFLLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMs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
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const createMemDown: () =>
|
|
1
|
+
import { type MemDown } from 'memdown';
|
|
2
|
+
export declare const createMemDown: () => MemDown<any, any>;
|
|
3
3
|
//# sourceMappingURL=create_mem_down.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create_mem_down.d.ts","sourceRoot":"","sources":["../../../src/test/utils/create_mem_down.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"create_mem_down.d.ts","sourceRoot":"","sources":["../../../src/test/utils/create_mem_down.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAsB,MAAM,SAAS,CAAC;AAE3D,eAAO,MAAM,aAAa,yBAAgD,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { default as memdown } from 'memdown';
|
|
2
2
|
export const createMemDown = () => memdown();
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlX21lbV9kb3duLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rlc3QvdXRpbHMvY3JlYXRlX21lbV9kb3duLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsT0FBTyxJQUFJLE9BQU8sRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUUzRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsR0FBRyxFQUFFLENBQUUsT0FBZSxFQUF1QixDQUFDIn0=
|
package/dest/tree_base.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import { Hasher, SiblingPath } from '@aztec/types';
|
|
2
3
|
import { LevelUp, LevelUpChain } from 'levelup';
|
|
3
|
-
import { SiblingPath } from './sibling_path/sibling_path.js';
|
|
4
|
-
import { Hasher } from './hasher.js';
|
|
5
4
|
import { MerkleTree } from './interfaces/merkle_tree.js';
|
|
6
5
|
export declare const decodeMeta: (meta: Buffer) => {
|
|
7
6
|
root: Buffer;
|
package/dest/tree_base.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree_base.d.ts","sourceRoot":"","sources":["../src/tree_base.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"tree_base.d.ts","sourceRoot":"","sources":["../src/tree_base.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAWzD,eAAO,MAAM,UAAU,SAAU,MAAM;;;;CAStC,CAAC;AAEF,eAAO,MAAM,YAAY,QAAyF,CAAC;AAEnH;;GAEG;AACH,8BAAsB,QAAS,YAAW,UAAU;IAQhD,SAAS,CAAC,EAAE,EAAE,OAAO;IACrB,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,KAAK;IACb,SAAS,CAAC,IAAI,EAAE,MAAM;IAXxB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IACpC,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,IAAI,CAAU;IACtB,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,KAAK,CAAiC;gBAGlC,EAAE,EAAE,OAAO,EACX,MAAM,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACX,IAAI,GAAE,MAAW,EAC3B,IAAI,CAAC,EAAE,MAAM;IAiBf;;;;OAIG;IACI,OAAO,CAAC,kBAAkB,EAAE,OAAO,GAAG,MAAM;IAInD;;;;OAIG;IACI,YAAY,CAAC,kBAAkB,EAAE,OAAO;IAI/C;;;OAGG;IACI,OAAO,IAAI,MAAM;IAIxB;;;OAGG;IACI,QAAQ,IAAI,MAAM;IAIzB;;;;;;OAMG;IACU,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAalH;;;OAGG;IACU,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAapC;;;OAGG;IACI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAKhC;;;;;OAKG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI5F;;OAEG;IACH,OAAO,CAAC,UAAU;IAKlB;;;;OAIG;cACa,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAkBvE;;;;;;;OAOG;YACW,qBAAqB;IAYnC;;;;OAIG;YACW,KAAK;IAInB;;;;OAIG;IAEU,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvD;;OAEG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxC;;;OAGG;cACa,SAAS,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC;IAS9D;;;;;;;;;;;;;;OAcG;cACa,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CA+B9D"}
|
package/dest/tree_base.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SiblingPath } from './sibling_path/sibling_path.js';
|
|
2
1
|
import { toBigIntLE, toBufferLE } from '@aztec/foundation/bigint-buffer';
|
|
2
|
+
import { SiblingPath } from '@aztec/types';
|
|
3
3
|
const MAX_DEPTH = 254;
|
|
4
4
|
const indexToKeyHash = (name, level, index) => `${name}:${level}:${index}`;
|
|
5
5
|
const encodeMeta = (root, depth, size) => {
|
|
@@ -254,4 +254,4 @@ export class TreeBase {
|
|
|
254
254
|
this.cachedSize = numLeaves + BigInt(leaves.length);
|
|
255
255
|
}
|
|
256
256
|
}
|
|
257
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
257
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZV9iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3RyZWVfYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pFLE9BQU8sRUFBVSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFNbkQsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDO0FBRXRCLE1BQU0sY0FBYyxHQUFHLENBQUMsSUFBWSxFQUFFLEtBQWEsRUFBRSxLQUFhLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxJQUFJLEtBQUssSUFBSSxLQUFLLEVBQUUsQ0FBQztBQUNuRyxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQVksRUFBRSxLQUFhLEVBQUUsSUFBWSxFQUFFLEVBQUU7SUFDL0QsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hCLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzlCLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNyRCxDQUFDLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRTtJQUN6QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFD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
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/merkle-tree",
|
|
3
|
-
"version": "0.1.0-
|
|
3
|
+
"version": "0.1.0-alpha40",
|
|
4
4
|
"exports": "./dest/index.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@aztec/circuits.js": "0.1.0-
|
|
8
|
-
"@aztec/foundation": "0.1.0-
|
|
7
|
+
"@aztec/circuits.js": "0.1.0-alpha40",
|
|
8
|
+
"@aztec/foundation": "0.1.0-alpha40",
|
|
9
|
+
"@aztec/types": "0.1.0-alpha40",
|
|
9
10
|
"levelup": "^5.1.1",
|
|
10
11
|
"memdown": "^6.1.1",
|
|
11
12
|
"sha256": "^0.2.0",
|
package/src/index.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
export * from './hasher.js';
|
|
2
1
|
export * from './interfaces/append_only_tree.js';
|
|
3
2
|
export * from './interfaces/indexed_tree.js';
|
|
4
3
|
export * from './interfaces/merkle_tree.js';
|
|
5
4
|
export * from './interfaces/update_only_tree.js';
|
|
6
5
|
export * from './pedersen.js';
|
|
7
|
-
export * from './sibling_path/sibling_path.js';
|
|
8
6
|
export * from './sparse_tree/sparse_tree.js';
|
|
9
7
|
export * from './standard_indexed_tree/standard_indexed_tree.js';
|
|
10
8
|
export * from './standard_tree/standard_tree.js';
|
package/src/load_tree.ts
CHANGED
package/src/new_tree.ts
CHANGED
package/src/pedersen.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { IWasmModule } from '@aztec/foundation/wasm';
|
|
2
1
|
import {
|
|
3
2
|
pedersenCompress,
|
|
4
3
|
pedersenGetHash,
|
|
5
4
|
pedersenGetHashTree,
|
|
6
5
|
pedersenHashInputs,
|
|
7
6
|
} from '@aztec/circuits.js/barretenberg';
|
|
8
|
-
import {
|
|
7
|
+
import { IWasmModule } from '@aztec/foundation/wasm';
|
|
8
|
+
import { Hasher } from '@aztec/types';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* A helper class encapsulating Pedersen hash functionality.
|
|
@@ -13,45 +13,18 @@ import { Hasher } from './hasher.js';
|
|
|
13
13
|
export class Pedersen implements Hasher {
|
|
14
14
|
constructor(private wasm: IWasmModule) {}
|
|
15
15
|
|
|
16
|
-
/**
|
|
17
|
-
* Compresses two 32-byte hashes.
|
|
18
|
-
* @param lhs - The first hash.
|
|
19
|
-
* @param rhs - The second hash.
|
|
20
|
-
* @returns The new 32-byte hash.
|
|
21
|
-
*/
|
|
22
16
|
public compress(lhs: Uint8Array, rhs: Uint8Array): Buffer {
|
|
23
17
|
return pedersenCompress(this.wasm, lhs, rhs);
|
|
24
18
|
}
|
|
25
19
|
|
|
26
|
-
/**
|
|
27
|
-
* Compresses an array of buffers.
|
|
28
|
-
* @param inputs - The array of buffers to compress.
|
|
29
|
-
* @returns The resulting 32-byte hash.
|
|
30
|
-
*/
|
|
31
20
|
public compressInputs(inputs: Buffer[]): Buffer {
|
|
32
21
|
return pedersenHashInputs(this.wasm, inputs);
|
|
33
22
|
}
|
|
34
23
|
|
|
35
|
-
/**
|
|
36
|
-
* Get a 32-byte pedersen hash from a buffer.
|
|
37
|
-
* @param data - The data buffer.
|
|
38
|
-
* @returns The resulting hash buffer.
|
|
39
|
-
*/
|
|
40
24
|
public hashToField(data: Uint8Array): Buffer {
|
|
41
25
|
return pedersenGetHash(this.wasm, Buffer.from(data));
|
|
42
26
|
}
|
|
43
27
|
|
|
44
|
-
/**
|
|
45
|
-
* Given a buffer containing 32 byte pedersen leaves, return a new buffer containing the leaves and all pairs of
|
|
46
|
-
* nodes that define a merkle tree.
|
|
47
|
-
*
|
|
48
|
-
* E.g.
|
|
49
|
-
* Input: [1][2][3][4]
|
|
50
|
-
* Output: [1][2][3][4][compress(1,2)][compress(3,4)][compress(5,6)].
|
|
51
|
-
*
|
|
52
|
-
* @param leaves - The 32 byte pedersen leaves.
|
|
53
|
-
* @returns A tree represented by an array.
|
|
54
|
-
*/
|
|
55
28
|
public hashToTree(leaves: Buffer[]): Promise<Buffer[]> {
|
|
56
29
|
return Promise.resolve(pedersenGetHashTree(this.wasm, leaves));
|
|
57
30
|
}
|
|
@@ -1,20 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
import { createMemDown } from '../test/utils/create_mem_down.js';
|
|
7
|
-
import { Pedersen } from '../pedersen.js';
|
|
1
|
+
import { CircuitsWasm } from '@aztec/circuits.js';
|
|
2
|
+
import { createDebugLogger } from '@aztec/foundation/log';
|
|
3
|
+
import { IWasmModule } from '@aztec/foundation/wasm';
|
|
4
|
+
import { Hasher, SiblingPath } from '@aztec/types';
|
|
5
|
+
|
|
8
6
|
import { randomBytes } from 'crypto';
|
|
9
|
-
import {
|
|
7
|
+
import { default as levelup } from 'levelup';
|
|
8
|
+
|
|
9
|
+
import { INITIAL_LEAF, newTree } from '../index.js';
|
|
10
10
|
import { UpdateOnlyTree } from '../interfaces/update_only_tree.js';
|
|
11
|
-
import { newTree } from '../new_tree.js';
|
|
12
11
|
import { loadTree } from '../load_tree.js';
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
12
|
+
import { Pedersen } from '../pedersen.js';
|
|
13
|
+
import { standardBasedTreeTestSuite } from '../test/standard_based_test_suite.js';
|
|
14
|
+
import { treeTestSuite } from '../test/test_suite.js';
|
|
15
|
+
import { createMemDown } from '../test/utils/create_mem_down.js';
|
|
16
|
+
import { SparseTree } from './sparse_tree.js';
|
|
16
17
|
|
|
17
|
-
const log =
|
|
18
|
+
const log = createDebugLogger('aztec:sparse_tree_test');
|
|
18
19
|
|
|
19
20
|
const createDb = async (
|
|
20
21
|
levelUp: levelup.LevelUp,
|
|
@@ -159,6 +160,7 @@ describe('SparseTreeSpecific', () => {
|
|
|
159
160
|
}
|
|
160
161
|
});
|
|
161
162
|
|
|
163
|
+
// This one is a performance measurement and is enabled only to check regression in performance.
|
|
162
164
|
it.skip('measures time of inserting 1000 leaves at random positions for depth 254', async () => {
|
|
163
165
|
const depth = 254;
|
|
164
166
|
const maxIndex = 2 ** depth - 1;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { toBigIntBE, toBufferBE } from '@aztec/foundation/bigint-buffer';
|
|
2
|
-
import {
|
|
2
|
+
import { createDebugLogger } from '@aztec/foundation/log';
|
|
3
|
+
import { SiblingPath } from '@aztec/types';
|
|
4
|
+
|
|
3
5
|
import { IndexedTree, LeafData } from '../interfaces/indexed_tree.js';
|
|
4
6
|
import { TreeBase } from '../tree_base.js';
|
|
5
|
-
import { SiblingPath } from '../index.js';
|
|
6
7
|
|
|
7
|
-
const log =
|
|
8
|
+
const log = createDebugLogger('aztec:standard-indexed-tree');
|
|
8
9
|
|
|
9
10
|
const indexToKeyLeaf = (name: string, index: bigint) => {
|
|
10
11
|
return `${name}:leaf:${index}`;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
+
import { CircuitsWasm } from '@aztec/circuits.js';
|
|
2
|
+
import { toBufferBE } from '@aztec/foundation/bigint-buffer';
|
|
3
|
+
import { IWasmModule } from '@aztec/foundation/wasm';
|
|
4
|
+
import { Hasher, SiblingPath } from '@aztec/types';
|
|
5
|
+
|
|
1
6
|
import { default as levelup } from 'levelup';
|
|
2
|
-
import { Hasher, INITIAL_LEAF, MerkleTree, Pedersen, SiblingPath } from '../../index.js';
|
|
3
|
-
import { treeTestSuite } from '../../test/test_suite.js';
|
|
4
7
|
|
|
8
|
+
import { INITIAL_LEAF, MerkleTree, Pedersen, loadTree, newTree } from '../../index.js';
|
|
9
|
+
import { treeTestSuite } from '../../test/test_suite.js';
|
|
5
10
|
import { createMemDown } from '../../test/utils/create_mem_down.js';
|
|
6
|
-
import { newTree } from '../../new_tree.js';
|
|
7
|
-
import { loadTree } from '../../load_tree.js';
|
|
8
|
-
import { toBufferBE } from '@aztec/foundation/bigint-buffer';
|
|
9
|
-
import { IWasmModule } from '@aztec/foundation/wasm';
|
|
10
|
-
import { CircuitsWasm } from '@aztec/circuits.js';
|
|
11
11
|
import { StandardIndexedTreeWithAppend } from './standard_indexed_tree_with_append.js';
|
|
12
12
|
|
|
13
13
|
const createDb = async (levelUp: levelup.LevelUp, hasher: Hasher, name: string, depth: number, prefilledSize = 1) => {
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import { CircuitsWasm } from '@aztec/circuits.js';
|
|
2
|
+
import { randomBytes } from '@aztec/foundation/crypto';
|
|
2
3
|
import { IWasmModule } from '@aztec/foundation/wasm';
|
|
4
|
+
import { Hasher } from '@aztec/types';
|
|
5
|
+
|
|
3
6
|
import { default as levelup } from 'levelup';
|
|
4
|
-
|
|
7
|
+
|
|
5
8
|
import { loadTree } from '../load_tree.js';
|
|
6
9
|
import { newTree } from '../new_tree.js';
|
|
7
10
|
import { standardBasedTreeTestSuite } from '../test/standard_based_test_suite.js';
|
|
8
11
|
import { treeTestSuite } from '../test/test_suite.js';
|
|
9
|
-
import { PedersenWithCounter } from '../test/utils/pedersen_with_counter.js';
|
|
10
|
-
import { StandardTree } from './standard_tree.js';
|
|
11
12
|
import { createMemDown } from '../test/utils/create_mem_down.js';
|
|
12
|
-
import {
|
|
13
|
+
import { PedersenWithCounter } from '../test/utils/pedersen_with_counter.js';
|
|
13
14
|
import { INITIAL_LEAF } from '../tree_base.js';
|
|
15
|
+
import { StandardTree } from './standard_tree.js';
|
|
14
16
|
|
|
15
17
|
const createDb = async (levelUp: levelup.LevelUp, hasher: Hasher, name: string, depth: number) => {
|
|
16
18
|
return await newTree(StandardTree, levelUp, hasher, name, depth);
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
1
|
+
import { CircuitsWasm } from '@aztec/circuits.js';
|
|
2
|
+
import { IWasmModule } from '@aztec/foundation/wasm';
|
|
3
|
+
import { Hasher, SiblingPath } from '@aztec/types';
|
|
4
|
+
|
|
5
5
|
import { randomBytes } from 'crypto';
|
|
6
|
+
import { default as levelup } from 'levelup';
|
|
7
|
+
|
|
8
|
+
import { INITIAL_LEAF, Pedersen } from '../index.js';
|
|
6
9
|
import { AppendOnlyTree } from '../interfaces/append_only_tree.js';
|
|
7
10
|
import { UpdateOnlyTree } from '../interfaces/update_only_tree.js';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
11
|
+
import { appendLeaves } from './utils/append_leaves.js';
|
|
12
|
+
import { createMemDown } from './utils/create_mem_down.js';
|
|
10
13
|
|
|
11
14
|
const TEST_TREE_DEPTH = 2;
|
|
12
15
|
|
package/src/test/test_suite.ts
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
|
+
import { CircuitsWasm } from '@aztec/circuits.js';
|
|
1
2
|
import { IWasmModule } from '@aztec/foundation/wasm';
|
|
3
|
+
import { Hasher, SiblingPath } from '@aztec/types';
|
|
4
|
+
|
|
2
5
|
import { default as levelup } from 'levelup';
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
import { createMemDown } from './utils/create_mem_down.js';
|
|
6
|
+
|
|
7
|
+
import { Pedersen } from '../index.js';
|
|
6
8
|
import { AppendOnlyTree } from '../interfaces/append_only_tree.js';
|
|
7
9
|
import { UpdateOnlyTree } from '../interfaces/update_only_tree.js';
|
|
8
|
-
import {
|
|
10
|
+
import { appendLeaves } from './utils/append_leaves.js';
|
|
11
|
+
import { createMemDown } from './utils/create_mem_down.js';
|
|
9
12
|
|
|
10
13
|
const expectSameTrees = async (
|
|
11
14
|
tree1: AppendOnlyTree | UpdateOnlyTree,
|
package/src/tree_base.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import { toBigIntLE, toBufferLE } from '@aztec/foundation/bigint-buffer';
|
|
2
|
+
import { Hasher, SiblingPath } from '@aztec/types';
|
|
3
|
+
|
|
1
4
|
import { LevelUp, LevelUpChain } from 'levelup';
|
|
2
|
-
|
|
3
|
-
import { Hasher } from './hasher.js';
|
|
5
|
+
|
|
4
6
|
import { MerkleTree } from './interfaces/merkle_tree.js';
|
|
5
|
-
import { toBigIntLE, toBufferLE } from '@aztec/foundation/bigint-buffer';
|
|
6
7
|
|
|
7
8
|
const MAX_DEPTH = 254;
|
|
8
9
|
|
package/tsconfig.json
CHANGED
package/dest/hasher.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
/**
|
|
3
|
-
* Defines hasher interface used by Merkle trees.
|
|
4
|
-
*/
|
|
5
|
-
export interface Hasher {
|
|
6
|
-
compress(lhs: Uint8Array, rhs: Uint8Array): Buffer;
|
|
7
|
-
compressInputs(inputs: Buffer[]): Buffer;
|
|
8
|
-
hashToField(data: Uint8Array): Buffer;
|
|
9
|
-
hashToTree(leaves: Buffer[]): Promise<Buffer[]>;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=hasher.d.ts.map
|
package/dest/hasher.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hasher.d.ts","sourceRoot":"","sources":["../src/hasher.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,MAAM,CAAC;IACnD,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IACzC,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC;IACtC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACjD"}
|
package/dest/hasher.js
DELETED
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
import { Pedersen } from '../pedersen.js';
|
|
3
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
-
/**
|
|
5
|
-
* Contains functionality to compute and serialize/deserialize a sibling path.
|
|
6
|
-
* E.g. Sibling path for a leaf at index 3 in a tree of depth 3 consists of:
|
|
7
|
-
* d0: [ root ]
|
|
8
|
-
* d1: [ ] [*]
|
|
9
|
-
* d2: [*] [ ] [ ] [ ]
|
|
10
|
-
* d3: [ ] [ ] [*] [ ] [ ] [ ] [ ] [ ].
|
|
11
|
-
*
|
|
12
|
-
* And the elements would be ordered as: [ leaf_at_index_2, node_at_level_2_index_0, node_at_level_1_index_1 ].
|
|
13
|
-
*/
|
|
14
|
-
export declare class SiblingPath<N extends number> {
|
|
15
|
-
/**
|
|
16
|
-
* Size of the sibling path (number of fields it contains).
|
|
17
|
-
*/
|
|
18
|
-
pathSize: N;
|
|
19
|
-
private data;
|
|
20
|
-
/**
|
|
21
|
-
* Returns sibling path hashed up from the a element.
|
|
22
|
-
* @param size - The number of elements in a given path.
|
|
23
|
-
* @param zeroElement - Value of the zero element.
|
|
24
|
-
* @param pedersen - Implementation of a hasher interface using the Pedersen hash.
|
|
25
|
-
* @returns A sibling path hashed up from a zero element.
|
|
26
|
-
*/
|
|
27
|
-
static ZERO<N extends number>(size: N, zeroElement: Buffer, pedersen: Pedersen): SiblingPath<N>;
|
|
28
|
-
/**
|
|
29
|
-
* Constructor.
|
|
30
|
-
* @param pathSize - The size of the sibling path.
|
|
31
|
-
* @param path - The sibling path data.
|
|
32
|
-
*/
|
|
33
|
-
constructor(
|
|
34
|
-
/**
|
|
35
|
-
* Size of the sibling path (number of fields it contains).
|
|
36
|
-
*/
|
|
37
|
-
pathSize: N,
|
|
38
|
-
/**
|
|
39
|
-
* The sibling path data.
|
|
40
|
-
*/
|
|
41
|
-
path: Buffer[]);
|
|
42
|
-
/**
|
|
43
|
-
* Serializes this SiblingPath object to a buffer.
|
|
44
|
-
* @returns The buffer representation of this object.
|
|
45
|
-
*/
|
|
46
|
-
toBuffer(): Buffer;
|
|
47
|
-
/**
|
|
48
|
-
* Returns the path buffer underlying the sibling path.
|
|
49
|
-
* @returns The Buffer array representation of this object.
|
|
50
|
-
*/
|
|
51
|
-
toBufferArray(): Buffer[];
|
|
52
|
-
/**
|
|
53
|
-
* Convert the Sibling Path object into an array of field elements.
|
|
54
|
-
* @returns The field array representation of this object.
|
|
55
|
-
*/
|
|
56
|
-
toFieldArray(): Fr[];
|
|
57
|
-
/**
|
|
58
|
-
* Deserializes a SiblingPath from a buffer.
|
|
59
|
-
* @param buf - A buffer containing the buffer representation of SiblingPath.
|
|
60
|
-
* @param offset - An offset to start deserializing from.
|
|
61
|
-
* @returns A SiblingPath object.
|
|
62
|
-
*/
|
|
63
|
-
static fromBuffer<N extends number>(buf: Buffer, offset?: number): SiblingPath<N>;
|
|
64
|
-
/**
|
|
65
|
-
* Deserializes a SiblingPath object from a slice of a part of a buffer and returns the amount of bytes advanced.
|
|
66
|
-
* @param buf - A buffer representation of the sibling path.
|
|
67
|
-
* @param offset - An offset to start deserializing from.
|
|
68
|
-
* @returns The deserialized sibling path and the number of bytes advanced.
|
|
69
|
-
*/
|
|
70
|
-
static deserialize<N extends number>(buf: Buffer, offset?: number): {
|
|
71
|
-
elem: SiblingPath<N>;
|
|
72
|
-
adv: number;
|
|
73
|
-
};
|
|
74
|
-
/**
|
|
75
|
-
* Serializes this SiblingPath object to a hex string representation.
|
|
76
|
-
* @returns A hex string representation of the sibling path.
|
|
77
|
-
*/
|
|
78
|
-
toString(): string;
|
|
79
|
-
/**
|
|
80
|
-
* Deserializes a SiblingPath object from a hex string representation.
|
|
81
|
-
* @param repr - A hex string representation of the sibling path.
|
|
82
|
-
* @returns A SiblingPath object.
|
|
83
|
-
*/
|
|
84
|
-
static fromString<N extends number>(repr: string): SiblingPath<N>;
|
|
85
|
-
/**
|
|
86
|
-
* Generate a subtree path from the current sibling path.
|
|
87
|
-
* @param subtreeHeight - The size of the subtree that we are getting the path for.
|
|
88
|
-
* @returns A new sibling path that is the for the requested subtree.
|
|
89
|
-
*/
|
|
90
|
-
getSubtreeSiblingPath<SubtreeHeight extends number, SubtreeSiblingPathHeight extends number>(subtreeHeight: SubtreeHeight): SiblingPath<SubtreeSiblingPathHeight>;
|
|
91
|
-
}
|
|
92
|
-
//# sourceMappingURL=sibling_path.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sibling_path.d.ts","sourceRoot":"","sources":["../../src/sibling_path/sibling_path.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C;;;;;;;;;GASG;AACH,qBAAa,WAAW,CAAC,CAAC,SAAS,MAAM;IA0BrC;;OAEG;IACI,QAAQ,EAAE,CAAC;IA5BpB,OAAO,CAAC,IAAI,CAAmB;IAE/B;;;;;;OAMG;WACW,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC;IAUtG;;;;OAIG;;IAED;;OAEG;IACI,QAAQ,EAAE,CAAC;IAClB;;OAEG;IACH,IAAI,EAAE,MAAM,EAAE;IAKhB;;;OAGG;IACI,QAAQ,IAAI,MAAM;IAIzB;;;OAGG;IACI,aAAa,IAAI,MAAM,EAAE;IAIhC;;;OAGG;IACI,YAAY,IAAI,EAAE,EAAE;IAI3B;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,WAAW,CAAC,CAAC,CAAC;IAK5E;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,SAAI;;;;IAU5D;;;OAGG;IACI,QAAQ,IAAI,MAAM;IAIzB;;;;OAIG;WACW,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IAIxE;;;;OAIG;IACI,qBAAqB,CAAC,aAAa,SAAS,MAAM,EAAE,wBAAwB,SAAS,MAAM,EAChG,aAAa,EAAE,aAAa,GAC3B,WAAW,CAAC,wBAAwB,CAAC;CAMzC"}
|