A validator is a registered participant in the beacon chain. It is very much like a miner of the 'Proof of Work' protocol except they are engaged in the process with Ethereum chain only when they make a security deposit by sending ether (ETH) into the Ethereum 1.0 deposit contract. Validation in Eth2 can not be done without a security deposit. Follow Ethereum 2.0 Basic Terminology for other frequently used terms in Eth2.
Minimum requirement to become a validator
To become a validator, a user needs
- a computer with minimum hardware requirement
- an internet connection and
- a minimum of 32 ETH to make the deposit.
A validators is required to
- propose new blocks on shards to which the validator is assigned.
- Participate in committees by signing attestations on blocks proposed by other validators within the committee.
- Aggregrate attestations from other validators on a committee when assigned for broadcasting to the beacon chain.
- Maintain an RPC connection to a trusted beacon node to listen for validator assignment/shuffling.
- Sync assigned shard with beacon chain for each proof of custody period.
Validator Rewards & Penalties
In Ethereum 2.0 chain, to produce a block, a validator needs to securely attest blocks and place bets on the consensus process. A validator is assigned a duty every 6 minutes and if that is performed, it will be rewarded. This reward is based on total network stake. So if total ETH staked is very low, the return rate per validator increases, but as stake rises, total annual issuance increases to fund those validators, while they individually will receive less rewards.
Validators profitability depends on -
- Online availability. If a validator is offline for longer and fails to validate after being activated, he loses part of the deposit. Say, if blocks are finalizing and a validator is offline, it can lose x% of the deposit every day over a year where x=current_interest, but gain that for every day it is online.
- Performance and availability of other validators. It's a risk which is not self-mitigated, and one can end up losing money if other nodes are not performing well. If blocks aren’t finalizing (>33% of validators are offline) and you’re offline, you can lose 60% in 18 days.
Different behaviors of a validator decide the amount of security at risk:
- If one is on the network, put the deposit but never validates, then it will lose some (not all) of the deposit.
- If one produces an invalid block, or tries to revert finality of a block, then the entire deposit is lost.
- If one follows up a bad betting strategy or for some other reason it is not with the converging network, then the validator will lose some deposit. This will be less than if it was offline the whole time.
If at any point validator’s deposit drops below 16 ETH you will be removed from the validator set entirely.
To increase transparency and discovery around the economics of Eth2, Staking Calculator is available for people to calculate on variable parameters.
Rewards are granted for acts that lead to a consensus among the network. A validator should be available to continuously vote for blocks. Rewards are earned if transactions are batched into a new block or other validators’ job checks since it keeps the chain safely operating.
The current suggested payouts are as follows:
Base rewards - During each epoch, every validator is expected to make an “attestation”, a signature that expresses that validator’s opinion on what the head of the chain is. There is a reward for having one’s attestation included, with five components:
- Reward for the attestation getting included at all
- Reward for the attestation specifying the correct epoch checkpoint
- Reward for the attestation specifying the correct chain head
- Reward for the attestation being included quickly on chain (full if included after 1 slot, 1/n of the full reward if after n slots)
- (Phase 1+ only) Reward for the attestation specifying the correct shard block
Additionally stakers receive a proportional share of the Daily Network Rewards (Transaction Fees).
The validators get a block reward with respect to their stake when the block is added. There are validators in PoS (Proof of Stake) rather than miners. In short, they confirm the validity of transactions in the blocks added to the blockchain.
Why 32 ETH is the validator size
Any BFT consensus algorithm with accountable fault tolerance must have all validators participate, and furthermore for technical reasons you need two rounds of every validator participating to finalize a message.
32 slots is a safe minimum because
if an attacker manipulates the randomness used for proposer selection, this number still provides enough space to ensure that there will be at least one honest proposer in each epoch, which is sufficient to ensure blocks keep finalizing.
Researchers’ calculations suggest that current levels of overhead are acceptable, but higher levels would make running a node too difficult.
Finally, the validator deposit size is ideal for shard crosslinking.
If the deposit is less, then the cost of steering of the system will be very low and if it is too high not many people can participate.
Validator Life Cycle
The status of a validator is determined by the status epoch fields in BeaconState. The field includes activation eligibility, activation, exit, and withdrawable. At any point of time, a validator may be in one of the following statuses:
As obvious as it can be, the first step is to deposit a minimum amout of ETH in the deposit contract and register in BeaconState. It is a swap of funds between the Ethereum accounts and the eth2 validators triggering the corresponding Deposit operation. It determines who is involved, who is validating, how much is involved, and who can withdraw the funds.
In Activation Queue
Generally, after 4 epochs, the validator is activated. Now that there are more than required validators, there is a waiting list and the selection of validator is decided by the set rules.
Once a validator is checked, the active validator will now be assigned duties at each epoch (certifying, proposing, etc.) and will receive rewards. Usually, validators are expected to remain in activated status for a long time.
Slashing is a status imposed on the misbehaving validator in order to maintain the security of the chain. This can be avoided as explained earler. Once slashed, validator is foced to exit.
There can be three different conditions in which a validator is exited:
- Slashing: Generally, malacious acts may lead to slashing of the validator which leads to exit from the chain. But in case a validator is mistaken (i.e. double votes or surround votes), a slashing operation may be created by the other validator and the wrong validator slows down and slashing operations are initiated. The validator will be forced to exit, plus an extra ~36 days delay before it can be withdrawn.
- Insufficient funds: Because of going offline, a validator may get penalities and lose some of the deposit. If at any point deposit drops below half, the validator will be removed from the validator set entirely.
- Voulantarily: After 2^11 epochs, a voluantry exit of the validator is initiated.
Once exited, a validator may withdraw the rewards and the balance deposit (if any). As per the current plan, a validator will be able to withdraw to EEs in phase 2.
In some cases, a validator can be in multiple statuses at the same time, e.g., an active validator may be “activated and slashed”.
Read similar articles
- How To Become An Eth2 Validator On Teku
- How To Become An Eth2 Validator on Nimbus with Hyperledger Besu
- All About The Validator In Ethereum 2.0 Beacon Chain
- How To Become Eth2 Validator On Windows/Linux/Mac
- Ethereum 2.0 Basic Terminology
- EtherWorld's Good Read on Blockchain & Cryptocurrency
- Serenity Design Rationale
- Ethereum 2.0 phase 0 validator lifecycle
Disclaimer: The information contained on this web page is for education purpose only. Readers are suggested to conduct their own research, review, analyze and verify the content before relying on them.
To publish press releases, project updates and guest posts with us, please email at firstname.lastname@example.org.
You've something to share with the blockchain community, join us on Discord!