The Genesis Event
A visualisation of the Genesis Event on Ethereum 2.0
Keywords
Seconds_Per_Eth1_Block
= 14 secondsEth1_Follow_Distance =
2048 blocks * 14 secondsMin_Genesis_Time
= 1606824000 (12:00:00 pm UTC | Tuesday, December 1, 2020)Min_Genesis_Active_Validator_Count
= 16,384Genesis_Delay
= 7 days
Genesis Event
Conditions
There are two conditions that have to get triggered to get the Ethereum 2.0 chain started!
The threshold of 16,384 validators needs to be hit
The ETH1 block (=Trigger block) which determines the genesis time for ETH2 cannot be earlier than
min_genesis_time.
Trigger ETH1 block = min_genesis_time - genesis_delay
Scenario One
The required amount of deposits (Min_Genesis_Active_Validator_Count)
to fulfil the first condition occurs very quickly once the deposit contract has been deployed and before min_genesis_time
.
Once the threshold of 16,384 deposits is met, the network will try to accomplish the second condition by trying to find the trigger block by calculating min_genesis_time - genesis_delay.
The goal of the trigger block (min_genesis_time - genesis_delay)
is that the chain can never start earlier than min_genesis_time
. The second scenario will make this clearer.
Scenario Two
The required amount of deposits (Min_Genesis_Active_Validator_Count)
to fulfil the first condition occurs after min_genesis_time.
In this case, the second condition is met first and the trigger block becomes whatever min_genesis_time
was set.
The trigger block (second condition) is achieved right after the deposit contract receives 16,384 validator deposits.
Genesis time becomes Trigger-block-timestamp + genesis_delay
.
Last updated