Una funzione di hash trasforma un dato in un’impronta di dimensione determinata. Modificare anche leggermente il dato produce normalmente un’impronta diversa. Questa proprietà rende gli hash utili per integrità e confronto, ma un hash non è cifratura.
Hash e cifratura hanno scopi diversi
La cifratura rende un dato illeggibile senza la chiave necessaria a decifrarlo. Un hash è invece una trasformazione a senso unico usata per produrre un’impronta. Non si “decifra” un hash per recuperare il file originale.
Confrontare due impronte
Se due file producono la stessa impronta con lo stesso algoritmo, il confronto offre un modo pratico per verificare che corrispondano. La fiducia dipende però dall’origine dell’impronta di riferimento: confrontare un file compromesso con un hash ottenuto dallo stesso canale compromesso non crea una fonte di fiducia indipendente.
Gli algoritmi non sono intercambiabili
SHA-256 è ancora molto usato per verificare l’integrità di file e in numerosi protocolli. SHA-3 offre un’altra famiglia moderna. MD5 e SHA-1 possono comparire in sistemi legacy o controlli non avversariali, ma le debolezze note sulle collisioni li rendono inadatti a molti usi di sicurezza.
Se un editore pubblica più impronte, scegli l’algoritmo moderno raccomandato anziché quello più corto o familiare.
Collisioni e proprietà crittografiche
Poiché l’insieme degli input è più grande dell’insieme delle possibili impronte, le collisioni sono matematicamente inevitabili. La sicurezza deriva dal fatto che, per un buon algoritmo moderno, costruire deliberatamente una collisione utile deve essere impraticabile nel contesto considerato.
La lunghezza dell’hash non è quindi una garanzia assoluta indipendente dall’algoritmo e dal modello di minaccia.
Verificare un download
Un caso comune consiste nel calcolare l’hash del file scaricato e confrontarlo con un valore pubblicato da una fonte affidabile. Se i valori differiscono, il contenuto non corrisponde. Se coincidono, sai che il file corrisponde alla referenza confrontata.
Questo non prova da solo l’origine del file. Per una garanzia più forte sull’autenticità può essere necessaria una firma digitale.