Understanding Hashing Power and Nonce Trends

3 replies 398 views
mr_satMember
Posts: 13 · Reputation: 83
#1Apr 1, 2019, 09:58 AM
Hey everyone I need some help figuring something out because I'm struggling to get my head around it. As far as I get it, mining is basically about guessing nonces. You find the right one to hit a bunch of leading zeros and you’re golden. While checking out a blockchain explorer, I noticed that the average highest nonce seems to be around 4 billion (4,xxx,xxx,xxx). Here’s where I might be missing something. If you start from 0 and end up with a valid nonce of, say, 4,232,211,322, you would have had to calculate roughly 4 billion hashes to find it (if you were going in order). That means 4 billion hashes equals about 4 GH. Hitting 4 GH/s these days is no small feat. So my question is, why can’t miners wrap up the block in just 1 second? If the average valid nonce is below 4,000,000,000, how come a basic 4 GH/s miner can't do it in 1 second? I feel like I'm missing some simple, probably silly detail... Thanks in advance!
2 Reply Quote Share
fewunderstandFull Member
Posts: 44 · Reputation: 322
#2Apr 1, 2019, 02:35 PM
The difficulty changes every 2016 blocks, and according to the algorithm, that many blocks must be mined in 2 weeks. Theoretically, each block should be mined once every 10 minutes, but in practice it can be mined by miners in 1 minute or 40 minutes. With this difficulty, the current equipment cannot mine blocks every second, but if this happens, then after 2016 seconds the difficulty will increase by 4 times, then the same thing will happen every 2016 blocks until the block mining time decreases to an average of 10 minutes.
3 Reply Quote Share
coldstorageFull Member
Posts: 83 · Reputation: 528
#3Apr 1, 2019, 05:37 PM
A good description of how mining works can be found in the KanoPool Help page other parts are a good intro to the entire process.
0 Reply Quote Share
leo100Member
Posts: 1 · Reputation: 97
#4Apr 1, 2019, 10:30 PM
My understanding is you don't just need a valid nonce. You need an entire valid block. Valid version, valid merkle root, valid nonce, and every other component, all need to equal the correct value. so you try your 4 plus billion combinations of nonce on a block template, it's wrong, so you change the extra nonce value in the coinbase of your merkle root, and recalculate the merkle root, and try again with the 4 billion plus nonces, and so on, until you find a valid block template, or someone beats you too it. Plus there are other changeable parts too, like the version. Most of these combinations will not even have a valid 32 bit nonce.
5 Reply Quote Share

Related topics