Correct implementation of PHPass(PHPass的正确实现)
问题描述
我正在使用 PHPass 在我的应用程序中存储用户密码,因为它比 md5 或 sha1 更安全.我有一个关于如何在密码中使用盐的问题.
I'm using PHPass to store users passwords in my application because it's more secure than md5 or sha1. I have a question about how I would use a salt with the passwords.
根据我收集的信息,当您插入用户时,我会这样使用它:
From what I gathered, I use it like this when you insert a user:
$pwdHasher = new PasswordHash(8, false);
$hash = $pwdHasher->HashPassword($input_password);
然后当您在登录时检查用户详细信息时,您会这样做:
and then when you check the users details on login, you do:
$pwdHasher = new PasswordHash(8, FALSE);
if ($pwdHasher->CheckPassword($input_password, $hash_from_db)) {
echo 'password correct';
} else {
echo 'wrong credentials';
}
但我没有看到任何使用盐的地方.根据我的阅读,我的用户表应该有一个额外的字段用于散列密码时使用的盐,但是 PHPass 的 CheckPassword
方法不需要盐?
But I see nothing there that uses a salt. From what I've read, my user table should have an extra field for a salt that is used when hashing the password, but the CheckPassword
method of PHPass doesn't take a salt?
谢谢.
推荐答案
Phpass 在对密码进行哈希处理时添加盐,因此无需添加单独的盐并将其存储在数据库中.
Phpass adds a salt when it hashes the password so there's no need to add a separate salt and store it in your database.
这篇关于PHPass的正确实现的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:PHPass的正确实现
基础教程推荐
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- Libpuzzle 索引数百万张图片? 2022-01-01
- 超薄框架REST服务两次获得输出 2022-01-01
- 在多维数组中查找最大值 2021-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01