-
Notifications
You must be signed in to change notification settings - Fork 514
Block header
CryptoManiac edited this page Jan 29, 2014
·
9 revisions
The block header is a metadata structure which is used to link blocks in the blockchain.
Block header has a size of 80 bytes and consists of 6 fields:
Field | Type | sizeof | Description | Updated when |
---|---|---|---|---|
nVersion | unsigned int | 4 | Block header version | You upgrade the software and it specifies a new version |
hashPrevBlock | unsigned char[] | 32 | Previous block header hash, used to link block headers into list | New block is accepted |
hashMerkleRoot | unsigned char[] | 32 | Merkle tree hash, used to link block header and block contents | [[Transactions |
nTime | unsigned int | 4 | Unix timestamp | Every few seconds for proof-of-work, every successful attempt for proof-of-stake |
nBits | unsigned int | 4 | Compact representation of claimed proof difficulty | The difficulty is adjusted |
nNonce | unsigned int | 4 | Attempts counter for proof-of-work | New proof-of-work hash tried, or never with proof-of-stake |
Each block header is required to satisfy the claimed proof.