← Back to Glossary

Header Hashing: Definition and How Bitcoin Miners Hash Block Headers

Header Hashing is the process of repeatedly applying Bitcoin's double SHA-256 algorithm to a block header during Proof of Work (PoW). Miners continuously modify fields such as the nonce and calculate new hashes until the resulting block hash is less than or equal to the current target threshold.

Header Hashing Explained in Simple Terms

When Bitcoin miners search for a new block, they do not repeatedly hash the entire block.

Instead, they hash only the block header, which contains the essential information needed to identify and verify the block.

The block header is much smaller than the full block and includes fields such as:

  • block version

  • previous block hash

  • Merkle root

  • timestamp

  • difficulty target

  • nonce

By changing the nonce and occasionally other fields, miners generate a different hash each time.

If the hash is too large, they try again.

This process continues until one hash satisfies the network's difficulty target.

Think of it like repeatedly entering a different combination into a digital lock. The lock itself stays the same, but each new combination produces a different result until the correct one is found.

How Header Hashing Works

Header hashing is the core operation of Bitcoin mining.

The process works as follows:

  1. Candidate Block Created
    The miner assembles a candidate block from mempool transactions.

  2. Block Header Prepared
    The header is generated using the block's metadata.

  3. Double SHA-256 Performed
    The miner hashes the block header twice using SHA-256.

  4. Hash Compared to the Target
    The resulting hash is checked against the current target threshold.

  5. Nonce Updated
    If the hash is not valid, the nonce is changed and the process repeats.

The process can be summarized as:

Block Header → Double SHA-256 → Compare with Target → Success or Retry

This sequence is performed trillions of times every second across the Bitcoin network.

Example of Header Hashing in Practice

A miner builds a candidate block containing several thousand transactions.

The block header is created using:

  • the previous block hash

  • the Merkle root

  • the current timestamp

  • the network difficulty target

  • an initial nonce

The miner performs a double SHA-256 hash.

The resulting hash is above the target threshold.

The miner increments the nonce and hashes the header again.

After billions or trillions of attempts, one hash finally falls below the target threshold.

The block is then broadcast to the Bitcoin network.

Why Header Hashing Matters

Header hashing is one of the most important operations in Bitcoin.

It allows the network to:

  • secure the blockchain through Proof of Work

  • regulate block creation

  • verify blocks efficiently

  • prevent unauthorized modification of block contents

  • maintain decentralized consensus

Without header hashing, Bitcoin's mining process would not function.

What Is Included in the Block Header?

The Bitcoin block header contains six primary fields:

  • block version

  • previous block hash

  • Merkle root

  • timestamp

  • difficulty target (encoded as nBits)

  • nonce

Together, these fields uniquely define the candidate block being mined.

If any field changes, the resulting hash changes completely.

Header Hashing vs Block Hashing

Header Hashing

Refers to:

  • hashing the 80-byte Bitcoin block header during mining.

Purpose:

  • perform Proof of Work.

Block Hash

Refers to:

  • the final hash produced from the successfully mined block header.

Purpose:

  • uniquely identify the block.

In other words, miners repeatedly perform header hashing until they obtain the block hash that satisfies the network's difficulty target.

Why Is Only the Header Hashed?

Hashing the full block repeatedly would be inefficient because blocks may contain thousands of transactions.

Instead:

  • the transactions are summarized by the Merkle root

  • only the compact block header is hashed during mining

This design allows miners to perform enormous numbers of hash calculations efficiently while still ensuring that every transaction affects the final block hash through the Merkle root.

Can the Header Change During Mining?

Yes.

Although the nonce changes most frequently, miners may also update:

  • the timestamp

  • the coinbase transaction (changing the Merkle root)

  • the extranonce value

  • the selected transactions if a new candidate block is created

Each change produces a completely different block header hash.

Frequently Asked Questions

Still have questions about Header Hashing?

Have traffic?

Earn with the best product in cloud mining

Become a partner
15%

First purchase

On every new user’s first purchase. No limit on the purchase amount.

5%

Repeat purchases

Earn for life from every repeat purchase. When the user buys again, you earn again.