Release of libtorrent 2.0 with support for the BitTorrent 2 protocol

Introduced significant release of the library libtorrent 2.0 (also known as libtorrent-rasterbar), offers an implementation of the BitTorrent protocol that is efficient in terms of memory consumption and CPU load. The library is used in torrent clients like Deluge, qBittorrent, Folx, Lince, Miro and Flush (not to be confused with another library libtorrent, which is used in rTorrent). The libtorrent code is written in C++ and is distributed under the BSD license.

The release is noteworthy for adding support for the BitTorrent v2, which moves away from using the SHA-1 algorithm that has issues collision vulnerabilities, in favor of SHA2-256. SHA2-256 is used for both data block integrity checks and indexing records (info-dictionary), which breaks compatibility with DHT and trackers. For magnet links to torrents with SHA2-256 hashes, a new prefix "urn:btmh:" has been proposed (for SHA-1 and hybrid torrents, "urn:btih:" is used).

Since the replacement of the hashing function breaks protocol compatibility (a 32-byte hash field instead of 20 bytes), the development of the BitTorrent v2 specification was initially done without regard for backward compatibility, and other significant changes were adopted, such as the use of the Merkle hash tree in indices to reduce the size of torrent files and to verify downloaded data at the block level.

Among the changes in BitTorrent v2, a shift towards binding individual hash trees to each file and applying piece alignment (without adding extra padding after each file) stands out, which eliminates data duplication when there are identical files and simplifies the discovery of different sources for files. The encoding efficiency of the directory structure in the torrent has been improved, and optimizations for handling a large number of small files have been added.

To smooth the coexistence of BitTorrent v1 and BitTorrent v2, the ability to create hybrid torrent files has been implemented, which include both SHA-1 hash structures and SHA2-256 indices.
These hybrid torrents can be used with clients that support only the BitTorrent v1 protocol. The expected support for the WebTorrent protocol in libtorrent 2.0 has been postponed until the next significant release, which will not be available until the end of the year.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster