🌳 Merkle Tree

The simple and easy implementation of Rust Merkle Tree


Table of Contents

Credits

GitHub Contributors Image

How to install

How to works

This library provides a clean and easy to use implementation of the Merkle Tree with the following features:

merkle-tree

How to Use

Create a Merkle Tree

```rust use merkletreers::mtree::MerkleTree;

let tree = MerkleTree::new(vec![ "a".tostring(), "b".tostring(), "c".tostring(), "d".tostring(), ]);

asserteq!(tree.leafs(), [ "3ac225168df54212a25c1c01fd35bebfea408fdac2e31ddd6f80a4bbf9a5f1cb".tostring(), "b5553de315e0edf504d9150af82dafa5c4667fa618ed0a6f19c69b41166c5510".tostring(), "0b42b6393c1f53060fe3ddbfcd7aadcca894465a5a438f69c87d790b2299b9b2".tostring(), "f1918e8562236eb17adc8502332f4c9c82bc14e19bfc0aa10ab674ff75b3d2f3".to_string() ]) ```

Create a Root

rs

Create Proof of a leaf rs

Verify Proof of a leaf rs

Roadmap

| Feature | Status | Priority | |-|-|-| | Create Root | ⏰ | 🔥 | | Create Proof | ⏰ | 🔥 | | Verify Proof | ⏰ | 🔥 | | Support OpenZeppelin | ⏰ | 🔥 | | Compatible with MerkleTreeJs | ⏰ | 🔥 | | Use any Hash function | ⏰ | 🧐 | | Leafs of any size | ⏰ | 🧐 |

Contributing

License

MIT