Come verificare il checksum di un file scaricato (pgp, sha, ecc.)?

6

Forse sono stato negligente nei confronti della verifica del software che ho scaricato su Internet, ma io (o chiunque altro abbia mai incontrato) non ho mai provato a verificare il checksum dei contenuti che ho scaricato. E a causa di ciò, non ho idea di come verificare l'integrità dell'elemento scaricato.

Quindi, come posso verificare il checksum di un file scaricato?

    
posta ThankYouSRT 05.07.2018 - 11:20
fonte

2 risposte

6

Solitamente ciò dovrebbe iniziare dal lato dei proprietari visualizzando il checksum per il file che si desidera scaricare. Quale sarebbe simile al seguente:

md5: ba411cafee2f0f702572369da0b765e2

sha256: 2e17b6c1df874c4ef3a295889ba8dd7170bc5620606be9b7c14192c1b3c567aa

Ora, a seconda del sistema operativo che si sta utilizzando, una volta scaricato il file richiesto, è possibile calcolarne un hash.

di Windows

Su un computer Windows, è necessario aprire il prompt dei comandi, accedere alla directory del file scaricato, ad es. La cartella Download, quindi utilizza la funzione incorporata CertUtil , seguita dal nome file e quindi dall'algoritmo di hash che desideri utilizzare. Il comando sarebbe simile a questo.

CertUtil -hashfile filename MD5 o CertUtil -hashfile filename SHA256 ecc. ecc.

Dove sostituiresti filename con il nome del file di cui desideri ottenere un hash.

Linux

Per una macchina Linux il processo è molto simile. Basta navigare nella directory del file che si desidera ottenere l'hash di, quindi digitare md5sum filename o sha256sum filename . Semplice!

MacOS

Il credito va a Little Tiny Man per il suo commento su come calcolare hash per Mac, per OS X i comandi sono md5 & shasum -a 256 rispettivamente per MD5 e SHA

Il problema che viene fornito controllando un hash da un sito Web è che non determina che il file è sicuro da scaricare, solo che quello che hai scaricato è il file corretto, byte per byte. Se il sito Web è stato compromesso, potresti visualizzare l'hash per un file diverso, che a sua volta potrebbe essere dannoso.

    
risposta data 05.07.2018 - 11:46
fonte
2

Checksum vs hash vs firme

Hai menzionato checksum, PGP e SHA nel titolo della tua domanda, ma queste sono tutte cose diverse.

Che cos'è un checksum?

Un checksum si limita a verificare con un alto grado di confidenza che non c'è stata corruzione che ha causato la differenza tra un file copiato dall'originale (per diverse definizioni di "alto"). In generale un checksum non garantisce che non siano state apportate modifiche intenzionali e in molti casi è banale modificare il file pur avendo lo stesso checksum. Esempi di checksum sono CRC, Adler-32, XOR (byte di parità).

Che cos'è un hash crittografico?

Gli hash crittografici forniscono proprietà aggiuntive su semplici checksum (tutti gli hash crittografici possono essere usati come checksum, ma non tutti i checksum sono hash crittografici).

Gli hash crittografici (che non sono rotti o deboli) forniscono la collisione e la resistenza al preimage. Resistenza alla collisione significa che non è possibile creare due file con lo stesso hash e la resistenza di preimage significa che non è possibile creare un file con lo stesso hash di un file di destinazione specifico.

MD5 e SHA1 sono entrambi infranti rispetto alle collisioni, ma sono sicuri contro gli attacchi di pre-immagine (a causa del compleanno paradosso le collisioni sono molto più facili da generare). SHA256 è comunemente usato oggi, ed è sicuro contro entrambi.

Utilizzo di un hash crittografico per verificare l'integrità

Se prevedi di utilizzare un hash per verificare un file, devi ottenere l'hash da un'origine attendibile separata . Recuperare l'hash dallo stesso sito da cui stai scaricando i file non garantisce nulla. Se un utente malintenzionato è in grado di modificare i file su quel sito o intercettare e modificare la connessione, può semplicemente sostituire i file con versioni dannose e modificare gli hash in modo che corrispondano.

L'uso di un hash che non è resistente alla collisione può essere problematico se il tuo avversario può modificare il file legittimo (ad esempio, contribuendo a una soluzione di bug apparentemente innocente). Potrebbero essere in grado di creare una modifica innocente nell'originale che gli causi lo stesso hash di un file dannoso, che potrebbero quindi inviarti.

Il miglior esempio di dove ha senso verificare un hash è quando si recupera l'hash dal sito Web affidabile del software (utilizzando HTTPS ovviamente) e si utilizza per verificare i file scaricati da un mirror non attendibile.

Come calcolare un hash per un file

Su Linux puoi usare le utilità md5sum , sha1sum , sha256sum , etc. La risposta di Connor J fornisce esempi per Windows.

Che cos'è una firma?

A differenza dei checksum o degli hash, una firma implica un segreto. Questo è importante, perché mentre l'hash per un file può essere calcolato da chiunque, una firma può essere calcolata solo da qualcuno che ha il segreto.

Le firme usano la crittografia asimmetrica, quindi c'è una chiave pubblica e una chiave privata. Una firma creata con la chiave privata può essere verificata dalla chiave pubblica, ma la chiave pubblica non può essere utilizzata per creare firme. In questo modo se firmo qualcosa con la mia chiave, puoi sapere per certo che ero io.

Ovviamente, ora il problema è come assicurarsi di usare la chiave pubblica giusta per verificare la firma. La distribuzione delle chiavi è un problema difficile e, in alcuni casi, sei tornato al punto in cui ti trovavi con gli hash, ma devi ancora recuperarlo da una fonte attendibile separata. Tuttavia, come spiega la risposta , potresti anche non dovertene preoccupare. Se stai installando software tramite un gestore di pacchetti o utilizzando file eseguibili firmati, la verifica della firma viene probabilmente gestita automaticamente utilizzando le chiavi pubbliche preinstallate (la distribuzione delle chiavi è gestita dalla fiducia implicita nel supporto di installazione e da chi ha effettuato l'installazione).

Domande correlate

risposta data 10.07.2018 - 22:02
fonte

Leggi altre domande sui tag