I'm reading about the Stratum protocol where miners contribute to pools. Specifically there is a "mining.submit" method -- https://en.bitcoin.it/wiki/Stratum_mining_protocol, in which I miner will submit a share for consideration. The details on this doc are a little sparse. Specifically, what is the "ExtraNonce2" value they describe as being submitted back to the pool?

1 Answer 1


The extra nonce is a value in the coinbase transaction which miners will increment in addition to incrementing the nonce in the block header so that there are more possible hashes that can be tried with a given set of transactions.

The ExtraNonce2 is specifically the part of the extra nonce that the miner is changing while performing work for the pool. There is also an ExtraNonce1 which the pool provides to the miner. That ExtraNonce1 is typically used as an identifier.

  • Could you elaborate on the "ExtraNonce2" part of your answer? Maybe with an example. For isntance, you say its "part of the extra nonce" but I'm reading the extranonce2 is different from extranonce1 in terms of forming the coinbase, which I' reading is (coinbase1 + extranonce1 + extranonce2 + coinbase2).
    – Dave
    Mar 11, 2018 at 17:24
  • ExtraNonce2 is a value that the miner keeps changing in order to produce more block headers that can be hashed. Because this is something that the miner changes, he has to provide it back to the pool when he submits his work. ExtraNonce1, Coinbase1, and Coinbase2 are provided by the pool, so they know what they are and can reconstruct the block from the ExtraNonce2 and nonce that the miner submits.
    – Andrew Chow
    Mar 11, 2018 at 18:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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