What happens when the nonce field overflows?

4

The nonce field of a block header is 4 bytes, so the max nonce is: 4,294,967,295. That could be computed in a few seconds with a reasonable rig (solo mining) or much quicker on large pools. What happens at that point? I assume you'd change the timestamp and start over, but on extremely powerful pools, I'm sure it's feasible to compute all 4,294,967,295 nonces for every second of the timestamp, so what happens in that eventuality?

Anonymous

Posted 2013-08-27T12:17:06.600

Reputation: 413

Remember that each transaction added to a block changes the block and thus all nonces previously used become untested for the new block yet again.Stephen Gornick 2013-08-27T20:30:14.213

Answers

4

Changing the timestamp is one way, but the more scalable method is to change the "extraNonce" field of the generation transaction, which changes the block header's Merkle root.

Meni Rosenfeld

Posted 2013-08-27T12:17:06.600

Reputation: 18 542