Il checksum MD5 e SHA1 utilizza per il download


8

Ho notato che durante il download di molti strumenti open source (Eclipse, ecc.) Ci sono collegamenti per checksum MD5 e SHA1 e non sapevo quali fossero o quali fossero i loro scopi.

So che si tratta di algoritmi di hash e capisco l'hash, quindi la mia unica ipotesi è che questi vengano utilizzati per eseguire l'hashing di alcuni componenti delle destinazioni di download e per confrontarli con stringhe di hash "ufficiali" archiviate sul lato server. Forse in questo modo si può determinare se gli obiettivi sono stati modificati dalla loro versione corretta (per motivi di sicurezza e altri scopi).

Sono vicino o completamente sbagliato, e se sbagliato, che cosa sono?!?!

Grazie!

Risposte:


11

Hai quasi completamente ragione. L'unica correzione è che sono hash dell'intero file.

A volte, i file possono essere danneggiati durante il download in qualsiasi modo venga utilizzato per trasferirli. Gli hash sono lì per assicurarsi che il file sia intatto. Ciò è particolarmente utile per gli utenti con connessioni Internet non valide. Quando stavo usando il modem fax, ho spesso problemi con download corrotti.

Alcuni gestori di download (come GetRight, se ricordo bene), possono persino calcolare automaticamente l'hash del file e confrontarlo con il valore noto.

Un altro punto interessante è la sicurezza. Un potenziale problema con gli strumenti open source è quanto ti puoi fidare del distributore. Spesso programmi come Eclipse sono lo strumento principale utilizzato dalle società di software e pertanto è estremamente importante per loro passare dallo sviluppatore all'utente intatto. Poiché i programmi sono open source, è possibile ad esempio creare una versione infetta che sembrerebbe normale, ma perde il codice sorgente su alcuni server remoti o infetta i programmi creati dal software con un virus (penso che ciò sia effettivamente accaduto ad alcune versioni di Delphi) o qualcosa di simile. Per tale motivo, è importante disporre dell'hash corretto ufficiale che può essere utilizzato per verificare se il file distribuito è ciò che si ritiene sia.

Alcune riflessioni sui canali di distribuzione. Spesso è possibile trovare software gratuito su una grande quantità di siti e i siti più popolari come SourceForge, ad esempio hanno un gran numero di mirror. Diciamo che c'è un server in Barland che rispecchia un grande sito di distribuzione software. FooSoft utilizza il programma distribuito per sito e si trovano nella Repubblica di Baz, che si trova proprio accanto a Barland. Se qualcuno volesse infiltrarsi in FooSoft, potrebbe modificare solo la copia nel mirror Barland e sperare che il software di geolocalizzazione si assicuri che FooSoft ottenga le versioni modificate. Poiché le versioni di altri mirror vanno bene, è più probabile che venga rilevato malware. Puoi anche fare in modo che il malware rilevi l'indirizzo IP del computer e si attivi solo se proviene da un certo intervallo, riducendo così le possibilità di scoperta e così via.


1
+1 Viene utilizzato anche per motivi di sicurezza, ovvero file infetti ...
StackTranslate.it è morto il

@BloodPhilia Infatti. Stavo solo scrivendo di alcuni motivi di sicurezza.
AndrejaKo

Grazie! Ho pensato che dovesse essere qualcosa lungo quei motivi, ma non sono riuscito a trovare una risposta solida altrove.
Zac,

3
Bella risposta;)
Stack Overflow è morto il

1

MD5 e SHA1 non sono solo checksum. Sono checksum crittografici. Ciò significa che in teoria due file diversi potrebbero avere lo stesso checksum, ma la probabilità è molto piccola, quasi 0. Di conseguenza, si usa il contrario: checksum diversi significano che si ottengono contenuti diversi con una probabilità di quasi 1. Quindi i checksum crittografici vengono utilizzati per rilevare le modifiche nei file. Questi possono essere cambiamenti dannosi fatti apposta o solo errori verificatisi durante i download.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.