import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class Mdencode { public static final String MD5="MD5"; /** * ²ÉÓüÓÃÜËã·¨¼ÓÃÜ×Ö·û´®Êý¾Ý * @param str ÐèÒª¼ÓÃܵÄÊý¾Ý * @param algorithm ²ÉÓõļÓÃÜËã·¨ * @return ×Ö½ÚÊý¾Ý */ public static byte[] EncryptionStrBytes(String str, String algorithm) { // ¼ÓÃÜÖ®ºóËùµÃ×Ö½ÚÊý×é byte[] bytes = null; try { // »ñÈ¡MD5Ë㷨ʵÀý µÃµ½Ò»¸ömd5µÄÏûÏ¢ÕªÒª MessageDigest md = MessageDigest.getInstance(algorithm); //Ìí¼ÓÒª½øÐмÆËãÕªÒªµÄÐÅÏ¢ md.update(str.getBytes()); //µÃµ½¸ÃÕªÒª bytes = md.digest(); } catch (NoSuchAlgorithmException e) { System.out.println("¼ÓÃÜËã·¨: "+ algorithm +" ²»´æÔÚ: "); } return null==bytes?null:bytes; } /** * °Ñ×Ö½ÚÊý×éת»¯³É×Ö·û´®·µ»Ø * @param bytes * @return */ public static String BytesConvertToHexString(byte[] bytes) { StringBuffer sb = new StringBuffer(); for (byte aByte : bytes) { String s=Integer.toHexString(0xff & aByte); if(s.length()==1){ sb.append("0"+s); }else{ sb.append(s); } } return sb.toString(); } /** * ²ÉÓüÓÃÜËã·¨¼ÓÃÜ×Ö·û´®Êý¾Ý * @param str ÐèÒª¼ÓÃܵÄÊý¾Ý * @param algorithm ²ÉÓõļÓÃÜËã·¨ * @return ×Ö½ÚÊý¾Ý */ public static String EncryptionStr(String str, String algorithm) { // ¼ÓÃÜÖ®ºóËùµÃ×Ö½ÚÊý×é byte[] bytes = EncryptionStrBytes(str,algorithm); return BytesConvertToHexString(bytes); } //²âÊÔÉÏÊö·½·¨ public static void main(String[] args) { String test1="111111"; String test2="QWERFVDSCX"; String test3="23423KJHkdfg"; String[] test={test1,test2,test3}; for (String s : test) { String str=EncryptionStr(s,MD5); System.out.println("Êý¾Ý£º" + s+" ¼ÓÃÜÖ®ºóµÄ½á¹ûΪ£º"+str+" ×Ö·û´®³¤¶ÈΪ£º"+str.length()); } } }