Uitgave van libtorrent 2.0 met ondersteuning voor het BitTorrent 2-protocol

Geïntroduceerd belangrijke bibliotheekuitgave libtorrent 2.0 (ook bekend als libtorrent-rasterbar), dat een implementatie biedt van het BitTorrent-protocol dat efficiënt is in termen van geheugengebruik en CPU-belasting. Bibliotheek betrokken in torrent-clients zoals Zondvloed, qBittorrent, Folx, Lynx, Miro и Doorspoelen (niet te verwarren met een andere bibliotheek libtorrent, die wordt gebruikt in rTorrent). De libtorrent-code is geschreven in C++ en gedistribueerd door onder BSD-licentie.

De uitgave is opmerkelijk toevoegen protocol-ondersteuning BitTorrent v2, waardoor het gebruik van het SHA-1-algoritme wordt vermeden, wat wel het geval is problemen met botsingsselectie ten gunste van SHA2-256. SHA2-256 wordt zowel gebruikt om de integriteit van datablokken te controleren als voor vermeldingen in indexen (info-woordenboek), wat de compatibiliteit met DHT en trackers schendt. Voor magnetische links naar torrents met SHA2-256-hashes wordt een nieuw voorvoegsel “urn:btmh:” voorgesteld (voor SHA-1 en hybride torrents wordt “urn:btih:” gebruikt).

Omdat het vervangen van de hashfunctie de protocolcompatibiliteit verbreekt (het hashveld is 32 bytes in plaats van 20 bytes), werd de BitTorrent v2-specificatie aanvankelijk ontwikkeld zonder achterwaartse compatibiliteit in gedachten en werden er andere belangrijke wijzigingen doorgevoerd, zoals het gebruik van Merkle-hashbomen in indexen om de grootte van torrent-bestanden te verkleinen en gedownloade gegevens op blokniveau te controleren.

Veranderingen in BitTorrent v2 omvatten ook de overgang naar het toewijzen van afzonderlijke hashbomen aan elk bestand en het gebruik van bestandsuitlijning in delen (zonder extra opvulling toe te voegen na elk bestand), waardoor duplicatie van gegevens wordt geëlimineerd wanneer er identieke bestanden zijn en het gemakkelijker wordt om te identificeren verschillende bronnen voor bestanden. Verbeterde efficiëntie van de codering van de torrent-directorystructuur en toegevoegde optimalisaties voor het verwerken van grote aantallen kleine bestanden.

Om het naast elkaar bestaan ​​van BitTorrent v1 en BitTorrent v2 te vergemakkelijken, is de mogelijkheid geïmplementeerd om hybride torrent-bestanden te maken, die, naast structuren met SHA-1-hashes, indexen met SHA2-256 bevatten.
Deze hybride torrents kunnen worden gebruikt met clients die alleen het BitTorrent v1-protocol ondersteunen. Ondersteuning voor het WebTorrent-protocol verwacht in libtorrent 2.0 vanwege onopgeloste stabiliteitsproblemen uitgesteld tot de volgende grote release, die pas eind dit jaar uitkomt.

Bron: opennet.ru

Voeg een reactie