yii2.0 加密解密处理方法

加密与解密:

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

$data 是你要加密的内容,

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

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

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

$encryptedData 是你要解密的内容 

$secretKey 是你自己设置加密时的密码

1
$data  = Yii:: $app ->getSecurity()->decryptByPassword( $encryptedData $secretKey );

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

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

应用实例:

//邀请注册

1
$id  = Yii:: $app ->user->getId(); //获取登录用户id

//加密(此处加密密码设为空)

1
$uid  base64_encode (yii:: $app ->security->encryptByPassword( $id , '' ));

//解密

1
$iss =yii:: $app ->security->decryptByPassword( base64_decode ( $uid ), '' );

你可能感兴趣的:(php)