A Merkle Tree is a binary tree, where each node has at most two children. The structure begins with the leaf nodes, the lowest level representing individual pieces of data—typically transaction hashes in the blockchain.
Moving up the tree, each non-leaf node is a hash of its child nodes, culminating in the topmost node, known as the Merkle Root.
Leaf Nodes
These are the starting points of the Merkle Tree. In a blockchain, each leaf node contains the hash of a single transaction.
Non-Leaf Nodes
These are created by hashing pairs of leaf nodes together.
Merkle Root
The top of the tree is the Merkle Root, a single hash representing the entire dataset.