Dizionario

Che cos'è il CRC ZIP?

CRC, o ZIP CRC, è un valore di metadati che si trova spesso nei file di archivio. Scopri di più su cosa significa CRC e che cosa questo valore ti dice sul tuo file.

zip-crc

Il CRC è un numero breve calcolato in base al contenuto di un file nel momento in cui viene aggiunto a un archivio. Funziona come un'impronta digitale, così in seguito si può controllare che il file estratto dall'archivio sia esattamente uguale a quello inserito. CRC è l'acronimo di cyclic redundancy check (controllo a ridondanza ciclica).

Da dove proviene e quali file ce l'hanno

Gli archivi lo includono. Questo significa i file ZIP e i molti formati basati su ZIP, inclusi .docx, .xlsx, .epub, .jar e .apk, mentre RAR, 7z e altri formati mantengono checksum propri. È possibile che un report non lo elenchi per i file .epub, anche se il file lo memorizza.

Il programma di compressione calcola il valore sul contenuto originale non compresso del file e lo memorizza insieme a quella voce, quindi ogni elemento di un archivio ha il proprio CRC. Non puoi sceglierlo o digitarlo, e non è un'informazione su di te o sul tuo computer. È ricavato esclusivamente dai byte del file.

Lo scopo di memorizzarlo è consentire il confronto che avviene in seguito. Quando l'archivio viene estratto, il programma ricalcola il CRC da ciò che ha appena estratto e confronta i due valori. Se differiscono, ottieni il classico messaggio di errore CRC in WinZip, 7-Zip o unzip, che significa che il file estratto non corrisponde a quello che era stato aggiunto in origine. Questo indica un danno avvenuto lungo il percorso: uno scaricamento interrotto, un disco in avaria, una copia troncata. È sufficiente un solo elemento danneggiato per generare il messaggio, anche se tutto il resto nell'archivio è integro.

Come appare il valore

ZIP utilizza una variante chiamata CRC-32, che produce un numero a 32 bit. Di solito è mostrato come otto cifre esadecimali, per esempio 0x8f3d2b1c, e alcune app visualizzano esattamente lo stesso valore come numero decimale lungo. Non ha unità di misura e non esiste una scala in cui un valore sia migliore o peggiore. Un file vuoto e una voce di cartella che non contiene dati mostrano 0x00000000.

Perché è importante

Si tratta di un campo di integrità, ovvero la prova integrata nell'archivio stesso che il contenuto è sopravvissuto all'archiviazione e al trasferimento. Trovare un CRC in un report di metadati non significa che ci sia qualcosa che non va nel tuo archivio. È semplicemente il valore registrato quando l'archivio è stato creato; il controllo effettivo avviene quando estrai, non quando guardi.

Ha anche un utilizzo pratico aggiuntivo. Contenuti identici producono sempre lo stesso CRC, quindi due voci con lo stesso CRC e la stessa dimensione sono quasi certamente lo stesso file, il che lo rende un modo rapido per individuare duplicati all'interno di un archivio di grandi dimensioni.

Ciò che non è, è una funzione di sicurezza. Un CRC è progettato per individuare danni accidentali, ed è abbastanza corto da poter ottenere di proposito un valore coincidente, quindi un CRC che risulta corretto non è la prova che nessuno abbia modificato un file. Per questo esistono gli hash crittografici come SHA-256. Poiché il valore è derivato dal contenuto, può anche essere usato per verificare se due archivi diversi contengono lo stesso file, il che talvolta è utile ed è qualcosa che vale la pena ricordare prima di consegnare un archivio.