如何在Python中将32位信息哈希转换为40位信息哈希?
有些网站,比如Sumotorrent.com,使用的是32位长的磁力链接哈希值,但我的代码是为了存储和处理40位长的哈希值而设计的。
2 个回答
1
幸运的是,32比40小,所以你可以简单地在后面加上8个零,这样就不会丢失任何信息。
1
这些磁力链接中的信息哈希看起来是用Base32编码的,而在BitTorrent中使用的信息哈希是十六进制的(也就是Base16)。这似乎能得到一致的结果:
import base64
base64.b16encode(base64.b32decode("<your hash goes here>"))