# Understanding Bitcoin Difficulty

Bitcoin miners must find a SHA-256 hash that starts
with many zeroes. There is no known way to do that
except brute-force, adjusting a portion of the input block
and calculating hashes over and over until one of them
finally fulfills this requirement by chance.
Every 14 days, on average, the Bitcoin difficulty is adjusted,
to make the time between blocks stay near 10 minutes.

Real-time data about bitcoin difficulty is posted here:

https://bitcoinwisdom.com/bitcoin/difficulty

The chart below shows recent difficulty adjustments
(the red line):

From the same source, the current Bitcoin difficulty is

**
199,312,067,531
**

What does that number mean? The
official explanation
is very confusing.
A forum post
offers this simple formula to convert this difficulty value
to bits:

**
log2(difficulty) + 32
**

So the current difficulty is:
**
log2(199,312,067,531) + 32 = 69.53 bits
**

The latest hash calculated is for
Block #414793
with this value:
**
00000000000000000530216a17ab1e11502720c784975dc7618f8408df6f7c77
**

Adding spaces every 4 digits makes it easier to count the zeroes:
**
0000 0000 0000 0000 0530 216a 17ab 1e11 5027 20c7 8497 5dc7 618f 8408 df6f 7c77
**

There are 17 zeroes, each representing 4 bits, for a total of
68 bits. The next hex-digit is 5,
which is less than 8, so there's one additional zero
bit for a total of 69 zero bits.
Clearly, that formula works.

## What Does 69.53 Bits Mean?

It means that all the Bitcoin miners
added together must calculate
a total of 2^69.53 hashes
before finding a valid one, on average. And we
know that takes approximately 10 minutes. So the
average computation rate is:
**
2^69.53 / 10 min = 1,420,000,000 Giga-hashes per second
**

This is quite close to the
actual current hash rate
of 1,426,731,353 GH/s.

Posted 6-4-16 by Sam Bowne