Slashing moderator
Last updated
Last updated
In Phase 0, a validator can be slashed (a more severe penalty) if they violate the Casper FFG rules or if they create two beacon blocks in one epoch. Slashings lead to the permanent exit of perpetrators from the Beacon Chain. Until the ETH becomes withdrawable this means that slashed validators incur a significant opportunity cost as their ETH remains locked, yet unproductive.
We are approaching crafting this methodology with an iterative mindset, and have yet to enshrine this to the front-end and API. We want to hear from the community on which approach is the most realistic, representative and fair. Discourse forum [coming soon]
Given slashing is the most severe penalty in PoS Ethereum and frequently caused by operators running improper or overly risky set-ups, we have considered implementing an ad hoc penalty on the total effectiveness score of a given validator index.
Slashing penalty: -30% such that if their score up to that point was 95%, it would immediately get reduced to 65%.
Granted the significant opportunity cost incurred for validators that are slashed and exited prior to withdrawals being enabled, we also think that it would make sense to effect a negative penalty for all consensus rounds that follow from the epoch the validator is exited. We could achieve this by continuing to score for 0% participation for all epochs between the exit and withdrawals being enabled.
Slashing is the irreversible punishment that decreases a percentage of a validator’s current stake over time and forcibly ejects them from the network. It is the punishment given to validators who violate these three offences:
Double Proposal - proposing validator signs two different blocks for the same slot
Surround Vote - attesting validator signs a Casper FFG attestation (source [s] and target [t]) that “surrounds” another one, which contradicts what a validator said was finalized in a previous attestation
s1>s2>t2>t1
Double Vote - attesting validator signs two different attestations with the Casper FFG target
Slashing requires a whistle-blowing validator that monitors and reports on the three offenses listed. This whistleblower sends a message to the network outlining the offense. After which, the proposing validator includes this message in their slot. They then get awarded the offending validator’s balance divided by 512 (0.625 ETH if the balance is 32 ETH). The reward is small since this is not meant to be a for-profit activity; rewarding reports as such would encourage false positive reports/spam. As for the whistleblower, they get no reward.
At a high enough level, so far we have observed slashed validators be subject to the following levels of principal loss across Beacon Chain eras:
Upgrade era | Principal loss on slashing (approx.) |
---|---|
Phase 0 | 0.25 ETH |
Altair | 0.5 ETH |
Bellatrix | 1 ETH |
In the section below, we dive a little deeper in the formulas that modulate the level of principal loss for a slashed validator.
Slashed validator irreversibly exits the network during an epoch 36 days in the future. The slashed validator receives a minimal penalty at the point of whistle-blowing report.
Pre-Altair: Slashed Validator’s Effective Balance * 1/32
Post-Altair: Slashed Validator’s Effective Balance * 1/64
Post-Merge: Slashed Validator’s Effective Balance * 1/32
Following that, the slashed validator receives a penalty at the start of each epoch from the time of the report until the scheduled network withdrawal/exit.
Pre-Altair: 3 * Base Reward * 32 (per epoch)
Post-Altair: 40/64 * Base Reward * 32 (per epoch)
Post-Merge: 40/64 * Base Reward * 32 (per epoch)
This penalty is higher if an inactivity leak is activated in the network.
Finally, the slashed validator receives a special penalty halfway between the point of the whistle-blowing report and at the point which the validator is forced to exit/withdraw (18 days).
Takes into consideration the number of validators slashed during the period 18 days before the offending validator was slashed and 18 days after (aka 36 days before this halfway point)
Maximum amount can be as high as the slashed validator’s total effective balance
Pre-Altair:
Post-Altair:
[MIN(2 * Total Balance of Slashed Validators), Total Effective Balance of the Network) / Total Effective Balance of the Network] * Effective Balance of Slashed Validator
Post-Merge:
[MIN(3 * Total Balance of Slashed Validators), Total Effective Balance of the Network) / Total Effective Balance of the Network] * Effective Balance of Slashed Validator