Normally, a user performing an action on-chain expects to be able to receive the resulting proceeds in their own wallet.
The contract explicitly reverts if the recipient address is equal to the msg.sender. This creates an unnecessary hurdle for users and provides no additional security, as a user can simply generate a proof for a secondary burner wallet.
Likelihood: High
Standard user behavior is to use one wallet; this check will trigger for almost all initial attempts by users.
Impact: Low
The contract prevents the msg.sender from being the recipient of the reward. This forces users to manage multiple addresses and complicates the ZK-proof generation process, as the recipient address is typically a public input bound to the proof.
Allow the msg.sender to be the recipient of the funds.
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.
The contest is complete and the rewards are being distributed.