Crate binary_merkle_tree

source ·
Expand description

This crate implements a simple binary Merkle Tree utilities required for inter-op with Ethereum bridge & Solidity contract.

The implementation is optimised for usage within Substrate Runtime and supports no-std compilation targets.

Merkle Tree is constructed from arbitrary-length leaves, that are initially hashed using the same hasher as the inner nodes. Inner nodes are created by concatenating child hashes and hashing again. The implementation does not perform any sorting of the input data (leaves) nor when inner nodes are created.

If the number of leaves is not even, last leaf (hash of) is promoted to the upper layer.

Structs§

Enums§

  • Leaf node for proof verification.

Functions§

  • Construct a Merkle Proof for leaves given by indices.
  • Construct a root hash of a Binary Merkle Tree created from given leaves.
  • Verify Merkle Proof correctness versus given root hash.