The timeblockstamp seems good for providing randomness, but can be easily manipulated with substracting few seconds, and give the chance to a certain person to attack the contract and predict the randomness calculation
uint256 random = uint256( keccak256(abi.encodePacked(block.timestamp, block.prevrandao, msg.sender, eggCounter)) ) % 100;
This gives an attacker or miner some control over the value used in the randomness calculation.
n/a
Use Chainlink VRF to avoid this kind of attacks
Insecure methods to generate pseudo-random numbers
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.