Blockchain Structure
Shared Story
A Blockchain cryptographically guarantees that a history of events has not been tampered with. This allows interested parties to have a shared history.
Hash Linked List
Hash Linked List
Hash Linked List
Genesis Block
State Machines (Again)
A state machine defines:
- Set of valid states
- Rules for transitioning between states
Blockchain meet State Machine
Where do the States Live?
Somewhere else!
State Roots
A cryptographic anchor to the state
Forks
A state machine can have different possible histories. These are called forks.
Invalid Transitions
Realistic Blockchain Structure
- Header: Summary of minimal important information about this block
- Body: A batched list of state transitions
Blocks in Substrate
/// Abstraction over a Substrate block.
pub struct Block<Header, Extrinsic: MaybeSerialize> {
/// The block header.
pub header: Header,
/// The accompanying extrinsics.
pub extrinsics: Vec<Extrinsic>,
}
Headers
Exact content varies per blockchain. Always contains the parent hash. Headers are the actual hash-linked list, not entire blocks.
Header Examples
Bitcoin
- Version
- Previous Hash
- Tx Merkle Root
- Time
- N_Bits
- Nonce
Ethereum
- Time
- Block Number
- Base Fee
- Difficulty
- Mix Hash
- Parent Hash
- State Root
- Nonce
Substrate Header
- Parent hash
- Number
- State root
- Extrinsics root
- Consensus Digest
Substrate Header (Full Picture)
Extrinsics
Packets from the outside world with zero or more signatures attached.
- Function calls to the STF
- Some functions require signatures (e.g., transfer some tokens)
- Others don't, but usually have some validation means
DAGS
Directed Acyclic Graphs
DAGS
Directed Acyclic Graphs
Blockchain 💒 P2P Networks
Nodes
Software agents that participate in blockchain network.
May perform these jobs:
- Gossip blocks
- Execute and Validate blocks
- Store blocks
- Store states
- Gossip transactions
- Maintain a transaction pool
- Author blocks
- Store block headers
- Answer user requests for data (RPC)
Types of Nodes
- Full Nodes
- Light Nodes (aka Light clients)
- Authoring nodes
- Archive nodes
- RPC nodes
Blockspace
A resource created, and often sold, by a decentralized blockchain network.

Learn more:
Transaction Pool
- Contains transactions that are not yet in blocks.
- Constantly prioritizing and re-prioritizing transactions.
- Operates as a blockspace market.