The six header fields
A classic Bitcoin block header contains version, previous block hash, merkle root, timestamp, nBits and nonce. Together they form the data used for Proof of Work.
The nonce has a limited size, so software changes the coinbase extra nonce, rebuilds the Merkle root and gives the ASIC a new search range. This lets modern devices keep working at high speed.
- version — block version and signaling
- previous hash — the link backward
- merkle root — the transaction-tree root
- timestamp — time in the header
- nBits — compact target representation
- nonce — the iterated field
How difficulty adjustment works
Bitcoin measures how long the last 2,016 blocks took and adjusts the target. If blocks arrived faster than the intended interval, the target becomes stricter; if they arrived slower, the network relaxes it within the protocol rules.
Adding ASICs therefore does not increase a miner's chance forever. Difficulty reacts, and an individual miner's share usually declines as more hashpower joins the network.
Why block structure matters to a miner
Understanding the header helps you see what a pool actually sends to an ASIC: the previous block, Merkle data, target and share difficulty. It also explains stale shares after a new block appears or a connection is delayed.
You do not need to build headers by hand for practical mining. But the structure is useful when diagnosing hashrate, latency, rejected shares and Stratum behavior.
| Field | Why it matters |
|---|---|
| Previous hash | connects the block to the previous one |
| Merkle root | commits to the block's transactions |
| nBits | stores the network target compactly |
| Nonce | gives the ASIC search space |
Real photos and source material
These photographs and diagrams are sourced from public archives. Open the source link to check the author and license.

Want to check the numbers for your ASIC right away?
Open calculator →


