MD5加密JAVA版

来源:互联网 发布:工人软件 编辑:程序博客网 时间:2024/05/17 06:28
import java.security.MessageDigest;  import java.security.NoSuchAlgorithmException;  class MD5Security {      private final static char[] hexDigits = { '0', '1', '2', '3', '4', '5',              '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };      private static String bytesToHex(byte[] bytes) {          StringBuffer sb = new StringBuffer();          int t;          for (int i = 0; i < 16; i++) {              t = bytes[i];              if (t < 0)                  t += 256;              sb.append(hexDigits[(t >>> 4)]);              sb.append(hexDigits[(t % 16)]);          }          return sb.toString();      }      public static String md5(String input) throws Exception {          return code(input, 32);      }      public static String code(String input, int bit) throws Exception {          try {              MessageDigest md = MessageDigest.getInstance(System.getProperty(                      "MD5.algorithm", "MD5"));              if (bit == 16)                  return bytesToHex(md.digest(input.getBytes("utf-8")))                          .substring(8, 24);              return bytesToHex(md.digest(input.getBytes("utf-8")));          } catch (NoSuchAlgorithmException e) {              e.printStackTrace();              throw new Exception("Could not found MD5 algorithm.", e);          }      }      public static String md5_3(String b) throws Exception{          MessageDigest md = MessageDigest.getInstance(System.getProperty(                  "MD5.algorithm", "MD5"));          byte[] a = md.digest(b.getBytes());          a = md.digest(a);          a = md.digest(a);                    return bytesToHex(a);      }  }  

http://blog.csdn.net/siemenliu/article/details/5786923
0 0
原创粉丝点击