日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

磁力链接转换为种子文件 magnet to torrent

發布時間:2023/12/8 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 磁力链接转换为种子文件 magnet to torrent 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者:zxx

1.前言

? ??? 將種子文件轉換為磁力鏈接很簡單,只需要在種子文件的infohash碼前面加上magnet:?xt=urn:btih:即可,相信大家在迅雷,utorrent等主流軟件上也都能發現這個功能。

? ? ? 但是將磁力鏈接轉換為種子文件就不那么簡單了,因為sha-1算法是不可逆的,但是BT協議確提供了這個功能,但是我在網上沒有找到中文的介紹,這里就將自己的研究心得貢獻一下。
? ? ?下面還想廢話2句,告訴大家使用磁鏈和種子的優缺點。其實磁力鏈接本身是沒什么用的,不管在任何軟件的磁鏈下載中,都必須要先通過磁鏈得到種子文件,再使用種子文件進行常規下載。因為種子文件才有分片信息,文件大小,文件名等必要信息。所以可以看出,種子其實是必不可少的,那你可能會覺得奇怪,為什么還需要磁鏈呢?這是因為現在對BT的封鎖太嚴重,傳播種子并不是那么簡單的事了,動不動就被和諧了,所以磁鏈的作用就是便于傳輸,因為磁鏈就是一個小小的文本,而種子確是一個文件呢~所以總結一下他們的優缺點:
A.種子:穩定性高,信息多,不便于傳播擴散
B.磁力鏈接:仍需要先獲得種子,不穩定,可能在某時刻不能獲取,但是很便于擴散。?
?

2.磁力鏈接到種子轉換的策略


本人現在的研究共發現3種策略:
A.利用BT的官方協議獲取
B.從迅雷的種子庫獲取
C.從比特彗星的種子庫獲取

下面對三種策略做簡單介紹:

第一種,利用BT的官方協議獲取

性能特色:
這種策略可以獲取最多的種子,但是速度最慢,因為是官方的協議,所以很穩定,但是如果這個種子是個冷門種子時,很可能會獲取不到,因為當前沒有DHT用戶在線,所以當使用迅雷,utorrent等客戶端軟件提示無法獲取種子時,你可以待會再試,過陣子可能有對應種子的用戶上線,她如果加入了DHT網絡,我們就可以獲取種子了。

實現原理:
這個方法需要閱讀官方的2個擴展協議:
http://www.bittorrent.org/beps/bep_0010.html
http://www.bittorrent.org/beps/bep_0009.html????????????

翻譯稿:http://blog.csdn.net/xxxxxx91116/article/details/8549454


理解并實現這2個協議后就可以獲取種子了,下面是2個協議的翻譯稿。

bep_0009翻譯稿:http://blog.csdn.net/xxxxxx91116/article/details/8549454


好消息!我發現這個網站?http://btdigg.org/?是使用extend協議進行解析,大家可以試用下~速度可能會很慢,但是應該可以解析很多庫里面沒有的種子。


第二種,從迅雷的種子庫獲取

性能特色:
這種策略獲取種子的速度很快,當你有一批磁力鏈接時,可以先使用這種方法來獲取大部分種子,對迅雷種子庫沒有的部分,再使用第一種方法獲取。

實現原理:
非常簡單,在瀏覽器中輸入
http://bt.box.n0808.com/05/A5/05153F611B337A378F73F0D32D2C16D362D06BA5.torrent
即可獲取種子,其中的 05153F611B337A378F73F0D32D2C16D362D06BA5是對應種子文件的infohash碼,也就是磁鏈的btih:字段,/05/A5是hash的第一個和最后一個字節。
當你需要大規模獲取時,就自己用C++構造一個報文內從去請求吧。

第三種,從比特彗星的種子庫獲取

性能特色:同第二種的性能特色,但是比特彗星的庫里面種子更多。因為比特彗星可以制作種子,在制作的同時可能就上傳到庫里面了。

實現原理:
我還沒有解析出來,大家可以參見文章:
http://www.cnblogs.com/UMU618/articles/2568579.html,但是這位牛人也忘記了hash字段是怎樣加密的,我不知道怎樣從hash到key。如果有人發現了,希望您能告訴我,謝謝!

?

攻城詩賦:
第三種比特彗星成功率也很高,而且貌似不凈網。至于hash的算法是
hash轉回20字節形式前加“bc”后加"torrent"共29字節做SHA1得到20字節轉回可讀40字節形式

?

?

第四種,從Vuze的種子庫獲取

這個也蠻厲害的,我搞了半天才搞出來......

比如對于infohash為03621694F0E8B2CE87216C99CB5CA3AF23029E37的磁力鏈接,構造下面的URL:

http://magnet.vuze.com/magnetLookup?hash=ANRBNFHQ5CZM5BZBNSM4WXFDV4RQFHRX

其中的ANRBNFHQ5CZM5BZBNSM4WXFDV4RQFHRX是03621694F0E8B2CE87216C99CB5CA3AF23029E37的base32碼,但是不能直接去網上base32轉,因為轉碼要用03621694F0E8B2CE87216C99CB5CA3AF23029E37的二進制數據

linux下可以這樣轉

?

echo -n 03621694F0E8B2CE87216C99CB5CA3AF23029E37 | xxd -r -p|./perl_32.pl


其中的?perl_32.pl?是一個源文件,內容如下:

  • #!/usr/bin/perl

  • use MIME::Base32 qw( RFC );

  • undef $/; # in case stdin has newlines

  • $string = <STDIN>;

  • $encoded = MIME::Base32::encode($string);

  • print "$encoded\n";


  • 如果權限不對記得要

    ?

    ?

    chmod 777 perl_32.pl


    ?

    ?

    ?

    ?

    補充一些種子庫:

    ?

    http://torrage.com/torrent/66B106B04F931DA3485282C43CF66F6BD795C8C4.torrent

    http://torcache.net/torrent/66B106B04F931DA3485282C43CF66F6BD795C8C4.torrent

    http://zoink.it/torrent/66B106B04F931DA3485282C43CF66F6BD795C8C4.torrent

    http://magnet2torrent.com/:最終重定向使用torrage.com進行下載

    http://mag2tor.com/static/torrents/05/15/3f/05153f611b337a378f73f0d32d2c16d362d06ba5.torrent 緩存的種子很少

    http://178.73.198.210/:torrage.ws:http://178.73.198.210/torrent/640FE84C613C17F663551D218689A64E8AEBEABE.torrent

    總結

    以上是生活随笔為你收集整理的磁力链接转换为种子文件 magnet to torrent的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。