Title: Proof of Work Post by: antonimasso on December 23, 2014, 08:06:38 AM Hello,
I'm having a hard time trying to find what is exactly being hashed ( plus the nonce ) to find the string with enough 0's. I've tried the previous tx hash, the current and previous Merkle root, but no luck. Does anyone know? Thanks Title: Re: Proof of Work Post by: shorena on December 23, 2014, 08:42:41 AM A little intro into PoW can be found in the wiki [1], more can be found in the whitepaper[2] and the dev guide [3].
In short: you hash the header [4] which includes the nounce as well as the merkle root hash (thus a different set of transactions result in a different blockhash even if the nonce is the same) the previous blocks hash etc. (see [4] for details) [1] https://en.bitcoin.it/wiki/Proof_of_work [2] https://bitcoin.org/bitcoin.pdf - chapter 4 [3] https://bitcoin.org/en/developer-guide#proof-of-work [4] https://bitcoin.org/en/developer-reference#block-headers Title: Re: Proof of Work Post by: antonimasso on December 23, 2014, 09:01:15 AM Thanks for the reply.
There is one piece of information from the block header I don't know where to get it from. It says the target threshold is needed, but does not say what it is. Is it the current difficulty? Title: Re: Proof of Work Post by: Buffer Overflow on December 23, 2014, 09:23:27 AM The block header will be exactly 80 bytes in length.
You need to hash the header in binary format, not text format. Title: Re: Proof of Work Post by: antonimasso on December 23, 2014, 09:27:33 AM Yes, but to build the header I need to know the nBits and I don't know where to find that value.
Title: Re: Proof of Work Post by: domob on December 23, 2014, 09:35:22 AM Yes, but to build the header I need to know the nBits and I don't know where to find that value. It is a representation of the difficulty in a particular format. You can look at the code to find out, or probably there are also guides/docs somewhere about it.Title: Re: Proof of Work Post by: antonimasso on December 23, 2014, 09:59:18 AM Ok, thanks I'll try to write a tutorial with the information given here.
|