Staking
Used to manage funds as stake by network maintainers.
Last updated
Was this helpful?
Used to manage funds as stake by network maintainers.
Last updated
Was this helpful?
Manage funds at stake by network maintainers.
This allows a user to voluntarily place funds under deposit. These funds are rewarded under normal operation but are slashed should the staked maintainer be found not to be discharging duties properly.
A validator
is responsible for validating the block. In this scenario, the block is the contributing work entry being claimed.
Validators are chosen on rotation based on regular elections in each era
.
A nominator
votes on a set of `validators to be elected. Once interest in nomination is stated by an account, it takes effect at the net election round. The funds in the nominator's stash account indicate the weight of its vote. The rewards and punishment that a validator earns are shared between the validator and its nominators.
An account can become a nominator via the nominate
call.
Actual validators are chosen from among all potential validators via election by the potential validators
and nominators. The term voters
is used to represent the union of potential validators
and nominators
all of whom participate in the election process.
The current election algorithm is implemented based on .
The election algorithm's first priority is to elect validators with the most stake value and votes.
Then it tries to divide the nominator votes among candidates in an equal manner.
Optional post-processing can be applied to iteratively normalize the nominator staked values until the total difference among voters of a particular nominator is less than a threshold.
The Pallet
is attempting to embrace valid behavior while punishing any misbehavior or lack of availability.
Rewards must be claimed for each era before it gets too old by $HISTORY_DEPTH using the payout_stakers
call.
Slashing can occur at any point in time, once misbehavior is reported. Once slashing is determined, a value is deducted from the balance of the validator and all nominators who voted for this validator.
The logic for slashing is further described in the slashing
pallet documentation.
Validators and nominators are rewarded at the end of each era. The total reward is calculated using era duration and staking rate.
t is $HISTORY_DEPTH
points_{era(t)} are the reward points received by the team during an era
$_{stakedn, stakedv} is the total validator and nominator stake
$_{supply} is the total supply of the currency
The total reward is split among validators and their nominators depending on the number of points received during the era.
The validator
and its nominator
split their reward as follows:
The validator
sets commission
which is paid to the validator
only. The commission
=is deducted from the total reward paid to validator
and its nominators
and the remainder is split among validator
and all of the nominators
proportional to the value staked
behind the validator
.
Any role above can choose to step back temporarily and just chill for a while.