<blockquote>
  <p>In order to mine bitcoin, a node needs to have all 60+ GB of blockchain data </p>
</blockquote>

<p>No. But if it wants to include transactions in its blocks, it has to know which transactions are valid and which aren't.</p>

<blockquote>
  <p>and read them for every transaction? Or exists a more efficient way to mine blocks?</p>
</blockquote>

<p>Typically, you process all that data once, maintaining an efficient, indexed database of unspent transaction outputs (UTXOs). You can tell if a transaction is valid by (in addition to the other needed checks) just checking its inputs against your UTXO database. You don't need to go fishing through 60GB of raw, unindexed data.</p>

CC BY-SA 3.0
2016-03-31T07:26:22.783Z
2016-03-31T07:26:22.783Z
David Schwartz
<p>In order to mine bitcoin, a node needs to have all 60+ GB of blockchain data and read them for every transaction? Or exists a more efficient way to mine blocks? </p>

CC BY-SA 3.0
2016-04-01T13:00:29.910Z
Could you please edit the title to better represent your question?
Murch
<mining-theory>
How mining works?
alessandro308
# How mining works?

(Asked by: username_0 on 2016-03-30)

In order to mine bitcoin, a node needs to have all 60+ GB of blockchain data and read them for every transaction? Or exists a more efficient way to mine blocks?

**Tags:** mining-theory

> **Comments:**
> **username_1**: Could you please edit the title to better represent your question?  

---

## 1 answers

### Answer by username_2 on 2016-03-31. Score: 1

> In order to mine bitcoin, a node needs to have all 60+ GB of blockchain data

No. But if it wants to include transactions in its blocks, it has to know which transactions are valid and which aren't.

> and read them for every transaction? Or exists a more efficient way to mine blocks?

Typically, you process all that data once, maintaining an efficient, indexed database of unspent transaction outputs (UTXOs). You can tell if a transaction is valid by (in addition to the other needed checks) just checking its inputs against your UTXO database. You don't need to go fishing through 60GB of raw, unindexed data.


---

