MD5加密
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MD5加密相关的知识,希望对你有一定的参考价值。
转自:http://hualang.iteye.com/blog/1150795
1 //MD5加密,32位 2 public static String MD5(String str) 3 { 4 MessageDigest md5 = null; 5 try 6 { 7 md5 = MessageDigest.getInstance("MD5"); 8 }catch(Exception e) 9 { 10 e.printStackTrace(); 11 return ""; 12 } 13 14 char[] charArray = str.toCharArray(); 15 byte[] byteArray = new byte[charArray.length]; 16 17 for(int i = 0; i < charArray.length; i++) 18 { 19 byteArray[i] = (byte)charArray[i]; 20 } 21 byte[] md5Bytes = md5.digest(byteArray); 22 23 StringBuffer hexValue = new StringBuffer(); 24 for( int i = 0; i < md5Bytes.length; i++) 25 { 26 int val = ((int)md5Bytes[i])&0xff; 27 if(val < 16) 28 { 29 hexValue.append("0"); 30 } 31 hexValue.append(Integer.toHexString(val)); 32 } 33 return hexValue.toString(); 34 } 35 36 // 可逆的加密算法 37 public static String encryptmd5(String str) { 38 char[] a = str.toCharArray(); 39 for (int i = 0; i < a.length; i++) 40 { 41 a[i] = (char) (a[i] ^ ‘l‘); 42 } 43 String s = new String(a); 44 return s; 45 }
调用apache engine的标准MD5加密算法,这里使输入输出都是String,另外加了一个函数在MD5的算法之上再做一层加密。
以上是关于MD5加密的主要内容,如果未能解决你的问题,请参考以下文章