<p>You are assuming that each mining pool is hashing the same block.  This is not the case.  Each pool has its own block, with its own set of transactions, put into its own order. Mining isn't about finding the <em>only</em> block that is able to be the next block, just <em>a</em> block that follows the protocol rules.</p>

<p>Furthermore, mining pools are constantly updating the block headers that their nodes are hashing, to include more transactions that they just heard about.  Because all pools, and even all nodes, are trying to find a nonce for different block headers, it's not always the most powerful pool that wins.  It becomes random.</p>

CC BY-SA 3.0
2016-08-12T09:21:21.847Z
"Each pool has its own block, with its own set of transactions, put into its own order"
From: http://www.coindesk.com/information/how-bitcoin-mining-works/
A constantly updated copy of the block is given to everyone who participates.

Also, from https://bitcoin.org/bitcoin.pdf :
1) New transactions are broadcast to all nodes.
2) Each node collects new transactions into a block.

From the above, if the nodes are receiving "all" the transactions in order they would work on the same general ledger.
Chrissy Und
CC BY-SA 3.0
2016-08-12T12:06:06.043Z
Mining nodes get their headers from the pool they belong to, and don't participate as full nodes on the network.  Only the pool operator does that.  But yes, the pools generally have about the same transaction sets in their blocks, with slight differences and a completely different order.  This is part of the consensus mechanism.
Jestin
CC BY-SA 3.0
2016-08-11T13:31:16.817Z
2016-08-11T13:31:16.817Z
Jestin
<p>1/ I do not understand why bitcoin mining is random when hashing is deterministic. 
reference : <a href="https://en.bitcoin.it/wiki/Nonce" rel="nofollow noreferrer">https://en.bitcoin.it/wiki/Nonce</a> 
<a href="https://bitcoin.stackexchange.com/questions/41599/can-the-mining-pool-with-the-most-mining-power-always-win">Can the mining pool with the most mining power always win?</a>
<a href="https://bitcoin.stackexchange.com/questions/21734/what-value-should-nonce-be-when-mining-bitcoin">What value should nonce be when mining bitcoin ?</a></p>

<p>Read the above links and learnt that it is easier to increment a nonce than starts with a random one!</p>

<p>2/ And in the following scenario the node which has the most computational power should be able to solve the proof of work fastest. Of course, I am assuming that mining is deterministic.</p>

<p>Suppose every node in the network starts from zero and increment it. The hash of the nonce and the transaction would be executed by each node and the one computing the hash fastest would arrive at the correct nonce the fastest because hashing is deterministic?
What's wrong in my argument?</p>

<p>Thx</p>

<hash><proof-of-work>
Bitcoin Mining Computational Power
Chrissy Und
# Bitcoin Mining Computational Power

(Asked by: username_0 on 2016-08-11)

1/ I do not understand why bitcoin mining is random when hashing is deterministic.
reference : <https://en.bitcoin.it/wiki/Nonce>
[Can the mining pool with the most mining power always win?](https://bitcoin.stackexchange.com/questions/41599/can-the-mining-pool-with-the-most-mining-power-always-win)
[What value should nonce be when mining bitcoin ?](https://bitcoin.stackexchange.com/questions/21734/what-value-should-nonce-be-when-mining-bitcoin)

Read the above links and learnt that it is easier to increment a nonce than starts with a random one!

2/ And in the following scenario the node which has the most computational power should be able to solve the proof of work fastest. Of course, I am assuming that mining is deterministic.

Suppose every node in the network starts from zero and increment it. The hash of the nonce and the transaction would be executed by each node and the one computing the hash fastest would arrive at the correct nonce the fastest because hashing is deterministic?
What's wrong in my argument?

Thx

**Tags:** hash, proof-of-work


---

## 1 answers

### Answer by username_1 on 2016-08-11. Score: 3 | Accepted answer

You are assuming that each mining pool is hashing the same block. This is not the case. Each pool has its own block, with its own set of transactions, put into its own order. Mining isn't about finding the *only* block that is able to be the next block, just *a* block that follows the protocol rules.

Furthermore, mining pools are constantly updating the block headers that their nodes are hashing, to include more transactions that they just heard about. Because all pools, and even all nodes, are trying to find a nonce for different block headers, it's not always the most powerful pool that wins. It becomes random.

> **Comments:**
> **username_0**: "Each pool has its own block, with its own set of transactions, put into its own order" From: http://www.coindesk.com/information/how-bitcoin-mining-works/ A constantly updated copy of the block is given to everyone who participates.  Also, from https://bitcoin.org/bitcoin.pdf : 1) New transactions are broadcast to all nodes. 2) Each node collects new transactions into a block.  From the above, if the nodes are receiving "all" the transactions in order they would work on the same general ledger.  
> **username_1**: Mining nodes get their headers from the pool they belong to, and don't participate as full nodes on the network.  Only the pool operator does that.  But yes, the pools generally have about the same transaction sets in their blocks, with slight differences and a completely different order.  This is part of the consensus mechanism.  

---

