The EggHuntGame.sol
contract uses block.timestamp
for game timing, which can be slightly manipulated by miners.
The contract uses block.timestamp
to define the start and end of game sessions:
While this is a common practice, miners can influence the timestamp by a few seconds, especially in time-sensitive operations like triggering game events or determining a winner.
Malicious miners may influence game start/end boundaries to gain a time-based advantage.
Time manipulation could be used to exploit the system if prizes are tied closely to specific timestamps.
Manual code review
Known blockchain miner capabilities analysis
Where possible, use block.number
with estimated block durations for timing.
If using block.timestamp
, include buffers or grace periods to reduce sensitivity.
Never rely on timestamps for anything tied to randomness or exact scheduling.
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.