什么是这种类型的MD5?

时间:2018-01-27 11:23:50

标签: android hash md5 logcat md5sum

我有一个哈希字符串和对象的代码,但是当我在任何网站上对代码进行哈希加密时,它的代码与代码中的另一个不同,我想知道是什么让其他MD5代码与此在线不同

md5代码:

public static String md5(String paramString){
if (Utils.isNullOrEmpty(paramString)) {
  return "";
}
try
{
  Object localObject1 = MessageDigest.getInstance("MD5");
  if (localObject1 != null) {
    ((MessageDigest)localObject1).update(paramString.getBytes());
  }
  paramString = ((MessageDigest)localObject1).digest();
  localObject1 = new StringBuilder();
  int j = paramString.length;
  int i = 0;
  while (i < j)
  {
    String str = Integer.toHexString(paramString[i] & 0xFF);
    if (str.length() == 1) {
      ((StringBuilder)localObject1).append('0');
    }
    ((StringBuilder)localObject1).append(str);
    i += 1;
  }
}
catch (NoSuchAlgorithmException localNoSuchAlgorithmException)
{
  Object localObject2;
  for (;;)
  {
    localNoSuchAlgorithmException.printStackTrace();
    localObject2 = null;
  }
  return ((StringBuilder)localObject2).toString();
}

他取两个值

public static String generateChkSum(HashMap<String, Object> paramHashMap)  {
paramHashMap = a(paramHashMap);
Log.d("CheckSum Before Concat ::::::::::   ", paramHashMap);
paramHashMap = md5(paramHashMap);
paramHashMap = md5(paramHashMap + "^" + AppConstants.a);
Log.d("CheckSum After Concat  ::::::::::   ", paramHashMap);
return paramHashMap;

logcat:

01-27 02:25:08.440 2369-3661/com.test.app D/CheckSum Before Concat ::::::::::: kinghema^1784e7fe94d4750df3af902489489b77
01-27 02:25:08.440 2369-3661/com.test.app D/CheckSum After Concat  ::::::::::: 781973a6c9d36f18d9f02f80dc2e5d6e

,结果是:781973a6c9d36f18d9f02f80dc2e5d6e 但如果我们取2值并正常在线哈希: 39cec39f604f5a4380bae1f00c7404b6

所以我的问题是他使用的这种类型的哈希是什么?什么是这个代码和在线代码之间的差异他使用的方法是什么?

0 个答案:

没有答案
相关问题