IMFile

IMFile

A Free And Unlimited BT / HTTP / HTTPS / eD2k Download Software From Singapore

BitTorrent私人種子的原理解析

概述#

private tracker 是一種限制對其所追蹤的種子訪問權限的機制。其作用是促進資源共享,並且常常會記錄註冊用戶的統計信息,並對未能充分上傳的用戶限制對某些或全部種子的訪問權限。

在生成元信息文件時,用戶可以通過在種子的元信息文件(metainfo file,參加 BitTorrent 協議規範)的”info” 字典中包含鍵值對”private=1″ 來表示該種子為 PT 種子。

當一個 BitTorrent 客戶端獲取到包含”private=1″ 鍵值對的元信息文件時,它必須只向 private tracker 進行報告,並且必須只與 private tracker 返回的節點建立連接。

當一個 PT 種子的元信息文件中的”announce-list” 中出現多個 Trackers(參見多 Tracker 元數據擴展),每個節點在同一時間內只能使用一個 tracker,並且只在當前 tracker 失敗時切換到其他 tracker 。在切換 tracker 時,節點必須斷開與當前所有節點的連接,並僅與新 tracker 提供的節點建立連接。

原理#

Private Tracker 不會公開節點的信息,這樣入侵者就無法直接聯繫其他節點。但是,一旦入侵者獲取了某個節點的 IP 地址和端口,他們可以通過直接連接節點進行文件共享。在種子群中,入侵者將被視為正常的節點,並具有與其他節點相同的權利和待遇。

目前,BitTorrent 有四種方式可以讓一個節點了解種子群中的其他節點:

  • Trackers [1],
  • Distribute Hash Table (DHT) [2],
  • Peer EXchange (PEX) [3],
  • Local Service Discovery (LSD) [5].

除了 Private Tracker 之外,通過任何其他機制公佈或交換節點信息都會破壞 tracker 的訪問控制。這意味著如果在 PT 種子中,某個入侵者獲得或猜測了已經在 PT 種子中的某個節點的 IP 和端口,那麼與入侵者交換節點信息將為入侵者提供完整的節點列表。

當節點在不同的 tracker 之間切換時,該節點會斷開與舊 tracker 的連接,以防止成為一個連接 private tracker 和連接 public tracker 的節點之間的橋梁。這在一定程度上減輕了攻擊者修改元信息文件的 announce-list 並通過 public tracker 網站重新分發元信息文件的影響。

參考鏈接#

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。