Checksum
Inserisci un testo e i checksum vengono calcolati con quattro metodi insieme.
0 Caratteri · 0 Byte
Checksum
- SHA-1160 bit
Scrivi qualcosa nel campo qui sopra.
- SHA-256256 bit
Scrivi qualcosa nel campo qui sopra.
- SHA-384384 bit
Scrivi qualcosa nel campo qui sopra.
- SHA-512512 bit
Scrivi qualcosa nel campo qui sopra.
Il testo non lascia mai il tuo browser. Si calcola con la funzione crittografica del browser stesso.
Come funziona
Un checksum crittografico trasforma un testo di lunghezza qualsiasi in un numero fisso di caratteri. Lo stesso testo dà sempre lo stesso checksum, mentre il più piccolo cambiamento ne dà uno completamente diverso.
La funzione va in una direzione sola. Non c’è modo di risalire dal checksum al testo, ed è esattamente il suo scopo.
I checksum servono a confrontare file, a riconoscere le modifiche e come mattone nelle firme e nei certificati.
SHA-1 non è più considerato sicuro. Dal 2017 esistono modi praticabili per produrre due testi diversi con lo stesso checksum SHA-1, quindi usalo solo per dialogare con sistemi più vecchi.
Le password non vanno conservate con queste funzioni. Sono costruite per la velocità, il che rende facile provarle a tappeto. Per le password si usano funzioni costruite apposta e deliberatamente lente, come Argon2id, scrypt e PBKDF2, sempre con un sale. Le linee guida dell’ACN considerano bcrypt ormai datato e non lo raccomandano.
Il testo viene codificato come UTF-8 prima del calcolo, così le lettere accentate danno qui lo stesso checksum che in altri strumenti corretti.
Come funziona lo strumento
Il testo viene trasformato in UTF-8 e passato a crypto.subtle.digest del browser, che calcola insieme SHA-1, SHA-256, SHA-384 e SHA-512. I checksum sono scritti in esadecimale minuscolo, due caratteri per byte: 40 caratteri per SHA-1, 64 per SHA-256, 96 per SHA-384 e 128 per SHA-512. Vengono ricalcolati a ogni carattere che scrivi.
Gli stessi byte danno sempre lo stesso checksum in qualsiasi strumento corretto, ma lo stesso testo può diventare byte diversi. In UTF-8 la è occupa due byte, C3 A8, mentre nella vecchia codifica Latin-1 è un byte solo, E8. Una parola come caffè dà quindi qui un checksum diverso da quello di un programma che lavora in Latin-1.
Esempio
Il testo abc dà il checksum SHA-256 ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad, lo stesso valore che il NIST riporta nel suo esempio di prova per l’algoritmo. Se abc è seguito da un a capo, come quello che aggiunge il comando echo, il checksum diventa invece edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb. L’a capo nel testo non si vede, ma il checksum è un altro.
Casi limite
Lo strumento calcola il checksum di un testo, non di un file. Il checksum di un file scaricato si calcola sui byte del file, per esempio con certutil -hashfile su Windows o con sha256sum su Linux. Incollare il contenuto del file dà lo stesso checksum solo se il testo è identico byte per byte.
Gli a capo sono la causa più comune di checksum che non tornano. Lo standard HTML chiede che una casella di testo trasformi ogni a capo in un LF semplice, quindi il testo di un file con gli a capo di Windows, CR LF, ha qui un checksum diverso da quello di certutil. Contano anche gli spazi a fine riga e un a capo finale.
Le raccomandazioni dell’ACN
Le linee guida sulle funzioni di hash dell’Agenzia per la Cybersicurezza Nazionale (versione 1.1, maggio 2026) dichiarano MD5 e SHA-1 obsoleti e non li consigliano per nessuna applicazione. Fra le funzioni dello strumento raccomandano SHA-256, SHA-384 e SHA-512, della famiglia SHA-2. Le linee guida dell’ACN sulla conservazione delle password sconsigliano invece di conservare una password con una sola applicazione di una funzione di hash come queste, e indicano funzioni costruite per quello scopo, come PBKDF2, scrypt e Argon2id, sempre con un sale.
Fonti
- FIPS 180-4 (NIST)
- NIST – Example values, SHA-256
- ACN – Linee guida funzioni crittografiche: funzioni di hash (v1.1, maggio 2026)
- ACN – Linee guida funzioni crittografiche: conservazione delle password (v1.1, maggio 2026)
- WHATWG – HTML Standard, l’elemento textarea
- Microsoft Learn – certutil
- GNU Coreutils – sha2 utilities