The following assumes the use of node@>=10
.
npm ci
import { generateTree } from '@dcl/content-hash-tree'
const contentHashes = ['hash1', 'hash2', 'hash3']
const tree = generateTree(contentHashes)
import { verifyProof } from '@dcl/content-hash-tree'
const contentHashes = ['hash1', 'hash2', 'hash3']
const proof = tree.getProof(0, contentHashes[0])
const root = tree.getHexRoot()
const isPartOfTheTree = verifyProof(0, contentHashes[0], proof, root)
npm run generate-merkle-root:data
~10k items: time to completion 788.8ms. Json size: 10mb ~100k items: time to completion 6.7s. Json size: 124mb
This will generate a proofs.json
file in the root of the project.
npm run verify-merkle-root:proof
Time to completion 9.294ms. Json size: 4kb