информационный хеш - это хэш SHA-1 информационного словаря в кодированном формате.
В торрент-файле содержится кодированное представление информационный словарь мета , который в свою очередь содержит информационный словарь .
Вам необходимо получить часть файла информационный словарь , чтобы вычислить его хэш.Предполагая, что у вас есть доступ к кодировщику и декодеру bencode, вы можете:
- декодировать весь файл
- взять информационный словарь его часть
- перекодировать его для хеширования.
в псевдокоде:
metainfo = b_decode(contents_of("file.torrent"))
info = metainfo.getValue("info")
encoded_info = b_encode(info)
info_hash = sha1(encoded_info)