📉Penalty
Discussing slash/penalty of different providers
Last updated
Discussing slash/penalty of different providers
Last updated
Penalty is incurred on a blobber for all the challenges that this blobber failed to verify.
Penalty is slashed from the blobber's stake pool when the blobber tries to redeem a successful challenge, where the smart contract checks whether the last challenge (before the one being processed) was accepted or not, if not, the slashing process is executed over this blobber.
The blobber is penalized for the time period between the latest successful challenge and the latest finalized challenge (described in the system's time_unit
) w.r.t the time remaining until the expiration of the allocation as follows:
This penalty amount will be slashed from the blobber's stake pool, and the move
amount will be moved back from the challenge pool to the allocation write pool.
Penalty calculation depends on a couple of configuration variables:
storagesc.time_unit
in sc.yaml: a duration that it's considered the unit of time for the time calculations for challenges, allocations and other operations related to the storage smart contract. For example, If the expiration of the allocation is 3
this means it's 3 * time_unit.
Used in the calculation of rdtu
and dtu
storagesc.validator_reward
in sc.yaml: defines the ratio of the challenge reward that goes to all the validators of the challenge. This is deducted from the challenge reward before the slashing happens.
storagesc.blobber_slash
in sc.yaml: defines the ratio of the challenge reward that will be slashed from the blobber's stake pool as a penalty for the failed challenge.