검사숫자(담·베르회프) 계산기
번호 끝에 붙일 검사숫자를 담·베르회프·룬 세 방식으로 만들고 검증합니다. 세 방식이 한 자리 오류와 자리 바꿈을 각각 몇 %나 잡는지 10,000개 번호로 실제로 세어 보여 주며, 룬이 09와 90을 왜 놓치는지도 다룹니다.
숫자만 씁니다. 공백·쉼표·하이픈은 무시합니다. 30자리까지.
572 + 담 검사숫자
5724
끝에 붙은 4이 검사숫자입니다. 이 번호를 다시 넣으면 「올바름」으로 나옵니다.
어떤 오류를 잡아내는가
| 방식 | 한 자리 오류 | 이웃 자리 바꿈 | 한 자리 건너뛴 바꿈 |
|---|---|---|---|
| 담 | 100% | 100% | 90.75% |
| 베르회프 | 100% | 100% | 94.22% |
| 룬 | 100% | 97.78% | 0.00% |
네 자리 번호 10,000개에 오류를 모두 만들어 넣고 실제로 센 값입니다 — 한 자리 오류 450,000가지, 이웃 자리 바꿈 36,000가지, 건너뛴 바꿈 27,000가지를 각각 걸러 봤습니다.
담의 표
| 0 | 0 | 3 | 1 | 7 | 5 | 9 | 8 | 6 | 4 | 2 |
| 1 | 7 | 0 | 9 | 2 | 1 | 5 | 4 | 8 | 6 | 3 |
| 2 | 4 | 2 | 0 | 6 | 8 | 7 | 1 | 3 | 5 | 9 |
| 3 | 1 | 7 | 5 | 0 | 9 | 8 | 3 | 4 | 2 | 6 |
| 4 | 6 | 1 | 2 | 3 | 0 | 4 | 5 | 9 | 7 | 8 |
| 5 | 3 | 6 | 7 | 4 | 2 | 0 | 9 | 5 | 8 | 1 |
| 6 | 5 | 8 | 6 | 9 | 7 | 2 | 0 | 1 | 3 | 4 |
| 7 | 8 | 9 | 4 | 5 | 3 | 6 | 2 | 0 | 1 | 7 |
| 8 | 9 | 4 | 3 | 8 | 6 | 1 | 7 | 2 | 0 | 5 |
| 9 | 2 | 5 | 8 | 1 | 4 | 3 | 6 | 7 | 9 | 0 |
대각선(파란 0)이 모두 0이라 같은 자릿수를 두 번 만나도 제자리로 돌아옵니다. 행도 열도 0~9가 한 번씩만 나오므로, 어느 자리에서 어떤 숫자가 틀려도 결과가 반드시 달라집니다 — 한 자리 오류를 100% 잡는 이유가 여기 있습니다.
사용 방법
- 1검사숫자를 만들지 번호를 검증할지 고릅니다.
- 2담·베르회프·룬 가운데 방식을 고릅니다.
- 3번호를 넣습니다. 만들 때는 검사숫자를 빼고, 검증할 때는 붙여서 넣습니다.
- 4세 방식의 결과를 나란히 견줍니다.
- 5검출률 표에서 어느 방식이 어떤 오류를 놓치는지 확인합니다.
자주 묻는 질문
번호 끝에 붙여 잘못 적은 것을 걸러 내는 한 자리 숫자입니다. 앞자리에서 정해진 규칙으로 계산하므로, 옮겨 적다가 한 자리를 틀리거나 두 자리를 바꿔 쓰면 검사숫자가 맞지 않아 바로 드러납니다. 주민등록번호·ISBN·신용카드 번호가 모두 이 방식을 씁니다.
이웃한 09와 90의 자리 바꿈만 놓칩니다. 자리마다 2를 곱하고 9를 넘으면 9를 빼는 방식이라 0×2 = 0, 9×2 = 18 → 9가 되어 두 자리를 바꿔도 합이 그대로이기 때문입니다. 전체 이웃 자리 바꿈 가운데 약 2.2%가 여기에 해당합니다.
10×10 표 하나만 있으면 됩니다. 중간값을 0에서 시작해 자릿수마다 표[중간값][자릿수]로 갱신하고, 마지막 중간값이 곧 검사숫자입니다. 검사숫자까지 넣고 돌렸을 때 0이 나오면 올바른 번호입니다.
아닙니다. 모든 행과 열이 0~9의 순열이고(라틴 방진), 대각선이 전부 0이며, 완전 반대칭이어야 합니다. 완전 반대칭이란 (z*x)*y = (z*y)*x이면 반드시 x = y라는 성질로, 이것이 이웃 자리 바꿈을 하나도 놓치지 않는 근거입니다.
정십각형의 대칭군(이면체군 D₅)에서 계산합니다. 0~4는 회전, 5~9는 뒤집기이고 곱셈이 가환이 아니라서(순서를 바꾸면 결과가 달라져서) 자리 바꿈을 잡아냅니다. 1969년에 나와 담보다 35년 앞섰지만 표를 세 개나 들고 다녀야 해서 구현이 더 번거롭습니다.
1234를 3214로 적는 오류인데, 룬은 이것을 하나도 잡지 못합니다. 두 자리의 「두 배를 하는가」가 같아 자리를 바꿔도 합이 그대로이기 때문입니다. 담은 약 91%, 베르회프는 약 94%를 잡습니다 — 둘도 100%는 아니지만 0%와는 이야기가 다릅니다.
새로 만드는 번호라면 담이 무난합니다. 표 하나로 끝나 구현이 가장 간단하면서 한 자리 오류와 이웃 자리 바꿈을 모두 잡습니다. 신용카드처럼 이미 룬을 쓰는 체계는 바꿀 수 없고, 룬도 사람이 저지르는 오류의 대부분은 잡아 줍니다.
전송되지 않습니다. 모든 계산은 브라우저 안에서 이뤄지고, 입력값은 이 기기에만 남습니다.
알아두면 좋은 점
- 담의 준군 표를 믿지 않고 그 조건을 직접 검사합니다. 모든 행과 열이 0~9의 순열인지, 대각선이 전부 0인지, 완전 반대칭인지를 테스트가 매번 확인하므로 옮겨 적은 표가 틀렸다면 검출률을 세기 전에 걸립니다.
- 베르회프의 곱셈표는 아예 외우지 않고 이면체군의 법칙(회전·뒤집기의 합성)에서 만들어 씁니다. 만든 표가 라틴 방진이고 결합법칙을 만족하며 항등원과 역원이 제대로인지, 그리고 가환이 아닌지(자리 바꿈을 잡을 수 있는 이유)까지 검사합니다.
- 베르회프의 뒤섞기 순열은 「여덟 걸음이면 제자리로 돌아온다」는 성질로 붙잡습니다.
- 검출률은 세어서 냅니다. 네 자리 번호 10,000개에 한 자리 오류 450,000가지, 이웃 자리 바꿈 36,000가지, 건너뛴 바꿈 27,000가지를 모두 만들어 넣고 걸러지는지 셌습니다. 화면에 쓰는 표는 그 결과를 상수로 둔 것이고, 테스트가 매번 다시 세어 대조합니다.
- 룬이 놓치는 이웃 자리 바꿈이 정말 0과 9뿐인지도 검사합니다. 놓친 사례마다 어긋난 두 자리를 확인해 반드시 09인 것을 고정했습니다.
- 널리 알려진 예제(담 572 → 4, 베르회프 236 → 3, 룬 7992739871 → 3)와도 대조했습니다.
- 세 방식 모두, 0부터 9999까지 붙인 검사숫자가 다시 검증을 통과하는지 확인했습니다. 만들기와 검증이 어긋나면 도구 자체가 뜻이 없기 때문입니다.
함께 보면 좋은 도구
마지막 검증: 2026년 9월 1일 · 결과는 참고용 추정치입니다.