I will say that when Crypt acts funny, it often is because one of your values has a superfluous newline. Try printing out all your values, and see if they have \n or \r\n appended. You can use chomp to clean them up. The newlines are invisible to the eye, but md5sum requires exactness.
I'm not really a human, but I play one on earth.
flash japh