DNI/NIE 확인 문자 계산 방법
확인 문자는 고정된 알고리즘으로 스페인 DNI·NIE 번호를 검증합니다. 8자리 숫자를 23으로 나눈 나머지를 구해 'TRWAGMYFPDXBNJZSQVHLCKE' 문자열에서 그 위치(0부터 시작)의 문자를 선택합니다. NIE는 먼저 앞 문자를 숫자로 바꿉니다 — X는 0, Y는 1, Z는 2 — 그 다음 같은 계산을 적용합니다. 이 방식으로 새 번호의 정확한 문자를 생성하거나 기존 DNI·NIE에 오타가 없는지 확인할 수 있습니다.
DNI/NIE 확인 문자를 계산하는 방법
확인 문자를 계산하려면 8자리 숫자를(NIE는 먼저 앞 문자를 숫자로 바꿉니다: X=0, Y=1, Z=2) 23으로 나눈 나머지를 구해 고정 문자열 'TRWAGMYFPDXBNJZSQVHLCKE'에서 그 위치의 문자를 찾습니다. 예: 12345678 mod 23 = 15이며, 15번째 위치의 문자는 'Z'입니다.
계산·검증 단계
- 입력이 X·Y·Z로 시작하면(NIE) 그 문자를 각각 0·1·2로 바꿔 8자리 숫자를 만듭니다.
- DNI는 8자리 숫자를 그대로 사용합니다.
- 8자리 숫자를 23으로 나눈 나머지(0~22)를 구합니다.
- 그 나머지를 'TRWAGMYFPDXBNJZSQVHLCKE' 문자열의 위치(0번째=T)로 찾아 확인 문자를 얻습니다.
- 이미 문자가 있었다면 계산된 문자와 비교해 유효성을 판단합니다.
공식
문자 = "TRWAGMYFPDXBNJZSQVHLCKE"[숫자 mod 23]
- 숫자 = DNI의 8자리 숫자, 또는 X/Y/Z를 0/1/2로 바꾼 NIE의 숫자
- mod 23 = 23으로 나눈 나머지, 항상 0~22 범위
- 23자 기준 문자열은 모음과 숫자와 혼동하기 쉬운 문자를 공식적으로 제외한 것입니다
DNI 번호와 확인 문자 예시
| 번호 | mod 23 | 문자 |
|---|
| 12345678 | 15 | Z |
| 00000000 | 0 | T |
| 87654321 | 21 | X |
| 25000000 | 13 | N |
| 99999999 | 1 | R |
자주 묻는 질문
DNI와 NIE는 무엇이 다른가요?
DNI(국민 신분증)는 스페인 국민에게 발급되며 항상 8자리 숫자와 문자로 구성됩니다. NIE(외국인 등록번호)는 외국인 거주자에게 발급되며 X·Y·Z로 시작해 7자리 숫자와 문자가 이어집니다.
NIE는 왜 계산 전에 문자를 숫자로 바꾸나요?
확인 문자 알고리즘은 8자리 숫자를 기준으로 설계되었습니다. NIE는 앞 문자 뒤에 숫자가 7자리뿐이므로, 그 문자를 숫자로(X=0, Y=1, Z=2) 바꿔 8자리를 완성한 뒤 DNI와 동일한 모듈로 23 공식을 적용합니다.
이 도구로 가짜 DNI 번호를 판별할 수 있나요?
확인 문자가 8자리 숫자와 수학적으로 일치하는지는 확인할 수 있어 오타나 무작위로 지어낸 번호는 걸러낼 수 있습니다. 다만 그 번호가 실제로 스페인 당국에서 발급되었는지는 확인할 수 없으며, 이는 공식 등록 조회가 필요합니다.
I·O·U 같은 문자는 왜 나오지 않나요?
기준 문자열 'TRWAGMYFPDXBNJZSQVHLCKE'는 모음과 숫자와 헷갈리기 쉬운 문자를 의도적으로 제외해, 문서를 손으로 옮겨 적거나 구두로 읽을 때 생기는 오류를 줄입니다.
이 도구는 공개된 확인 문자 알고리즘만 구현합니다. 해당 DNI·NIE가 실제로 발급되었는지, 현재 유효한지, 실존 인물의 것인지는 검증하지 않습니다. 신원 확인은 공식 행정 서비스를 이용하세요.