torrent檔案內的資料結構分為以下幾部分:
announce:tracker的主伺服器
announce-list:tracker伺服器列表
comment:種子檔案的注釋
comment.utf-8:種子檔案注釋的utf-8編碼
creation date:種子檔案建立的時間,是從2023年1月1日00:00:00到現在的秒數。
encoding:種子檔案的預設編碼,比如gb2312,big5,utf-8等
關於這個網路的工作原理,參看:
p2p中dht網路爬蟲
(鏈結)以及寫了個
磁力搜尋的網頁。
當種子裡包含多個檔案時,info欄位包括如下子欄位:
files:表示檔案的名字,大小,該欄位包含如下三個子欄位:
lenghth:檔案的大小,用byte計算
path.utf-8:檔名的utf-8編碼,同上
以上的三個字段每個檔案都有一組值。
name.utf-8:推薦的資料夾名的utf-8編碼,同上。
piece length:每個檔案塊的大小,用byte計算
pieces:檔案的特徵資訊,該欄位比較大,實際上是種子內包含所有的檔案段的sha1的校驗值的連線,即將所有檔案按照piece length的位元組大小分成塊,每塊計算乙個sha1值,然後將這些值連線起來就形成了pieces欄位,由於sha1的校驗值為20byte,所以該字段的大小始終為20的整數倍位元組。該字段是torrent檔案中體積最大的部分,可見如果大檔案分塊很小,會造成torrent檔案體積龐大。
C 解析torrent檔案
基礎知識 torrent檔案資訊儲存格式 bencoding是一種以簡潔格式指定和組織資料的方法。支援下列型別 位元組串 整數 列表和字典。1 字串儲存格式 字串的長度 字串的內容 例如 4 abcd 表示abcd,2 ab 表示ab 2 數字的儲存格式 i 整數 e 例如 i32e 表示整數32,...
torrent檔案分析
torrent檔案資訊儲存格式 bencoding是一種以簡潔格式指定和組織資料的方法。支援下列型別 位元組串 整數 列表和字典。1 字串儲存格式 字串的長度 字串的內容 例如 4 spam 表示spam,2 ab 表示ab 2 數字的儲存格式 i 整數 e 例如 i3e 表示整數3,i1024e ...
BT種子檔案( torrent)的具體檔案結構
全部內容必須都為bencoding編碼型別。整個檔案為乙個字典結構,包含如下關鍵字 announce tracker 伺服器的 url 字串 announce list 可選 備用 tracker 伺服器列表 列表 creation date 可選 種子建立的時間,unix 標準時間格式,從 197...