Definition
A Merkle tree is a data structure that combines hashes in successive layers until they produce a single root commitment. Bitcoin uses a Merkle root in the block header to commit to the block's transaction identifiers. A Merkle proof can demonstrate that a particular transaction belongs to the committed set using a relatively small collection of intermediate hashes, without presenting every other transaction in the block. Changing a committed item changes the path to the root, making the alteration detectable under the hash function's security assumptions. However, inclusion is not the same as full validity. A proof that a transaction appears in a block does not independently establish that all its inputs were spendable or that the block belongs to the best valid chain. Merkle structures also appear in other cryptocurrency applications, where the meaning of a proved item depends on what the tree commits to.
Source references
References accompanying this glossary entry:
- https://bitcoincore.org/en/doc/30.0.0/rpc/blockchain/gettxoutproof/
- https://developer.bitcoin.org/reference/block_chain.html
Educational reference, not financial advice. See our financial disclaimer and editorial policy.