Evidence is an implementation of a Cosmos SDK module, per ADR 009, that allows for the submission and handling of arbitrary evidence of misbehavior such as equivocation and counterfactual signing.
The evidence module differs from standard evidence handling which typically expects the underlying consensus engine, e.g. Tendermint, to automatically submit evidence when it is discovered by allowing clients and foreign chains to submit more complex evidence directly.
All concrete evidence types must implement the
Evidenceinterface contract. Submitted
Evidenceis first routed through the evidence module's
Routerin which it attempts to find a corresponding registered
Handlerfor that specific
Evidencetype must have a
Handlerregistered with the evidence module's keeper in order for it to be successfully routed and executed.
Each corresponding handler must also fulfill the
Handlerinterface contract. The
Handlerfor a given
Evidencetype can perform any arbitrary state transitions such as slashing, jailing, and tombstoning.
Last modified 1yr ago