클라이언트와 서버가 통신할 때 ID가 URL 매개변수로 앞뒤로 전달되는 매우 일반적인 시나리오가 있습니다. 현재 비즈니스에 이 ID 식별자만 있다고 가정하면 이 ID를 암호화하여 전송한 다음 서버에 암호를 해독하려면 약간 더 안전한 통신이 필요합니다. 여기에는 서버에 의해 비밀로 유지되는 키가 필요하며 이 키는 암호화 및 암호 해독에 사용됩니다. 이 기사에서는 주로 PHP가 사용자 정의 키를 사용하여 데이터를 암호화하고 해독하는 방법을 소개합니다. 여기에는 문자열 변환, 가로채기 및 기타 작업을 위한 암호화 및 해독 기능을 구현하는 PHP의 기술이 포함되어 있어 모든 사람에게 도움이 되기를 바랍니다.
암호화 및 복호화 방법은 다음과 같습니다. $str은 암호화 및 복호화가 필요한 문자열이고, $key는 직접 정의한 키입니다.
// 加密 function encryptStr($str, $key){ $block = mcrypt_get_block_size('des', 'ecb'); $pad = $block - (strlen($str) % $block); $str .= str_repeat(chr($pad), $pad); $enc_str = mcrypt_encrypt(MCRYPT_DES, $key, $str, MCRYPT_MODE_ECB); return base64_encode($enc_str); } // 解密 function decryptStr($str, $key){ $str = base64_decode($str); $str = mcrypt_decrypt(MCRYPT_DES, $key, $str, MCRYPT_MODE_ECB); $block = mcrypt_get_block_size('des', 'ecb'); $pad = ord($str[($len = strlen($str)) - 1]); return substr($str, 0, strlen($str) - $pad); }
이것을 적용할 경우:
URL 시나리오의 ID에 암호화 후 base64로 인코딩되므로 + 기호의 영향을 제거하려면 다시 다운로드하는 것이 좋습니다. urlencode()
PHP 문자열 암호화 및 암호 해독 구현 프로세스 공유
PHP 암호화 및 암호 해독의 여러 방법에 대한 사용 튜토리얼
위 내용은 PHP는 사용자 정의 키를 어떻게 사용하여 데이터를 암호화하고 해독합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!