O que é um hash de informações de torrent?

O hash de informações é o ID de um torrent. É um hash da lista de arquivos e das partes do torrent, e é para ele que um link magnet aponta e que os clientes consultam na DHT para encontrar pares. O mesmo hash aparece em formatos diferentes, e é aí que começa a confusão.

Um torrent v1 tem um hash de informações SHA-1: 20 bytes, representados por 40 caracteres hexadecimais ou por 32 caracteres Base32 em links magnet mais antigos. Um torrent v2 (BitTorrent v2, BEP 52) tem um hash de informações SHA-256: 32 bytes, 64 caracteres hexadecimais. Em um link magnet, ele vem depois de urn:btmh: como um multihash, com 1220 no início (SHA-256, 32 bytes). Torrents híbridos incluem ambos.

Descrição da ferramenta

Cole um hash de informações em qualquer um destes formatos ou um link magnet, e a ferramenta informa se é um hash v1 ou v2 e fornece:

  • o hash v1 em hexadecimal minúsculo e em Base32
  • o hash v2 em hexadecimal minúsculo
  • um link magnet curto contendo apenas o hash e o nome de um link magnet colado

O link magnet curto remove os trackers, as sementes web e todo o restante. Clientes com a DHT ativada encontram pares usando apenas o hash. Não é possível converter um hash v1 em um hash v2 nem fazer o inverso: eles vêm de funções de hash diferentes, então somente um link magnet híbrido fornece ambos.

Exemplos

Um hash Base32 de 32 caracteres é convertido no mesmo hash v1 com 40 caracteres hexadecimais, com um link magnet neste formato:

magnet:?xt=urn:btih:<40 hex characters>

Um hash hexadecimal de 64 caracteres é um hash v2, e seu link magnet inclui o prefixo multihash:

magnet:?xt=urn:btmh:1220<64 hex characters>

Recursos

  • Lê hashes de informações em hexadecimal, Base32 e multihash, além de links magnet
  • Diferencia torrents v1, v2 e híbridos
  • Cria um link magnet curto que mantém o nome