Vim .torrent文件包含乱码字符

Vim .torrent文件包含乱码字符,vim,bittorrent,torrent,Vim,Bittorrent,Torrent,有人能解释一下每个.torrent文件末尾的乱七八糟的字符吗 图中显示的是可理解的信息,以及胡言乱语部分的一部分。我画的粉红色管道似乎突然结束了我的理解部分 顺便说一句,我正在VIM中使用UTF-8编码查看它,如果我没有弄错的话,应该使用哪些torrent文件进行编码。您所指的数据是带有片段键的字典条目的值。标记位置前的6:pieces129140:表示条目的密钥长度为6个字符,这允许我们确定密钥为pieces。键后面的129140是条目值的长度,以字节为单位。这种数据结构是一种数据结构 .t

有人能解释一下每个
.torrent
文件末尾的乱七八糟的字符吗

图中显示的是可理解的信息,以及胡言乱语部分的一部分。我画的粉红色管道似乎突然结束了我的理解部分


顺便说一句,我正在VIM中使用UTF-8编码查看它,如果我没有弄错的话,应该使用哪些torrent文件进行编码。

您所指的数据是带有
片段键的字典条目的值。标记位置前的
6:pieces129140:
表示条目的密钥长度为6个字符,这允许我们确定密钥为
pieces
。键后面的
129140
是条目值的长度,以字节为单位。这种数据结构是一种数据结构

.torrent
文件中的
片段
字典条目包含连接到一个长字符串中的所有片段的SHA1哈希。散列非常重要,因为它允许用户确保他们下载的片段是有效的。对单个片段使用散列比只对整个文件使用散列要好,因为它减少了浪费的数据;在客户意识到数据无效之前,您不必下载整个文件

SHA1哈希由20个字节组成,作为原始字节存储在
.torrent
文件中。这就是数据在编辑器中显示格式不正确的原因

片段
映射到长度为20倍数的字符串。它将被细分为长度为20的字符串,每个字符串都是对应索引处片段的SHA1散列


摘自BitTorrent协议规范文档。

为什么您希望这些文件是人类可读的?(BitTorrent文件使用一种称为的方案进行编码。)进一步阅读后,我的理解是:分隔符和小数总是ASCII字符,因此我可以区分它们。然而,介于两者之间的一切都可能是任何编码。“字典有一个片段键,其值的长度为129140个字符”,我认为这不是字符数,而是字节数。