Evidence is submitted through a MsgSubmitEvidence message:
Copy
// MsgSubmitEvidence represents a message that supports submitting arbitrary// Evidence of misbehavior such as equivocation or counterfactual signing.messageMsgSubmitEvidence{string submitter =1;google.protobuf.Any evidence =2;}
Note, the Evidence of a MsgSubmitEvidence message must have a corresponding
Handler registered with the x/evidence module's Router in order to be processed
and routed correctly.
Given the Evidence is registered with a corresponding Handler, it is processed
as follows:
First, there must not already exist valid submitted Evidence of the exact same
type. Secondly, the Evidence is routed to the Handler and executed. Finally,
if there is no error in handling the Evidence, an event is emitted and it is persisted to state.