Bittorrent跟踪器请求,info_hash的格式

JoG*_*oGr 8 bittorrent

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

bob*_*nce 7

info_hash参数不是十六进制字符串。它是一个纯二进制字符串,所以是的,您必须对其中的许多字节进行 URL 编码。(这往往会使它最终比仅使用十六进制编码的字符串更长,但这就是适合您的 BitTorrent 协议,现在做任何事情都太晚了!)