Vydanie libtorrent 2.0 s podporou protokolu BitTorrent 2

Predloženej významné vydanie knižnice libtorrent 2.0 (známy aj ako libtorrent-rasterbar), ktorý ponúka implementáciu protokolu BitTorrent, ktorý je efektívny z hľadiska spotreby pamäte a zaťaženia procesora. Knižnica zapojené v torrentových klientoch ako napr potopa, qBittorrent, Folx, rys, Miro и Spláchnuť (nezamieňať s inou knižnicou libtorrent, ktorý sa používa v rTorrent). Kód libtorrentu je napísaný v C++ a distribuovaný pod licenciou BSD.

Vydanie je pozoruhodné pridanie podpora protokolov BitTorrent v2, ktorý sa vyhýba používaniu algoritmu SHA-1, ktorý má problémy s výberom kolízie v prospech SHA2-256. SHA2-256 sa používa ako na kontrolu integrity dátových blokov, tak aj na záznamy v indexoch (info-slovník), čo narúša kompatibilitu s DHT a trackermi. Pre magnetické odkazy na torrenty s hash SHA2-256 sa navrhuje nová predpona „urn:btmh:“ (pre SHA-1 a hybridné torrenty sa používa „urn:btih:“).

Keďže nahradenie hašovacej funkcie porušuje kompatibilitu protokolu (pole hašovania má 32 bajtov namiesto 20 bajtov), ​​špecifikácia BitTorrent v2 bola pôvodne vyvinutá bez ohľadu na spätnú kompatibilitu a boli prijaté ďalšie významné zmeny, ako napríklad použitie hash stromov Merkle v indexoch. na zmenšenie veľkosti torrent súborov a kontrolu stiahnutých údajov na úrovni bloku.

Ďalšie zvýraznenia zmien v BitTorrent v2 sa presúvajú k priradeniu samostatných hash stromov pre každý súbor a aplikovaniu zarovnania súborov po častiach (bez pridania ďalších výplní za každý súbor), čo eliminuje duplicitu údajov, keď existujú identické súbory, a uľahčuje identifikáciu. rôzne zdroje súborov. Vylepšená efektívnosť kódovania adresárovej štruktúry torrentu a pridané optimalizácie na spracovanie veľkého počtu malých súborov.

Na vyhladenie koexistencie BitTorrent v1 a BitTorrent v2 bola implementovaná možnosť vytvárať hybridné torrentové súbory, ktoré zahŕňajú okrem štruktúr s hash SHA-1 aj indexy s SHA2-256.
Tieto hybridné torrenty možno použiť s klientmi, ktorí podporujú iba protokol BitTorrent v1. Podpora protokolu WebTorrent sa očakáva v libtorrent 2.0 z dôvodu nevyriešených problémov so stabilitou odložené až do ďalšieho veľkého vydania, ktoré vyjde až koncom roka.

Zdroj: opennet.ru

Pridať komentár