How to Make Java MD5 and SHA-1 Hashes Compatible With PHP or MySQL

Java MySQL PHP

Here is Java implementation of MD5 hashing that will produce exactly the same result as md5() function in PHP and MySQL:

public static String md5(String input) throws NoSuchAlgorithmException {
        String result = input;
        if(input != null) {
            MessageDigest md = MessageDigest.getInstance("MD5"); //or "SHA-1"
            md.update(input.getBytes());
            BigInteger hash = new BigInteger(1, md.digest());
            result = hash.toString(16);
            if ((result.length() % 2) != 0) {
                result = "0" + result;
            }
        }
        return result;
    }
Feb 11, 2010