<p>The Merkle tree structure is essential for section 7 (Reclaiming Disk Space) and section 8 (Simplified Payment Verification) in <a href="https://bitcoin.org/bitcoin.pdf" rel="nofollow noreferrer">the whitepaper</a>.</p>

<p>With simple concatenation, the only way to be convinced that a transaction exists in a block is to have access to the hashes of all transactions, which requires a lot of storage space.</p>

<p>With a Merkle tree you can:</p>

<ol>
<li><p>Prune large parts of the history, and still know that the data left intact is a legitimate part of the block.</p></li>
<li><p>Convince a specific node that a transaction exists in a block, by showing the Merkle branch.</p></li>
</ol>

<p>Merkle trees are also used in pooled mining, allowing the miner to construct the generation transaction independently while the pool or another node builds the bulk of the block.</p>

<p>Some more details are in <a href="https://bitcoin.stackexchange.com/a/10487/575">this answer</a>.</p>

CC BY-SA 4.0
2018-07-02T10:51:19.263Z
2018-07-02T10:51:19.263Z
Meni Rosenfeld
<p>I am studying the bitcoin protocol and do not exactly understand why a Merkle root is used to register all the transactions. What is the point of using a tree-wise structure when you can also just take a hash over the concatenation of all transactions hashes? As far as I see, that would be less operations and therefore only more efficient?</p>

CC BY-SA 4.0
2018-07-02T10:29:45.267Z
Note: the question above is not exactly the same, but the top answer on it works perfectly as an answer to this question.
chytrik
CC BY-SA 4.0
2018-07-02T10:42:33.447Z
I take it you have researched Merkle Trees and understand how they work?
Willtech
<hash><merkle-tree>
Why use Merkle Root (and not just concatonation of all hashes?)
KojoUzochi
# Why use Merkle Root (and not just concatonation of all hashes?)

(Asked by: username_0 on 2018-07-02)

I am studying the bitcoin protocol and do not exactly understand why a Merkle root is used to register all the transactions. What is the point of using a tree-wise structure when you can also just take a hash over the concatenation of all transactions hashes? As far as I see, that would be less operations and therefore only more efficient?

**Tags:** hash, merkle-tree

> **Comments:**
> **username_1**: Note: the question above is not exactly the same, but the top answer on it works perfectly as an answer to this question.  
> **username_2**: I take it you have researched Merkle Trees and understand how they work?  

---

## 1 answers

### Answer by username_3 on 2018-07-02. Score: 3 | Accepted answer

The Merkle tree structure is essential for section 7 (Reclaiming Disk Space) and section 8 (Simplified Payment Verification) in [the whitepaper](https://bitcoin.org/bitcoin.pdf).

With simple concatenation, the only way to be convinced that a transaction exists in a block is to have access to the hashes of all transactions, which requires a lot of storage space.

With a Merkle tree you can:

1. Prune large parts of the history, and still know that the data left intact is a legitimate part of the block.
2. Convince a specific node that a transaction exists in a block, by showing the Merkle branch.

Merkle trees are also used in pooled mining, allowing the miner to construct the generation transaction independently while the pool or another node builds the bulk of the block.

Some more details are in [this answer](https://bitcoin.stackexchange.com/a/10487/575).


---

