如何迁移密码哈希?

9
如果我将密码存储为盐MD5哈希,但想要将它们移动到使用bcrypt,最好的方法是什么?(假设我无法取回密码)
我应该对md5哈希进行bcrypt处理吗?这样做会有加密方面的影响吗?

从现有的MD5哈希中进行哈希处理会带来什么好处呢?您的应用程序仍然需要知道每个用户密码使用的哈希函数类型,并在验证时可能尝试两种方法。因此,我不认为重新哈希的好处。 - Assaf Lavie
1
将md5哈希与bcrypt哈希结合使用的优点在于可以单方面地应用于数据库。无需等待用户重新输入明文密码。 - Taylor
发现了这篇博客文章,它声称这样做是可以的,但不知道基于什么依据。http://thepileof.blogspot.ca/2012/06/how-to-migrate-database-of-stored.html - Taylor
1个回答

7
通常情况下,网站只会要求用户更改密码。如果你在用户表中添加一个hash_version字段,就可以追踪当前哈希类型。当使用MD5进行登录时,请让用户更改密码。
一段时间后,您可以选择过期所有剩余的MD5密码(强制用户重置才能登录)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接