Last week I was trying to figure out how to get a 28 character md5. An application I was trying to generate passwords required what looked to be a 28 char hash.
First off I tried:
This returned way too many characters. After doing some research I found out it needs to be the binary out put of an md5. PHP 5+ has this option.
If the optional raw_output is set to TRUE, then the md5 digest is instead returned in raw binary format with a length of 16
To get the md5 binary format in php add TRUE to the md5() function.
echo base64_encode(md5($password, true));
This also works with sha1(base64)
echo base64_encode(sha1($password, true));