Java C# MD5 加密串一致性

Java

Java代码  收藏代码
  1. public final static String md5(String s) {  
  2.     char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',  
  3.             'a', 'b', 'c', 'd', 'e', 'f' };  
  4.     try {  
  5.         byte[] strTemp = s.getBytes();  
  6.         MessageDigest mdTemp = MessageDigest.getInstance("MD5");  
  7.         mdTemp.update(strTemp);  
  8.         byte[] md = mdTemp.digest();  
  9.         int j = md.length;  
  10.         char str[] = new char[j * 2];  
  11.         int k = 0;  
  12.         for (int i = 0; i < j; i++) {  
  13.             byte byte0 = md[i];  
  14.             str[k++] = hexDigits[byte0 >>> 4 & 0xf];  
  15.             str[k++] = hexDigits[byte0 & 0xf];  
  16.         }  
  17.         return new String(str);  
  18.     } catch (Exception e) {  
  19.         e.printStackTrace();  
  20.         return null;  
  21.     }  
  22. }  

C#

Java代码  收藏代码
  1. //str 需要加密的字符串  
  2. public static String MD5(String str)  
  3. {  
  4.     byte[] result = ((HashAlgorithm)CryptoConfig.CreateFromName("MD5")).ComputeHash(Encoding.UTF8.GetBytes(str));  
  5.     StringBuilder output = new StringBuilder(16);  
  6.     for (int i = 0; i < result.Length; i++)  
  7.     {  
  8.         // convert from hexa-decimal to character  
  9.         output.Append((result[i]).ToString("x2", System.Globalization.CultureInfo.InvariantCulture));  
  10.     }  
  11.     return output.ToString();  
  12. }  
原文地址:https://www.cnblogs.com/Alex80/p/5065566.html