md5 uses radom input + passward as its input and its result is send to the server side. With the knowledge of password and radom input, server side try to figure out whether you input is right or not.
You have to know both the aglormith and random number order to decrypt it.