[include(틀:이론 컴퓨터 과학)] [목차] == 개요 == Checksum. 한자어로는 검사합(檢査合)이라고 한다. 번호 등에 오류가 존재하는 바의 여부를 확인하기 위해 추가로 끼워넣는 번호로 대개 0~9 중 하나다. == 상세 == 보통 [[바코드]], [[주민등록번호]]에 사용된다. 경우에 따라 [[IBAN]]처럼 두 자리 이상의 숫자를 사용하기도 한다. 간혹 순환 중복 검사(CRC)와 체크섬을 혼용하여 쓰는 사람이 있다. 그러나 이 둘은 엄연히 다른 개념. CRC는 나눗셈을 통해 얻어지기 때문. 그냥 (전기가 아닌) 활력 [[충전]], [[바이오스#s-1.7|UEFI BIOS]] 같은 용어 혼용일 뿐이다. [[해시]]섬이라고도 한다. 단, 실제 해시를 체크섬 용도로 써서 해시섬이라고 할 경우에는 기술적으로도 정확한 용어 사용이 된다. 과거에는 컴퓨터 프로그래밍 관련 개념으로 알려져있었는데, 1980년대까지 게임이나 유틸리티 등 프로그램을 배포 및 공유하는 방법은 컴퓨터 잡지의 몇 페이지에 걸쳐 깨알 같이 적혀있는 16진수 기계어를 보면서 직접 입력하는 것이었다. 하늘이 노랗게 보일 정도의 엄청난 작업이지만 당시엔 별다른 방법이 없었기에 주로 시험이 끝난 학생들이 1~2일 간 숙식을 같이하며 번갈아 입력을 하곤 했는데 순간의 오타가 모든걸 날려먹는 도미노 준비와 비슷한 작업에 가까웠기에 중반부터는 각 라인 끝단에 체크섬 코드를 추가해 기계어 리스트를 전수 검사할 필요가 없이 체크섬만 간편하게 확인하는 방식으로 진화되었다. 물론 운이 아주 나쁜 경우 같은 라인에 2군데 이상 오류가 있고 그 오류의 합이 서로를 절묘하게 보합해 체크섬만 보면 오류가 없는 것처럼 나오기도 한다. === 주민등록번호에서의 활용 === 물론 체크섬은 10개 중 하나니 찍어도 10%의 확률로 맞출 수는 있다. 단, 이 체크섬을 통해 주민등록번호가 악용되거나 하는 사고를 어느정도 방지할 수 있다. --물론 체크섬 생성 공식이 워낙 널리 퍼져서 의미는 없다만...-- 그런데 문제는 간혹 공무원의 실수로 체크섬이 잘못 부여되는 일이 존재한다는 거다. 물론 모든 시스템이 [[전산]]으로 처리되는 지금은 발생할 수 없는 일이지만 이런 일을 수기로 하던 시절엔 자주 있던 일이다. [[분류:컴퓨터]]