<p>As far as I understand it, the target T is a floating point number that is adjusted based on the moving average of the difficulty of some previous transactions. Mining a block happens when somebody is able to find a block x so that H(x) &lt; T (by varying the nonce and/or block contents by brute force). Please correct me if I'm wrong.</p>

<p>Now, due to the structure of a hash function, there is basicaly no way to know if for a given y, there exists a x so that H(X) = y, meaning that there are some "unreachable" hashes. These unreachable hashes are supposed to be distributed randomly (as are all hash outputs), which would mean that there can also be continuous ranges of unreachable hash outputs.</p>

<p>Is there anything that prevents the target from becoming so small that <em>no</em> valid blocks can be found that match the target requirement, because all of the hashes close enough to the target are unreachable?</p>

<p>I realize that the difficulty would have to rise more than we can currently imagine, but I wonder if there is any way to deterministically rule out that possibility, in addition to it being very, very, very unlikely?</p>

CC BY-SA 3.0
2013-04-24T08:00:06.490Z
`int(H(X)) < int(y)` is the mining task
cdecker
CC BY-SA 3.0
2013-04-24T08:21:55.967Z
@cdecker wow, that anwers it completely. didn't catch that answer, thanks!
lxgr
<blockchain><attack><hash>
Could the target become unreachable?
lxgr
# Could the target become unreachable?

(Asked by: username_0 on 2013-04-24)

As far as I understand it, the target T is a floating point number that is adjusted based on the moving average of the difficulty of some previous transactions. Mining a block happens when somebody is able to find a block x so that H(x) < T (by varying the nonce and/or block contents by brute force). Please correct me if I'm wrong.

Now, due to the structure of a hash function, there is basicaly no way to know if for a given y, there exists a x so that H(X) = y, meaning that there are some "unreachable" hashes. These unreachable hashes are supposed to be distributed randomly (as are all hash outputs), which would mean that there can also be continuous ranges of unreachable hash outputs.

Is there anything that prevents the target from becoming so small that *no* valid blocks can be found that match the target requirement, because all of the hashes close enough to the target are unreachable?

I realize that the difficulty would have to rise more than we can currently imagine, but I wonder if there is any way to deterministically rule out that possibility, in addition to it being very, very, very unlikely?

**Tags:** blockchain, attack, hash

> **Comments:**
> **username_1**: `int(H(X)) < int(y)` is the mining task  
> **username_0**: @username_1 wow, that anwers it completely. didn't catch that answer, thanks!  

---

## 0 answers

