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 digital data.[1][2] 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, in the event the check values do not match, corrective action can be taken against data corruption. CRCs can be used for error correction (see bitfilters).[3]

CRCs are so called because the check (data verification) value is a redundancy (it expands the message without adding information) 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.

  1. ^ Pundir, Meena; Sandhu, Jasminder Kaur (2021). "A Systematic Review of Quality of Service in Wireless Sensor Networks using Machine Learning: Recent Trend and Future Vision". Journal of Network and Computer Applications. 188: 103084. doi:10.1016/j.jnca.2021.103084. Cyclic Redundancy Check (CRC) mechanism is used to protect the data and provide protection of integrity from error bits when data is transmitted from sender to receiver.
  2. ^ Schiller, Frank; Mattes, Tina (2007). "Analysis of CRC-Polynomials for Safety-Critical Communication by Deterministic and Stochastic Automata". Fault Detection, Supervision and Safety of Technical Processes 2006. Elsevier. pp. 944–949. doi:10.1016/b978-008044485-7/50159-7. ISBN 978-0-08-044485-7. Cyclic Redundancy Check (CRC) is an efficient method to ensure a low probability of undetected errors in data transmission using a checksum as a result of polynomial division.
  3. ^ "An Algorithm for Error Correcting Cyclic Redundance Checks". drdobbs.com. Archived from the original on 20 July 2017. Retrieved 28 June 2017.