首页  >  文章  >  Java  >  使用java获取md5值的两种方法

使用java获取md5值的两种方法

高洛峰
高洛峰原创
2017-01-24 11:14:501744浏览

Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,是一种比较常用的哈希算法。 
java中可以用两种方法实现,我们先说麻烦一点的,代码: 

public class md5_test { 
//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]; 
} 
}

下面是简单的,但是需要导入一个jar包:commons-codec,
比如我用的这个commons-codec-1.4.jar代码: 

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

更多使用java获取md5值的两种方法相关文章请关注PHP中文网!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn