I have read quite a few threads about this topic. I understand the general concept now but with a few holes:

  1. Why is mining being compare to lottery?

The total number of possible hashes = hashes below the target + hashes above the target

As I start to mine, I am reducing the numbers of hashes in the "hashes above the target" group", so as I make many attempts, my chance of getting the right one should be raising (because the total number of hashes is finite and I crossed out many bad attempts). If this is the case, then why does this article say:

After working on it for 24 hours, your chances of solving it are equal to what your chances were at the start or at any moment

  1. Why does a lower target mean higher difficulty?

Is it because the number of correct answers become less and less?


A "bad attempt" (i.e. a block whose hash is above the target) isn't "crossed out". It is entirely possible that you will later find a different block whose hash has that same value. Nothing prevents it. Every hash behaves like an independent trial.

It's easier to understand with smaller numbers. Say you have a 6-sided die and you want to roll it until you get a 6. If you roll a 3 on the first roll, that doesn't "cross out" the number 3; it is entirely possible that you will roll 3 again on future rolls. The die has no "memory". For that reason, there is no guarantee that you will get a 6 within 6 rolls; there's a chance it could be 7 rolls, or 12, or 100 rolls, before you get a 6.

Even if this were true, it wouldn't really make much difference: the number of hashes that you, or all the world combined, have ever computed, is a negligibly small fraction of the total number possible. 2^256 is an extremely large number.

http://bitcoin.sipa.be/ estimates that a total of 10^26 hashes have been performed on the Bitcoin network to date. That's 100000000000000000000000000. The total number of possible hashes is 115792089237316195423570985008687907853269984665640564039457584007913129639936. So about 0.0000000000000000000000000000000000000000000000001% of them have been seen so far. Even if they had been somehow "crossed out" it would not appreciably change the number that remained.

As to number 2, you are correct: since the goal is to find a hash that is less than the target, a smaller target means it is harder to find a successful hash. The number usually called "difficulty" is computed as the maximum possible target (which is 2^224) divided by the current target, so a smaller current target means a larger difficulty number.

  • Hi Nate, really appreciate your answer! I have a follow up question, What is the reason of not being able to "cross out" numbers? Is it because more than one input will produce the same hash so that even if you cross out a hash, there is no guarantee that the same hash will not appear again? – Cheng Feb 19 '17 at 1:18
  • 1
    @Cheng: yes, that's right. – Nate Eldredge Feb 19 '17 at 1:29
  • According to this SO post, the rate of SHA256 collision is exetremely rare, but I guess as you stated, 2^256 is enormous, even if we assume there is no hash collision, it will still takes a lot computing power to find the right answer? – Cheng Feb 19 '17 at 1:38
  • Hi Nate, I asked a follow up question here if you are interested: bitcoin.stackexchange.com/questions/51474/… – Cheng Feb 19 '17 at 2:30

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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