[ Laravel 5.2 文档 ] 服务 -- 加密
程序员文章站
2022-03-31 16:05:55
...
1、配置
在使用Laravel的加密器之前,应该在配置文件 config/app.php中设置 key选项为32位随机字符串。如果这个值没有被设置,所有Laravel加密过的值都是不安全的。
2、基本使用
2.1 加密
你可以使用 Crypt门面对数据进行加密,所有加密值都使用OpenSSL和 AES-256-CBC密码进行加密。此外,所有加密值都通过一个消息认证码(MAC)来检测对加密字符串的任何修改。
例如,我们可以使用 encrypt方法加密 secret属性并将其存储到Eloquent模型:
fill([ 'secret' => Crypt::encrypt($request->secret) ])->save(); }}
2.2 解密
当然,你可以使用 Crypt门面上的 decrypt方法进行解密。如果该值不能被解密,例如MAC无效,将会抛出一个 Illuminate\Contracts\Encryption\DecryptException异常:
use Illuminate\Contracts\Encryption\DecryptException;try { $decrypted = Crypt::decrypt($encryptedValue);} catch (DecryptException $e) { //}
推荐阅读
-
[ Laravel 5.2 文档 ] 服务 -- Session
-
laravel5.2为什么在服务器上获取不到session,storage下的sessions下的文件里面存储的有?
-
[ Laravel 5.2 文档 ] 架构 -- 服务提供者
-
[ Laravel 5.2 文档 ] 服务 -- 队列
-
[ Laravel 5.2 文档 ] 数据库 -- 迁移
-
[ Laravel 5.2 文档 ] 架构 -- 应用目录结构
-
[ Laravel 5.2 文档 ] 服务 -- Redis
-
[ Laravel 5.2 文档 ] 服务 -- 分页
-
[ Lumen 5.2 文档 ] 更多特性 -- 服务提供者_html/css_WEB-ITnose
-
[ Laravel 5.2 文档 ] 服务 -- 包开发