Я создаю проект на основе сети p2p. И я не могу найти алгоритм для вычисления хэш-информации для торрент-файла. Может кто-нибудь помочь с этим?Как рассчитать хеш-информацию для торрент-файла в java?
0
A
ответ
1
Вы можете использовать java.security.MessageDigest. Проверьте приведенную ниже программу, которая вычисляет байты MD5Sum/hash и преобразует ее в формат Hex String.
MessageDigest md5 = null;
byte[] buffer = new byte[1024];
int bytesRead = 0;
String md5ChkSumHex = null;
InputStream is = null;
String filePath = "D:/myFile.txt";
try
{
is = new FileInputStream(new File(filePath));
md5 = MessageDigest.getInstance("MD5");
try {
while ((bytesRead = is.read(buffer)) > 0) {
md5.update(buffer, 0, bytesRead);
}
} catch (IOException e) {
e.printStackTrace();
}
byte[] md5ChkSumBytes = md5.digest();
StringBuffer sb = new StringBuffer();
/*Convert to hex*/
for (int j = 0; j < md5ChkSumBytes.length; j++)
{
String hex = Integer.toHexString(
(md5ChkSumBytes[j] & 0xff | 0x100)).substring(1, 3);
sb.append(hex);
}
md5ChkSumHex = sb.toString();
} catch (Exception nsae) {
}
return md5ChkSumHex;
0
Существует множество алгоритмов поиска хэша. Среди них MD5 и SHA1 - популярные алгоритмы.
В вышеупомянутом сообщении он упомянул об использовании MD5 Hasing. Чтобы сделать хакинг SHA1, используйте этот код post.