Commitments use keccak256(move, salt)
with no unique game identifier. Risk of cross-game reuse.
A player could reuse the same (move, salt)
pair across multiple games, leading to identical hashes. Without gameId
or player-specific entropy like nonce
, a committed move could potentially be recognized and front-run in future games.
Cross-game commit replay vulnerability
Possible front-running or strategic leakage
Manual code review
Include unique identifiers in the hash.|
This ensures commitments are unique per game and player:
The contract does not enforce salt uniqueness
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.