Bittorrent跟踪器请求,info_hash的格式

时间:2010-11-01 19:09:29

标签: bittorrent

当我想向跟踪器发送初始请求时,我所看到的所有引用都需要进行url编码。如果我将信息密钥的SHA-1哈希转换为十六进制字符串,为什么我需要对哈希进行url-encode?它只包含允许的字符。

2 个答案:

答案 0 :(得分:4)

info_hash参数不是十六进制字符串。它是一个纯二进制字符串,所以是的,你必须对其中的许多字节进行URL编码。 (这最终会比使用十六进制编码的字符串更长,但这对你来说是BitTorrent协议,现在为时已晚做任何事情!)

答案 1 :(得分:0)

二进制形式的info-hash(一个20字节长的SHA1)应该是URL编码的。 AFAIK一些跟踪器接受纯十六进制信息哈希(40个字符长的字符串)。