본문 바로가기
츄Log/기타 끄적

checksum(체크섬, 검사합), CRC(순환중복검사)

by 츄츄🦭 2024. 1. 30.
728x90

 

Checksum

체크섬은 중복  송/수신자간 데이터가 손상(data corruption)되었는지 확인하는 방법입니다.

여기서 송/수신자는 네트워크상 sender/receiver가 될 수 있고, client와 server가 될 수도 있습니다. 

 

송신자는 전송할 데이터를 가지고 특정식을 수행한 후 전송합니다.

(비트 단위로 구분하고 1의 보수를 취하고 그것들을 더하는 식)

수신자는 받은 데이터를 가지고 같은 방식으로 계산을 해 데이터 손상이 발생했는지 확인합니다. 

(계산 결과가 다르면 데이터 손상이 발생한 것입니다.) 

 

네트워크 시스템에서는 TCP/IP가 위 checksum을 사용하고 있습니다. 

 

굉장히 간단하지만, 데이터 순서가 바뀌는 오류에 대한 검출은 하지 못하는 점,

그리고 데이터의 무결성을 검증하는 것에 불과할 뿐 보안성은 보장할 수 없기에 악의적인 공격자에 의해 쉽게 위/변조 될 수 있습니다.

 

CRC(Cyclic Redundancy Checking, 순환 중복 검사) 

체크섬과 마찬가지로 데이터 손상을 검출할 수 있는 방법이며,

네트워크 시스템 데이터링크 계층에서 오류 검증 방법으로 사용됩니다. 

다른 점은 CRC는 계산식에 나눗셈이 들어가고 CRC는 데이터 자리가 바뀌었을 때 오류를 검출할 수 있습니다. 

 

 

도움

http://www.ktword.co.kr/test/view/view.php?m_temp1=1477

https://ko.wikipedia.org/wiki/%EC%B2%B4%ED%81%AC%EC%84%AC

http://www.ktword.co.kr/test/view/view.php?nav=2&no=603&sh=CRC

 

728x90