洪流信息哈希
Torrent Info hash
我发现的所有磁铁 link 都包含一个 40 字节(字符)的信息哈希。
所有跟踪器公布的 URI 都需要一个 20 字节(字符)的散列。
这些是怎么翻译的?这是错误的哈希值吗?
我的目标是找到一个同行,使用磁铁link,并下载 1 个字节的数据。
BitTorrent 中使用的散列是 SHA-1,是 160 位。
磁铁 link 中的哈希是十六进制编码的。即每个字符 4 位。 4*40 = 160 位。
公告中的散列是原始二进制字节。即每个字符 8 位。 8*20 = 160 位。
但是,由于不可能在 HTTP-get 请求中发送所有原始二进制值,因此散列得到 URL / %percent 编码并最终变得更长,长度可变,通常超过 40 个字符。
翻译:十六进制解码从磁铁 link 到原始二进制字符串的散列。然后 URL-encode 原始二进制字符串,如果您需要在 HTTP-get 请求中发送它。
原始二进制字符串与 ASCII 或 UTF 不同。确保在您使用的编程语言中以安全的方式处理它。
我发现的所有磁铁 link 都包含一个 40 字节(字符)的信息哈希。
所有跟踪器公布的 URI 都需要一个 20 字节(字符)的散列。
这些是怎么翻译的?这是错误的哈希值吗?
我的目标是找到一个同行,使用磁铁link,并下载 1 个字节的数据。
BitTorrent 中使用的散列是 SHA-1,是 160 位。
磁铁 link 中的哈希是十六进制编码的。即每个字符 4 位。 4*40 = 160 位。
公告中的散列是原始二进制字节。即每个字符 8 位。 8*20 = 160 位。
但是,由于不可能在 HTTP-get 请求中发送所有原始二进制值,因此散列得到 URL / %percent 编码并最终变得更长,长度可变,通常超过 40 个字符。
翻译:十六进制解码从磁铁 link 到原始二进制字符串的散列。然后 URL-encode 原始二进制字符串,如果您需要在 HTTP-get 请求中发送它。
原始二进制字符串与 ASCII 或 UTF 不同。确保在您使用的编程语言中以安全的方式处理它。