Added a crypt_md5 function