8 Things Every Eth2 Validator Should Know Before Staking
Authored by Cayman Nava
With the Eth2 launch anticipated in a few months, we want to share some key details of staking that every validator should know before signing up.
1. If you run vetted validator software, you likely won't have to worry about being "slashed"
No one wants to be slashed, that's a fact. The protocol includes a mechanism, called slashing, for punishing bad actors who submit malicious data to the network. If you're running untampered validator software written by one of the Eth2 implementer teams, you likely won't have to worry. Stock validator software should ensure that a validator never performs a slashable act. The kind of behavior that is slashable requires making modifications to stock software or running multiple validator clients at the same time with the same keys. Never use the same private keys across multiple validator clients. So someone getting slashed would likely know that they're being "bad". Requisite warning: you should always read the documentation for any validator software you run.
2. Rewards and penalties are accounted for every epoch (~6 minutes)
If you've participated in Prysmatic Labs' or any other teams' testnets, you may have seen a satisfying graph with an upwards trend. 📈 🤑 On the protocol level, time is broken up into 6.4 minute increments, called epochs, where duties are algorithmically assigned to every participating validator. At the end of every epoch, participation is scored, and every properly performing validator is given a micro-reward or micro-penalty according to their involvement.
3. You don't need to be perfect
While running a validator with high uptime will help maximize profitability, you don't need to run it from a datacenter or have perfect uptime to earn a profit. The protocol will not "slash" inactive validators, merely subtract any incremental earnings as incremental penalties. This means that as long as your validator is online more than 2/3 of the time, you will still turn a profit. But...
4. In certain circumstances, inactive validators get an additional micro-penalty
Validators perform the duty of progressing and finalizing the blockchain. If the chain stops being finalized, as in the case where a large fraction of validators go offline simultaneously, the protocol will react in an attempt to remove dead weight and regain finality. After the chain has not been finalized for more than 4 epochs (25.6 min), inactivity penalties will be doled out, and get worse every epoch the longer the chain isn't finalized. If your validator is still performing its duties during these times, it will not be penalized.
5. You may stop validating once active
If you decide validating isn't for you once you start, you have the option to voluntarily exit. This exit procedure tells the protocol to stop giving your validator duties to perform, stopping you from earning any additional rewards or getting any additional penalties. Keep in mind, even if you've ‘exited' from being an active validator, this doesn't mean your staked ETH is withdrawable.
One subtlety to this exit process is that once a validator goes active, it can't exit until after at least 256 epochs later. This ensures that every activated validator is assigned some minimal amount of work.
6. You can't re-join once you exit
If you've performed a voluntary exit, or been slashed, you won't be able to rejoin. This means if you want to be a validator again, it'll require an additional 32 ETH deposit and a new validator account.
7. Your staked ETH will not be liquid on the protocol level (yet)
All funds put into staking will be locked up at the protocol level until at least Phase 1 of the Eth2 rollout. This includes base staking funds and any earned rewards, whether you've exited or not. You shouldn't expect access to your staked funds for several years. Early stakers are in it for the long haul. Of course, once the functionality is eventually rolled out, you'll be able to withdraw/transact your precious ETH.
8. You need to plan for future phases if you stake early
The beacon chain, being released in Phase 0 of the Eth2 rollout, has been designed to be a lightweight chain. It's even possible to be run on a Raspberry Pi 4. If you decide to stake in Phase 0, you should be aware that additional validator duties will be added in future phases - and this will come with additional computational requirements! Expect much larger storage and bandwidth requirements, especially. This doesn't mean you can't stake with a mini computer or with minimal resources, just have an upgrade path planned so you don't get caught off guard.
Who we are
We're building Eth2 infrastructure in Typescript. Lodestar is an open-source community initiative, sponsored and run by ChainSafe Systems. We are always looking for more contributors :) If you'd like to join the fun, join us on GitHub or Discord to learn more.
Special thanks to Alex Stokes, Colin Schwarz, and Eric Tu for feedback and review.