Efectivamente, la funcion md5 no es reversible.
Dos posibilidades que te quedan son :
1.- Fuerza Bruta (probar clave por clave) con algun Script
2.- Consultar alguna Base de Datos de Hash MD5
Respecto al Segundo Tema, tengo un small little Proyecto llamado
MD5Search (no es novedoso xD, ademas q ya existe uno xD), el cual esta compuesto de un BOT Webspider, que navega solito en los Sitios web, capturando palabras , calculandole su hash md5 y guardandola en la Base de Datos, En un dia que deje el Bot online, navego en mas de 600 urls y capture 50.000 Palabras distinas :P , Haciendo una simple prueba a la Base de Datos de un Foro mio (de 30 usuarios xD), encontre 4 Password (efectivida 13%
) aunque eran Pass Basicas xD. De todas formas, en estos dias denuevo voy a dejar online el bot (pero ahora que navege en sitios con mas palabras), por lo menos quiero una BD de 200.000 palabras :P