2015-02-05 13 views
15

sto leggendo ultimamente molto di hash da torrenti un link magnetici eccChe cosa è esattamente l'info_Hash in un file torrent

ma c'è una domanda che non capisco.

Ho l'hash di un file e l'infohash di un torrent, è l'hash infohash = del file?

Se sì, cosa succede se il torrent descrive 6 file da scaricare?

Se no, cosa significa?

+1

possibile duplicato di [calcolo hash in client torrent] (http://stackoverflow.com/questions/28140766/hash-calculation-in-torrent-clients) – Encombe

+2

no non proprio, ci sono le informazioni che l'infohash è il hash sull'infropart di un torrent. Ma qual è la parte delle informazioni? – Emetiel

risposta

25

Così ho finalmente capito.

Il “infohash” è l'hash SHA1 sopra la parte di un file torrent che include:

  1. ARTICOLO: lunghezza (dimensione) e il percorso (percorso con il nome del file)
  2. Nome: il nome da ricercare per
  3. lunghezza del pezzo: la lunghezza (dimensione) di un unico pezzo
  4. Pezzi: SHA1 Hash di ogni pezzo di questo torrente
  5. privato: bandierina per l'accesso limitato

Per mostrare un po 'di più ho preso un file torrent casuale e ho usato "BEncode Editor" da Ultima per renderlo più chiaro a me.

BEncode Editor

Come si può vedere la casella rossa ha segnato la parte informazioni del file torrente. Il file torrent include non l'hash degli oggetti, ma gli hash di ogni pezzo.

  • BENE1 con: 1069496548
  • e BENE2: 223
  • È insieme: 1069496771
  • Con una pezzatura di: 524288
  • ci sono 2040 pezzi. (2039,9032)
  • La sezione pezzi include 40800 byte di dati che sono 81600 + 2 caratteri nel file.
  • il +2 perché 0x contrassegna che questo è esadecimale.
  • Un hash SHA1 ha 40 caratteri 0x o 20 byte di dati quali sono gli hash 2040 SHA1.

enter image description here

Mi dispiace che questa informazione è su un torrente che porta a un film illegale, ma ho voluto usare un torrente che esiste davvero.

+18

Se in futuro ti serviranno degli esempi, la maggior parte delle distribuzioni Linux forniscono download di torrent legali delle loro versioni. – Tyzoid

+0

o prova mininova –

+0

@Emetiel Come ottenere una stringa di 20 byte info_hash? – EmptyData