Как рассчитать хэш торрент-информации в VB6 - PullRequest
0 голосов
/ 28 октября 2010

Я понимаю, что вы должны вычислить SHA1 информационного диктата в торрент-файле, Я с трудом разбираю информацию, нужно ли мне декодировать закодированную информацию, прежде чем вычислять хэш sha1 ??

Как мне это сделать?

1 Ответ

6 голосов
/ 03 ноября 2010

информационный хеш - это хэш SHA-1 информационного словаря в кодированном формате.

В торрент-файле содержится кодированное представление информационный словарь мета , который в свою очередь содержит информационный словарь .

Вам необходимо получить часть файла информационный словарь , чтобы вычислить его хэш.Предполагая, что у вас есть доступ к кодировщику и декодеру bencode, вы можете:

  • декодировать весь файл
  • взять информационный словарь его часть
  • перекодировать его для хеширования.

в псевдокоде:

metainfo = b_decode(contents_of("file.torrent"))
info = metainfo.getValue("info")
encoded_info = b_encode(info)
info_hash = sha1(encoded_info)
...