이 기사의 예에서는 PHP에서 쿠키 암호화를 구현하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 구현 방법은 다음과 같습니다.
클래스 쿠키
{
/**
* 암호화된 쿠키를 해독하세요
* *
* @param 문자열 $encryptedText
* @return 문자열
*/
비공개 정적 함수 _decrypt($encryptedText)
{
$key = Config::get('secret_key');
$cryptText = base64_decode($encryptedText);
$ivSize = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($ivSize, MCRYPT_RAND);
$decryptText = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $cryptText, MCRYPT_MODE_ECB, $iv);
트림 반환($decryptText);
}
/**
* 加密쿠키
*
* @param 문자열 $plainText
* @return 문자열
*/
비공개 정적 함수 _encrypt($plainText)
{
$key = Config::get('secret_key');
$ivSize = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($ivSize, MCRYPT_RAND);
$encryptText = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $plainText, MCRYPT_MODE_ECB, $iv);
return Trim(base64_encode($encryptText));
}
/**
* 쿠키 대상
*
* @param 배열 $args
* @ return 부울
*/
공개 정적 함수 del($args)
{
$name = $args['name'];
$domain = isset($args['domain']) ? $args['domain'] : null;
return isset($_COOKIE[$name]) ? setcookie($name, '', time() - 86400, '/', $domain) : true;
}
/**
* 지정된 쿠키의 값을 가져옵니다
* *
* @param 문자열 $name
*/
공개 정적 함수 get($name)
{
반환 isset($_COOKIE[$name]) ? self::_decrypt($_COOKIE[$name]) : null;
}
/**
* 쿠키 설정
*
* @param 배열 $args
* @ return 부울
*/
공개 정적 함수 집합($args)
{
$name = $args['name'];
$value= self::_encrypt($args['value']);
$expire = isset($args['expire']) ? $args['expire'] : null;
$path = isset($args['path']) ? $args['path'] : '/';
$domain = isset($args['domain']) ? $args['domain'] : null;
$secure = isset($args['secure']) ? $args['secure'] : 0;
return setcookie($name, $value, $expire, $path, $domain, $secure);
}
}
이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.