**Bitcoin Tutorials - Herong's Tutorial Examples** - Version 1.03, by Dr. Herong Yang

Proof of Work Rule - Find a Small Hash Value

This section describes the Proof of Work Rule - Finds a nonce that result a small SHA256 hash value.

The third important Bitcoin Consensus Rule is the Proof of Work Rule: The block hash must meet the cryptographic difficulty requirement. As of 2018, the block hash must be less than or equal to 0x0000000000000000007fffffffffffffffffffffffffffffffffffffffffffff.

Details of the Proof of Work Rule are described below:

- The cryptographic difficulty requirement is defined as the block hash must be less than or equal to the current hash target value.
- The hash target value started with 0x00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff.
- The current hash target value is mapped to a floating-point value called current "Difficulty".
- The highest difficulty, "Difficulty = 1.0", is mapped to "Hash target = 0x00000000ffff0000000000000000000000000000000000000000000000000000".
- The current difficulty is readjusted every 2016 blocks based on block generation times of the past 2016 blocks. The average block generation time is longer that 10 minutes, the difficulty will be decreased. The average block generation time is shorter that 10 minutes, the difficulty will be increased.

As you can see, the main objective of the proof of work rule is to ensure that it will take about 10 minutes to generate, or mine, a new block consistently over time.

As of now, the current Bitcoin difficulty is 3007383866429.732, which can be mapped roughly to a hash target of 0x0000000000000000007fffffffffffffffffffffffffffffffffffffffffffff.

See the Bitcoin Difficulty Wiki article, on how to convert difficulty to hash target.

Last update: 2018.

Table of Contents

What Are Bitcoin Consensus Rules

Controlled Supply Rule - Total of 21M BTC

Mining Reward Rule - Start with 50 BTC

►Proof of Work Rule - Find a Small Hash Value