Maison > cadre php > CE > le corps du texte

yii如何实现数据的加密与解密

王林
Libérer: 2020-05-10 17:00:26
avant
2864 人浏览过

yii如何实现数据的加密与解密

一、对密码进行加密和验证客户端传输的密码是否正确

1、对密码进行加密

$hash = Yii::$app->getSecurity()->generatePasswordHash($password);
Copier après la connexion

2、对客户端传递的密码进行验证,判断是否正确

//$password:客户端传递的明文密码,$hash:对密码进行加密后的哈希值 
if (Yii::$app->getSecurity()->validatePassword($password, $hash)) { 
  // 验证成功(密码正确) 
} else { 
  // 验证失败(密码错误) 
}
Copier après la connexion

二、生成一个伪随机数据

在我们进行密码重置的时候,我们经常会发送一份邮件到用户邮箱中,给他一个重置的密码,这时候我们就可以使用Yii的伪随机数据方法给用户生成一个伪随机数据作为密码

//默认生成32为随机字符,可以指定位数生成指定位数的伪随机数 
$key = Yii::$app->getSecurity()->generateRandomString();
Copier après la connexion

三、Yii常见的数据加密和解密

Yii常见的加密方法有:encryptByPassword()和encryptByKey()

Yii常见的解密方法有:decryptByPassword()和decryptByKey()

1、encryptByPassword()和decryptByPassword()

加密:

//$data:需要加密的信息,$secretKey:加密时使用的密钥(key) 
$encryptedData = Yii::$app->getSecurity()->encryptByPassword($data, $secretKey);
Copier après la connexion
Copier après la connexion

解密:

//$encryptedData:需要解密的信息,$secretKey:加密时使用的密钥(key) 
$data = Yii::$app->getSecurity()->decryptByPassword($encryptedData, $secretKey);
Copier après la connexion

2、encryptByKey()和decryptByKey()

加密:

//$data:需要加密的信息,$secretKey:加密时使用的密钥(key) 
$encryptedData = Yii::$app->getSecurity()->encryptByPassword($data, $secretKey);
Copier après la connexion
Copier après la connexion

解密:

//$encryptedData:需要解密的信息,$secretKey:加密时使用的密钥(key) 
$data = Yii::$app->getSecurity()->decryptByKey($encryptedData, $secretKey);
Copier après la connexion

推荐教程:yii

以上是yii如何实现数据的加密与解密的详细内容。更多信息请关注PHP中文网其他相关文章!

Étiquettes associées:
source:jb51.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!