Saltar al contenido

password_verify no verifica el hash

Nuestros programadores estrellas han agotado sus provisiones de café, por su búsqueda día y noche por la solución, hasta que Eva halló la solución en Bitbucket y en este momento la compartimos aquí.

Solución:

La función password_verify(); toma dos parámetros; una entrada sin hash y un hash almacenado para compararlo. Hace un hash de la entrada sin hash automáticamente para compararla con la versión almacenada. Entonces, su código inicial estaba rehaciendo una contraseña ya codificada. Debería verse así:

$verify=password_verify($_POST['passwrd'],$row[2]);

if($verify)
    $_SESSION["usrname"]=$usrname;
    echo "Correct";

else 
    echo "user: " . $usrname. "
"; echo "pass: " . $hash. "
"; echo "db: " . $row[2]."
"; echo "Wrong Username or Password";

Rehabilitó la contraseña: simplemente pase la contraseña de texto sin formato y su hash (de db) a password_verify y funciona.

Recuerda algo, que te concedemos decir si te ayudó.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *