Generatore di hash: SHA-256, SHA-512, SHA-1, MD5
Digita un testo o scegli un file: il generatore calcola subito i checksum SHA-256, SHA-384, SHA-512 e SHA-1, e su richiesta anche MD5. Incolla un hash atteso (ad esempio da una pagina di download) per confrontarlo subito. Tutto avviene nel browser – i file non vengono mai caricati.
Come si calcola
Una funzione di hash trasforma dati di lunghezza qualsiasi in un valore di lunghezza fissa – l’hash, l’impronta o il checksum. Lo stesso input dà sempre lo stesso hash; cambiando un solo carattere se ne ottiene uno completamente diverso. Non è possibile risalire dall’hash all’input.
Gli algoritmi
- SHA-256 (256 bit, 64 caratteri esadecimali): lo standard odierno – per checksum di download, Git, certificati e blockchain. Specificato, come SHA-384 e SHA-512, nello standard NIST FIPS 180-4.
- SHA-384 e SHA-512 (96 e 128 caratteri esadecimali): membri più lunghi della famiglia SHA-2; sulle macchine a 64 bit SHA-512 è spesso più veloce di SHA-256.
- SHA-1 (40 caratteri esadecimali): considerato compromesso dal primo attacco pratico di collisione nel 2017. Il NIST lo ha vietato per le firme digitali; si trova ancora come semplice checksum, ad esempio nelle vecchie versioni di Git.
- MD5 (32 caratteri esadecimali): compromesso dal 2004 (RFC 6151). Due file diversi con lo stesso MD5 si creano in pochi secondi. Utile solo come checksum contro errori di trasmissione accidentali. Poiché i browser non includono MD5, lo strumento usa una propria implementazione, verificata con i valori di test della RFC 1321.
Verificare un download
Molti progetti pubblicano un checksum SHA-256 accanto al file. Seleziona qui il file e incolla il valore pubblicato in «Confronta con l’hash atteso» – se corrisponde, il file è arrivato integro. Maiuscole/minuscole, spazi e due punti nel valore atteso non contano. Su Windows puoi ottenere lo stesso risultato con certutil -hashfile file SHA256, su macOS e Linux con shasum -a 256 file o sha256sum file.
Perché il mio hash è diverso?
Di solito per caratteri invisibili: echo testo | sha256sum calcola l’hash del testo con un ritorno a capo, echo -n senza. Anche i fine riga di Windows (CR LF invece di LF), un byte order mark o una codifica diversa da UTF-8 cambiano l’hash.
Hash e password
Hash veloci come SHA-256 o MD5 non sono adatti a memorizzare le password – un attaccante può provare miliardi di combinazioni al secondo. Usa invece algoritmi lenti e con salt come Argon2, scrypt o bcrypt.
Gli hash vengono calcolati con la Web Crypto API del browser. Il tuo testo, il file e il valore di confronto non vengono inviati, né salvati, né scritti nella barra degli indirizzi.
Domande frequenti
Come ottengo l’hash SHA-256 di un file?
Scegli il file in «Oppure calcola l’hash di un file» – il valore SHA-256 compare subito in alto nel risultato. Il file viene letto solo dentro il tuo browser e non viene mai caricato.
Un hash si può decifrare?
No. Un hash non è una cifratura ma una funzione a senso unico. Per input brevi o comuni (come password deboli), però, un attaccante può trovare un input corrispondente per tentativi o con tabelle precalcolate.
MD5 è ancora sicuro?
No. MD5 è compromesso dal 2004; le collisioni si generano in pochi secondi su un computer normale. Per la sicurezza usa SHA-256 o superiore. Come checksum contro errori di trasmissione accidentali, MD5 va ancora bene.
Perché il mio hash non corrisponde a quello della riga di comando?
La causa più comune è un ritorno a capo: echo "testo" | sha256sum aggiunge un \n. Usa echo -n o printf. Anche fine riga diversi (CR LF su Windows) o codifiche dei caratteri diverse cambiano l’hash.
Che differenza c’è tra output esadecimale e Base64?
È lo stesso hash scritto in modo diverso: l’esadecimale usa 2 caratteri per byte (SHA-256 = 64 caratteri), il Base64 è più corto (44 caratteri). Il Base64 si usa ad esempio in Subresource Integrity (integrity="sha256-…").
Fonti e riferimenti normativi
- FIPS 180-4: NIST FIPS 180-4 – Secure Hash Standard (SHS)
- NIST – Example values for SHA-1, SHA-256, SHA-384, SHA-512 (test vectors)
- RFC 1321: RFC 1321 – The MD5 Message-Digest Algorithm (Appendix A.5 test suite)
- RFC 6151: RFC 6151 – Updated Security Considerations for MD5 and HMAC-MD5
- NIST – Transitioning away from SHA-1 (SP 800-131A Rev. 2)
- MDN Web Docs – SubtleCrypto.digest()
Aggiornato al:
Strumenti correlati
- Codifica e decodifica Base64Codifica e decodifica Base64 e Base64url con UTF-8 corretto, più URL encode/decode (percent-encoding). Errori chiari, tutto in locale nel tuo browser.
- Generatore di passwordCrea password casuali sicure e passphrase facili da ricordare, con entropia in bit, direttamente nel browser: niente viene inviato né salvato.
- Generatore UUID: crea e verifica UUID v4 e v7Genera UUID online: versione 4 (casuale) o versione 7 (ordinata nel tempo), fino a 1000 alla volta. Verifica un UUID e leggi versione, variante e data.
- Tester regexTesta espressioni regolari JavaScript in tempo reale: corrispondenze evidenziate, gruppi di cattura in tabella, pattern spiegato. Gratis, nulla viene inviato.
- Verifica e calcolo della cifra di controllo di LuhnVerifica un numero con l’algoritmo di Luhn (modulo 10, ISO/IEC 7812-1) o calcola la cifra di controllo – solo controllo di formato, in locale nel browser.
- Abbinare i font – coppie per titoli e testoCoppie di font per titoli e testo con anteprima live, CSS pronto da copiare e disponibilità su Windows, Mac, iPhone e Android – solo font di sistema.