【发布时间】:2023-04-03 08:03:01
【问题描述】:
我有 2 个数据库表,由 2 种不同的用户类型组成。
用户和玩家。
玩家拥有来自游戏内插件的用户数据,其中密码是 BCrypted。 用户一为空,用于存储来自 Players 表的用户信息。
我正在比较用户名和密码。 问题是从网站中的用户输入获取纯文本密码,而从另一个表中,密码已经 bcrypted 并且 Laravel bcrypt 与 Players 表中的 bcrypted 密码不匹配。
我有哪些选项可以比较密码以确认这是尝试登录的用户。
游戏内插件密码:
$2a$10$lpVYpSJ4O6Mt03eItJeipOWR8LGHP8dgk4a09.e6BFKVoYNAgjz86
Laravel 明文加密:
$2y$10$yZoq3xBsfow49pL6UyGD2.5NKlmHOmfnCFc9JD5ZjDz3pf5K1XMhG
两个密码相同。
【问题讨论】:
-
你用的是普通的bcrypt吗?你可能会想到在 laravel 中使用 Hash 类,并在两边实现相同的。即使您正在尝试 bcrypt,也只是一个建议,这是正确的。
-
我正在使用这个link 这是一个用于身份验证插件的开源存储库。
-
这里使用的 bcrypt 与 laravel bcrypt 不同,这就是你得到错误的原因。
-
我有哪些比较密码的选项?
-
使用支持 PHP 和 Java 的常用加密器,Google 是你的朋友。
标签: laravel encryption cryptography compare