This question already has an answer here:

Blockchain miners calculate the hash of (block data + nonce value). They actually guess (are looking for) nonce in order to get hash staring with a defined number zeroes. (The number of required starting zeros in hash value define the difficulty of finding a nonce that fits - proof of work).

My question is do all miners guess/try nonces from the same pool or range (this way they actually non-efficiently test the same guesses many times) or they somehow split the pool of possible nonces among themselves in order not to try the same nonces multiple times?

marked as duplicate by alcio, Pieter Wuille, renlord, Community Oct 10 '17 at 6:25

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.


The nonce value is indeed "guessed" by the miner.

The miner can also choose a part of the coinbase transaction (what the stratum protocol calls the ExtraNonce2). Another part of the coinbase transaction is imposed by the pool: this is the ExtraNonce1, in terms of the stratum protocol.

Pools are supposed to assign distinct ExtraNonce1 to all miners, to prevent duplication of work.

Not the answer you're looking for? Browse other questions tagged or ask your own question.