Features

  • Multiple subcommands:

    Torrenttools has multiple subcommands to satisfy all kinds of BitTorrent metafile task. Not only creating torrent files, but also editing and inspecting metafiles is supported.

  • v2 support:

    Torrenttools is ready for the new v2 protocol with support for hybrid and v2-only metafiles.

  • Multi-threaded hashing:

    Generating hashes of data is fully asynchronous to fully leverage fast storage.

  • Per-file checksums:

    Support for multiple checksum algorithms to include a per-file hash inside the BitTorrent metafile. This enables clients to deduplicate or detect common files between different torrents. For the default OpenSSL backend following checksums are supported:

    • whirlpool

    • ripemd160

    • shake256

    • shake128

    • sha3_512

    • sha3_384

    • sha3_256

    • sha3_224

    • sha512

    • sha384

    • sha256

    • sha224

    • sha1

    • blake2s_256

    • blake2b_512

    • md5

    • md4

  • Named trackers:

    Named trackers allow uploaders to quickly generate metafiles without having to lookup announce urls for different trackers.

Supported BEPS

Bittorrent Enhancement proposals that do not have any impact on the metafiles are not shown.

BEP support

BEP

Status

Title

03

✅

The BitTorrent Protocol Specification

05

✅

DHT Protocol

09

✅

Extension for Peers to Send Metadata Files

12

✅

Multitracker Metadata Extension

17

✅

HTTP Seeding

19

✅

WebSeed - HTTP/FTP Seeding (GetRight style)

27

✅

Private Torrents

30

❌

Merkle hash torrent extension

35

❌

Torrent Signing

38

✅

Finding Local Data Via Torrent File Hints

39

❌

Updating Torrents Via Feed URL

46

❌

Updating Torrents Via DHT Mutable Items

47

✅

Padding files and extended file attributes

49

❌

Distributed Torrent Feeds

52

✅

The BitTorrent Protocol Specification v2

53

❌

Magnet URI extension - Select specific file indices for download

Notes:

  • BEP-30 is deprecated with the introduction of BEP-53