Criptografias utilizandos funções do tipo Hash (como o MD5), não tem como descriptografar, visto que uma função hash (definida matematicamente) é uma função que não possui inversa. Se você precisa criptografar e descriptografar qualquer coisa, sugiro utilizar RSA. Porém para o caso de senhas, não é necessário descriptografar para verificar se é igual.
Se você quer verificar se a senha está correta, ao invés de tentar descriptografar a senha que está no banco para comparar, tente criptografar a senha que o cliente te informou e depois comparar com a que está no banco. Uma função hash tem a propriedade de gerar o mesmo código criptografado para o mesmo texto informado (pode existir um caso em que um texto totalmente diferente gere o mesmo hash, mas isto é muito raro).
Voce pode fazer comparacoes com uma string a ser comparada, se a criptografica e’ comparada a ela. Mas caso precise de descriptografia mesmo, procure por outro padrao de criptografia.