Quantcast
Viewing latest article 1
Browse Latest Browse All 3

Cosa sono i file sfv e rapida spiegazione sulle collisioni del CRC32

A volte, quando si scaricano software e archivi di grandi dimensioni, è possibile trovare, allegato, anche un file dall’estensione .SFV. L’acronimo SFV sta per Simple File Verification (verifica semplice dei file) e questa tipologia di file contiene le informazioni “tecniche” riguardanti i file che state scaricando o che vi accingete a scaricare, tra cui la dimensione degli archivi, la data di creazione, i nomi (e quindi il numero) di tutti i file che compongono la release e il checksum CRC32 di ogni file. Ed è proprio quest’ultima informazione ad essere essenziale e alla base del concetto di SFV: infatti grazie a questa informazione è possibile verificare l’integrità dei file, integrità che può essere compromessa per un numeroso numero di motivi, tra cui un errore di trasmissione del file, una copia o spostamento errata del file, un fault del supporto di memorizzazione o per un bug software. Insomma, qualunque possa essere il motivo, il CRC32 vi da la certezza che il file che state scaricando sia perfettamente uguale all’originale.

Un esempio di file SFV:


file1.zip c45ad668
file2.zip 7903b8e6
file3.zip e99a65fb

Come potete vedere ogni riga deve contenere il nome del file e il relativo checksum; la riga che inizia con il “;” si intende come un commento che non viene interpretata.

Qui, spendo solo due righe, per dire che quello che offre il CRC32 non è una certezza matematica ma solo un buon compromesso: infatti, il CRC32 genera in output un numero di 32 bit. Ciò significa che 2 ^ 32 = 4294967296 valori unici e distinti.
In altre parole, il metodo CRC32, elaborando un file, può estrarre poco più di quattro miliardi di impronte digitali distinte. Anche se il numero può sembrare ragguardevole, la probabilità che due file abbiano la medesima impronta digitale è relativamente alta.

Ben diverso è, invece, il numero di impronte digitali differenti che il metodo MD5 può generare: questa tecnologia genera un numero di 128 bit. In questo caso il risultato è: 2 ^ 128 = 3.4028236692093846346337460743177e+38. L’affidabilità è praticamente totale.

Si può ben dire, però, che dato che lo scopo principale del CRC32 è di controllare che non vi siano stati errori casuali di trasmissione (errori che di solito si riducono a pochi centinaia di byte), la probabilità che, casualmente, due file, assumano lo stesso checksum con soli pochi byte di differenza, è molto bassa, e quindi la funzionalità del CRC, per scopi domestici, è pienamente conservata. E’ per questo motivo, però, che il CRC32 non può essere usato per autenticare i file, a causa dell’elevata probabilità (rispetto ad altri algoritmi di hash) di avere collisioni.

Il primo programma ad usare il formato SFV è stato WIN-SFV32 (scaricabile qui) e resta tutt’ora il miglior software per creare ed analizzare i file SFV. Con questo semplice programma (ma ve ne sono anche tanti altri, anche a riga di comando, per i più geek) basterà selezionare la cartella dove risiedono tutti i vostri archivi e in men che non si dica verrà generato un file .SFV con tutti i CRC32 interessati. Se poi volete verificare l’integrità di un archivio, basterà usare l’opzione “Verify files”, ed il programma effettuerà una rapida verifica tra il checksum dell’archivio con il CRC32 memorizzato nel file sfv.

Original article: Cosa sono i file sfv e rapida spiegazione sulle collisioni del CRC32

©2016 Levysoft. All Rights Reserved.


Viewing latest article 1
Browse Latest Browse All 3

Trending Articles