Aventus Network (AvN) encourages AVT holders to participate as nominators. Both validators and nominators lock their tokens as collateral and receive staking rewards.
The staking system pays out rewards essentially equally to all validators regardless of stake. Having more stake on a validator does not influence the number of block rewards it receives. However, there is a probabilistic component to reward calculation (discussed below), so rewards may not be exactly equal for all validators in a given era.
Distribution of the rewards is pro-rata to all stakers after the validator's commission is deducted. In this way, the network creates incentives for the nomination of lower-staked validators to create an equally-staked validator set.
How does staking work in AvN?
- Identifying which role you are
In staking, you can be either a nominator or a validator.
As a nominator, you can nominate validator candidates that you trust to help you earn rewards in the chain's native token - AVT. As all staking is currently done via the gateway, nominator's stake is automatically distributed to all 10 validators of the AvN.
The earned rewards is automatically deposited into your account.
- Nomination period
There are no particular requirements to become a nominator.
Once the nomination period ends, the NPoS election mechanism takes the nominators and their associated votes as input, and outputs a set of validators. This "election solution" has to meet certain requirements, such as maximizing the amount of stake to nominate validators and distributing the stake backing validators as evenly as possible.On the AvN, since we only have 10 validators, this election solution will always elect these 10 validators, but the exact stake assigned to them can be slightly different.
- Staking Rewards Distribution
To explain how rewards are paid to validators and nominators, we need to consider validator pools. A validator pool consists of the stake of an elected validator together with the nominators backing it.
If a nominator
n with stake
s backs several elected validators, say
k, the NPoS election mechanism will split its stakes into pieces
s_k, so that it backs validator
i with stake
s_i. In that case, nominator
n will be rewarded essentially the same as if there were
k nominators in different pools, each backing a single validator
i with stake
For each validator pool, we keep a list of nominators with the associated stakes.
The general rule for rewards across validator pools is that two validator pools get paid essentially the same amount of tokens for equal work, i.e. they are NOT paid proportional to the stakes in each pool. There is a probabilistic component to staking rewards in the form of era points but these should average out over time.
Within a validator pool, a (configurable) percentage of the reward goes to pay the validator's commission fees and the remainder is paid pro-rata (i.e. proportional to stake) to the nominators and validator. Notice in particular that the validator is rewarded twice: once in commission fees for validating (if their commission rate is above 0%), and once for nominating itself with stake.
- Rewards Mechanism
We highlight an important feature of this payment scheme. Since validator pools are paid the same regardless of stake level, pools with less stake will generally pay more to nominators per token than pools with more stake. On the AvN, since all staking will be done via the gateway, all validators will have the same number of nominators.
There is an additional factor to consider in terms of rewards. While there is no limit to the number of nominators a validator may have, a validator does have a limit to how many nominators to which it can pay rewards.
In AvN, this limit is currently 256, although this can be modified via runtime upgrade. A validator with more than 256 nominators is oversubscribed. When payouts occur, only the top 256 nominators as measured by the amount of stake allocated to that validator will receive rewards. All other nominators are essentially "wasting" their stake - they receive no rewards.
There are two different accounts for managing your funds: Stash and Controller.
- Stash: This account holds funds bonded for staking, but delegates some functions to a Controller. As a result, you may actively participate with a Stash key kept in a cold wallet, meaning it stays offline all the time.
- Controller This account acts on behalf of the Stash account, signalling decisions about nominating and validating. It sets preferences like payout account and commission. If you are a validator, it also sets your session keys. It only needs enough funds to pay transaction fees.
Substrate designed this hierarchy of separate key types so that validator operators and nominators can protect themselves much better than in systems with only one key. For the MVP, staking via the wallet uses the same key for both but we have plans to improve this and give users the choice of using separate accounts. Controller and Stash account keys are sr25519. For more on how keys are used in Polkadot and the cryptography behind it see here.
Validators and Nominators
Since validator slots are limited, most of those who wish to stake their AVT and contribute economic security to the network will be nominators.
Validators do most of the heavy lifting: they produce new block candidates in BABE, vote and come to a consensus in GRANDPA, validate the state transition function and possibly some other responsibilities regarding data availability.
Rewards are recorded per session and calculated per era (approximately twenty-four hours). Thus, rewards will be calculated once per day on AvN.
Rewards are calculated based on era points, which have a probabilistic component. In other words, there may be slight differences in your rewards from era to era, and even amongst validators in the active set at the same time. These variations should cancel out over a long enough timeline.
In order to be paid your staking rewards, someone must claim them for each validator that you nominate. Staking rewards are kept available for 84 eras, which is approximately 84 days on AvN.
Claiming Staking RewardsIf nobody claims your staking rewards by this time, then you will not be able to claim them and some of your staking rewards will be lost. Additionally, if the validator unbonds all their own stake, any pending payouts will be lost.
Since unbonding takes 7 days on the AvN, nominators should check if they have pending payouts at least this often.If you wish to check if you received a payout, you will have to check via a block explorer.
Reward Distribution Example
Validators can create a cut of the reward (a commission) that is not shared with the nominators. This cut is a percentage of the block reward, not an absolute value. After the commission gets deducted, the remaining portion is based on their staked value and split between the validator and all of the nominators who have voted for this validator.
For example, assume the block reward for a validator is 10 AVT. A validator may specify validator_commission = 50%, in which case the validator would receive 5 AVT. The remaining 5 AVT would then be split between the validator and their nominators based on the proportion of stake each nominator had. Note that validators can put up their own stake, and for this calculation, their stake acts just as if they were another nominator.