# Checksum

A **checksum** is a general term for a system by which extra data is appended to a set of data to serve as an integrity check of whether the data is corrupted. There are a number of different checksum systems. Commonly, they consist of an extra "data word" (after data is divided into logical "words" of a certain number of bits each) which is set in a manner so that, when a simple mathematical formula is applied cumulatively to all data words including the checksum, the result is always a certain set value, such as all zeroes. For instance, the formula might be to add up all the data words, discarding any overflow bits, or else it might be to take each successive word and apply the Exclusive Or (XOR) operation to the next word, then take the result and XOR it with the word after that, and so on, ending with the checksum word. If the result is not equal to the proper value (usually 0), that means that something is wrong with the data, such as parts being missing or incorrect. However, the inverse is not necessarily true; if the value is correct, the data still might be incorrect, since there are many different sets of values which can sum to a desired check value. An error could happen to be of a sort which corrupts the data but leaves the sum intact, though with more modern and sophisticated checksum techniques (such as various forms of CRC, Cyclic Redundancy Check), this is less likely than with more simpleminded systems.

A spam instant message seen "in the wild" read `easy yummy checksum Click Here`

, but alas, rather than leading to an innovative scheme for an edible checksum system ("Now with Flavor!"), it merely went to some scammy work-at-home scheme with no checksums, edible or otherwise, in evidence.