Hash di file in batch e verifica del manifest

Scelga o trascini molti file insieme: questa pagina calcola il digest MD5, SHA-1, SHA-256, SHA-384 o SHA-512 di ciascuno, interamente nel suo browser. Poi può copiare i risultati come righe compatibili con sha256sum per le note di rilascio, oppure incollare un manifest di checksum (SHA256SUMS, .sha256, .sfv, output BSD di openssl dgst) e la pagina indicherà quali file sono verificati, quali non corrispondono e quali mancano. Nulla viene caricato da nessuna parte. Per un singolo file con più algoritmi, veda il Generatore di hash.
Trascini qui i file, oppure clicchi per sceglierli
Fino a 50 file, 200 MB ciascuno. I file restano su questo computer.
Nessun file selezionato.
— output esadecimale; ne selezioni almeno uno.
Clicchi su una cella del digest per copiarla. Nomi e dimensioni sono sempre elencati, quindi la tabella funge anche da vista delle dimensioni dei file in batch.
La tabella dei digest comparirà qui dopo aver scelto i file e premuto Calcola.
Incolli un manifest in stile GNU (hash  nome), BSD (SHA256 (nome) = hash), SFV (nome crc32) o semplice (sha256=hash), oppure carichi direttamente il file .sha256 / SHA256SUMS / .sfv. Le righe che iniziano con ; sono trattate come commenti.
Privacy: ogni digest viene calcolato con il motore JavaScript e WebCrypto del browser — i file non lasciano mai questa scheda. Suggerimento: dopo aver verificato un download può chiudere questa pagina senza problemi; non è stato memorizzato nulla.

Cos'è l'hashing di file in batch?

Un checksum è un'impronta breve di un file: facendo passare i byte del file attraverso una funzione di hash si ottiene un digest che cambia con altissima probabilità anche se cambia un solo byte del file. I distributori di software pubblicano questi digest accanto ai download, così lei può verificare che il file ricevuto sia quello inviato: il download non è stato troncato o danneggiato e nessuno ha sostituito il contenuto.

Farlo un file alla volta va bene per un solo download. Appena ha una cartella di file, o un archivio di rilascio con un manifest SHA256SUMS al suo interno, le serve la versione in batch: calcolare l'hash di ogni file una volta, poi confrontare ogni riga del manifest con il file corrispondente. È proprio questo il ciclo che la pagina automatizza.

I formati di manifest letti da questa pagina

StileEsempio di rigaDove si incontra
GNU900150983c...  hello.txtOutput di sha256sum / md5sum, file SHA256SUMS nelle release Linux
BSDSHA256 (hello.txt) = 900150983c...openssl dgst -sha256 su macOS/BSD
SFVhello.txt 1A2B3C4DFile Simple File Verification, vecchi newsgroup binari
semplicesha256=ba7816bf...Pagine di download, note di rilascio, checksum Docker

La lunghezza dell'hash identifica di per sé l'algoritmo: 32 caratteri esadecimali indicano MD5, 40 SHA-1, 64 SHA-256, 96 SHA-384 e 128 SHA-512 — quindi le righe in formato GNU non devono dire quale programma le ha prodotte.

Come funziona, in breve

Ogni file viene letto una sola volta con il FileReader del browser e passato a crypto.subtle.digest (la famiglia SHA) e a un'implementazione locale di MD5. I digest sono codificati in esadecimale e affiancati alle voci del manifest; un file risulta verificato solo se il digest calcolato è uguale a quello atteso, carattere per carattere. Le righe SFV contengono un CRC-32 invece di un hash crittografico — la pagina le segnala come non supportate invece di fingere che un CRC sia un digest.

Errori comuni

«Tutti i miei file risultano non corrispondenti.» — la causa più frequente è un manifest preparato per un'altra versione del download. Controlli prima i nomi dei file: il confronto usa i nomi base, quindi dist/app-1.2.bin corrisponde a una riga del manifest per app-1.2.bin. «SHA-1 verificato, quindi il file è sicuro?» — no. La verifica dimostra che i byte corrispondono a quelli rilasciati dall'editore; se l'editore sia affidabile è un'altra questione. Inoltre SHA-1 è compromesso da collisioni dal 2017, quindi scelga manifest SHA-256 quando può.

Domande frequenti

Calcolare l'hash di un file grande è lento? — circa un secondo ogni 200 MB su un computer normale; una riga di avanzamento mostra a che punto è il batch.
Posso verificare un manifest SFV con CRC-32? — le righe SFV vengono lette e elencate, ma questa pagina non calcola il CRC-32; per i singoli file usi lo strumento CRC nell'hub crittografia.
Perché solo esadecimale? — i manifest in circolazione usano l'esadecimale; i digest in base64 sono una funzione in più.
Cosa succede ai miei file? — nulla: nessun server, nessuna memorizzazione, nessuna analisi; chiuda la scheda e ogni byte di input scompare.