首页 > 解决方案 > Laravel 密码加密参数解密代码

问题描述

我有一些不同的要求,我不想解码密码,但我正在基于 SAME DATABASE 为 LOGIN 构建一些其他应用程序,所以我可以做些什么来“加密密码值,使其与后端密码加密代码匹配” .

我想提供来自 CODEIGNITOR 应用程序的登录信息,其中数据库由 LARAVEL 中的管理应用程序创建......这就是问题......

所以通过 CodeIgnitor 如果有人登录,密码将被加密等效散列加密的 laravel 应用程序代码。

加密密码是

$2y$10$cwd15HRgON0ytqkkV5F9zupfUOkqaii7fpbB9Kjd9I7W46LRYY0Km

真正的密码是

123456

请帮忙...

标签: laravellaravel-5password-protectionpassword-encryptionpassword-hash

解决方案


Caddy DZ 的回答是对的,但为了更好地回答您的问题,您应该知道每次使用 bcrypt 函数生成新密码时,都会使用新的随机盐。
这导致您每次生成一个密码时,最终都会为相同的密码获得不同的哈希值。

您必须验证密码正确性的唯一方法是使用名为password_verify.
该函数将使用您在数据库中已有的用于生成存储密码(要使用的盐存储在密码哈希中)的相同盐来散列您的密码(您作为第二个参数提供):

$password = '123456';
$saved = 'your stored hash';

if (password_verify($password, $saved)) {
    echo 'Correct password.';
}

您可以查看有关password_verify的文档


推荐阅读