Vrystelling van libtorrent 2.0 met ondersteuning vir BitTorrent 2-protokol

'n Beduidende vrystelling van die libtorrent 2.0-biblioteek (ook bekend as libtorrent-rasterbar) word bekendgestel, wat 'n geheue- en SVE-doeltreffende implementering van die BitTorrent-protokol verskaf. Die biblioteek word gebruik deur torrentkliënte soos Deluge, qBittorrent, Folx, Lince, Miro en Flush (moet nie verwar word met die ander libtorrent-biblioteek wat deur rTorrent gebruik word nie). Die libtorrent-kode is in C++ geskryf en onder die BSD-lisensie versprei.

Die vrystelling is opvallend vir die toevoeging van ondersteuning vir die BitTorrent v2-protokol, wat wegbeweeg het van die gebruik van die SHA-1-algoritme, wat probleme ondervind met die keuse van botsings, ten gunste van SHA2-256. SHA2-256 word gebruik om beide die integriteit van datablokke te beheer en vir inskrywings in indekse (info-woordeboek), wat versoenbaarheid met DHT en spoorsnyers verbreek. 'n Nuwe voorvoegsel "urn:btmh:" is voorgestel vir magneetskakels na torrents met SHA2-256 hashes (vir SHA-1 en hibriede torrents word "urn:btih:" gebruik).

Omdat die hash-funksieverandering protokolversoenbaarheid verbreek (32 grepe hash-veld in plaas van 20 grepe), is die BitTorrent v2-spesifikasie oorspronklik ontwikkel sonder inagneming van terugwaartse versoenbaarheid, en ander beduidende veranderinge is aangebring, soos die gebruik van 'n Merkle-hash-boom in indekse om die grootte van torrentlêers te verminder en afgelaaide data op die blokvlak na te gaan.

Ander hoogtepunte van die veranderinge in BitTorrent v2 is die skuif na die assosiasie van aparte hash-bome vir elke lêer en die gebruik van lêerbelyning in dele (sonder om bykomende opvulling na elke lêer by te voeg), wat duplisering van data uitskakel wanneer daar identiese lêers is en dit makliker maak om verskillende bronne vir lêers te identifiseer. Verbeterde torrent-gidsstruktuur enkoderingsdoeltreffendheid en bygevoeg optimalisering om groot getalle klein lêers te hanteer.

Om die naasbestaan ​​van BitTorrent v1 en BitTorrent v2 glad te maak, word die vermoë om hibriede torrentlêers te skep, wat benewens strukture met SHA-1 hashes, indekse met SHA2-256 insluit, geïmplementeer. Hierdie hibriede torrents kan gebruik word met kliënte wat slegs die BitTorrent v1-protokol ondersteun. Weens onopgeloste stabiliteitskwessies is verwagte ondersteuning vir die WebTorrent-protokol in libtorrent 2.0 uitgestel tot die volgende groot vrystelling, wat nie vroeër as die einde van die jaar vrygestel sal word nie.

Bron: linux.org.ru