CRC(순환 중복 검사, Cyclic Redundancy Check) 코드는 데이터가 전송되거나 저장될 때 오류를 감지하기 위해 사용되는 방법입니다. 이 방법은 데이터 블록의 무결성을 검증하는 데 매우 효과적이며, 주로 네트워크 통신, 디지털 저장 장치 등에서 사용됩니다.
CRC는 특정 다항식으로 정의됩니다. 이 다항식은 보통 이진수 형태로 표현되며, 각 비트는 계수를 나타냅니다.
전송하려는 데이터에 CRC 다항식을 사용하여 나누기 연산을 수행합니다. 이 연산은 모듈로 2 연산으로 진행되며, 나머지 값이 CRC 코드가 됩니다.
원본 데이터와 함께 CRC 코드가 전송됩니다. 수신측에서 동일한 과정을 통해 CRC 값을 계산하여 원본 데이터와 비교합니다.
만약 수신된 CRC 값과 계산된 CRC 값이 다르면, 데이터 전송 중에 오류가 발생한 것으로 판단합니다.