Overview
BlockHeader contains all metadata for a block including Merkle roots, gas limits, timestamps, and consensus-related fields. The block hash is computed from RLP(header).Type Definition
Creating BlockHeader
from
Universal constructor with all header fields.Header Fields by Fork
Genesis (All Blocks)
| Field | Description |
|---|---|
| parentHash | Hash of parent block |
| ommersHash | Hash of ommers list RLP |
| beneficiary | Block reward recipient |
| stateRoot | State trie root after execution |
| transactionsRoot | Transactions trie root |
| receiptsRoot | Receipts trie root |
| logsBloom | 256-byte bloom filter for logs |
| difficulty | PoW difficulty (0 post-merge) |
| number | Block height |
| gasLimit | Max gas for block |
| gasUsed | Total gas consumed |
| timestamp | Unix timestamp (seconds) |
| extraData | Arbitrary data (max 32 bytes) |
| mixHash | PoW mix hash (0 post-merge) |
| nonce | PoW nonce (0 post-merge) |
EIP-1559 (London Fork)
| Field | Description |
|---|---|
| baseFeePerGas | Dynamic base fee per gas |
Shanghai Fork
| Field | Description |
|---|---|
| withdrawalsRoot | Merkle root of withdrawals |
EIP-4844 (Cancun Fork)
| Field | Description |
|---|---|
| blobGasUsed | Total blob gas used |
| excessBlobGas | Excess blob gas for pricing |
| parentBeaconBlockRoot | Beacon chain parent root |
Post-Merge Changes
After The Merge, several fields are deprecated but still present:See Also
- Block - Complete block type
- BlockBody - Block body
- BlockHash - Block identifier
- BloomFilter - Logs bloom filter

