임의의 고유한 영숫자 문자열 생성
계정 확인 링크와 같은 다양한 애플리케이션에서 다음으로 구성된 고유하고 임의의 문자열을 생성하는 것이 중요합니다. 숫자와 문자. PHP에서 이를 달성할 수 있는 방법은 다음과 같습니다.
PHP 7
PHP 7에서는 암호화된 보안 의사 난수 바이트를 제공하기 위해 random_bytes($length) 함수를 도입했습니다. 예:
$bytes = random_bytes(20); var_dump(bin2hex($bytes));
다음과 같은 출력이 생성됩니다.
string(40) "5fe69c95ed70a9869d9f9af7d8400a6673bb9ce9"
PHP 5(구식)
PHP 5의 경우 다음과 같습니다. 대신 암호화 보안 토큰을 생성하는 openssl_random_pseudo_bytes()를 활용하는 것이 좋습니다. 간단한 솔루션:
bin2hex(openssl_random_pseudo_bytes($bytes))
더 안전한 접근 방식
보안을 강화하기 위해 다음 함수는 지정된 길이 범위 내에서 무작위의 고유한 영숫자 문자열을 생성할 수 있습니다.
function getToken($length) { $codeAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; $max = strlen($codeAlphabet); // edited for ($i=0; $i < $length; $i++) { $token .= $codeAlphabet[crypto_rand_secure(0, $max-1)]; } return $token; }
이 접근 방식은 crypto_rand_secure($min, $max)를 드롭인 대체품으로 통합합니다. rand() 또는 mt_rand(), 무작위성을 보장하기 위해 openssl_random_pseudo_bytes를 활용합니다.
위 내용은 PHP에서 안전한 무작위 영숫자 문자열을 어떻게 생성할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!