Cyclic Redundancy Check

A cyclic redundancy check (CRC) is an error-detecting code commonly used in digital networks and storage devices to detect accidental changes to raw data. Blocks of data entering these systems get a short check value attached, based on the remainder of a polynomial division of their contents; on retrieval the calculation is repeated, and corrective action can be taken against presumed data corruption if the check values do not match.

CRCs are so called because the check (data verification) value is a redundancy (it adds no information to the message) and the algorithm is based on cyclic codes. CRCs are popular because they are simple to implement in binary hardware, easy to analyze mathematically, and particularly good at detecting common errors caused by noise in transmission channels. Because the check value has a fixed length, the function that generates it is occasionally used as a hash function. The CRC was invented by W. Wesley Peterson in 1961; the 32-bit polynomial used in the CRC function of Ethernet and many other standards is the work of several researchers and was published during 1975.

Read more about Cyclic Redundancy Check:  Introduction, Application, CRCs and Data Integrity, Computation of CRC, Mathematics of CRC, Specification of CRC, Commonly Used and Standardized CRCs

Famous quotes containing the word check:

    The habit some writers indulge in of perpetual quotation is one it behoves lovers of good literature to protest against, for it is an insidious habit which in the end must cloud the stream of thought, or at least check spontaneity. If it be true that le style c’est l’homme, what is likely to happen if l’homme is for ever eking out his own personality with that of some other individual?
    Dame Ethel Smyth (1858–1944)