Come si usa
- Seleziona Testo e digita o incolla il testo, oppure seleziona File e scegli o trascina un file.
- Leggi i valori MD5, SHA-1, SHA-256, SHA-384 e SHA-512. Scegli tra esadecimale minuscolo, esadecimale maiuscolo e Base64.
- Per verificare un download, incolla nella casella di confronto il checksum pubblicato dal fornitore. L'algoritmo corrispondente viene evidenziato.
- Copia un singolo hash oppure usa «Copia tutto» per copiare tutti gli hash insieme al nome dell'algoritmo.
Come funziona
Una funzione hash trasforma qualsiasi input in un'impronta di lunghezza fissa. Lo stesso input produce sempre lo stesso hash, mentre basta cambiare un solo bit per ottenere un risultato completamente diverso. Per questo gli hash sono utili per verificare che un file sia stato scaricato senza corruzioni o manomissioni.
SHA-1, SHA-256, SHA-384 e SHA-512 vengono calcolati con la Web Crypto API integrata nel browser. Web Crypto non supporta MD5, quindi questa pagina include un'implementazione propria di RFC 1321, verificata con i vettori di test standard. Il testo viene convertito in byte UTF-8 prima del calcolo: perciò «é» viene elaborata come due byte, e uno spazio finale o un'interruzione di riga modificano il risultato.
MD5 e SHA-1 non sono sicuri per gli usi crittografici: i ricercatori possono creare due input diversi con lo stesso hash. Sono comunque adatti a rilevare corruzioni accidentali e a confrontare i checksum pubblicati da un fornitore, ma non vanno usati per firme o certificati. Non usare un hash semplice per memorizzare password: scegli un algoritmo lento per l'hashing delle password, come Argon2, scrypt o bcrypt.
I file fino a 200 MB vengono caricati in memoria. MD5 viene calcolato a blocchi, con brevi pause per mantenere la pagina reattiva; viene inoltre mostrato un messaggio di avanzamento. I file molto grandi possono richiedere diversi secondi sui telefoni.
Esempi
Verificare un file ISO scaricato
La pagina di download di una distribuzione Linux riporta un checksum SHA-256. Scegli File, trascina il file .iso, incolla il valore pubblicato nel campo di confronto e verifica che compaia «Corrispondenza: … SHA-256». Se i valori non corrispondono, il file è incompleto o non è quello originale.
Un valore di test noto
Il testo «abc» ha hash MD5 900150983cd24fb0d6963f7d28e17f72 e hash SHA-256 ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad. Usalo per verificare che un altro strumento produca gli stessi risultati.
Base64 per gli header HTTP
Subresource Integrity e alcune API richiedono un hash SHA-256 o SHA-384 in Base64 anziché in esadecimale. Cambia il formato di output in Base64 e copia il valore SHA-384.
Domande frequenti
Perché il mio hash è diverso da quello prodotto da un altro strumento per lo stesso testo?
Di solito l'input presenta una differenza invisibile: un'interruzione di riga finale, terminazioni di riga Windows (CRLF), una codifica del testo diversa o uno spazio iniziale. Questo strumento calcola l'hash esattamente sui byte UTF-8 del contenuto inserito nel campo.
Si può invertire un hash per ottenere il testo originale?
No. Le funzioni hash sono unidirezionali. Gli input brevi o comuni possono comunque essere individuati provando diverse possibilità: per questo le password richiedono un algoritmo lento e con salt, invece di un hash semplice.
MD5 è ancora sicuro da usare?
Non per motivi di sicurezza. Le collisioni MD5 e SHA-1 possono essere create appositamente, quindi questi algoritmi non proteggono dalle manomissioni intenzionali. Sono comunque utili per rilevare danni accidentali, ma SHA-256 è la scelta consigliata.
I miei file vengono caricati?
No. I file vengono letti tramite la File API del browser e sottoposti a hashing in questa scheda. Non viene inviato nulla a un server e, una volta caricata, la pagina funziona anche offline.
Qual è la dimensione massima di un file di cui posso calcolare l'hash?
200 MB. L'intero file viene caricato in memoria, quindi i file più grandi potrebbero esaurire la memoria di telefoni e computer meno recenti. Per i file più grandi, usa uno strumento da riga di comando come sha256sum o certutil.
Privacy
Il testo e i file vengono elaborati nel browser e non vengono mai caricati. Né i dati inseriti né gli hash vengono salvati o inviati ai sistemi di analisi; viene registrato solo un evento anonimo che indica l'uso dello strumento.