<blockquote>
  <p>If it can be less then blocks can be created really quickly.</p>
</blockquote>

<p>This is not the case if threshold is referring to the target. In order for a block hash to be valid, it must be less than the target value. The lower the target value, the less possible solutions exist, because the target value (and block hash) are 256 bit numbers, meaning there is a finite number of possibilities.</p>

<p>There is a difference between <strong><a href="https://en.bitcoin.it/wiki/Target" rel="nofollow noreferrer">target</a></strong> and <strong><a href="https://en.bitcoin.it/wiki/Difficulty" rel="nofollow noreferrer">difficulty</a></strong>. The article confuses the terms threshold and difficulty.</p>

<h2>Target</h2>

<p>The number that the block hash must be less than in order to be valid. This is a 256 bit number e.g. genesis block target:</p>

<p><code>0x00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF</code></p>

<p>Genesis block hash (notice it is less than the target above):</p>

<p><code>0x000000000019D6689C085AE165831E934FF763AE46A2A6C172B3F1B60A8CE26F</code></p>

<h2>Difficulty</h2>

<p>This describes how difficult, in relation to the genesis block, the target will be to reach. The higher the difficulty, the more hashes (on average) you have to do to find a solution that is <strong><em>less than</em></strong> the target. It is calculated as:<br>
<code>difficulty = genesis_difficulty_target / current_target</code> </p>

CC BY-SA 4.0
2018-09-10T19:45:13.743Z
2018-09-10T19:58:36.037Z
2018-09-10T19:58:36.037Z
JBaczuk
<p>I struggle to understand one concept behind mining. It would be really great if someone could clarify some things.</p>

<p>This is an extract from blockgeeks:
From a technical point of view, mining process is an operation of inverse hashing: it determines a number (nonce), so the cryptographic hash algorithm of block data results in less than a given threshold. (The threshold is difficulty here.)</p>

<p>Source: <a href="https://blockgeeks.com/guides/proof-of-work-vs-proof-of-stake/" rel="nofollow noreferrer">https://blockgeeks.com/guides/proof-of-work-vs-proof-of-stake/</a></p>

<p>The question is why cryptographic hash algorithm results in less than given threshold? I always thought it should be equal or higher than threshold. If it can be less then blocks can be created really quickly. </p>

<p>What am I missing here?</p>

<mining-theory><nonce>
How nonce and diffuculty work?
D-Samp
# How nonce and diffuculty work?

(Asked by: username_0 on 2018-09-10)

I struggle to understand one concept behind mining. It would be really great if someone could clarify some things.

This is an extract from blockgeeks:
From a technical point of view, mining process is an operation of inverse hashing: it determines a number (nonce), so the cryptographic hash algorithm of block data results in less than a given threshold. (The threshold is difficulty here.)

Source: <https://blockgeeks.com/guides/proof-of-work-vs-proof-of-stake/>

The question is why cryptographic hash algorithm results in less than given threshold? I always thought it should be equal or higher than threshold. If it can be less then blocks can be created really quickly.

What am I missing here?

**Tags:** mining-theory, nonce


---

## 1 answers

### Answer by username_1 on 2018-09-10. Score: 3 | Accepted answer

> If it can be less then blocks can be created really quickly.

This is not the case if threshold is referring to the target. In order for a block hash to be valid, it must be less than the target value. The lower the target value, the less possible solutions exist, because the target value (and block hash) are 256 bit numbers, meaning there is a finite number of possibilities.

There is a difference between **[target](https://en.bitcoin.it/wiki/Target)** and **[difficulty](https://en.bitcoin.it/wiki/Difficulty)**. The article confuses the terms threshold and difficulty.

## Target

The number that the block hash must be less than in order to be valid. This is a 256 bit number e.g. genesis block target:

`0x00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`

Genesis block hash (notice it is less than the target above):

`0x000000000019D6689C085AE165831E934FF763AE46A2A6C172B3F1B60A8CE26F`

## Difficulty

This describes how difficult, in relation to the genesis block, the target will be to reach. The higher the difficulty, the more hashes (on average) you have to do to find a solution that is ***less than*** the target. It is calculated as:  
`difficulty = genesis_difficulty_target / current_target`


---

