for free : Efficient and provably secure two-factor authentication scheme with user
Securing passwords against dictionary attacks