yii可逆加密解密

生成隨機數

  • 方法:generateRandomString
  • 用法:
 $key = Yii::$app->security->generateRandomString();

加密

  • 方法:encryptByPassword
  • 用法:
$password_hash = Yii::$app->getSecurity()->encryptByPassword($password, $key)

參數說明:

參數 類型 備註
$password string 要加密的密碼
$key string 自己設置的salt

解密

  • 方法:decryptByPassword
  • 用法:
$data = Yii::$app->getSecurity()->decryptByPassword($password_hash, $key);

參數說明

參數 類型 備註
$password_hash string 要解密的內容
$key string 自己設置的salt

實例:

$password = '1234567';
$key = Yii::$app->security->generateRandomString();
//加密
$password_hash = base64_encode(Yii::$app->getSecurity()->encryptByPassword($password, $key));//加密入數據庫password_hash字段內容
//解密
$data = Yii::$app->getSecurity()->decryptByPassword(base64_decode($password_hash), $key);//解密結果:1234567

但是對字符串進行加密,加密後的字符串是一串亂碼。
我們可以使用base64處理加密後的字符串, 處理後的字符串是由字母和數字組成。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章