Vai al contenuto
Integrità e blockchain6 min di lettura

Hash di un documento: cos’è e come verificare un file con SHA-256

Cos’è l’hash di un documento e come calcolare SHA-256 su Windows, macOS e Linux. Esempi, confronto tra versioni e differenze rispetto a una firma digitale.

Illustrazione di un documento collegato a un’impronta digitale e a una registrazione temporale
L’impronta è una metafora visiva: un hash è una sequenza di bit calcolata sul file, non un dato biometrico.

L’hash di un documento è un valore calcolato a partire dai byte del file. Serve a confrontare due copie o due versioni senza doverle esaminare pagina per pagina. Con SHA-256 il risultato ha una lunghezza fissa di 256 bit, normalmente rappresentati con 64 caratteri esadecimali, indipendentemente dalla dimensione del documento.

Il controllo risponde a una domanda precisa: «Questo file corrisponde al riferimento che sto usando?». Non risponde, da solo, a «Chi lo ha scritto?» o «Il suo contenuto è corretto?». Ecco come usare l’impronta in modo utile, senza confonderla con una firma o con una prova temporale.

Che cosa misura davvero un hash

Una funzione hash crittografica prende una sequenza di byte e produce un’impronta deterministica: stessi byte e stesso algoritmo danno lo stesso risultato. Cambiare il file, anche in una parte che non si vede sullo schermo, può cambiare l’impronta.

SHA-256 appartiene alla famiglia SHA-2 descritta nel Secure Hash Standard del NIST. La resistenza alle collisioni rende estremamente difficile trovare due file diversi con lo stesso hash; non significa che una collisione sia matematicamente impossibile.

Per esempio, due PDF possono apparire identici ma contenere metadati diversi. Un programma può aggiornare la data interna del documento durante il salvataggio: il testo visibile resta uguale, i byte no. L’hash confronta il file, non il significato delle sue frasi.

Calcolare SHA-256 su Windows, macOS e Linux

I comandi seguenti leggono un file locale e non lo caricano su un servizio online. Sostituisci report.pdf con il percorso del tuo documento. È utile lavorare sulla copia che intendi davvero distribuire, dopo l’ultima esportazione.

Windows: PowerShell

Get-FileHash -LiteralPath "./report.pdf" -Algorithm SHA256

La colonna Hash contiene l’impronta. -LiteralPath tratta il percorso come nome letterale, mentre l’algoritmo esplicito rende il comando più chiaro a chi dovrà ripetere la verifica. La documentazione di Get-FileHash descrive parametri e risultato.

macOS: Terminale

shasum -a 256 ./report.pdf

Il comando restituisce l’impronta seguita dal nome del file. Se il percorso contiene spazi, racchiudilo tra virgolette. Controlla di aver selezionato SHA-256, non l’algoritmo predefinito di un altro comando.

Linux: Terminale

sha256sum ./report.pdf

Anche in questo caso il risultato contiene hash e percorso. Gli strumenti SHA-2 di GNU Coreutils permettono inoltre di verificare elenchi di impronte, una funzione utile per archivi con più file.

Confrontare il risultato con un riferimento affidabile

Calcolare un hash senza un termine di confronto non dimostra che il documento sia quello atteso. Devi sapere da dove proviene l’impronta di riferimento e a quale versione si riferisce.

  1. Recupera l’hash dal canale ufficiale dell’emittente o da una prova verificabile collegata al documento.
  2. Controlla che l’algoritmo dichiarato sia SHA-256 e che il riferimento riguardi il file che hai scaricato.
  3. Calcola l’impronta della tua copia senza aprirla e risalvarla prima del controllo.
  4. Confronta tutta la sequenza, non soltanto i primi o gli ultimi caratteri. Maiuscole e minuscole nella rappresentazione esadecimale non cambiano il valore.
  5. Conserva l’esito insieme al riferimento usato e alla versione verificata.

Un hash pubblicato accanto al download può aiutare a rilevare errori di trasferimento. Se però un soggetto riesce a sostituire sia il file sia il valore riportato nella stessa pagina, il confronto non rileva quella sostituzione. L’affidabilità del riferimento è quindi parte del controllo, non un dettaglio accessorio.

Quali modifiche cambiano l’impronta

Operazione Conseguenza da aspettarsi
Rinominare il file nel sistema operativo Non cambia l’hash se il contenuto in byte resta identico
Spostare una copia senza trasformazioni L’impronta resta uguale
Correggere una parola nel PDF Cambiano i byte e l’impronta attesa
Esportare nuovamente lo stesso documento Può produrre byte diversi, anche senza modifiche visibili
Comprimere o convertire un’immagine Il nuovo file richiede un riferimento distinto
Fare uno screenshot di una pagina Si crea un nuovo contenuto, non una copia verificabile del file originale

Se il confronto fallisce, la conclusione corretta è che il file non coincide con il riferimento. Per capire se si tratta di un aggiornamento legittimo, di una conversione o di un’alterazione, servono ulteriori informazioni. Non è corretto dedurre automaticamente una frode.

Hash, firma digitale e notarizzazione: ruoli diversi

L’hash consente un confronto di integrità. Una firma crittografica aggiunge un collegamento a una chiave di firma, da valutare attraverso il relativo modello di fiducia. Una registrazione esterna può aggiungere un riferimento temporale all’impronta. Nessuno di questi elementi va interpretato oltre il proprio ambito.

La notarizzazione blockchain di un documento usa tipicamente un’impronta per collegare una versione a un registro. Le Content Credentials organizzano invece dichiarazioni di provenienza, firme e relazioni con gli asset. Le due funzioni possono essere complementari, ma non sono sinonimi.

L’hash non è neppure una cifratura: non protegge la riservatezza del documento. Non è progettato per essere invertito, ma chi possiede una possibile copia può calcolarne l’impronta e cercare una corrispondenza. Evita quindi di considerare la sola pubblicazione di un hash una garanzia universale di anonimato.

Un piccolo processo per documenti aziendali

Immagina di pubblicare un report trimestrale. Prima approvi ed esporti la versione finale; poi ne calcoli l’impronta, associ un identificativo di versione e conservi il file esatto. Infine pubblichi il documento con un riferimento che il destinatario possa verificare.

Se correggi il report, genera una nuova versione e una nuova prova. Mantieni leggibile la relazione con la precedente, invece di sovrascrivere silenziosamente il file dietro lo stesso collegamento. Nel workflow CMS e API questo passaggio diventa una regola del processo di pubblicazione.

Domande frequenti

Per applicare il confronto a un documento ricevuto, consulta la guida per verificare se un PDF è stato modificato: distingue impronta, firma e revisione del testo.

Posso ricostruire un PDF partendo dall’hash?

No: l’impronta non contiene una copia recuperabile del documento. Devi conservare il file originale. Un hash non è un backup né un sistema di archiviazione.

Due hash diversi significano che il testo è diverso?

Significano che i byte non coincidono, se il confronto usa lo stesso algoritmo. Il cambiamento potrebbe riguardare soltanto metadati, struttura interna o compressione, senza alterare il testo visibile.

Basta inviare il file e il suo hash nella stessa email?

Può essere utile per un controllo operativo, ma non offre un riferimento indipendente se entrambi vengono sostituiti. Per esigenze più forti occorre progettare il canale di distribuzione e la prova di riferimento in funzione del rischio.

Fonti e approfondimenti

Riferimenti tecnici ed editoriali consultati per questa guida. Gli esempi sono illustrativi: non documentano casi reali o specifiche integrazioni.