관리 메뉴

주민등록번호 생성 원리 본문

보안/암호

주민등록번호 생성 원리

ª_ª 2017. 10. 13. 10:04
728x90
반응형


1. 주민등록번호의 역사

  1968년 1월 21일 북한의 특수부대 요원 12명이 청와대를 습격하여 당시 대통령인 박정희를 살해하려던 사건이 일어났습니다. 이에 주민 개개인에게 번호를 부여해주었으며 이중 등록도 금지되고 18세 이상 국민들에게 발급하였는데 간첩 식별 편의 등의 목적으로 시행된 것입니다. 1970.1.1일 부터 주민등록증 발급을 의무화하고 주민등록증을 신분 확인 용도로 사용하도록 법제화하였습니다.

  주민등록번호는 처음에는 지금과 달리 12자리로 이루어져있었으며 박정희 전 대통령은 110101-100001번을 부여받았습니다. 지금처럼 13자리로 바뀐 것은 1975.7.25 부터 입니다. 개정 이전의 주민등록번호 첫 여섯자리는 지역코드(전국 읍·면·동별 코드로 110101은 서울특별시 종로구 청운동)이며, 뒤 여섯자리의 첫째는 성별(남:1, 여:2), 나머지 다섯자리는 해당 지역의 주민등록 순서에 의한 일련번호입니다.


2. 주민등록번호 구성


 

 

 

 

 

- 

 

 

 

 

 

 

ㅍ 

 1

2 

3 

4 

5 

6 

 

7 

8 

9 

10 

11 

12 

13 

 (6자리)

 

(7자리) 


2.1. 'ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ'(6자리)는 생년월일 입니다.


2.2. 'ㅅ'은 성별을 나타냅니다.

9 : 1800 ~ 1899년에 태어난 남성
0 : 1800 ~ 1899년에 태어난 여성
1 : 1900 ~ 1999년에 태어난 남성
2 : 1900 ~ 1999년에 태어난 여성
3 : 2000 ~ 2099년에 태어난 남성
4 : 2000 ~ 2099년에 태어난 여성

5 : 1900 ~ 1999년에 태어난 외국인 남성
6 : 1900 ~ 1999년에 태어난 외국인 여성
7 : 2000 ~ 2099년에 태어난 외국인 남성
8 : 2000 ~ 2099년에 태어난 외국인 여성
따라서, 뒷자리 첫 번호가 5~8번으로 시작하면 주민등록번호가 아닌 외국인 등록번호입니다.

2.3. ㅇ ㅈ ㅊ ㅋ’는 출생등록지, 즉 등록기준지의 고유 번호입니다. 
다만, 주민등록번호에서 표기되는 출생등록지 숫자와 실제 출생지는 다를 수도 있기 때문에 주민등록번호 그 자체만으로 본적이나 출생지를 파악할 수 없습니다. 실제 출생지는 기본증명서 등에서 확인할 수 있습니다.

2.4. ‘’는 출생등록지에 해당하는 지방자치단체의 고유 번호입니다.
0 : 서울
1 : 부산
2 : 경기도 / 인천
3 : 강원 / 충북
4 : 충남 / 대전
5 : 전북 / 전주
6 : 전남 / 광주
7 : 경북 / 대구
8 : 경남 / 울산
9 : 제주도

'ㅇ ㅈ'으로좀더 세분화 하면
00 ~ 09 : 서울 
10 ~  13 : 부산
14 ~  24 : 경기
25 ~  47 : 충청도 / 강원도
48 ~  68 : 전남 / 전북
67 ~  70 : 대구
71 ~  80 : 경북
81 ~  9x : 경북 일부 + 경남 + 제주

2.5. 'ㅌ'은 지방자치단체에 주민등록 신청 순서입니다.
남자는 남자대로 1, 2, 3 ....
여자는 여자대로 1, 2, 3 ....
* 보통 하루 신청자는 4명을 넘지 않는다고 합니다.

"여기서 궁금증 만약에 등록자가 11명이 되면 주민번호가 같게 나오지 않을까?"
'ㅊ ㅋ'의 등록지 번호가 변경되기 때문에 상관 없다고 합니다.

2.6. 마지막 'ㅍ'은 일종의 암호코드 or Check Digit로 봅니다.
이 것을 사용해서 이 주민번호가 유효한 주민번호인지 아닌지 확인시키는 역할을 합니다.

2.6.1. Check Digit을 구하는 공식이 있습니다.
1) 'ㅍ'(Check Digit)의 숫자를 제외한 나머지 12개의 번호를 적습니다.
2) 각 자리 숫자에 2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5를 각각  순서대로 곱해줍니다.
3) 2)에서 나온 결과를 모두 더합니다.
4) 3)에서 나온 결과를 11로 나눈 후 나머지를 구합니다.
5) 4)에서 나온 결과를 11에서 뺍니다.

5)에서 나온 결과가 Check Digit의 수와 일치하면 인증과정이 통과가 됩니다.

3. 주민등록번호 Check Digit 구하는법
예를 들어서
주민번호 : 171013 - 3012546 
Check Digit : '6'

1

7 

1 

0 

1 

3 

- 

3 

0 

1 

2 

5 

4 

* 

* 

* 

* 

* 

* 

 

* 

* 

* 

* 

* 

* 

2 

3 

4 

5 

6 

7 

 

8 

9 

2 

3 

4 

5 

21 

4 

0 

6 

21 

 

24 

0 

2 

6 

20 

20 


3) 합계 : 126
4) 나머지 : 5
5) 11 - 5 = 6

결론
5)의 결과값 6과 주민번호 마지막 6의 값이 같으므로 인증을 통과합니다.




728x90
반응형

'보안 > 암호' 카테고리의 다른 글

ISBN 원리  (0) 2017.10.16
Comments