Izdanje libtorrent 2.0 sa podrškom za BitTorrent 2 protokol

Uvedeno je značajno izdanje biblioteke libtorrent 2.0 (takođe poznate kao libtorrent-rasterbar), koja pruža memoriju i CPU efikasnu implementaciju BitTorrent protokola. Biblioteku koriste torrent klijenti kao što su Deluge, qBittorrent, Folx, Lince, Miro i Flush (ne treba je mešati sa drugom libtorrent bibliotekom koju koristi rTorrent). Libtorrent kod je napisan u C++ i distribuira se pod BSD licencom.

Izdanje je značajno po dodatku podrške za BitTorrent v2 protokol, koji se udaljio od korištenja SHA-1 algoritma, koji ima problema sa odabirom kolizija, u korist SHA2-256. SHA2-256 se koristi i za kontrolu integriteta blokova podataka i za unose u indekse (info-rečnik), što narušava kompatibilnost sa DHT-om i tragačima. Predložen je novi prefiks "urn:btmh:" za magnetne veze ka torentima sa SHA2-256 hešovima (za SHA-1 i hibridne torente koristi se "urn:btih:").

Budući da promjena u hash funkciji narušava kompatibilnost protokola (polje sa hešom od 32 bajta umjesto 20 bajtova), razvoj BitTorrent v2 specifikacije je u početku proveden bez obzira na kompatibilnost unatrag i usvojene su druge značajne promjene, kao što su korištenje Merkle hash stabla u indeksima za smanjenje veličine torrent datoteka i provjeru preuzetih podataka na nivou bloka.

Drugi naglasci promjena u BitTorrent v2 se pomiču na povezivanje odvojenih hash stabala za svaku datoteku i primjenu poravnanja datoteka u dijelovima (bez dodavanja dodatnog dodatka nakon svake datoteke), što eliminira dupliciranje podataka kada postoje identične datoteke i olakšava identifikaciju različiti izvori za fajlove. Poboljšana efikasnost kodiranja strukture torrent direktorija i dodane optimizacije za rukovanje velikim brojem malih datoteka.

Da bi se izgladio koegzistencija BitTorrent v1 i BitTorrent v2, implementirana je mogućnost kreiranja hibridnih torrent fajlova, koji uključuju, pored struktura sa SHA-1 hešovima, indekse sa SHA2-256. Ovi hibridni torenti se mogu koristiti sa klijentima koji podržavaju samo BitTorrent v1 protokol. Zbog neriješenih problema sa stabilnošću, očekivana podrška za WebTorrent protokol u libtorrent 2.0 odgođena je do sljedećeg velikog izdanja, koje će biti objavljeno najkasnije do kraja godine.

izvor: linux.org.ru