>  기사  >  PHP 프레임워크  >  yii가 데이터 암호화 및 복호화를 구현하는 방법

yii가 데이터 암호화 및 복호화를 구현하는 방법

王林
王林앞으로
2020-05-10 17:00:262935검색

yii가 데이터 암호화 및 복호화를 구현하는 방법

1. 비밀번호를 암호화하고 클라이언트가 전송한 비밀번호가 맞는지 확인합니다

1. 비밀번호를 암호화합니다

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

2. 클라이언트가 전달한 비밀번호가 맞는지 확인합니다

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

2 . 의사 난수 데이터 생성

저희는 비밀번호를 재설정할 때 사용자의 메일함으로 이메일을 보내고 재설정된 비밀번호를 제공하는 경우가 많습니다. 이때 Yii의 의사 난수 데이터 방법을 사용하여 사용자에게 비밀번호를 생성할 수 있습니다. 비밀번호로서의 의사 난수 데이터

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

3. 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가 데이터 암호화 및 복호화를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 jb51.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제