Minimal Slashing protection

Problem statement

The basic eth2 phase 0 slashing conditions premise dictates that a validator can’t forget past signed messages without a penalty. It’s a simple rule, don’t sign the same message but with different parameters (double voting) or try to change history by signing a message “deleting” a previous one (surrounded and surrounding votes).
There are 3 types of slashing events:

Minimal Slashing protection

A solution can be found in adopting more stringent slashing rules that enable reducing the footprint of a slashing database significantly. Instead of holding the entire past attestation history, we can minimize it to just holding the highest source and highest target attestations ever signed, then force inner validator rules that reference only those 2 pieces of data to validate and ultimately sign an attestation.

  • New attestation source epoch must be equal or higher than known highest source.
  • New attestation target epoch must be higher than known highest target
C is the highest source, E is the highest Target. Enforcing the rules above will prevent E from being signed, saving the validator from slashing. F is a valid attestation.
C is the highest source, E is the highest Target. Enforcing the rules above will prevent D from being signed, saving the validator from slashing. F is a valid

Minimal slashing protection was first discussed by Michael Sproul (lighthouse team) and initially included in the Slashing protection Database Interchang

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store