Въвеждането на основна версия на библиотеката libtorrent (известен също като libtorrent-rasterbar), достигайки новия си версия 2.0, който предлага реализация на BitTorrent, която е ефективна по отношение на консумацията на памет и използването на процесора.
В тази нова версия пусната са направени промени в използвания алгоритъм SHA-1 към SHA2-256, това защото първият има някои проблеми, преход към обвързване на отделни хеш дървета към всеки файл и приложението и някои други неща.
За тези, които не са запознати с библиотеката, трябва да знаете, че тя се използва от торент клиенти като Deluge, qBittorrent, Folx, Lince, Miro и Flush (да не се бърка с другата библиотека libtorrent, използвана от rTorrent). Кодът libtorrent е написан на C ++ и се разпространява под лиценза BSD.
Основни промени в libtorrent 2.0
В тази нова издадена версия на libtorrent 2.0 се откроява с добавянето на поддръжка за протокола BitTorrent v2, който се отдалечава от използването на алгоритъма SHA-1, който има проблеми с избора на сблъсъци, в полза на SHA2-256 .
С използването на алгоритъма SHA2-256 гарантира както контрола върху целостта на блоковете данни като за записи в индекси (информационен речник), което нарушава съвместимостта с DHT и тракери.
Въпреки че използването на този алгоритъм има проблеми с магнитните връзки към торентите, ето защо с хеш SHA2-256, предлага се нов префикс "Urn: btmh:" (за SHA-1 и хибридни торенти използвайте "urn: btih:").
Тъй като функцията за замяна на хеш прекъсва поддръжката на протокол (поле с 32-байтов хеш вместо 20 байта), разработването на спецификацията BitTorrent v2 първоначално беше извършено без да се отчита съвместимостта с предишни версии и бяха направени други значителни промени в състава, като например използването на хеш дървото на Merkle в индекси за намаляване на размера на торент файловете и проверка на изтеглени данни на ниво блок.
Промените в BitTorrent v2 също подчертават преход към обвързване на отделни хеш дървета към всеки файл и прилагане на подравняване на файлове на части (без добавяне на подложка след всеки файл), което ви позволява да се отървете от дублиращи се данни, когато има еднакви файлове, и улеснява идентифицирането на различни източници за файлове.
също подчертава се, че е подобрена ефективността на кодиране на структурата на директориите в торент и бяха добавени оптимизации за обработка на голям брой малки файлове.
Освен това, за да се изглади съжителството на версията BitTorrent v1 и BitTorrent v2, възможно е да се създадат хибридни торент файлове които включват, освен структури с хешове SHA-1, индекси с SHA2-256.
Тези хибридни торенти могат да се използват с клиенти, които поддържат само BitTorrent v1.
И накрая, в бележките на тази нова версия също се коментира, че очакваната поддръжка на протокола WebTorrent в libtorrent 2.0 е отложена до следващата версия значителни, които те споменават, че няма да бъдат пуснати до края на годината (ако всичко върви по план) поради нерешени проблеми със стабилността.
И трябва да помните това интеграцията Предложението за WebTorrent в библиотеката libtorrent ще ви позволяват да участвате в разпространението на съдържание не само чрез браузърите на посетителите на уебсайта, но и чрез стационарни торент клиенти, използващи библиотеката libtorrent, включително Deluge и qBittorrent (rTorrent не влияе на промяната, тъй като използва различна библиотека libtorrent).
Реализацията на WebTorrent, добавена към libtorrent, е написана на C ++ и при желание може да бъде пренесена в други торент библиотеки и клиенти (оригиналната WebTorrent е написана в JavaScript).
Следователно е така те могат да формират хибридни мрежи с участници, способни да взаимодействат с мрежи, базирани на BitTorrent и WebTorrent.
Ако искате да научите повече за това относно бележката на тази нова издадена версия на библиотеката libtorrent, можете да проверите подробностите, като отидете на следната връзка.
Както четох на друго място, Google наскоро наруши протокола SHA-1 с груба сила, поради което общността се втурна да мигрира към SHA-256.