Definition of a Cyclic Redundancy Check
A cyclic redundancy check, or CRC, is a form of data verification used by computer software and networking protocols to ensure there has been no corruption to the data being checked. CRCs are employed mainly by networking protocols such as TCP/IP to ensure that any data sent across a network has not accidentally changed while in transit to its destination.
-
Function
-
A CRC check is the final step in assuring the integrity of a specific piece of data. Before being sent across a network the server created a unique numerical sequence based on the statistical properties of the data to be checked such as counting how many binary ones and zeros there are. This information is transmitted along with the data to the client machine, which compares the numerical sequence against the data at hand to ensure it is in fact the same data.
Types
-
The differentiation of CRCs is based on the process used to create the numerical sequence that the CRC uses to ensure data integrity. Some server network protocols use incredibly advanced data analysis to ensure not only that the data is correct but that it also has not been changed in a way that might give a falsely successful CRC result. Some of the various CRC algorithms are CRC 16, CRC 32, and CRC 64.
-
Benefits
-
Using CRCs to ensure data integrity not only assures that your network is functioning properly and without packet loss, but it also serves a security purpose. A CRC ensures that any viruses or other data-altering entities have not altered the data set in any way. Furthermore, CRCs allow clients to rest easy knowing that injected viral data has not been added to the data stream.
Misconceptions
-
Though CRCs do use several advanced algorithms and mathematical calculations, they are not a replacement for proper encryption technology. Encryption technology actually changes the data within the data set to make it appear different and unusable to outside parties. CRC checking simply uses calculations to describe the data set and sends that information along with the network traffic.
Considerations
-
CRCs are done automatically by virtually every modern networking protocol today. Some software packages allow for CRC information to be generated separately and sent as an email to the end client for added security. These secondary software packages usually use much stronger mathematical algorithms for their CRC number sequence that can be altered at the user's discretion.
-