Reputation: 8668
I am re-implementing the "reset password" functionality for the next version of my user management system. The way it works currently is:
My question is: do we really need the user to re-enter their email address when they create the new password? If the random token is sufficiently strong, does requiring this extra piece of information provide any added security, or does it just worsen UX?
Upvotes: 2
Views: 581
Reputation: 1586
I don't see any value in doing this. Just make your key secure. Perhaps a 128-bit (that's 22 base 64 encoded characters) secure random. That seems large enough. Also add a timeout to the token life span. 24 hours seems a fine compromise between security and inconvenience.
I like the idea of adding the email address to the token so you can log failures more intelligently.
Upvotes: 2