<p>No, difficulty is a network-wide consensus rule. POW mining helps solve the issue of sybil attacks, whereas your idea opens up mining to sybil attacks:</p>

<p>Your idea would create a level playing field for all devices (regardless of computing power), so if I want to expand my mining operation, I would just want to run thousands of mining nodes. Hardware doesn't matter, so I could just use cheap computers, or better yet, a botnet. The more nodes I can make, the better! </p>

<p>Additionally, how can you be sure nodes aren't lying about the hashrate available to them? How can you be sure a user hasn't rewritten the source code of their client to artificially lower the difficulty? Etc. </p>

CC BY-SA 4.0
2018-06-27T08:30:27.287Z
Good point. Forgot that POW also guards against Sybil attack by simply requiring energy cost. However, couldn't we try to alleviate Sybil attack through other means? I foresee two possible ways: 
a) Requiring every node to have validated a minimal number of transactions before being eligible to mine;
b) Each node must submit coins with a minimal amount of coin days in order to be eligible to mine.
Danny
CC BY-SA 4.0
2018-06-27T08:40:28.647Z
The general idea is to shift he cost from energy consumption to somewhere else, something that is roughly equal for everyone, like real work done, time etc.
Danny
CC BY-SA 4.0
2018-06-27T07:40:14.897Z
2018-06-27T07:40:14.897Z
chytrik
<p>Is it possible to make block production difficulty not the same for every node, but automatically adjusting to the node's hardware speed?
For example, node A and node B are both trying to solve for their next blocks, node A's hardware speed is twice that of B's. Their client software detect their hardware speeds and adjust the difficulty in such a way that B's next block's difficulty is only half that of A's.
Is this possible?</p>

<bitcoin-core><blockchain><client><mining-theory><mining-hardware>
Hardware-dependent block difficulty?
Danny
# Hardware-dependent block difficulty?

(Asked by: username_0 on 2018-06-27)

Is it possible to make block production difficulty not the same for every node, but automatically adjusting to the node's hardware speed?
For example, node A and node B are both trying to solve for their next blocks, node A's hardware speed is twice that of B's. Their client software detect their hardware speeds and adjust the difficulty in such a way that B's next block's difficulty is only half that of A's.
Is this possible?

**Tags:** bitcoin-core, blockchain, client, mining-theory, mining-hardware


---

## 1 answers

### Answer by username_1 on 2018-06-27. Score: 1

No, difficulty is a network-wide consensus rule. POW mining helps solve the issue of sybil attacks, whereas your idea opens up mining to sybil attacks:

Your idea would create a level playing field for all devices (regardless of computing power), so if I want to expand my mining operation, I would just want to run thousands of mining nodes. Hardware doesn't matter, so I could just use cheap computers, or better yet, a botnet. The more nodes I can make, the better!

Additionally, how can you be sure nodes aren't lying about the hashrate available to them? How can you be sure a user hasn't rewritten the source code of their client to artificially lower the difficulty? Etc.

> **Comments:**
> **username_0**: Good point. Forgot that POW also guards against Sybil attack by simply requiring energy cost. However, couldn't we try to alleviate Sybil attack through other means? I foresee two possible ways:  a) Requiring every node to have validated a minimal number of transactions before being eligible to mine; b) Each node must submit coins with a minimal amount of coin days in order to be eligible to mine.  
> **username_0**: The general idea is to shift he cost from energy consumption to somewhere else, something that is roughly equal for everyone, like real work done, time etc.  

---

