0

我正在尝试这个:

$password = md5($_GET['password']);
echo "Password: ".$pass = Mage::getSingleton('core/encryption')->getHash($password,'abcd1234');

echo "<br/>";

echo "ORIGINAL PASSWORD IS ba9791a5dec550a3a6cc3f4e748fd588:OG";
echo "<br/>";

但不幸的是,密码与 Magento 的不匹配

Magento 版本是 1.7

4

2 回答 2

1

尝试:

Mage::helper('core')->getHash($password, 2);

但是,如果您想将密码与数据库匹配,请使用:

Mage::helper('core')->validateHash($password, $hash);
于 2013-05-23T21:37:51.400 回答
0

看看 Mage/Core/Model/Encryption.php

public function validateHash($password, $hash)
{
    $hashArr = explode(':', $hash);
    switch (count($hashArr)) {
        case 1:
            return $this->hash($password) === $hash;
        case 2:
            return $this->hash($password . $hashArr[1]) === $hashArr[0];
    }
    Mage::throwException('Invalid hash.');
}

申请前的密码 md5 concatenate passowrd+SALT

您将在数据库中的 password_hash 末尾看到 SALT:0836de2601523547b3365c4d20e9012a:I4

I4是盐!!

于 2017-10-24T15:20:36.917 回答