- Регистрация
 - 22.04.2014
 
- Сообщения
 - 36
 
- Благодарностей
 - 3
 
- Баллы
 - 8
 
У меня есть метод хэширования в Java и C#
Вопрос такой. Это одинаковые методы?
Если нет, то помогите сделать такой же хэш на C#.
Сервис под который я делаю это хэширование предоставляет код в Java.
А мне нужно сделать на C#
У меня есть подозрение, что MD5 написанный в Java отличается от моего...
Так как у них есть пример который мы хэшируем и мой хэш на С# отличается от их хэша на Java.
Java
	
	
	
	
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
C#
	
	
	
	
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
								Вопрос такой. Это одинаковые методы?
Если нет, то помогите сделать такой же хэш на C#.
Сервис под который я делаю это хэширование предоставляет код в Java.
А мне нужно сделать на C#
У меня есть подозрение, что MD5 написанный в Java отличается от моего...
Так как у них есть пример который мы хэшируем и мой хэш на С# отличается от их хэша на Java.
Java
			
				Код:
			
		
		
		                try {
                        //MD5
                    MessageDigest messageDigest = MessageDigest.getInstance("MD5");
                    messageDigest.reset();
                    messageDigest.update(str.getBytes());
                    byte[] byteArray = messageDigest.digest();
                    StringBuffer md5StrBuff = new StringBuffer();
                    for(int i = 0; i < byteArray.length; ++i) {
                        if (Integer.toHexString(255 & byteArray[i]).length() == 1) {
                            md5StrBuff.append("0").append(Integer.toHexString(255 & byteArray[i]));
                        } else {
                            md5StrBuff.append(Integer.toHexString(255 & byteArray[i]));
                        }
                    }
	
			
				Код:
			
		
		
		MD5 md5 = System.Security.Cryptography.MD5.Create();
byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(project.Variables["dannie"].Value);
byte[] hash = md5.ComputeHash(inputBytes);
System.Text.StringBuilder sb = new System.Text.StringBuilder();
for (int i = 0; i < hash.Length; i++)
    {
        sb.Append(hash[i].ToString("x2"));
    }
return sb.ToString();
	


