大家好,今天要介绍 Laravel 其中一个功能'加密',我会将这个加密加入我的专案实作之中。laravel的加密服务利用 AES-256 和 AES-128 加密通过 OpenSSL 加密和解密配置一个接口,并利用MAC进行签名,底层值一旦加密後就无法修改及窜改。
首先我们利用以下指令产出一个key
php artisan key:generate
而其中 key:generate 是使用 php 的 secure random bytes generator 来产生一个加密安全密钥。
接下来我们就可以使用Crypt来加密你想加密的值罗,我们到之前写好的UserService中,在注册的name把他加密起来,让他不要直接存在DB当中。
Crypt::encryptString(username);
先把他dd出来看吧!使用我们之前写好的command来测试。
这边会看到被加密过的字串,那我们把它夹到create里面就可以罗。
User::create([
'account' => $account,
'password' => Hash::make($password),
'name' => Crypt::encryptString($username),
]);
那我们在读取的时候解密,改写一下UserController里的show()方法
public function show($id)
{
$user = User::select('id', 'name', 'account')->where('id', $id)->first();
$user->name = Crypt::decryptString($user->name);
return response()->json($user);
}
得到以下结果
好,今天介绍加解密,明天来学习Hash!
>>: [早餐吃到饱-5] 浮云客栈 #开幕至今仅两年的机器人智能旅店
MySQL 是免费的关联式资料库,具有轻量级速度快的优点,适合小型网站架设使用。 目前最流行的 Wo...
DAY19 用 Azure Machine Learning SDK 建立 Datastore 我们...
画流程图是我的第一堂程序课内容,大学教授讲了很多话,我记得的寥寥无几,其中一句话是:你画的出来就写得...
文件处理函数 fopen(): 打开文件或者 URL fclose(): 关闭一个已打开的文件指针 ...
这个章节来实作彩球组件,让使用者可以选择颜色。 建立颜色控制器 建立 color-ball.vue ...