The MESSAGE_TYPEHASH
used for EIP712 encoding defines the struct as "SnowmanClaim(addres receiver, uint256 amount)"
.
This is a typo: "addres"
is not a valid type, and this hash will never match any signed messages, resulting in all signature verifications failing.
Likelihood:
Always occurs — signature verification will fail 100% of the time.
Impact:
No user will ever be able to claim their Snowman NFT using EIP712 signatures.
Complete failure of signature-based verification.
The following solidity example proves that all attempts to verify EIP712 messages will fail with this bug.
Fix the typo in the MESSAGE_TYPEHASH
:
A typo in the `MESSAGE_TYPEHASH` variable of the `SnowmanAirdrop` contract will prevent signature verification claims. Used `addres` instead of `address`
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.