Išleistas libtorrent 2.0 su „BitTorrent 2“ protokolo palaikymu

Įvesta значительный выпуск библиотеки libtorrent 2.0 (известна также как libtorrent-rasterbar), предлагающей реализацию протокола BitTorrent, эффективную с точки зрения потребления памяти и нагрузки на CPU. Библиотека dalyvauja в таких торрент-клиентах, как Plaukti, qBittorrent, folksas, Lince, Miro и Plovimas (не путать с другой библиотекой libtorrent, которая используется в rTorrent). Код libtorrent написан на языке C++ и išplatino pagal BSD licenciją.

Выпуск примечателен pridedant поддержки протокола BitTorrent v2, в котором осуществлён уход от использования алгоритма SHA-1, имеющего problemos с подбором коллизий, в пользу SHA2-256. SHA2-256 применяется как для контроля целостности блоков данных, так и для записей в индексах (info-dictionary), что нарушает совместимость с DHT и трекерами. Для магнитных ссылок на торренты с хэшами SHA2-256 предложен новый префикс «urn:btmh:» (для SHA-1 и гибридных торрентов используется «urn:btih:»).

Так как замена функции хэширования нарушает совместимость протокола (поле с хэшем 32 байта вместо 20 байт) разработка спецификации BitTorrent v2 изначально велась без оглядки на обратную совместимость и в состав были приняты другие существенные изменения, такие как использование хеш-дерева Меркла в индексах для сокращения размера torrent-файлов и проверки загруженных данных на уровне блоков.

BitTorrent v2 pakeitimai taip pat apima perėjimą prie atskirų maišos medžių priskyrimo kiekvienam failui ir failų lygiavimo dalimis (nepridedant papildomo užpildymo po kiekvieno failo), kuris pašalina duomenų dubliavimąsi, kai yra identiški failai, ir palengvina identifikavimą. skirtingi failų šaltiniai. Pagerintas torrent katalogų struktūros kodavimo efektyvumas ir papildomas optimizavimas tvarkant didelį skaičių mažų failų.

Для сглаживания сосуществования BitTorrent v1 и BitTorrent v2 реализована возможность создания гибридных torrent-файлов, которые включают помимо структур с хэшами SHA-1, индексы с SHA2-256.
Указанные гибридные торренты могут использоваться с клиентами, поддерживающими только протокол BitTorrent v1. Ожидаемая в libtorrent 2.0 поддержка протокола WebTorrent из-за нерешённых проблем со стабильностью отложена до следующего значительного выпуска, который выйдет не раньше конца года.

Šaltinis: opennet.ru

Добавить комментарий