libtorrent-2.0 加入對BitTorrent v2 的支持
libtorrent項目剛剛釋出了libtorrent-2.0,其中一個重要特性是支持BitTorrent v2 協議。而BitTorrent v2相比之前版本的一個主要變化是其哈希函數用SHA-256取代了SHA-1,原因是SHA-1不再安全。
Google 在2017 年宣布了對SHA-1 哈希算法的首個成功碰撞攻擊。所謂碰撞攻擊是指兩個不同的信息產生了相同的哈希值。
在Google的研究中,攻擊所需的計算量十分驚人,但今年初研究人員已經將攻擊成本降至4.5萬美元,以後還會更低。
SHA-256 的哈希長度從20 字節增加到了32 字節。為了確保兼容性,SHA-256 info-hash 仍然維持在20 字節長度。
BitTorrent 2.0 不兼容於舊的協議,但libtorrent 2.0 能同時處理舊的協議和新的協議,不過舊的客戶端無法訪問新協議創造的種子。為了幫助BT 客戶端過渡到BitTorrent 2.0,libtorrent 2.0 引入了名叫hybrid torrents 的方案。