Check digits and parity bits are special cases of checksums, appropriate for small blocks of data (such as Social Security numbers, bank account numbers, computer words, single bytes, etc.
checksum |
To avoid transmission errors the payload is scrambled (avoiding burst errors), substituted with a symbol code of different Hamming distance, and a checksum is added for validity checks.
Another alternative design for Base32 is created by Douglas Crockford, who proposes using additional characters for a checksum.
This substitution method needs to be applied for many of the fields that are in DB structures across the world, such as telephone numbers, zip codes and postcodes, as well as credit card numbers and other card type numbers like Social Security numbers and Medicare numbers where these numbers actually need to conform to a checksum test of the Luhn algorithm.
This option creates a large amount of CPU overhead, as each block's checksum must be calculated when data is read (to verify integrity) or written (to update the checksum).
The Adler-32 checksum is a specialization of the Fletcher-32 checksum devised by Mark Adler.
When hex dumps are intended to be manually entered into a computer, such as was the case with print magazine articles of home computer era a checksum byte (or two) would be added at the end of each row, commonly calculated as simple 256 modulo of sum of all values in the row or a more sophisticated CRC.
Error correction and file transfer protocols typically work by calculating a checksum or CRC for a block of data known as a packet, and transmitting the resulting number at the end of the packet.
A File signature identifies a file or verifies the content of a file (e.g. checksum).