我在下面有一段代码,它回显了一个加盐密码:

            $pass = rand();
            $pass = md5($pass);
            $pass = substr($pass, 0, 15);
            $pass = md5(md5("g3f".$pass."rt4"));

现在,如果我回显 $pass,那么它将输出例如:
8723d9c8a8b2af798be25fd07ab0ff0a

但是我想要做的是回显密码本身,例如,它不会显示上面的内容,而是显示“密码”字符串。

如何做到这一点?

谢谢

最佳答案

不要覆盖变量 $pass

    $pass = rand();
    $md5pass = md5($pass);
    $md5pass = substr($md5pass, 0, 15);
    $md5pass = md5(md5("g3f".$md5pass."rt4"));

MD5 散列尤其是使用盐进行散列是一种单向过程。你不能逆转它。

任何好的密码系统都不会存储原始密码,而是存储散列的副本,然后通过散列输入并比较两者来验证用户输入的正确性。

关于php - 如何将加盐密码显示为字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12800974/

10-16 11:40