Dubbed 'Serenity', Ethereum 2.0 is a combination of different features that the Ethereum community has been talking about, researching, and actively building for several years that are finally about to come together in a cohesive whole.
In Vitalik's words :
Serenity is the world computer as it’s really meant to be. Not a smart phone from 1999 that can process 15 transactions per second and maybe, potentially play Snake.
One of the keys to this vision is a change to the consensus algorithm from Proof of Work to Proof of Stake -- if you're not sure what a consensus algorithm is we recommend you read through section 1 of this post.
Why do we care? Well, it turns out that this change from PoW to PoS seriously affects the economic incentives associated with securing the Ethereum network.
The Ethereum Serenity upgrade will bring with it a switch from Proof of Work to Proof of Stake. This means that rather than pay miners to secure the network, we will be paying validators to secure the network. It's vitally important to get the economics of staking right so that the network stays healthy and secure.
If the incentive to stake is too low, the network will not get the minimum amount of validators needed to keep many shards going. If the incentive is too high, the network is overpaying for security and inflating at a rate that is detrimental to the economics of the network as a whole.
Under the latest spec, each validator needs to stake 32 ETH. In return they receive a reward for every block they successfully propose. This reward is calculated using a sliding scale based on the total amount of ETH staked on the network.
In plain english: if the total amount of ETH staked is low, the reward (interest rate) is high, but as the total stake rises, the reward (interest) paid out to each validator starts to fall.
Why a sliding scale? While we won't get into the gory details here, the basic intution is that there needs to be a minimum number of validators (and hence a minimum amount of ETH staked) for the network to function properly. So, to incentivize more validators to join, it's important that the interest rate remains high until this minimum number is reached.
Afterwards, validators are still encouraged to join (the more validators the more decentralized the network), but are not essential (so the interest rate can fall).
Under the current specs, each validator needs to stake 32 ETH, there need to be at least 111 validators per shard, and there are 1024 shards in total. This means there needs to be at least 32 * 111 * 1024 = 3,637,248 total Eth staked for the network to function.
P.S. Even though the network can function with 111 validators per shard, in an ideal world we want at least 256. And while we won't get into the gory details here, the basic intuition is that 256 allows each shard to communicate to the beacon chain its latest state within an optimal amount of time. This means we'd like there to be at total of 32 * 256 * 1024 = 8,388,608 total ETH staked on the network.
Since the specs evolve almost daily -- the last major update was just a few days ago -- we're not going to attempt to settle on a final model at this stage. Instead, we've decided to build a model that contains the significant mechanisms that drive the interest and issuance rates -- where the issuance rate is the annualized rate at which the ETH supply grows .
Here are the assumptions we make:
- Interest and issuance rates are calculated yearly. This means that the issuance rate for a given year is computed with respect to the total amount of ETH in circulation at the start of that year.
- All validators follow protocol honestly and are online. Validators are penalized for staying offline or making slashable votes. In this simple model we assume neither happens, and leave it to future work on our end to develop scenarios where validator behavior differs.
- No compounding is made on the deposit. Eth 2.0 accounts must deposit a certain sum (currently set at 32 ETH) to become validators. But at the end of each epoch, rewards and penalties are applied which modify the sum of this deposit. Because these modifications happen every epoch, they compound over time. Since we don't take into account the impact of rewards and penalties on the intitial deposit, we ignore this compounding effect.
- Rewards are the same for all validators. Under the current spec, validators are rewarded slightly differently for taking different actions. We don't take this into account.
- Certain constants will not change. In particular, we assume there are 1024 shards, that each validator stakes 32 ETH, that epoch lengths are equal to 64 slots, and that each slot lasts for 6 seconds.
Some numbers below are in green. Drag green numbers to adjust them. The consequences of your adjustments will be reflected immediately in the rest of the paragraph.
Some numbers below are in blue. Click a blue number to reveal how it was calculated.