laravel - Laravel 密码加密参数解密代码
问题描述
我有一些不同的要求,我不想解码密码,但我正在基于 SAME DATABASE 为 LOGIN 构建一些其他应用程序,所以我可以做些什么来“加密密码值,使其与后端密码加密代码匹配” .
我想提供来自 CODEIGNITOR 应用程序的登录信息,其中数据库由 LARAVEL 中的管理应用程序创建......这就是问题......
所以通过 CodeIgnitor 如果有人登录,密码将被加密等效散列加密的 laravel 应用程序代码。
加密密码是
$2y$10$cwd15HRgON0ytqkkV5F9zupfUOkqaii7fpbB9Kjd9I7W46LRYY0Km
真正的密码是
123456
请帮忙...
解决方案
Caddy DZ 的回答是对的,但为了更好地回答您的问题,您应该知道每次使用 bcrypt 函数生成新密码时,都会使用新的随机盐。
这导致您每次生成一个密码时,最终都会为相同的密码获得不同的哈希值。
您必须验证密码正确性的唯一方法是使用名为password_verify
.
该函数将使用您在数据库中已有的用于生成存储密码(要使用的盐存储在密码哈希中)的相同盐来散列您的密码(您作为第二个参数提供):
$password = '123456';
$saved = 'your stored hash';
if (password_verify($password, $saved)) {
echo 'Correct password.';
}
您可以查看有关password_verify的文档
推荐阅读
- python - AttributeError:“设置”对象没有属性“MEDIA_URL”
- laravel - 方法 Illuminate\Support\Str::of 不存在
- jquery - ajax 每次都从数据库中获取相同的数据
- pdf-generation - 使用 jasper 软件版本 6.13.0 创建的 pdf 文件中看不到日语内容
- java - Intellij IDEA 不构建 maven 项目
- unity3d - 为什么 Unity 给我构建错误
- elasticsearch - 使用 Apache NIfi 将数据从 RDBMS 迁移到 ElasticSearch
- angular - 如何从角度9中的当前日期减去一天
- reactjs - 反应 + 码头工人 + Nginx
- ios - Xcode 11.5 - 分段错误 11