php - 如何在 Laravel 中加密/解密 session 值

标签 php laravel encryption laravel-blade

在我的登录 Controller 中,我正在创建一个具有用户用于登录的电子邮件值的 session 。从那里我在不同的页面(包括主页、个人资料和其他页面)中使用该 session 。 问题是我不想将原始电子邮件存储在 session 中,以便任何人都可以使用 burpsuite 或其他工具阅读此内容,因此我在将电子邮件存储在 session 中之前解密电子邮件的值。现在我不知道如何取回其他页面上的解密值。下面是代码。

//登录 Controller

 $email=encrypt($request->emailOrNumber);
 \Session::put('email',$email);

现在,如果我尝试在 Blade View 中使用以下代码获取此值,我将获得加密值。如何取回电子邮件的解密值?需要您的建议。谢谢

{{Session::get('email')}}

最佳答案

正如我在评论中所说

要解密电子邮件,请使用 decrypt() 来解密 session 返回的值。

https://laravel.com/docs/master/encryption

decrypt(Session::get('email')); 

关于php - 如何在 Laravel 中加密/解密 session 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58893685/

相关文章:

php - 动态生成PDF并将其存储在文件系统中?

php - 如何更改 Laravel 5 中的默认登录 URL?

laravel - 我们是否还应该使用那些仅用于在我们的测试中更改数据库中的数据的迁移?

php - 在 Laravel 中使用 auth 保护所有管理员/路由

java - 可序列化对象的 ArrayList 的加密保存和解密加载

Java Bouncy CaSTLe 密码学 - 使用 AES 加密

php - Laravel chunk() 误认为是 array_chunk?

javascript - 使用ajax(DataTable jQuery)的参数调用php函数

php - 使用 Zend_Mail 时添加 PDF 附件

encryption - 使用部分私钥审查来解密 RSA 消息?