Es que no es lo mismo un cifrado reversible que lo que se hace con MD5. Este permite realizar un
hash, pero no "encripta" en el sentido de ocultar algo para luego poder volver a obtenerlo.
Si lo que necesitas es algo que pueda revertirse y recuperar lo anterior, no es MD5 lo que debes usar.
A eso se refiere @pateketrueke.
Probablemente lo que estés buscando es
Mcrypt