Claro, ferny, ahora te lo digo. El algoritmo que usa md5() se llama .... MD5.
Algo mas en serio. Mirando en google
http://www.google.com/search?q=md5&i...TF-8&hl=es&lr= nos aprece un link a un rfc, en concreto al rfc1321, que contiene el algoritmo. Como creo que existe un programa GNU de md5, supongo que no sera dificil encontrar el algoritmo implementado en C. Aunque si quieres algo realizado para la web, dentro del PHPLib (no me acuerdo de su URL) hay un js para realizar el md5 en javascript.
Saludos.