Error-detecting codes used in networks and storage devices to detect accidental corruption of data. Blocks of data have a check value inserted at the end of the block. Since these check values add no information to the message, they are redundant, and the value is based on cyclic coding; hence the name.