You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
arnaucube 9c1f4b057c small updates, add travis 5 years ago
.gitignore merkletree 6 years ago
.travis.yml small updates, add travis 5 years ago
LICENSE Initial commit 6 years ago
README.md small updates, add travis 5 years ago
db.go add some utils functions to more self contained 5 years ago
go.mod add some utils functions to more self contained 5 years ago
go.sum add some utils functions to more self contained 5 years ago
merkletree.go small updates, add travis 5 years ago
merkletreeSpecification_test.go small updates, add travis 5 years ago
merkletree_test.go add some utils functions to more self contained 5 years ago
node.go merkletree 6 years ago
node_test.go small updates, add travis 5 years ago
print.go small updates, add travis 5 years ago
utils.go small updates, add travis 5 years ago
utils_test.go add some utils functions to more self contained 5 years ago

README.md

go-merkletree Go Report Card Build Status GoDoc

Optimized MerkleTree implementation in Go.

Compatible with Rust version: https://github.com/arnaucube/merkletree-rs

The MerkleTree is optimized in the design and concepts, to have a faster and lighter MerkleTree, maintaining compatibility with a non optimized MerkleTree. In this way, the MerkleRoot of the optimized MerkleTree will be the same that the MerkleRoot of the non optimized MerkleTree.

This repo is holds the nostalgic (old) version of the MerkleTree implementation that we used in the past in iden3, as now has been substituted by a new specification.

Adding 1000 leafs takes aprox:

  • 465.612ms using Keccak256 as hash function
  • 317.362ms using SHA256 as hash function