微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 在Laravel中设置加密密钥会导致注销

我需要用于后续Crypt :: encrypt()和Crypt :: decrypt()调用的密钥,但仅限于当前请求.

    Crypt::setKey('1');
    $pin_code   = Crypt::encrypt($pin_codes[$key]);

//它进行加密然后自动注销

可能是什么问题?

解决方法:

我想到了

Laravel只使用Crypt包的三个地方.

>缓存.特别是如果您正在使用数据库缓存驱动程序,则在保存之前会对缓存中的值进行加密,并在加载时对其进行解密.
>饼干. Cookie值始终以加密方式发送给用户.加载请求时,将解密所有cookie值.
>队列.特别是如果您正在使用铁队列驱动程序,则一旦检索到值,就会将值存储在队列中进行加密和解密.

由于点2 …我们将退出系统

所以最好将键重置为原始

Crypt::setKey('1'); 
$pin_code   = Crypt::encrypt($pin_codes[$key]);
Crypt::setKey(Config::get('app.key'));//reset to original after job is done

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐