database - 对密码进行哈希处理

标签 database security password-protection

出于安全原因,必须将散列密码存储在数据库中。

如果用户不记得他们的帐户密码,他们如何找回密码?我只能在这个阶段分享他们的散列密码,这对他们没有用。

密码经过md5、sha1散列加salt后能恢复吗?

最佳答案

只有一个简单的答案:你不能。

好吧,理论上你可以,但如果密码足够长,每个密码可能需要很多年。毕竟,这首先是散列密码的目的:使数据对攻击者有效无用(或至少保护用户的明文密码,这是敏感数据。)

只需让网站发送一封“更改您的密码”电子邮件,其中包含指向用户可以更改其密码的页面的链接。这就是大多数专业网站处理这种困境的方式。

关于database - 对密码进行哈希处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3615408/

相关文章:

mysql - 如何在MySQL中实现父类(super class)/子类结构?

mysql - 使用 Bash 脚本进行数据库归档

java - 当我使用sqlite运行android程序时如何防止重复行

android - 如何使用 facebook-id 安全登录到我的 android 应用程序?

passwords - 如何在导入用户数据时为 md5 哈希生成 vBulletin 密码盐?

sql - 提高PostgreSQL集差效率

security - SSL 到底有多安全?

php - 保护 WordPress 中的插件数据免遭其他插件访问?

c# - 我怎样才能实现密码正则表达式?

c# - 在数据库中存储散列密码和盐值的最佳方式 - varchar 或二进制?