Risposta breve
Per la maggior parte, sì, ma ci sono alcune preoccupazioni teoriche.
Risposta lunga
BitTorrent divide il file in "pezzi". Il file torrent contiene una lista con un hash SHA1 di ogni pezzo. I dati che non corrispondono all'hash nel file torrent verranno scartati, quindi ogni parte del file con cui avrai a disposizione avrà lo stesso hash SHA1 della parte corrispondente del file utilizzato per creare il torrent.
Quindi la domanda diventa se SHA1 è abbastanza sicuro da proteggere dalla sostituzione dei dati "cattivi" del pezzo al posto dei dati "buoni" del pezzo. Ci sono due scenari da considerare:
-
L'attaccante non ha alcun controllo sui dati del pezzo "buono". In questo caso, l'attaccante avrebbe bisogno di un attacco preimage su SHA1.
-
L'attaccante ha la capacità sia di prevedere che di esercitare un certo controllo sui dati del pezzo "buono". Ad esempio, potrebbe essere richiesto di fornire una nuova versione di un file da includere in una nuova versione del torrent senza altre modifiche da una versione precedente o modifiche che l'utente malintenzionato può prevedere. In questo caso, possono probabilmente accontentarsi di qualche forma di attacco di collisione.
Un attacco di preimage su SHA1 sembra improbabile nel prossimo futuro. Un attacco di collisione sembra molto più probabile. Un attacco di collisione "normale" è probabilmente di utilità limitata al di fuori di scenari artificiali, ma un attacco di collisione "prefisso distinto" (che è più difficile di un semplice attacco di collisione ma molto più facile di un attacco preimage) è molto più potente in quanto consente i dati "buoni" sembrano piuttosto innocui (basta nascondere un piccolo blocco di dati dall'aspetto casuale al suo interno da qualche parte) mentre i cattivi dati potrebbero essere arbitrariamente cattivi.
Un attacco di collisione è una minaccia grave? Dipende, se i file da cui viene creato il torrente vengono raccolti insieme a mano da una parte fidata, è piuttosto improbabile. Sarebbe molto difficile per un utente malintenzionato prevedere esattamente ciò che la persona che sta assemblando la raccolta includerà prima di inviare il suo file. D'altra parte, se l'automazione è coinvolta nella creazione dei torrent e l'attaccante può influenzare l'automazione in modo abbastanza diretto, il rischio di un attacco di collisione è molto più alto.