belangrijke uitgave van de bibliotheek (ook bekend als libtorrent-rasterbar), biedt een implementatie van het BitTorrent-protocol die geheugen- en CPU-efficiƫnt is. De bibliotheek in torrent-clients zoals , , , , en (niet te verwarren met een andere bibliotheek , die wordt gebruikt in rTorrent). De code van libtorrent is geschreven in C++ en onder de BSD-licentie.
De uitgave is opmerkelijk voor de ondersteuning van het , waarin de overstap is gemaakt van het gebruik van het SHA-1-algoritme, dat kwetsbaar is voor botsingen, naar SHA2-256. SHA2-256 wordt gebruikt voor zowel de integriteitscontrole van gegevensblokken als voor records in indexen (info-dictionary), wat de compatibiliteit met DHT en trackers verstoort. Voor magnetische links naar torrents met SHA2-256-hashes is er een nieuwe prefix "urn:btmh:" voorgesteld (voor SHA-1 en hybride torrents wordt "urn:btih:" gebruikt).
Aangezien de vervanging van de hash-functie de compatibiliteit van het protocol verstoort (een veld met een hash van 32 bytes in plaats van 20 bytes), werd de ontwikkeling van de BitTorrent v2-specificatie aanvankelijk zonder aandacht voor achterwaartse compatibiliteit uitgevoerd en werden andere belangrijke wijzigingen aangenomen, zoals het gebruik van Merkle-hashtrees in indexen om de grootte van torrentbestanden te verkleinen en het controleren van gedownloade gegevens op blokniveau.
Onder de veranderingen in BitTorrent v2 valt ook de overgang naar het koppelen van afzonderlijke hashtrees aan elk bestand en het gebruik van bestandssplitsing (zonder extra opvulling na elk bestand), wat helpt om duplicatie van gegevens te vermijden bij het hebben van identieke bestanden en het vergemakkelijkt het vinden van verschillende bronnen voor bestanden. De efficiƫntie van het coderen van de mappenstructuur in de torrent is verbeterd en er zijn optimalisaties toegevoegd voor de verwerking van een groot aantal kleine bestanden.
Om de co-existentie van BitTorrent v1 en BitTorrent v2 te vereenvoudigen, is de mogelijkheid geĆÆmplementeerd om hybride torrent-bestanden te maken, die naast structuren met SHA-1-hashes ook indexen met SHA2-256 bevatten.
De genoemde hybride torrents kunnen worden gebruikt met clients die alleen het BitTorrent v1-protocol ondersteunen. De verwachte ondersteuning van het WebTorrent-protocol in libtorrent 2.0 is uitgesteld Veelzijdige Ubuntu in 2020
Bron: opennet.ru
