-
Notifications
You must be signed in to change notification settings - Fork 50
Closed
Labels
Audit: Contract Reviews 👀Internal reviewInternal reviewPackage: ContractsCourt smart contractsCourt smart contractsType: Question ❔
Description
Context
V1 Behaviour
IEvidence.submitEvidence() is implemented directly by the arbitrable contract. It also emits the Evidence event with:
_party = 0x00when the sender is not a party according to ERC-1497 Evidence standard._party = msg.senderfor some arbitrable protocol event (e.g. item submission/challenge).
Sources:
- Curate v1 sets
_partyto the caller of the submit/challenge item function. - Same for PoH V1
- IEvidence v1
⚠️ There seems to be no actual example of Arbitrable contract emittingEvidencewith_party = 0x00.
V2 Behaviour
IEvidence.submitEvidence() is implemented by a separate EvidenceModule which does not allow specifying _party to avoid impersonation and instead sets it to msg.sender.
Sources:
- Curate v2 contract set as the
_partysubmitting evidence⚠️ This is a bit wrong, it should be arbitrable caller rather than the arbitrable contract.
- EvidenceModule
Questions
- What is the impact?
- Is this change acceptable?
- If not, are we happy to allow
submittingEvidence()on behalf of someone else? Or alternativelysubmitEvidenceNotFromParty()?
Metadata
Metadata
Assignees
Labels
Audit: Contract Reviews 👀Internal reviewInternal reviewPackage: ContractsCourt smart contractsCourt smart contractsType: Question ❔