<p>Each block contains a merkle tree of new transactions and the hash of the previous block. New transactions can consume the outputs of previous transactions and create new unspent outputs for future transactions.</p>

<p>Bitcoin currently does not maintain any kind of universal or canonical tree of all unspent outputs. Individual nodes are free to maintain a database of UTXOs (unspent transaction outputs) using any method they prefer.</p>

<p>The blocks do literally form a chain since each block contains the hash of the previous block.</p>

<p>Ripple works in a somewhat simpler way. There are accounts with balances that are arranged in a Merkle tree. Each ledger contains the hash of the previous ledger, a Merkle tree of transactions and the deltas to the state each transaction created, and the hash of the new Merkle tree of system state.</p>

CC BY-SA 3.0
2017-09-05T21:46:01.290Z
2017-09-06T18:28:52.397Z
2017-09-06T18:28:52.397Z
David Schwartz
<p>Forgive the noob question, but I have just started seriously looking into block chain and bitcoin. </p>

<p>I tried to implement a very, <em>very</em> basic version of what I understood the block chain to be to understand it better, and eventually found out that bitcoin does not store account balances. It instead references previous transactions for inputs and outputs. </p>

<p>This then led me to reading about the Merkle tree, and how all transactions are derived from the root of the Merkle tree. Does this mean that block chain technology does not actually represent a <em>chain</em>, but rather a tree structure where a certain number of transactions in a specific sub-tree constitute a block of transactions? Or have I just misunderstood it? The very fact that its called block<em>chain</em> technology is throwing me off. </p>

CC BY-SA 3.0
2017-09-05T11:33:40.743Z
Every block contains a merkle tree of transactions. It is indeed a chain of blocks
Ivano Donadi
CC BY-SA 3.0
2017-09-05T11:39:15.287Z
So, does that mean a new block is created at the root of every subtree, comprising of the root and the children? 

But the very root of the tree branches out into two, correct? Wouldn't that imply it is no longer a *chain*?
redixhumayun
CC BY-SA 3.0
2017-09-05T11:43:38.017Z
I meant like: `--[merkle-tree]--[merkle-tree]--[merkle-tree]---` ,where every `[]` is a block, and it contains the merkle tree of the transactions included in the block.
Ivano Donadi
CC BY-SA 3.0
2017-09-05T11:56:01.323Z
Okay, so the `merkle-tree` is not directly interconnected?  They all terminate within the blocks they belong to?
redixhumayun
CC BY-SA 3.0
2017-09-05T11:59:27.180Z
Yes, one indipendent tree for each block
Ivano Donadi
CC BY-SA 3.0
2017-09-05T22:22:48.710Z
@IvanoDonadi: Please do not answer questions in comments. To answer questions, please post an answer post.
Murch
<merkle-tree>
Is the block 'chain' actually a merkle tree?
redixhumayun
# Is the block 'chain' actually a merkle tree?

(Asked by: username_0 on 2017-09-05)

Forgive the noob question, but I have just started seriously looking into block chain and bitcoin.

I tried to implement a very, *very* basic version of what I understood the block chain to be to understand it better, and eventually found out that bitcoin does not store account balances. It instead references previous transactions for inputs and outputs.

This then led me to reading about the Merkle tree, and how all transactions are derived from the root of the Merkle tree. Does this mean that block chain technology does not actually represent a *chain*, but rather a tree structure where a certain number of transactions in a specific sub-tree constitute a block of transactions? Or have I just misunderstood it? The very fact that its called block*chain* technology is throwing me off.

**Tags:** merkle-tree

> **Comments:**
> **username_1**: Every block contains a merkle tree of transactions. It is indeed a chain of blocks  
> **username_0**: So, does that mean a new block is created at the root of every subtree, comprising of the root and the children?   But the very root of the tree branches out into two, correct? Wouldn't that imply it is no longer a *chain*?  
> **username_1**: I meant like: `--[merkle-tree]--[merkle-tree]--[merkle-tree]---` ,where every `[]` is a block, and it contains the merkle tree of the transactions included in the block.  
> **username_0**: Okay, so the `merkle-tree` is not directly interconnected?  They all terminate within the blocks they belong to?  
> **username_1**: Yes, one indipendent tree for each block  
> **username_2**: @username_1: Please do not answer questions in comments. To answer questions, please post an answer post.  

---

## 1 answers

### Answer by username_3 on 2017-09-05. Score: 1 | Accepted answer

Each block contains a merkle tree of new transactions and the hash of the previous block. New transactions can consume the outputs of previous transactions and create new unspent outputs for future transactions.

Bitcoin currently does not maintain any kind of universal or canonical tree of all unspent outputs. Individual nodes are free to maintain a database of UTXOs (unspent transaction outputs) using any method they prefer.

The blocks do literally form a chain since each block contains the hash of the previous block.

Ripple works in a somewhat simpler way. There are accounts with balances that are arranged in a Merkle tree. Each ledger contains the hash of the previous ledger, a Merkle tree of transactions and the deltas to the state each transaction created, and the hash of the new Merkle tree of system state.


---

