

Checksums are used as cryptographic primitives in larger authentication algorithms. 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. However, each of those concepts has different applications and therefore different design goals. This is especially true of cryptographic hash functions, 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.Ĭhecksum functions are related to hash functions, fingerprints, randomization functions, and cryptographic hash functions. Depending on its design goals, a good checksum algorithm usually outputs a significantly different value, even for small changes made to the input. The procedure which generates this checksum is called a checksum function or checksum algorithm. By themselves, checksums are often used to verify data integrity but are not relied upon to verify data authenticity. Effect of a typical checksum function (the Unix cksum utility)Ī checksum is a small-sized block of data derived from another block of digital data for the purpose of detecting errors that may have been introduced during its transmission or storage.
