Missing Rate Limiting on Email Verification Code Attempts

Description: The email verification code input form for the "Claim Email Verification NFT" feature lacks rate limiting and account lockout protections. Users can attempt unlimited invalid verification codes without facing any restrictions, delays, or temporary lockout.
Current Behavior:
- Users can submit invalid verification codes repeatedly
- Error messages appear ("Request failed: 400 : verify code not found") but allow immediate retry
- No rate limiting or exponential backoff is implemented
- No account lockout after multiple failed attempts
- No CAPTCHA or additional verification challenges
Expected Behavior:
- Implement rate limiting (e.g., allow 3-5 attempts per minute)
- Temporary account lockout after multiple failed attempts (e.g., 10-15 minutes after 5 failed tries)
- Progressive delays between attempts (exponential backoff)
- Optional: Add CAPTCHA after first few failed attempts
- Log suspicious activity for security monitoring
Security Impact:
- Enables brute force attacks on verification codes
- Could allow attackers to bypass email verification
- No protection against automated credential stuffing attempts