php - 有没有替代 laravel bcrypt 函数的函数
问题描述
我有一个 laravel 应用程序,现在我要在核心 php 中构建它,我在登录页面中遇到问题,因为密码是通过 laravel 中的 bcrypt 方法加密的。帮我通过core php验证加密密码
我已经尝试password_hash('admin@12', PASSWORD_BCRYPT)
但仍然没有找到解决方案纯文本是 admin@12 和加密文本是 $2y$10$EHC8pQIUSYIBas943P6HEOEvZlQYAxI2zVGkwQiAkLTIDZrhbe6VG
在此处输入图像描述
\Session::flash('success', 'Your Account is activated please login to continue.');
User::create([
'username' => $request['username'],
'password' => bcrypt($request['password']),
'name' => $request['name'],
'card_number' => $request['card_number'],
'email' => $request['email'],
'phone' => $request['phone'],
'cnic' => $request['cnic'],
'address' => $request['address'],
'role' => "registered",
]);
解决方案
解决方案很简单:password_verify($password, $hash)
http://php.net/manual/en/function.password-verify.php
它可以在没有事件指定的情况下使用不同的算法(它读取哈希中的元信息) - 它支持 bcrypt。
要创建密码,请按照您的建议使用password_hash($value, PASSWORD_BCRYPT)
;在这里https://github.com/laravel/framework/blob/f10fe3e4cb4824df35e3e9d2e5d6756271f083ba/src/Illuminate/Hashing/BcryptHasher.php#L45你可以找到 Laravel 解决方案(它只添加了cost
选项)
推荐阅读
- python - 阻塞调度器(apscheduler)启动前无法获取作业列表
- react-native - 在 React Native 中禁用警告是好方法还是坏方法
- json - vb .net 迭代动态 json
- javascript - Discord 斜线命令静音
- c++ - 通过变量名寻址变量
- c++ - 为什么我不能从串口读取数据?
- tensorflow - 将保存的模型转换为 tensorflowjs
- php - 如何使用 Prepared Statement 在下拉菜单中防止 SQL 注入从 Foldable' AND '1'='1' 攻击?
- java - 如何修复 java.lang.IllegalStateException:无法执行 android:onClick 的方法
- pandas - 在 pandas 中查找 groupby 的索引