Una corretta. Come spiegato in questo articolo, i torrent utilizzano il protocollo BitTorrent per condividere i dati rubati di Sony. Ogni pezzo scaricato tramite un seme viene collegato con un indice nel file e l'hash di quella porzione viene controllato e verificato. Tuttavia, non credo che sia questo hash a cui si riferiscono in quell'articolo. Di seguito descriverò il processo di download di un file tramite BitTorrent.
.torrent File
Il protocollo BitTorrent dice che il file .torrent contiene due campi di informazione:
-
announce
: URL del Tracker
-
info
: esegue la mappatura a un dizionario di tasti
Ogni pezzo di dati nel dizionario viene usato per mettere insieme il file originale. Ciò significa che un file è diviso in pezzi predeterminati, e ogni pezzo è generalmente un potere di due. Questo dizionario contiene tutte le informazioni su ogni pezzo, la lunghezza e l'hash SHA1 di ogni pezzo per verificare un download completo.
Tracker
Quando tenti di scaricare un file con BitTorrent, tenterà di eseguire una richiesta GET Tracker. In risposta, ci sono molte informazioni su quali peer sono attualmente disponibili per il download. In genere una versione compressa dell'elenco di peer che possono essere utilizzati per scaricare il file. Le connessioni sono fatte ai peer per scaricare ogni pezzo, e una volta che tutti i pezzi sono stati ricevuti, il client Torrent viene avvisato. Ogni pezzo è considerato completo quando viene verificato l'hash SHA1 dei dati. Come affermato in precedenza, questo valore di hash è fornito nel dizionario info
.
Questo hash SHA1 è non l'hash che viene falsificato. Un altro pezzo di informazione incluso nella risposta Tracker è un campo chiamato info_hash
:
info_hash
The 20 byte sha1 hash of the bencoded form of the info value from the metainfo file. Note that this is a substring of the metainfo file.
The info-hash must be the hash of the encoded form as found in the
.torrent file, regardless of it being invalid. This value will almost
certainly have to be escaped.
Tieni questo in mente, torneremo su di esso.
Pari
Il protocollo Peer è ciò che viene falsificato. Ogni peer deve stabilire quale parte del file viene scaricata da quel peer usando un indice. C'è una stretta di mano per stabilire questa connessione e comporta l'invio del valore di info_hash
. Il client che scarica il file verifica che questo corrisponda all'hash SHA1 del campo bencoded info
del file .torrent.
Ciò che Sony presumibilmente ha fatto è distribuire file falsi con i valori hash corretti per stabilire connessioni ai client che tentano di scaricarli. I file possono essere falsi perché il client deve scaricare l'intero pezzo per verificare quella parte. Quando il controllo fallisce, è necessario riavviare un download per quel pezzo.
Come puoi vedere (ed è menzionato in quell'articolo) questo può essere un problema per i server web. Il download costante di porzioni del file con letteralmente senza fine può finire per causare un utilizzo maggiore della larghezza di banda. Ciò può comportare un DDoS del server web.