it's not really just for MD5s