I was reading this wiki section on the countermeasures against replay attacks and it basically suggests that:

If Bob wants to confirm Alice's identity he can send a one-time token (I think it should be called a 'salt') to Alice which she appends to her password and hashes it before sending it back to Bob, who in turn also does the same operation and compares the results.

But if Bob must perform the same operation i.e. append that token to Alice's password and hash it, then he must also have the original password stored, right? Isn't this a security risk?

So the question is: Does Bob have to have a plain text version of Alice's password and if not, how does he avoid this requirement?

  • $\begingroup$ A one-time token is usually called a "nonce". $\endgroup$ – Tim McLean Jun 13 '15 at 3:36

Yes, that is a problem. There are protocols like SRP that both eliminate the need for Bob to store the password in plaintext and prevent replay attacks.

  • $\begingroup$ Thanks for the pointer to SRP. It seems to fit my requirements $\endgroup$ – Dziugas Jun 13 '15 at 4:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.