這篇文章將為大家詳細講解有關yii怎么實現數據的加密與解密,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
創新互聯建站專注于輝南網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供輝南營銷型網站建設,輝南網站制作、輝南網頁設計、輝南網站官網定制、重慶小程序開發服務,打造輝南網絡公司原創品牌,更為您提供輝南網站排名全網營銷落地服務。一、對密碼進行加密和驗證客戶端傳輸的密碼是否正確
1、對密碼進行加密
$hash = Yii::$app->getSecurity()->generatePasswordHash($password);
2、對客戶端傳遞的密碼進行驗證,判斷是否正確
//$password:客戶端傳遞的明文密碼,$hash:對密碼進行加密后的哈希值 if (Yii::$app->getSecurity()->validatePassword($password, $hash)) { // 驗證成功(密碼正確) } else { // 驗證失敗(密碼錯誤) }
二、生成一個偽隨機數據
在我們進行密碼重置的時候,我們經常會發送一份郵件到用戶郵箱中,給他一個重置的密碼,這時候我們就可以使用Yii的偽隨機數據方法給用戶生成一個偽隨機數據作為密碼
//默認生成32為隨機字符,可以指定位數生成指定位數的偽隨機數 $key = Yii::$app->getSecurity()->generateRandomString();
三、Yii常見的數據加密和解密
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);
關于yii怎么實現數據的加密與解密就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
當前標題:yii怎么實現數據的加密與解密-創新互聯
網頁鏈接:http://vcdvsql.cn/article2/dsdeic.html
成都網站建設公司_創新互聯,為您提供網站設計公司、網站內鏈、營銷型網站建設、定制開發、靜態網站、Google
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯