významná verzia knižnice (známa aj ako libtorrent-rasterbar), ktorá ponúka implementáciu protokolu BitTorrent, efektívnu z hľadiska spotreby pamäte a záťaže CPU. Knižnica v takých torrentových klientoch, ako sú , , , , a (nezamieňať s inou knižnicou , ktorá sa používa v rTorrent). Kód libtorrent je napísaný v jazyku C++ a pod licenciou BSD.
Verzia je pozoruhodná podporou protokolu , v ktorom sa uskutočnila zmena od používania algoritmu SHA-1, ktorý má problém s kolíziami, na SHA2-256. SHA2-256 sa používa ako pre kontrolu integrity blokov dát, tak aj pre záznamy v indexoch (info-dictionary), čo narušuje kompatibilitu s DHT a trackermi. Pre magnetické odkazy na torrentové súbory s hashmi SHA2-256 bol navrhnutý nový prefix „urn:btmh:“ (pre SHA-1 a hybridné torrenty sa používa „urn:btih:“).
Keďže zmena funkcie hashovania narušuje kompatibilitu protokolu (pole s hashom 32 bajtov namiesto 20 bajtov), vývoj špecifikácie BitTorrent v2 sa od začiatku konal bez ohľadu na spätnú kompatibilitu a do zloženia boli prijaté aj iné významné zmeny, ako používanie Merkleho hashového stromu v indexoch na zmenšenie veľkosti torrentových súborov a kontrolu nahraných dát na úrovni blokov.
Medzi zmenami v BitTorrent v2 sa tiež vyníma prechod k viazaniu samostatných hashových stromov k každému súboru a aplikovanie zarovnávania súborov po častiach (bez pridávania doplnkového vypĺňania po každom súbore), čo umožňuje zbaviť sa duplicitných dát pri existencii rovnakých súborov a zjednodušuje identifikáciu rôznych zdrojov pre súbory. Zefektívnila sa aj štruktúra kódovania adresárov v torrente a boli pridané optimalizácie pre spracovanie veľkého počtu drobných súborov.
Pre zjednodušenie koexistencie BitTorrent v1 a BitTorrent v2 bola implementovaná možnosť vytvárania hybridných torrentových súborov, ktoré obsahujú okrem štruktúr s hashmi SHA-1 aj indexy so SHA2-256.
Uvedené hybridné torrenty sa môžu používať s klientmi, ktoré podporujú len protokol BitTorrent v1. Očakávaná podpora protokolu WebTorrent v libtorrent 2.0 je z dôvodu nevyriešených problémov so stabilitou do ďalšej významnej verzie, ktorá vyjde najskôr koncom roka.
Zdroj: opennet.ru
