欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          yii如何實現(xiàn)數(shù)據(jù)的加密與解密

          yii如何實現(xiàn)數(shù)據(jù)的加密與解密

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

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

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

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

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

          二、生成一個偽隨機(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);

          推薦教程:yii

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號