了解 BitTorrent 片段输出



使用 https://github.com/utdemir/bencoder 从单个文件种子中提取元信息后,我在输出的"碎片"部分下看到以下文本-

This is an abbreviated portion of the output- 'pieces':'x8f1gxdbx1ex17n(xf9xbbxb0&xa0xadT9Nxa8Lx89x97xf79x15x07N

看了 https://wiki.theory.org/BitTorrentSpecification 我理解这个输出是——

[a] 由所有 20 字节 SHA1 哈希值的串联组成的字符串,每段一个(字节字符串,即未编码(

但是,我看到常量的反斜杠"\",并且想知道这是否类似于十六进制代码,因为 SHA-1 通常输出为十六进制?

你从程序看到的输出被编码为 Python 字节文字,
是不可打印的字节,ASCII 被转义。

x8f1gxdbx1ex17n(xf9xbbxb0&xa0xadT9Nxa8Lx89x97xf79x15x07N

x8f =>十六进制0x8F
1g => ASCII "1g">
xdbx1ex17 =>十六进制0xDB1E17
n => 转义序列,表示 ASCII 换行 (LF((十六进制 0x0A(
( => ASCII "(">
xf9xbbxb0 =>十六进制0xF9BBB0
等。

最新更新