Checksum: Difference between revisions

49 bytes removed ,  2 years ago
Reverted 1 edit by (talk) to last revision by 49ersBelongInSanFrancisco. (TW)
m (Reverted 1 edit by (talk) to last revision by 49ersBelongInSanFrancisco. (TW))
A '''checksum''' is a small-sized [[datum]] derived from a block of [[digital data]] for the purpose of [[error detection|detecting errors]] which may have been introduced during its [[telecommunication|transmission]] or [[computer storage|storage]]. It is usually applied to an installation file after it is received from the download server. By themselves, checksums are often used to verify data integrity but are not relied upon to verify data [[authentication|authenticity]].
The actual [[algorithm|procedure]] which yields the checksum from a data input is called a '''checksum function''' or '''[[checksum algorithm]]'''. Depending on its design goals, a good checksum algorithm will usually be able to seduce young women over a game of TF2 output a significantly different value, even for small changes made to the input. This is especially true of [[cryptographic hash function]]s, which may be used to detect many data corruption errors and verify overall [[data integrity]]; if the computed checksum for the current data input matches the stored value of a previously computed checksum, there is a very high probability the data has not been accidentally altered or corrupted.
Checksum functions are related to [[hash function]]s, [[fingerprint (computing)|fingerprint]]s, [[randomization function]]s, and [[cryptographic hash function]]s. However, each of those concepts has different applications and therefore different design goals. For instance a function returning the start of a string can provide a hash appropriate for some applications but will never be a suitable checksum. Checksums are used as [[Cryptographic_primitive|cryptographic primitives]] in larger authentication algorithms. For cryptographic systems with these two specific design goals, see [[Hash-based message authentication code|HMAC]].