openssl_pbkdf2
(PHP 5 >= 5.5.0, PHP 7, PHP 8)
openssl_pbkdf2 - PKCS5 v2 PBKDF2 문자열 생성
설명
openssl_pbkdf2( string $password, string $salt, int $key_length, int $iterations, string $digest_algo = "sha1" ): string|false
openssl_pbkdf2()는 PKCS5 v2에 정의된 키 파생 함수인 PBKDF2(암호 기반 키 파생 함수 2)를 계산합니다.
매개변수
password
- 파생 키가 생성되는 암호입니다.
salt
- PBKDF2는 최소 64비트(8바이트)의 암호화 솔트를 권장합니다.
key_length
- 원하는 출력 키의 길이입니다.
iterations
- 원하는 반복 횟수입니다. » NIST는 최소 10,000개를 권장합니다.
digest_algo
- openssl_get_md_methods()의 선택적 해시 또는 다이제스트 알고리즘. 기본값은 SHA-1입니다.
반환 값
raw 바이너리 문자열을 반환하거나 실패 시 false
를 반환합니다.
Examples
예제 #1 openssl_pbkdf2() 예제
<?php
$password = 'yOuR-pAs5w0rd-hERe';
$salt = openssl_random_pseudo_bytes(12);
$keyLength = 40;
$iterations = 10000;
$generated_key = openssl_pbkdf2($password, $salt, $keyLength, $iterations, 'sha256');
echo bin2hex($generated_key)."\n";
echo base64_encode($generated_key)."\n";
?>
기타
- hash_pbkdf2() - 제공된 암호의 PBKDF2 키 파생 생성
- openssl_get_md_methods() - 사용 가능한 다이제스트 메서드 가져오기