gpt4 book ai didi

c# - 从 Bcrypt 散列密码中检索文本

转载 作者:太空宇宙 更新时间:2023-11-03 17:17:34 25 4
gpt4 key购买 nike

使用 BCrypt 技术将密码作为哈希存储到数据库中。尽管与 MD5、SHA-1 等快速散列算法相比它可能有点慢,但我们决定采用它,因为安全性更为重要。

在 .Net 中,我使用 http://bcrypt.codeplex.com/ 实现了

BCrypt.Net.BCrypt.HashPassword("Password", BCrypt.Net.BCrypt.GenerateSalt(12));

在我们的站点中,管理员将为新用户创建用户名和密码。

存储散列密码没有问题。但是如果管理员想更新密码,他需要查看旧密码。我没有看到任何解密存储在 Bcrypt.Net 数据库中的散列值的方法。

有什么方法可以从 Bcrypt 散列密码生成文本吗?不过我同意这不可能,但是我们在某些情况下会这样做:(

更新:我决定使用以纯文本形式存储在某个表中的默认密码,并对该文本进行散列处理并存储为用户密码。当用户登录到站点时,他将被迫更改密码,直到他重新设置。这听起来不错吗?

最佳答案

加密散列在设计上是一种单向函数。不可逆转正是哈希函数的意图。此外,多个输入可以散列为相同的输出。

需要访问旧密码才能设置新密码表明设计存在缺陷。确切地说,为什么您需要以明文形式访问旧密码才能更新密码?

关于c# - 从 Bcrypt 散列密码中检索文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15583865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com