<blockquote>
<p><strong>How can I find what was the initial hash number ...</strong></p>
</blockquote>
<p>There's no such thing. Every miner assembles their own choice of transactions and makes their own choice of initial nonce value. There's no way to find out which combinations and values each miner tried first - they simply discard ones that don't hash less than the target, there's no record of failed attempts.</p>
<blockquote>
<p><strong>... and prove of work?</strong></p>
</blockquote>
<p>The hash being less than the target appropriate for that block height <em>is</em> the proof of work. Your example number is the proof of work for that block.</p>
<p>To validate that proof you just need to recalculate the hash and see that it agrees with the one you posted and then calculate the current network target for that block height based on prior block targets and times.</p>
<hr />
<p>Useful links</p>
<ul>
<li><a href="https://bitcoin.stackexchange.com/q/5838/13866">How is difficulty calculated?</a></li>
<li><a href="https://bitcoin.stackexchange.com/q/40411/13866">Can a smart mind explain block difficulty calculation in lay terms?</a></li>
<li><a href="https://bitcoin.stackexchange.com/q/58407/13866">What is most efficient way to validate bitcoin target (difficulty) value in C++</a></li>
<li><a href="https://bitcoin.stackexchange.com/q/23411/13866">How is the difficulty of bitcoin mining propagated?</a></li>
</ul>

CC BY-SA 4.0
2022-02-06T13:41:42.513Z
Thank so much for your fast response. 

Can you please enlight me little bit further? How can I recalculate the hash using the historical info of a block? If it is possible of course. 

Thank you in advance for your answers.
Yuri
CC BY-SA 4.0
2022-02-04T16:23:39.307Z
2022-02-04T16:30:22.923Z
2022-02-04T16:30:22.923Z
RedGrittyBrick
<p>I want to verify several random blocks and check if there was prove of work really found. I need it for some reasearch reasons. I have downloaded the blocks historical info and there are only hashes with number of zeroes in the block headers in the ladder I have downloded. This means the prove of work was alredy found. Is there any way to get initial block hash and the prove of work which was found, so I could calculate their hash by myself?</p>
<p>There is an exaple:
SHA256 hash of the current block hash = 000000000000000000044F29DB8B3388FD4E4CF400420B2AA8DA008E9891250B</p>
<p>How can I find what was the initial hash number and prove of work?</p>
<p>Thank you in advance.</p>

CC BY-SA 4.0
2022-02-04T16:18:34.987Z
you cant verify the proof-of-work with only the block hash. you also need the `bits` part of the header
Antoni
<hash>
Want to verify previous block hash and prove of work
Yuri
# Want to verify previous block hash and prove of work

(Asked by: username_0 on 2022-02-04)

I want to verify several random blocks and check if there was prove of work really found. I need it for some reasearch reasons. I have downloaded the blocks historical info and there are only hashes with number of zeroes in the block headers in the ladder I have downloded. This means the prove of work was alredy found. Is there any way to get initial block hash and the prove of work which was found, so I could calculate their hash by myself?

There is an exaple:
SHA256 hash of the current block hash = 000000000000000000044F29DB8B3388FD4E4CF400420B2AA8DA008E9891250B

How can I find what was the initial hash number and prove of work?

Thank you in advance.

**Tags:** hash

> **Comments:**
> **username_1**: you cant verify the proof-of-work with only the block hash. you also need the `bits` part of the header  

---

## 1 answers

### Answer by username_2 on 2022-02-04. Score: 1 | Accepted answer

> **How can I find what was the initial hash number ...**

There's no such thing. Every miner assembles their own choice of transactions and makes their own choice of initial nonce value. There's no way to find out which combinations and values each miner tried first - they simply discard ones that don't hash less than the target, there's no record of failed attempts.

> **... and prove of work?**

The hash being less than the target appropriate for that block height *is* the proof of work. Your example number is the proof of work for that block.

To validate that proof you just need to recalculate the hash and see that it agrees with the one you posted and then calculate the current network target for that block height based on prior block targets and times.

---

Useful links

* [How is difficulty calculated?](https://bitcoin.stackexchange.com/q/5838/13866)
* [Can a smart mind explain block difficulty calculation in lay terms?](https://bitcoin.stackexchange.com/q/40411/13866)
* [What is most efficient way to validate bitcoin target (difficulty) value in C++](https://bitcoin.stackexchange.com/q/58407/13866)
* [How is the difficulty of bitcoin mining propagated?](https://bitcoin.stackexchange.com/q/23411/13866)

> **Comments:**
> **username_0**: Thank so much for your fast response.   Can you please enlight me little bit further? How can I recalculate the hash using the historical info of a block? If it is possible of course.   Thank you in advance for your answers.  

---

