Выпуск libtorrent 2.0 с поддержкой протокола BitTorrent 2

Вторник, 27 октября 2020 г.

Следите за нами в ВКонтакте, Facebook'e и Twitter'e

Представлен значительный выпуск библиотеки libtorrent 2.0 (известна также как libtorrent-rasterbar), предлагающей реализацию протокола BitTorrent, эффективную с точки зрения потребления памяти и нагрузки на CPU. Библиотека задействована в таких торрент-клиентах, как Deluge, qBittorrent, Folx, Lince, Miro и Flush (не путать с другой библиотекой libtorrent, которая используется в rTorrent). Код libtorrent написан на языке C++ и распространяется под лицензией BSD.

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

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

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

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

>>> Подробности

Следите за нами в ВКонтакте, Facebook'e и Twitter'e


Просмотров: 316
Рубрика: Hi-Tech


Архив новостей / Экспорт новостей

Ещё новости по теме:

RosInvest.Com не несет ответственности за опубликованные материалы и комментарии пользователей. Возрастной цензор 16+.

Ответственность за высказанные, размещённую информацию и оценки, в рамках проекта RosInvest.Com, лежит полностью на лицах опубликовавших эти материалы. Использование материалов, допускается со ссылкой на сайт RosInvest.Com.

Архивы новостей за: 2018, 2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004, 2003