yii怎么實(shí)現(xiàn)數(shù)據(jù)的加密與解密-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)yii怎么實(shí)現(xiàn)數(shù)據(jù)的加密與解密,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)建站專注于輝南網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供輝南營銷型網(wǎng)站建設(shè),輝南網(wǎng)站制作、輝南網(wǎng)頁設(shè)計、輝南網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)服務(wù),打造輝南網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供輝南網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

一、對密碼進(jìn)行加密和驗(yàn)證客戶端傳輸?shù)拿艽a是否正確

1、對密碼進(jìn)行加密

$hash = Yii::$app->getSecurity()->generatePasswordHash($password);

2、對客戶端傳遞的密碼進(jìn)行驗(yàn)證,判斷是否正確


//$password:客戶端傳遞的明文密碼,$hash:對密碼進(jìn)行加密后的哈希值 
if (Yii::$app->getSecurity()->validatePassword($password, $hash)) { 
  // 驗(yàn)證成功(密碼正確) 
} else { 
  // 驗(yàn)證失敗(密碼錯誤) 
}

二、生成一個偽隨機(jī)數(shù)據(jù)

在我們進(jìn)行密碼重置的時候,我們經(jīng)常會發(fā)送一份郵件到用戶郵箱中,給他一個重置的密碼,這時候我們就可以使用Yii的偽隨機(jī)數(shù)據(jù)方法給用戶生成一個偽隨機(jī)數(shù)據(jù)作為密碼

//默認(rèn)生成32為隨機(jī)字符,可以指定位數(shù)生成指定位數(shù)的偽隨機(jī)數(shù) 
$key = Yii::$app->getSecurity()->generateRandomString();

三、Yii常見的數(shù)據(jù)加密和解密

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

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

1、encryptByPassword()和decryptByPassword()

加密:

//$data:需要加密的信息,$secretKey:加密時使用的密鑰(key) 
$encryptedData = Yii::$app->getSecurity()->encryptByPassword($data, $secretKey);

解密:


//$encryptedData:需要解密的信息,$secretKey:加密時使用的密鑰(key) 
$data = Yii::$app->getSecurity()->decryptByPassword($encryptedData, $secretKey);

2、encryptByKey()和decryptByKey()

加密:

//$data:需要加密的信息,$secretKey:加密時使用的密鑰(key) 
$encryptedData = Yii::$app->getSecurity()->encryptByPassword($data, $secretKey);

解密:


//$encryptedData:需要解密的信息,$secretKey:加密時使用的密鑰(key) 
$data = Yii::$app->getSecurity()->decryptByKey($encryptedData, $secretKey);

關(guān)于yii怎么實(shí)現(xiàn)數(shù)據(jù)的加密與解密就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

當(dāng)前標(biāo)題:yii怎么實(shí)現(xiàn)數(shù)據(jù)的加密與解密-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://bm7419.com/article2/dsdeic.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司網(wǎng)站內(nèi)鏈、營銷型網(wǎng)站建設(shè)、定制開發(fā)、靜態(tài)網(wǎng)站、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站