Il tipo piรน semplice di checksum consiste nel sommare in trasmissione tutti i bit del messaggio e di memorizzare il valore risultante nel frame inviato.
Per controllare l'integritร del messaggio sarร sufficiente effettuare in ricezione la stessa operazione di somma e confrontarla con il checksum memorizzato nel frame. Se i due valori coincidono, i dati possono essere considerati integri.

Per controllare l'integritร del messaggio sarร sufficiente effettuare in ricezione la stessa operazione di somma e confrontarla con il checksum memorizzato nel frame. Se i due valori coincidono, i dati possono essere considerati integri.
Questa semplice forma di checksum non รจ molto accurata in quanto non permette di rilevare certe tipologie di errore come:
- il riordinamento dei bit del messaggio
- l'inserimento di bit con valore 0
- la presenza di diversi errori che sommati tra loro danno 0
In questi casi, quando cioรจ ci sono due o piรน serie di bit che hanno lo stesso checksum, si parla di collisioni. Ovviamente, minore รจ la probabilitร di collisioni, migliore รจ la qualitร dell'algoritmo di controllo e quindi la sicurezza nella verifica dell'integritร .
Altre comuni varianti di questo semplice checksum sono ottenute usando al posto della somma l'operazione di XOR come nel Longitudinal redundancy check (LRC) o sommando i bit a gruppi di 2 o 4 come nell'Internet checksum (RFC-1071). Queste varianti mantengono la stessa semplicitร di calcolo ma manifestano anche gli stessi difetti.
Con il tempo sono nati diversi metodi di controllo piรน sofisticati, come il checksum di Fletcher, l'Adler-32 il Cyclic redundancy check (CRC), in cui il risultato non dipende solo dal valore dei bit, ma anche dalla loro posizione. Il prezzo della maggiore affidabilitร viene pagato in termini di risorse di elaborazione necessarie al calcolo del checksum.
Il checksum รจ presente nell'header di molti protocolli di rete proprio per verificare l'integritร del pacchetto trasmesso.
Questi metodi sono utili per la verifica di corruzioni accidentali (errori di trasferimento, o di memorizzazione, perdita di dati), ma non sono sicuri contro gli attacchi di malintenzionati, in quanto le loro strutture matematiche non sono particolarmente complesse da aggirare. Per questo tipo di attacchi vengono utilizzati algoritmi di hash crittografati, come l'MD5, lo SHA-1 (in cui perรฒ sono state trovate o sembra possibile trovare collisioni), o lo SHA-256, per il momento incorruttibile.
I checksum vengono usati spesso su Internet per poter garantire che i dati scaricati siano corretti e per garantirne l'autenticitร . Per esempio nel download di software, il distributore del programma pubblica il checksum (in genere MD5 o SHA-1), che nello specifico viene chiamato digest, che viene controllato dall'utente per verificare l'integritร dei dati.
Fonte Wikipedia
0 Commenti
I commenti saranno pubblicati dopo esser stati verificati dagli amministratori