【发布时间】:2010-10-28 15:59:43
【问题描述】:
我知道您必须计算种子文件中 info dict 的 SHA1, 我正在努力解析信息字典,我需要在计算 sha1 哈希之前解码经过编码的信息字典吗?
我该怎么做?
【问题讨论】:
标签: vb6 bittorrent
我知道您必须计算种子文件中 info dict 的 SHA1, 我正在努力解析信息字典,我需要在计算 sha1 哈希之前解码经过编码的信息字典吗?
我该怎么做?
【问题讨论】:
标签: vb6 bittorrent
info hash 是 info 字典 的 SHA-1 哈希,采用编码格式。
torrent 文件包含 元信息字典的编码表示,而元信息字典又包含 信息字典。
您必须获取文件的 信息字典 部分才能计算其哈希值。假设您可以访问 bencode 编码器和解码器,您可以:
在伪代码中:
metainfo = b_decode(contents_of("file.torrent"))
info = metainfo.getValue("info")
encoded_info = b_encode(info)
info_hash = sha1(encoded_info)
【讨论】: