Verificatore di Checksum dei File

Calcola il checksum SHA-256, SHA-512 o SHA-1 di un file direttamente nel tuo browser e confrontalo con l'hash pubblicato dallo sviluppatore — verifica che il tuo download sia arrivato integro e senza modifiche, senza che nulla venga caricato su alcun server.

221 visualizzazioni

Trascina un file qui, oppure fai clic per scegliere

Perché i distributori di software pubblicano i checksum

Quando scarichi una ISO di Linux, un eseguibile open source o un programma di installazione firmato, la pagina di download riporta di solito un checksum accanto al file — una breve stringa come a94a8fe5ccb19ba61c4c0873d391e987982fbbd. Questa stringa è il risultato dell'esecuzione di una funzione di hash crittografica su ogni singolo byte del file. Se anche un solo bit cambia in un punto qualsiasi del file, l'hash risulta completamente diverso. I distributori lo pubblicano affinché, dopo aver scaricato il file, tu possa eseguire da solo la stessa funzione di hash e confrontare il tuo risultato con quello pubblicato. Se le due stringhe coincidono esattamente, puoi essere certo che la copia sul tuo disco contiene esattamente gli stessi byte che il distributore ha compilato e caricato — niente è stato aggiunto, niente manca, niente è stato alterato.

Un checksum individua due tipi di problemi molto diversi tra loro. Il primo è banale: le connessioni di rete si interrompono a metà trasferimento, i proxy troncano i file di grandi dimensioni e i dischi scrivono talvolta su settori danneggiati — in ognuno di questi casi puoi ritrovarti con un file che sembra completo (dimensione corretta, si apre senza errori evidenti) ma che differisce dall'originale per una manciata di byte corrotti, il che spesso basta a bloccare un'installazione o a corrompere silenziosamente i dati in seguito. Il secondo è di tipo avversariale: se un aggressore compromette un server mirror o intercetta un download in transito sostituendolo con un eseguibile modificato che include malware, confrontare il checksum con il valore pubblicato sulla pagina ufficiale e affidabile è uno dei pochi controlli capaci di scoprirlo davvero — un nome file e una dimensione sono banali da falsificare, ma riprodurre un hash identico richiede di possedere esattamente gli stessi byte originali.

I checksum non sono crittografia

Vale la pena essere precisi su cosa verifica davvero un checksum, perché la terminologia genera spesso confusione. L'hashing è un'operazione a senso unico, irreversibile: SHA-256 trasforma un file in una stringa esadecimale fissa di 64 caratteri, ma non esiste alcuna operazione in grado di trasformare quella stringa di nuovo nel file originale. Questo basta a dimostrare che non si tratta di crittografia — la crittografia è pensata per essere reversibile con la chiave giusta, l'hashing è pensato per non essere mai reversibile. Un checksum verifica l'integrità, non la riservatezza: conferma che i byte che hai sono gli stessi byte sottoposti a hash. Chiunque abbia accesso al file può comunque leggerne ogni byte in chiaro; l'hashing non nasconde in alcun modo il contenuto. Ciò che garantisce è che, se anche un solo byte venisse modificato — di proposito o per errore — l'hash calcolato non corrisponderebbe più a quello pubblicato, e lo sapresti immediatamente.

Questa distinzione conta anche nella scelta dell'algoritmo. SHA-1 è stato ufficialmente considerato compromesso dal punto di vista della sicurezza crittografica nel 2017, quando ricercatori di Google e del CWI di Amsterdam hanno pubblicato l'attacco "SHAttered": due file PDF distinti costruiti per produrre lo stesso hash SHA-1, a dimostrazione che un aggressore sufficientemente motivato può costruire un file dannoso che condivide un checksum con uno legittimo. Questo risultato ha ritirato SHA-1 da qualsiasi impiego critico per la sicurezza — certificati TLS, firme digitali, difesa da un attore ostile che costruisce deliberatamente una collisione. Ma per il caso molto più comune affrontato da questo strumento — verificare che un download non si sia corrotto per una connessione instabile — SHA-1 funziona ancora bene nella pratica, perché nessuno sta costruendo apposta il tuo download corrotto per farlo coincidere con un hash bersaglio; la corruzione accidentale è un capovolgimento casuale di bit, non la costruzione intenzionale di una collisione. Detto questo, quando un distributore offre la scelta, SHA-256 non costa nulla in più da calcolare e chiude del tutto questa lacuna, per cui resta l'opzione predefinita più prudente.

Domande Frequenti

Cosa verifica esattamente un checksum?

Un checksum è il risultato dell'esecuzione di una funzione di hash crittografica (SHA-256, SHA-512 o SHA-1) su ogni byte di un file. Conferma l'integrità: che il file che hai è identico byte per byte al file che ha prodotto l'hash pubblicato. Non dice nulla sul significato, la sicurezza o l'origine del contenuto — solo che nessun byte è stato aggiunto, rimosso o modificato da quando l'hash è stato generato.

Perché l'hash del file che ho scaricato non corrisponde a quello sul sito?

La causa più comune, di gran lunga, è un download incompleto o corrotto — riprova, idealmente con un gestore di download che supporti la ripresa. Altre cause possibili: hai confrontato l'hash di una versione o di un file diverso presente sulla stessa pagina, oppure hai incluso per errore spazi o caratteri extra copiando l'hash atteso. Riscarica dalla fonte ufficiale e verifica di nuovo prima di supporre che sia successo qualcosa di dannoso; una manomissione reale è rara, ma è esattamente lo scenario che i checksum servono a intercettare.

SHA-1 è ancora sicuro per verificare i download?

Per confermare una corruzione accidentale — una connessione caduta, un settore del disco danneggiato — sì, SHA-1 funziona ancora bene nella pratica. Per qualsiasi scenario in cui un aggressore motivato potrebbe costruire deliberatamente un file dannoso che coincida con un hash specifico, no: SHA-1 è stato compromesso dall'attacco di collisione "SHAttered" del 2017, condotto da Google e dal CWI di Amsterdam, che ha dimostrato che due file diversi possono condividere lo stesso hash SHA-1. Quando hai la possibilità di scegliere, SHA-256 elimina del tutto il dubbio senza alcun costo aggiuntivo.

Qual è la differenza tra SHA-256 e SHA-512 per questo scopo?

Entrambi appartengono alla famiglia SHA-2 e non presentano debolezze crittografiche pratiche note. SHA-512 opera internamente con parole a 64 bit anziché le parole a 32 bit di SHA-256, quindi su hardware a 64 bit può calcolare a una velocità simile o persino superiore, pur producendo un digest più lungo, di 128 caratteri. Per la verifica quotidiana dei checksum vanno bene entrambi — usa quello che il distributore ha effettivamente pubblicato, perché è l'unico valore con cui devi confrontarti.

Un checksum corrispondente dimostra che il file è sicuro o chi lo ha pubblicato?

No. Una corrispondenza dimostra solo che i byte che hai sono quelli che hanno prodotto un determinato hash atteso — non dice nulla sul fatto che quell'hash atteso provenga a sua volta da una fonte affidabile. Se un aggressore compromette la stessa pagina che elenca il checksum atteso, può pubblicare un hash corrispondente per il proprio file dannoso, e la verifica risulterà comunque positiva. I checksum rispondono alla domanda "il file è arrivato integro", non a "è stato pubblicato da chi dice di averlo fatto" — questa seconda domanda richiede una firma crittografica (come PGP/GPG), non un semplice hash.

Commenti

Ancora nessun commento — scrivi il primo!

Strumenti Simili