Запрос битторрент-трекера, формат info_hash

Когда я хочу отправить первоначальный запрос трекеру, все ссылки, которые я видел, говорят, что он должен быть закодирован в URL-адресе. Если я преобразую хэш SHA-1, который у меня есть от информационного ключа, в шестнадцатеричную строку, зачем мне нужно кодировать хэш в URL-адресе? Он содержит только разрешенные символы.


person JoGr    schedule 01.11.2010    source источник


Ответы (2)


Параметр info_hash не является шестнадцатеричной строкой. Это чистая двоичная строка, так что да, вам придется закодировать в URL многие байты в ней. (Это, как правило, делает его длиннее, чем просто использование строки в шестнадцатеричном кодировании, но это протокол BitTorrent для вас, слишком поздно, чтобы что-то с этим делать сейчас!)

person bobince    schedule 01.11.2010

Двоичная форма информационного хеша (SHA1 длиной 20 байт) должна быть закодирована в URL. Насколько я знаю, некоторые трекеры принимают чистый шестнадцатеричный информационный хэш (длинная строка из 40 символов).

person Nikolai Gorchilov    schedule 06.03.2011