A checksum is a device used to establish the integrity of data. More specifically, a checksum is a value which is calculated based on some data which, later, can be used to verify that the data used to generate it remains unchanged. Usually this is accomplished by adding the checksum to the sum of the data values and verifying the result.

The checksum is a way to hash a chunk of data in an attempt to verify its integrity, better than the parity bit.

The traditional checksum involves adding up the bytes or words in the data chunk. (Thus check sum.) It is easy to find two chunks of data with the same traditional checksum, even accidently, so crc32 was invented in attempt for higher likelihood of uniqueness of the hash.

But it is still easy to intentionally calculate a second set of data with the same crc32 checksum (just less likely to do accidently), so md4, md5, SHA, and others were created. These fingerprint data in a way that is suppose to be cryptographically secure. No easy method has (yet) been found to calculate a dataset with a particular md5.

Log in or register to write something here or to contact authors.