public class MD5Encryption { public static String getEncryption(String originString) throws UnsupportedEncodingException { String result = ""; if (originString != null) { try { MessageDigest md = MessageDigest.getInstance("MD5"); byte bytes[] = md.digest(originString.getBytes("ISO8859-1")); for (int i = 0; i < bytes.length; i++) { String str = Integer.toHexString(bytes[i] & 0xFF); if (str.length() == 1) { str += "F"; } result += str; } } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } } return result; } public static String getEncryption(String originString,int num) throws UnsupportedEncodingException { for (int i = 0;i<num;i++) { originString = getEncryption(originString); } return originString; }
//32位小写,大写的话将最后生成的字符串sb.tostring()后加toUpperCase()即可 public static String getEncryption32(String data) { MessageDigest digest = null; try { digest = MessageDigest.getInstance("md5"); byte[] result = digest.digest(data.getBytes()); StringBuilder sb =new StringBuilder(); for(byte b:result){ int number = b&0xff; String hex = Integer.toHexString(number); if(hex.length() == 1){ sb.append("0"+hex); }else{ sb.append(hex); } } return sb.toString(); } catch (NoSuchAlgorithmException e) { } return ""; } public static void main(String [] args) throws UnsupportedEncodingException { System.out.print(getEncryption32("1234567")); //fcea920f7412b5da7be0cf42b8c93759 } }