Barcode Xpress for .NET v13.5 - Updated
Checksums
Supported Barcode Types > Checksums

Checksums are used to verify the correctness of data. Their use is usually in data transmission, or converting data from one form to another. A parity bit is a form of checksum error correction coding. The idea is that the whole unit of data can be identified by a single number, a checksum. If the checksum is not correct or it does not match, errors have occurred.

The simplest checksum is to add up the value of the individual bytes in the data. Given the data of "CAT", the ASCII values of the letters are 67 + 65 + 84 = 216 and the whole package might be given the notation "CAT(216)". So if we received "CAS(216)" we’d know that an error occurred somewhere along the way.

A simple sum of the characters can be fooled by switching the order but not the value of the data, e.g. "TAC" and "CAT" have the same checksum. So more sophisticated checksum methods have been developed which reduce (but never totally eliminate) the chance of incorrect data giving the correct checksum.

Many types of barcodes employ checksums. In several other types, checksums are optional. Clearly, those that incorporate checksums are more robust and reliable.

The UPC and EAN codes always append the checksum character to the barcode results. This is done regardless of the AppendCheckSum property value.

More advanced barcodes use an error correction system. This allows for reliable reading even if the code has been slightly damaged.

Barcodes with No Checksum Barcodes Requiring a Checksum Barcodes with Optional Checksum Barcodes with Error Correction
Add2
Add5
BCD Matrix
Codabar
Code 32
DataLogic 2 of 5
Patch Code
Code 128
Code 93
Code 93 Extended
IATA 2 of 5
EAN-128
EAN-13
EAN-8
GS1 DataBar
Intelligent Mail
Matrix 2 of 5
PLANET
PostNet
Royal Post 4-State Barcode
UPC-A
UPC-E
Code 39
Code 39 Extended
Industry 2 of 5
Interleaved 2 of 5
Inverted 2 of 5
Australian Post 4 State Barcode
Aztec
Data Matrix
MicroPDF417
PDF417
QR Code
UPU_S18 4-State_Barcode           

See Also