iLeichun

当前位置: 首页 > Java

Java MD5加密

分类:Java   来源:网络   时间:2010-10-28 23:37:06
  1. package cn.org.jshuwei.j2ee.util;
     

  2.  
  3. import java.security.MessageDigest;
     

  4.  
  5. /**
     
  6. *
     
  7. * MD5加密工具类
     
  8. *
     
  9. * @author huwei(jshuwei.org.cn)
     
  10. * @since 1.4
     
  11. *
     
  12. */
     
  13. public class MD5 {
     
  14.         private final static String[] hexDigits = { "0", "1", "2", "3", "4", "5",
     
  15.                         "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" };
     

  16.  
  17.         private static String byteArrayToHexString(byte[] bytes) {
     
  18.                 StringBuffer sb = new StringBuffer();
     
  19.                 for (byte b : bytes) {
     
  20.                         sb.append(byteToHexString(b));
     
  21.                 }
     
  22.                 return sb.toString();
     
  23.         }
     

  24.  
  25.         private static String byteToHexString(byte b) {
     
  26.                 int n = b;
     
  27.                 if (n < 0)
     
  28.                         n = 256 + n;
     
  29.                 int d1 = n / 16;
     
  30.                 int d2 = n % 16;
     
  31.                 return hexDigits[d1] + hexDigits[d2];
     
  32.         }
     

  33.  
  34.         /**
     
  35.          * 将字符串加密成MD5字符串
     
  36.          *
     
  37.          * @param origin
     
  38.          *            需要加密的字符串
     
  39.          * @return 加密后的字符串
     
  40.          */
     
  41.         public static String MD5Encode(String origin) {
     
  42.                 String ret = null;
     
  43.                 try {
     
  44.                         ret = new String(origin);
     
  45.                         MessageDigest md = MessageDigest.getInstance("MD5");
     
  46.                         ret = byteArrayToHexString(md.digest(ret.getBytes()));
     
  47.                 } catch (Exception e) {
     
  48.                 }
     
  49.                 return ret;
     
  50.         }
     
  51. }
更多