我正在做一个网站的框架翻译。我已经把它从Yii php框架翻译到Laravel。我有一个现有的数据库,我必须提供登录访问现有用户的新网站。问题是现在我正在使用Laravel和Laravel不识别前一个框架的散列值。即存储在数据库中的值通过Yii框架中的某些方法散列。有办法解决这个问题吗。我在Laravel中使用Auth::attempt()方法。
你不能…简单明了……
哈希不是加密。哈希是一种方法,你可以通过对一个大文件进行md5或shasum来证明这一点,因为文件的大小大于哈希输出,根据鸽子洞原理哈希不能被恢复…
你可以尝试用密码列表将它们彩虹表,不要,因为这会危及用户的安全。
你可能不得不想办法把Yii的auth模块混到Laravel中,或者使用某种中间人的auth位…或者让每个人都改密码
Yii框架通过crypt函数生成密码哈希,根据文档,它生成BCrypt哈希。您可以通过查看哈希来轻松检查这一点,BCrypt哈希以$2y
开头。
所以Laravel实际上应该能够用你的哈希值来检查密码,如果你找不到一个集成在Laravel本身的方法,你当然可以使用password_verify()函数来检查哈希值