Genesis Block
This section is directly derived from the
go-algorandreference implementation.
The genesis block defines the Algorand “universe”, which is initialized with:
-
The initial account states (
GenesisAllocation), which includes the ALGO balance and the initial consensus participation state (and keys), -
The initial consensus protocol version (
GenesisProto), -
The special addresses (
FeeSinkandRewardsPool), -
The schema of the Ledger.
⚙️ IMPLEMENTATION
Genesistype definition in the reference implementation.
⚙️ IMPLEMENTATION
GenesisBalancestype definition in the reference implementation. It contains the information needed to generate a new Ledger:
Balances: a map with the account data for each address,FeeSink: address where fees are collected,RewardsPool: address holding distribution rewards (legacy),Timestamp: time when the object is created.
Genesis Block Example
The Algorand MainNet genesis block is available as JSON file.