好吧,所以我尝试通过在注册时插入密码时添加 ". sha1($_POST['password']) . "
来使我的用户信息 super 安全。效果很好,查看数据库,我不知道他们的密码是什么。
现在问题是登录。我正在运行一些测试,当我尝试登录时,密码 12345 与使用 $password=sha1($_POST['mypassword'] 的加密密码不匹配);
知道为什么吗?
最佳答案
仔细检查数据库中密码列的大小...确保它保存整个 sha1 哈希值。 (varchar(40))
对密码进行哈希处理时,raw_output 参数的值是多少?如果为 true,则返回一个 20 个字符的二进制字符串;如果为 false,则为 40 个字符的 ASCII 字符串。如果是前者,请确保您可以在数据库中存储二进制值,或者更改为使用后者。
关于php - sha1(密码)加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3038284/