5

Why would a miner mine with a difficulty other than the network difficulty? Both of these questions describe miners mining in such a way. What's the benefit of this? What even does it mean?

8

To understand this we should first explain that a block with a high difficulty, let's say D, is also a share of low difficulty d < D, therefore if we find such a block for difficulty D we automatically have a block of difficulty d. This also means that if I as a miner am looking for a share with difficulty d I might by chance find a block of difficulty D (with the probability d/D). This is exactly the reason why mining pools exist: they assign the miners the task to find blocks of difficulty d in the hope that they will eventually find one for D, i.e., the real network difficulty, which pays for the whole pool operation.

Commonly these blocks at a lower difficulty are called a share, and are used to gauge the hashing rate of the individual miner, giving the pool a way to determine who has what probability of finding the next block and distributing the reward accordingly.

  • Network and share difficulty are commonly referred to as D and d, I recommend editing to be consistent. – Meni Rosenfeld Jul 11 '13 at 7:49
5

Blocks which only satisfy the requirement for a lower difficulty than the real network difficulty are called "shares". They are found naturally in the process of looking for valid blocks, and there is no way to find shares without doing the work needed to find blocks.

Thus, shares prove that work has been done by the miner. Pools use these shares to determine how much to reward each miner.

  • If a miner solves a block that does not satisfy the real network difficulty then he hasn't solved a block, correct? Wouldn't the miner and the pool be better off spending all its effort trying to find a truly valid block rather than trying to prove to the pool that its been working? – Kinnard Hockenhull Jul 11 '13 at 7:54
  • 3
    @KinnardHockenhull: It's exactly the same work. The miner is trying to find a valid block; he finds shares along the way, and these prove that it has been working. – Meni Rosenfeld Jul 11 '13 at 10:46
  • 2
    @KinnardHockenhull: Besides, miners won't do any work at all if they're not rewarded for it, and the pool will not reward them if it doesn't know that they have indeed been working. – Meni Rosenfeld Jul 11 '13 at 10:47
  • 1
    @kuchi: Some shares are valid blocks (that's the idea, whenever a miner finds a share there's a chance it will be a block, so is rewarded for it). Some invalid blocks are invalid because they contain something illegal unrelated to the difficulty, and are not shares. But yes, most shares are like blocks, except that they are not valid because the hash is not below the target (but it is below the max target, and in some deployments even below an even lower target). – Meni Rosenfeld Mar 25 '18 at 21:45
  • 1
    @kuchi: Max Target is a constant of the Bitcoin protocol, equal to (2^16 - 1) * 2^208. Difficulty is the ratio between Max Target and Target. Originally pools used shares with a target equal to the max target, that is, difficulty 1. As mining hardware became stronger, pools started using more difficult shares, with a target lower than max target. The pool chooses which target to accept; if it wants, it can allow the users to choose their own target. The value of each share is always scaled proportionally to the difficulty. – Meni Rosenfeld Apr 8 '18 at 9:42

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.