Sanyanggae LogoSanyanggae

☁️ Cloud e Sicurezza

Che cosa dimostra l'hash di un file? Integrità e autenticità con SHA-256

Scopri come SHA-256 confronta i byte anziché i nomi e come verificare un download. Distingui le cause delle differenze e il ruolo di riferimenti affidabili e firme digitali.

사냥개 (Sanyanggae)Pubblicato Aggiornato 13 minuti

Questa è una traduzione dell’originale coreano. Originale coreano · Revisione della traduzione: Revisione dell’IA

Diagramma esplicativo che distingue confronto dei byte, origine dell'hash di riferimento e limiti di interpretazione del risultato.
Diagramma esplicativo creato da Sanyanggae che distingue confronto dei byte, origine del riferimento e ambito di verifica. Non è una misurazione reale né un certificato di firma digitale.

1. Lo stesso nome non significa lo stesso contenuto

È facile pensare che un programma d'installazione sia stato scaricato correttamente quando nome e dimensione coincidono con la pagina di download. Tuttavia, il nome può cambiare e file della stessa dimensione possono contenere dati diversi. Viceversa, copiare una foto con un altro nome non ne modifica necessariamente i byte. Un hash facilita il confronto sottoponendo il contenuto a un calcolo definito che produce un valore breve. La domanda è se i byte ricevuti corrispondano a un riferimento affidabile, non soltanto se il nome sembri plausibile. La stessa domanda vale quando si sposta un backup su un altro dispositivo di archiviazione.

SHA-256 è un algoritmo che produce un hash di 256 bit a partire dall'input. In genere viene mostrato con 64 cifre esadecimali, perché ciascuna rappresenta quattro bit. La lunghezza del risultato non cresce proporzionalmente alla dimensione del file. Lo stesso algoritmo applicato agli stessi byte produce lo stesso risultato. Tuttavia, poiché valori di lunghezza finita rappresentano tutti gli input possibili, in linea di principio esistono collisioni: input diversi con lo stesso valore. Essere utile nei confronti pratici non significa assegnare un nome matematicamente unico a ogni file. L'RFC 6234 fornisce calcoli e dati di prova, anche per SHA-256.

2. Un hash non è cifratura né una copia in miniatura

Conoscere un hash non offre un pulsante di decifratura per recuperare il documento o la foto originale. La cifratura è progettata per recuperare l'originale con una chiave appropriata, mentre un hash crittografico non è un formato di archiviazione per ricostruirlo. Questo non significa nemmeno che pubblicare solo un hash mantenga segreto qualunque input. Se gli input possibili sono pochi, qualcuno può calcolarne gli hash e confrontarli. La spiegazione di SHA-256 per verificare file non deve quindi diventare il consiglio che applicare direttamente un hash alle password basti per conservarle. Verifica d'integrità, riservatezza e conservazione delle password hanno requisiti differenti.

Calcolare l'hash dell'intero file non significa confrontare soltanto i caratteri visibili. Frasi apparentemente identiche possono avere byte diversi per terminatori di riga, codifica o metadati interni. Un file estratto da un archivio è un oggetto di confronto diverso dall'archivio stesso. Se si normalizzano i caratteri o si modificano i terminatori prima del calcolo, si ottiene l'hash dei dati trasformati. Se il distributore pubblica il valore dell'archivio originale, confrontalo prima con l'archivio scaricato. È un'applicazione pratica della distinzione tra visualizzazione e byte illustrata nell'articolo precedente su Unicode e UTF-8.

3. Confrontare con lo stesso algoritmo e il riferimento corretto

Prima di verificare, controlla insieme versione, sistema operativo, nome del file e algoritmo nelle istruzioni ufficiali del distributore. Il valore di un programma d'installazione per un altro sistema o di un'altra versione non è il riferimento giusto. In PowerShell, Get-FileHash -LiteralPath '.\download.zip' -Algorithm SHA256 legge un file locale e ne calcola l'hash. Il comando non esegue il contenuto presente in quel percorso. La documentazione ufficiale di Microsoft spiega che il calcolo riguarda il contenuto e che cambiare solo il nome non modifica il valore. Adatta nome e percorso al file realmente ricevuto e non modificarlo durante il calcolo.

Nell'output, confronta tutti i 64 caratteri del campo Hash con il valore SHA-256 pubblicato. Alcuni caratteri uguali all'inizio o alla fine non dimostrano una corrispondenza completa. Le lettere esadecimali maiuscole e minuscole rappresentano gli stessi numeri; se compaiono altri caratteri o mancano cifre, verifica prima la copia. Una corrispondenza sostiene la coerenza tra i byte ricevuti e il riferimento ritenuto affidabile. Non controlla l'esattezza di un documento, la qualità del programma o comportamenti dannosi. Se il file di riferimento ha già un problema, una copia identica ha lo stesso hash. Il successo del calcolo e l'opportunità di usare il file richiedono valutazioni separate.

4. Una differenza richiede indagini, ma non prova un attacco

Supponiamo che un file di distribuzione ricevuto ieri non corrisponda al valore nelle istruzioni di oggi. È un esempio esplicativo, non il resoconto di un incidente reale. Controlla innanzitutto se le istruzioni riguardano la stessa versione, se hai scaricato un file per un altro dispositivo o se il calcolo è avvenuto prima della fine del download. Potresti aver calcolato l'hash di un file estratto anziché dell'archivio, oppure un editor potrebbe aver salvato nuovamente il documento. Occorre distinguere un cambio dell'oggetto confrontato da modifiche durante trasmissione o archiviazione. La sola differenza non rivela chi abbia cambiato cosa e quando.

Non eseguire subito un programma d'installazione con hash diverso per esaminarlo. Ricontrolla istruzioni ufficiali e riferimento, poi confronta un nuovo download. Se la differenza persiste, consulta eventuali correzioni o l'assistenza del distributore e conserva il risultato. Registra insieme ora, indirizzo di provenienza, versione, algoritmo e valore calcolato. Risultati ripetuti uguali indicano una lettura coerente del file locale attuale, ma non risolvono un riferimento pubblicato errato o un problema nella distribuzione. Sovrascrivere il riferimento con il risultato atteso elimina gli elementi necessari per valutare modifiche successive.

5. Perché fidarsi del riferimento e a cosa serve la firma digitale

Se un attaccante può cambiare sia il file sia l'hash pubblicato, può calcolare quello del file modificato e presentarlo come nuovo riferimento. NIST SP 800-175B spiega questo limite dell'hash senza chiave né firma. Ottenere il valore da una pagina HTTPS all'indirizzo ufficiale aiuta a controllare origine e percorso di trasmissione, ma non garantisce che il server di distribuzione stesso non sia compromesso. Conta dove e con quale procedura di fiducia si è ottenuto il riferimento, non quanto sembri lunga la stringa. Due valori copiati dalla stessa schermata che concordano non verificano da soli l'identità dell'autore.

Una firma digitale permette di verificare la relazione tra firma e dati mediante, per esempio, una chiave pubblica ottenuta in modo affidabile. Se il distributore offre una procedura di verifica, segui anche le istruzioni ufficiali per controllare proprietario e impronta della chiave. Fidarsi semplicemente di una chiave sconosciuta accanto a un file di origine incerta non risolve il punto iniziale della fiducia. Anche HMAC, che usa una chiave segreta condivisa, è uno strumento di autenticazione diverso da un hash ordinario, ma non una funzione da aggiungere arbitrariamente a ogni download per risolvere tutto. Una firma valida non dimostra che il programma sia privo di difetti o che il documento dica il vero. Corrispondenza dei byte, verifica della fonte e valutazione del contenuto sono collegate, ma ciascuna richiede le proprie prove.

6. Documentare l'ambito nei backup e nel lavoro condiviso

Per il backup delle foto personali, conservare i valori SHA-256 degli originali e confrontarli con le copie aiuta a rilevare cambiamenti durante uno spostamento. Proteggi anche l'elenco di riferimento, affinché non scompaia né venga sovrascritto insieme agli originali. Se un gestore di foto riscrive orientamento o metadati di scatto, l'hash può cambiare anche se la foto appare simile. Distingui prima se l'obiettivo è preservare esattamente i byte oppure il significato di una foto modificata. Per controllare un'intera cartella non basta l'hash di un file: conserva insieme l'elenco dei file inclusi, i percorsi relativi e i singoli valori.

Nella revisione collaborativa di documenti, un hash può anche identificare la versione esatta esaminata. Ma una corrispondenza non sostituisce la prova che qualcuno abbia davvero letto il testo completo o confrontato una traduzione. Registra cosa è stato esaminato, quando e come, poi collega il resoconto al valore del file. L'immagine di questo articolo è un diagramma esplicativo originale che organizza confronto dei byte, origine del riferimento e ambito di verifica; non è una misurazione reale né un certificato. Quando controlli un file, annota oggetto e algoritmo, provenienza del riferimento e limiti delle conclusioni consentite dal risultato. Così un'altra persona potrà ripetere la procedura senza esagerare il significato di corrispondenze o differenze.

Fonti e approfondimenti

Questo articolo si basa su fonti pubbliche. Citare un’organizzazione non implica che abbia revisionato o approvato il testo.

Informazioni sull’editore e contatti

Articoli sullo stesso tema