Two ways to get md5 values using Java

  • 2020-04-01 02:06:47
  • OfStack

Message Digest Algorithm MD5 (fifth edition of Message Digest Algorithm in Chinese) is a hash function widely used in the field of computer security.
Java can be implemented in two ways, let's talk about the trouble first, the code:

public class md5_test { 
//String constants for MD5
private final static String[] hexDigits = { "0", "1", "2", "3", "4", 
   "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" }; 
public static void main(String[] args) { 
   // TODO Auto-generated method stub 
   try { 
    MessageDigest messageDigest= MessageDigest.getInstance("MD5"); 
    System.out.println(byteArrayToHexString(messageDigest.digest("baidu.com".getBytes()))); 
   } catch (NoSuchAlgorithmException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
   } 

} 
private static String byteArrayToHexString(byte[] b) { 
   StringBuffer resultSb = new StringBuffer(); 
   for (int i = 0; i < b.length; i++) { 
    resultSb.append(byteToHexString(b[i])); 
   } 
   return resultSb.toString(); 
} 
 
private static String byteToHexString(byte b) { 
   int n = b; 
   if (n < 0) 
    n = 256 + n; 
   int d1 = n / 16; 
   int d2 = n % 16; 
   return hexDigits[d1] + hexDigits[d2]; 
} 
} 

The following is simple, but you need to import a jar: Commons -codec,
For example, I used this commons-codec-1.4.jar code:


import org.apache.commons.codec.digest.DigestUtils; 
public class ToMain { 
public static void main(String[] args) { 
   System.out.println(DigestUtils.md5Hex("baidu.com")); 
} 
}


Related articles: