4

我有一个带有双 MD5 密码和盐的 vBulletin 数据库,是否可以在 vBulletin 数据库中获取密码,将它们转换为 SHA256,然后将它们存储在新数据库中?有没有真正简单的方法来做到这一点?

我的主要和唯一原因是防止用户必须创建新帐户,并停止使用 MD5。

4

1 回答 1

12

散列算法是单向的,即它们不能与加密-解密算法相反。

MD5()是一种散列算法,所以是SHA-1 / SHA-256;

很高兴知道您已停止使用MD5()并移至SHA-256()

解决您的问题。

首先像这样在您的用户表中运行查询

UPDATE users_t SET PASSWORD=SHA2(PASSWORD,256) WHERE 1=1

现在您所有的散列MD5密码都将转换为SHA256散列。

但是,您不能停止MD5在登录/注册页面上使用。您必须更改检查逻辑,例如

$pass = $_POST['password'];
$hashedpass = hash('sha256',md5($pass)); // Now you need to insert/verify
于 2013-10-21T06:16:48.800 回答