Em vez de usar MD5 ou tentar descriptografar a senha - como outros aqui sugeriram - simplesmente use o password_hash() função que verifica automaticamente se a senha está correta para você.
Criptografe a senha assim:
$unencrypted_password = 'secret!';
$encrypted_password = password_hash($unencrypted_password, PASSWORD_DEFAULT);
Em seguida, insira em seu banco de dados assim:
INSERT INTO users (encrypted_password, username) VALUES ($encrypted_password, $username);
Quando você quiser verificar se a senha está correta, selecione a senha do banco de dados com:
SELECT encrypted_password FROM users WHERE username = $username; Por fim, verifique se a senha está correta usando passoword_verify() :
$correct = password_verify($unecnrypted_password, $encrypted_password);
if($correct == true) {
echo 'correct password!';
} else {
echo 'password incorrect!';
}
Tenha cuidado para proteger contra injeção de SQL, pois o código acima é vulnerável a ela.