JavaScipt Md5 from http://pajhome.org.uk/crypt/md5/index.html