Rumah  >  Artikel  >  php教程  >  yii2.0 加密解密处理方法

yii2.0 加密解密处理方法

黄舟
黄舟asal
2017-01-03 09:44:181350semak imbas

Yii提供了方便的帮助函数来让你用一个安全秘钥来加密解密数据。数据通过加密函数进行传输,这样只有拥有安全秘钥的人才能解密。比如,我们需要存储一些信息到我们的数据库中,但是,我们需要保证只有拥有安全秘钥的人才能看到它(即使应用的数据库泄露)

$data 是你要加密的内容,

$secretKey 是你自己设置的密码,

$encryptedData = Yii::$app->getSecurity()->encryptByPassword($data, $secretKey);

随后,当用户需要读取数据时:

$encryptedData 是你要解密的内容 
$secretKey 是你自己设置加密时的密码
$data = Yii::$app->getSecurity()->decryptByPassword($encryptedData, $secretKey);

但是对字符串进行加密,加密后的字符串是一串乱码,(看起来确实像乱码,具体是什么有待考证),这不利于我们的下一步操作。

我们可以使用base64处理加密后的字符串, 处理后的字符串是由字母和数字组成

应用实例:

//邀请注册

$id = Yii::$app->user->getId();//获取登录用户id
//加密(此处加密密码设为空)
$uid = base64_encode(yii::$app->security->encryptByPassword($id,''));
//解密
$iss=yii::$app->security->decryptByPassword(base64_decode($uid),'');

以上就是yii2.0 加密解密处理方法的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:yii2.0 模型rules验证详解Artikel seterusnya:Yii2.0防御csrf攻击方法