2024.04.29 (월)

  • 흐림동두천 1.0℃
  • 흐림강릉 1.3℃
  • 서울 3.2℃
  • 대전 3.3℃
  • 대구 6.8℃
  • 울산 6.6℃
  • 광주 8.3℃
  • 부산 7.7℃
  • 흐림고창 6.7℃
  • 흐림제주 10.7℃
  • 흐림강화 2.2℃
  • 흐림보은 3.2℃
  • 흐림금산 4.4℃
  • 흐림강진군 8.7℃
  • 흐림경주시 6.7℃
  • 흐림거제 8.0℃
기상청 제공
상세검색
닫기

문화 넓게 보기

바코드와 주민등록번호로 사는 삶

[수학자의 눈으로 바라본 세상 14] 삶에 있어 변환-풀이-역변환

[그린경제/ 얼레빗 = 이규봉 교수]  현대 생활에는 매일 매일 새로운 상품이 나와 전시되며 팔리고 있다. 상품은 전 세계를 무대로 거래된다. 상품이 너무 많아 각 상품의 이름으로 이를 기록하고 매출을 분석하는 것은 매우 불가능하다. 이를 매우 쉽게 하는 것은 상품 이름 대신 숫자로 표시하는 것이다. 숫자는 얼마든지 큰 수가 있으므로 전 세계에서 나오는 모든 상품을 모두 다르게 표기할 수 있다. 이러한 숫자를 우리는 바코드라고 한다.

 상품에 적혀 있는 바코드를 컴퓨터가 인식하면 상품의 정리를 매우 신속하고 정확하게 할 수 있다. 바코드는 모두 13자리로 되어있다. 처음 3자리는 국가코드, 다음 4자리는 회사코드, 다음 5자리는 제품명, 마지막 1자리는 검사숫자로 되어 있다.

   
 

검사숫자는 코드가 잘못 읽히는 것을 방지하기 위하여 사용된다. 확인 방법은 끝자리 수를 제외하고 앞에서부터 (짝수 자리 수의 합 x 3 + 홀수 자리 수의 합)의 1자리 수를 10에서 뺀 것이다.

 10-[{홀수 번째 숫자의 합) + (짝수 번째 숫자의 합)×3}의 1의 자리수]= 검사숫자 

위 그림은 민족문제연구소가 2009년 10월에 편찬한 <친일인명사전>의 바코드로 ISBN 978-89-9374-102-5이다. 이 바코드의 검사숫자를 확인해 보자.

 10-[{9+8+9+3+4+0) + (7+8+9+7+1+2)×3}의 1의 자리수]=10-5= 5

 이므로 검사숫자가 맞음을 알 수 있다.

 이처럼 바코드를 사용하면 물건 거래에서 오는 어려움을 쉽게 해결할 수 있다. 현재의 어려운 문제인 물건 정리하는 것을 바코드라고 하는 체계로 변환한 후 거기에서 물건 정리를 하고 필요한 대금 납부는 다시 현실로 돌아와 지급하면 된다.

   
 

 나이 많은 한국인의 무기? 주민등록증

 아주 작은 마을이 있다고 하자. 이 마을은 촌장의 지도 아래 평화롭게 잘 운영되고 있다. 어느 집에 아이가 몇이며 그들의 살림살이가 어떤지 모두 다 잘 알고 있다. 마을에서 필요한 일이 생기면 십시일반으로 모금을 해서 쓴다. 잘 사는 집은 조금 많이 내고 잘 못사는 집은 좀 덜 낸다. 아이들이 학교에 갈 때가 되면 누구네 집 아이가 학교에 가야할 때인지 다 알고 있다. 너무도 이상적인 사회가 아닌가?

 그러나 몇 개의 마을이 모여 더 큰 공동체가 구성되고 이러한 공동체가 더 많이 모여 한 나라가 구성되었을 때는 작은 마을에서 하던 것처럼 나라 운영을 할 수가 없다. 나라를 구성하는 사람들을 대신하는 아주 체계적인 것이 필요하다. 오늘날은 이 세계의 모든 나라가 다 이러한 체계를 사용하고 있다.

   
▲ 그림 한국화가 이무성

 

 우리나라는 이러한 체계로 주민등록번호를 사용한다. 주민등록번호는 주민등록을 할 때에 나라에서 주는 고유번호를 말한다. 대한민국 사람이면 누구나 갖고 있는 주민등록번호는 1968년에 처음으로 시행되었다가 1975년에 현재와 같이 13자리로 만들어졌다. 이 번호에는 자신에 대한 기초적인 정보가 담겨져 있다. 이중 앞 6자리는 자신이 태어난 생년월일을 나타낸다. 따라서 다른 나라와 달리 우리나라의 주민등록번호 체계는 심각하게 개인의 프라이버시를 침해하는 요소가 되었다.

 장유유서를 신봉하는 나라에서 인권을 전혀 개의치 않던 군사 정권 아래에서 만들어져서 그런지 누구든 주민등록증에 적혀있는 주민등록번호로 개인의 나이가 적나라하게 들어나는 것이다. 그래서 다투다가 수 틀리면 나이 많은 듯한 사람이 먼저 ‘주민등록증 까봐!’ 한다. 나이로 상대방을 누르겠다는 말이다.

 그런데 50년대 이전에는 출생한 사람들 경우 유아 사망률이 높아 출생신고를 1~2년 씩 일부러 뒤에 하곤 했다. 출생 신고를 늦게 하면 과태료를 내야하므로 과태료 내기 싫은 부모님을 둔 자녀의 출생연도는 자연히 늦추어졌다. 그래서 주민등록번호에 있는 생년월일, 특히 출생년도는 1~2년 정도 틀린 경우가 매우 많았다.

   
 

그러면 뒤 7자리는 어떻게 만들어진 것일까? 뒷자리의 첫 번째는 남녀 성별을 나타낸다. 2000년 전에 출생한 남자는 1이고 여자는 2가 된다. 2000년 이후에 출생한 남자는 3이고 여자는 4로 표시하여 100년 단위로 교체한다. 따라서 한 자리의 성비를 나타내는 수는 500년까지는 사용할 수 있다. 그 다음엔? 다시 처음부터 시작하지 뭐! 500년을 사는 사람은 없으니까.

 두 번째에서 다섯 번째까지 네 자리는 출생신고를 처음 한 지역을 나타낸다. 우리나라에는 4천여 개 가까운 읍면동이 있다. 따라서 네 자리 수이면 만 개를 나타낼 수 있으므로 우리나라의 모든 읍면동을 충분히 표시할 수 있다. 이들 지역에 네 자리로 지역번호가 있다. 그러나 그 번호는 어떻게 만드는지 정확히 알려져 있지 않다. 그래서 주민등록번호를 보고 출신 지역을 알아내기는 매우 어렵다.

 여섯 번째는 출생신고를 한 당일 해당 읍면동의 사무소에 신고된 순서라고 한다. 만일 해당 숫자가 1이라면 그 지역에서 첫 번째로 신고된 것이다. 한 동네에서 하루에 여러 명의 출생신고를 하는 경우가 많지는 않고 기껏해야 5를 넘지 않는다고 하나, 만일 10명이 넘으면 어떻게 처리할까? 같은 아파트 같은 동에 비슷한 출산일을 앞둔 임산부가 11가구 살고 출산 후 동시에 신고하면 혼돈이 오지 않을까?

 마지막 자리는 바코드처럼 오류를 검증하는 번호이다. 앞의 번호들이 잘 조합되었는지 검증하는 숫자로 다음과 같이 한다. 우선 첫 번째 숫자부터 열두 번째 숫자까지 앞에서부터 각각의 숫자에 2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5를 차례로 곱한 후 나온 숫자를 모두 더한다. 이 숫자를 11로 나누어 나온 나머지를 11에서 뺀 수가 된다. 필자의 경우 차례로 더해 나온 값이 108이다. 따라서 11로 나누니 나머지가 9이다. 11에서 9를 빼니 2가 되어 내 주민등록번호 마지막 번호와 일치했다. 각자의 주민등록번호로 실습해 보라.

 만일 주민등록번호와 같은 제도가 없다면 국가 살림이나 지방정부 살림하기가 매우 불가능하다. 그 힘든 문제를 시민 하나하나에 고유번호를 주어 해결한다. 이러한 과정이 변환이다. 그래서 시민에 관련된 모든 일을 직접 하는 것이 아니라 시민을 변환한 주민등록번호로 대신하고, 그 결과를 갖고 다시 시민에 대한 정책을 펴는 것도 역시 변환-풀이-역변환 기법이다.