簡體   English   中英

Sha 1散列及其使用bit torrent協議(磁鐵)的長度?

[英]Sha 1 hashes and their length with the bit torrent protocol (magnets)?

我正在抓取網站上的信息,它涉及獲取磁鐵鏈接的sha1哈希。

我用一個簡單的preg_match_all得到了所有磁鏈,但是在結果中我得到了奇怪的結果,我知道磁石哈希以十六進制形式是40個字符長,但是我也得到了返回長度為32個字符的字符串的結果。包含其他非十六進制值。

我的結果有兩個例子,首先是磁鏈中的正常40十六進制哈希,

array
    0 => string 'F5AD2D170C033736FD987106F04C3ABD6DF41D14' (length=40)

我不明白哈希在哪里是32個非十六進制值的其他奇怪結果,

array
    0 => string 'VPR33QQM3L6BFU5FGOZXMBNORAFFSZWW' (length=32)

哈希是否以某種方式打包? 我知道這不是用pack('H*', $hash)因為它返回哈希的二進制? 磁鐵鏈接確實可以正常工作。

更多信息,因此您可以在此網站上看到這些哈希在使用中

http://eztv.it

通過將鼠標懸停在磁鐵鏈上並查找磁鐵哈希。

謝謝

可以使用Base32對磁鐵鏈接中的哈希進行編碼。 在您的示例中

VPR33QQM3L6BFU5FGOZXMBNORAFFSZWW

變成

ABE3BDC20CDAFC12D3A533B37605AE880A5966D6

這是有效的SHA-1哈希。

基本上,它不是有效的torrent信息哈希,只有sha1(40個字節)有效,如果將torrent客戶端或bencode腳本作為torrent哈希傳遞,則torrent客戶端或bencode腳本將失敗。

似乎與以下內容有關:

http://eztv.it/magnet:?xt=urn:btih:VPR33QQM3L6BFU5FGOZXMBNORAFFSZWW這值得注意。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM