Skip to content

weijiekoh/semaphore-merkle-tree

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

semaphore-merkle-tree

This package offers a Merkle tree implementation which is meant to work with the Semaphore zero-knowledge signalling system.

Installation

npm i semaphore-merkle-tree

Usage

import { storage, hashers, tree } from 'semaphore-merkle-tree'

const storage = new storage.MemStorage()
const hasher = new hashers.MimcSpongeHasher();
const prefix = 'semaphore';
const default_value = '0';
const depth = 2

const tree = new tree.MerkleTree(
    prefix,
    storage,
    hasher,
    depth,
    default_value,
)

Functions

tree.update(index, value)

Adds value to the leaf at index

tree.path(index)

Returns the Merkle path to the leaf at the specified index

tree.rollback(updates)

Rolls back the tree by the specified number of updates

Building

git clone https://github.com/weijiekoh/semaphore-merkle-tree.git && \
cd semaphore-merkle-tree && \
npm i && \
npm run build

Testing

npm run test

About

A fork of zkp-sbmtjs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published