Checksum: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
DarkApBot (discussione | contributi)
m Bot: Aggiungo: ko:체크섬
Nalegato (discussione | contributi)
Nessun oggetto della modifica
Riga 1:
'''Checksum''', tradotto letteralmente significa ''somma di controllo''. È una sequenza di [[bit]] che viene utilizzata per verificare l'integrità di un dato o di un messaggio che può subire alterazioni.
 
Il tipo più semplice di ''checksum'' consiste nel sommare tutti i bitbyte del messaggio e di memorizzare il valore risultante. Per controllare l'integrità del messaggio sarà sufficiente effettuare la stessa operazione di somma e confrontarla con il ''checksum'' memorizzato. 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:
Riga 9:
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à.
 
 
Con il tempo sono nati diversi metodi di controllo più sofisticati, come il checksum di Fletcher, l'[[Adler-32]] il [[Cyclic redundancy check]] (CRC), che valutano non solo la somma dei bit, ma anche la loro posizione. Il prezzo della maggiore affidabilità viene pagato nelle risorse necessarie al calcolo del ''checksum''.
Altre comuni varianti di questo semplice ''checksum'' sono ottenute usando al posto della somma l'operazione di [[Disgiunzione esclusiva|XOR]] come nel [[Longitudinal redundancy check]] (LRC) o sommando i byte 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), chein valutanocui il risultato non dipende solo ladal sommavalore dei bit, ma anche la loro posizione. Il prezzo della maggiore affidabilità viene pagato nelle risorse necessarie al calcolo del ''checksum''.
 
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.