資訊雜湊
Info Hash
BitTorrent 對種子元資訊中 info 字典計算所得的內容標識,用於區分分發任務、建立對等連線並在跟蹤器或 DHT 中定位同一群組。
詳細說明
資訊雜湊(Info Hash)是 BitTorrent 用於標識種子元資訊和對應下載群組的雜湊值。客戶端在握手、跟蹤器請求和分散式雜湊表查詢中使用它,使持有相同元資訊的節點加入同一 swarm。資訊雜湊不是網站分配的編號,也不是對某個檔名字串進行簡單雜湊。
在 BitTorrent v1 中,info hash 是 `.torrent` 元檔案內 `info` 字典原始 bencode 編碼的 SHA-1 摘要,長度為 20 位元組,常顯示成 40 個十六進位制字元或 Base32 文字。`info` 字典包含建議名稱、檔案長度或檔案列表、分片長度以及各分片 SHA-1 等欄位。對該字典的任何編碼級改變都可能產生新的資訊雜湊;位於 `info` 之外的 tracker 地址或註釋通常不參與 v1 雜湊。
資訊雜湊標識的是一套特定元資訊,而不是抽象意義上“內容相同”的所有檔案。兩名釋出者即使使用相同檔案,只要分片大小、目錄名稱、檔案順序或 `info` 內其他欄位不同,就會形成不同 swarm。反過來,客戶端取得元資訊後仍會用分片雜湊驗證下載資料,資訊雜湊本身不取代每個分片的完整性檢查。 BitTorrent v2 由 BEP 52 定義,使用 SHA-256 計算 v2 info hash,並以 Merkle 樹組織檔案完整性資訊。相容型 hybrid torrent 可同時包含 v1 與 v2 所需結構,因而具有相應的兩種標識。只寫“info hash”而不說明協議版本,可能無法完整描述現代種子。
資訊雜湊不包含可直接下載的資料,也不保證當前存在做種者。它可以出現在 `.torrent` 檔案、Magnet URI、客戶端介面和資料庫中;客戶端還需透過 tracker、DHT、PEX 或其他途徑找到節點並取得元資訊與檔案分片。雜湊值也不提供釋出者身份、版權狀態或檔案安全性的認證。