我已在我的数据库中以加密格式存储用户密码。但是,现在当用户想要登录并尝试输入原始密码时,代码始终会将输入的(原始)密码与存储在数据库中的加密版本进行比较,从而导致登录失败。
请告诉我如何将输入的(原始)密码与存储在数据库中的加密密码进行比较。
答案 0 :(得分:8)
您几乎肯定应该是hashing密码,而不是使用可逆加密。您可能需要使用salt执行此操作...在这种情况下,正确的步骤是:
注意存储散列密码的时间,生成随机盐的时间,以及验证存储的散列时,使用存储的>之间的区别 salt。
答案 1 :(得分:3)
不要加密密码!只需将其哈希(MD5 / SHA1 / bcrypt)并保存您与之比较的哈希值,即用户输入的每个密码的哈希值。
答案 2 :(得分:1)
您需要加密输入的密码,然后将加密的输入密码与加密的存储密码进行比较。
答案 3 :(得分:1)
答案 4 :(得分:0)
如果您需要动态创建java密码,则每次动态生成密码
链接,
http://brigitzblog.blogspot.com/2011/11/java-dynamic-password-generation.html
答案 5 :(得分:-1)
您需要解密存储的密码并检查输入的密码是否相等。