로그인 할 때 PBKDF2를 사용할 때 암호를 확인하는 방법을 알아 내려고합니다. PHP를 사용하고 있으므로 기본 비밀번호 생성 코드는 다음과 같습니다.PBKDF2 암호 저장 - 유효성을 검사하는 방법?
$salt = mcrypt_create_iv(16, MCRYPT_DEV_URANDOM);
echo hash_pbkdf2('sha256', 'password', $salt, 1000, 32);
데이터베이스에 해시 된 비밀번호를 저장했습니다. 소금이 없어 소금이 각 사용자마다 무작위로 생성되므로 로그인 입력에 대해이 암호를 테스트하는 방법을 모르겠습니다. 저장된 암호에서 소금을 "추출"하고 입력 된 암호 앞에 추가하고 저장된 암호와 비교하여 결과를 테스트하려면 어떻게합니까?
['password_hash'] (http://php.net/manual/en/function.password-hash.php)를 사용할 수 없습니까? PHP 5.5가 아니라면 5.3.7 이상 버전에서 사용할 수있는 [동등한 구현] (https://github.com/ircmaxell/password_compat)이 있습니다. – Jon
고맙습니다.이게 존재했는지 나는 알지 못했습니다 ... – Gasim