Skip to content

개인정보보호법 해설 문제점 제기: 주민등록번호 암호화 이슈

March 10, 2012

개인정보보호의 중요성이 강조되고 있습니다. 본 블로그 포스팅에서는, 현재 개인정보보호법률에서 주민등록번호와 관련된 보호조치에 대한 권고사항이 부족하다는 것을 지적합니다. 주민등록번호의 뒷자리 6 숫자만을 암호화해도 괜찮다는 법령해석의 문제점에 대해 알아보았습니다.

사이버범죄가 기승을 부림에 따라 개인정보보호법의 중요성도 강조되고 있습니다. 컴퓨터 보안은 복잡하기 때문에 관련 법 체계가 아직은 완전히 정립되지 않았다고 볼 수 있습니다. 해당 분야는 전문가들도 이해하기 어려운 부분이 있기 때문에, 관련 법 체계가 성숙해지기 위해서는 시간이 필요할 것으로 보입니다.

기술적인 분야는 자세한 내용들을 법률에 그대로 담기가 어려운데 이럴 경우, 침해사고 재판 시 판결 기준이 애매해질 수도 있다는 문제점이 있습니다. 그래서 전문가들의 법률 해석이 중요합니다. 법률 자체만 보면 애매한 부분들이 많이 있기 때문에 관련 부분에 대해서 좀 더 명확히 하기 위해, 전문가들의 의견을 참고하는 것이죠.

전문가들은 기존의 판례에서도 해석을 도출해내지만, 법률을 기술적인 면으로 재해석하여 의견을 내기도 합니다. 그런데 가끔은 전문가들의 해석에도 이견이 있을 수 있습니다. 개인정보보호법에서의 쟁점 중에 하나인 주민등록번호에 관한 이슈를 예로 들 수 있습니다.

주민등록번호는 말 그대로 개인을 식별할 수 있는 정보이기 때문에 개인정보로 취급되어 암호화되어야만 합니다. 그러나, 아시다시피 주민등록번호의 사용 빈도는 무척 높습니다. 예를 들어, 주민등록번호에는 생년월일이 포함되어 있는데 사용자의 생일 이벤트 등에 사용하기 위해서 활용되기도 하죠.

이렇게 많이 사용되다보니, 주민등록번호 13자리 전체를 암호화할 경우 시스템의 퍼포먼스를 낮추는 요인이 될 수도 있습니다.

퍼포먼스 문제는 언제나 기업들이 난감해 하는 요소 중에 하나입니다. 마침 이에 관해서 보안 전문 매체 데일리시큐와 김앤장의 이강신 전문위원이 나눈 인터뷰 기사가 있습니다. 그중에서 주민등록번호 이슈에 관한 전문만 추출해보았습니다.

 

인터뷰 기사: http://dailysecu.com/news_view.php?article_id=1801

Q. 암호화 문제를 난감해 하는 기업들이 많은데 어떻게 해결하는 것이 좋을까?

A. 암호화는 개인정보 유출 등 침해사고가 발생되더라도 최후의 안전수단으로 하는 조치사항이다. 그러나 암호화는 성능을 저하시키는 문제점도 있기 때문에 개인정보처리자 입장에서는 비용 등의 문제로 고민하고 있는 것이 사실이다. 이 때문에 부분암호화를 인정하고 있다. 가령, 주민등록번호의 경우 총13자리이며, 이는 64비트 블록암호알고리즘을 사용할 경우 2개 블록이 된다. 암호화의 경우 블록 단위로 한다는 점을 고려할 때 8자리까지 1개 블록으로 처리할 수 있으며, 9자리 이상일 경우는 2개 블록을 처리하므로 성능이 1/2로 떨어지게 된다.

따라서 생년월일을 제외할 경우 7자리만 암호화하면 되며, 속도도 2배로 개선된다. 생년월일만 가지고는 개인정보라고 할 수 없기 때문에 개인정보의 속성도 없어진다고 볼 수 있으므로 문제가 없다고 판단하고 있다. 현재 주민등록번호는 뒷부분 6자리를, 신용카드번호는 뒷부분 10자리를 암호화 영역으로 권고하고 있다. 즉 1블록 단위로 부분암호화를 한다면 퍼포먼스 문제도 해결되고 법 준수도 지킬 수 있다는 말이다.

 

이강신 전문위원께서는 주민등록번호의 앞자리만으로는 개인을 식별해낼 수가 없기 때문에 뒷자리만 암호화를 해도 문제가 없다고 언급하셨습니다. 생년월일만으로는 개인을 식별할 수 없기 때문에 개인정보라는 뜻 자체만을 놓고 보면 이강신 전문위원의 의견이 맞습니다.

하지만 개인정보보호라는 것은 어디까지나 암호화가 풀리지 않고 유지될 수 있다는 가정하에 성립되는 것입니다.

물론 개인정보의 성격상, 완벽하게 암호화를 적용하는 것은 거의 불가능합니다. 그러나 상식적으로 생각했을 때, 적용된 암호화가 쉽게 풀릴 수 있다면 개인정보를 위한 암호화라고 볼 수 없을 것입니다. 위 인터뷰에서 이강신 전문위원은 64비트 블록암호알고리즘을 언급하셨는데, 일반적인 64비트암호알고리즘으로는 6자리 숫자를 안전하게 암호화할 수 없습니다.

 

8 4 1 2 1 2 1 0 0 0 0 0 0

 

6자리의 암호화를 크랙하기 위해서는 최대 1백만번의 brute-force가 필요한데(주민등록번호 하위 7자리를 암호화한다면 2백만번) 현대의 컴퓨팅 파워를 이용하면, 일반 가정용 컴퓨터로도 단시간내에 해독할 수 있기 때문입니다. (참고로, 2000년 이후에 태어난 남자의 주민등록번호는 첫자리가 3, 여자는 4가 주어집니다.)

또한, 우리나라 주민등록번호에는 공식이 있습니다. 이 공식을 pre-computing하여 리스팅한 후 해독을 시도한다면 1백만번의 brute-force 케이스를 획기적으로 줄일 수 있습니다.

다시 한번 정리하면, 논리적으로 봤을 때 하위 6자리만 암호화하는 것은 개인정보를 위한 암호화라고 보기엔 충분하지 않다는 것입니다. 64비트 이상의 암호화를 적용한다고 해도, 일반 개인용 PC로도 단시간내에 해독될 수 있습니다.

위 인터뷰 외에도, 주민등록번호의 하위 자릿수만 암호화를 해도 된다는 해설은 행전안전부의 “개인정보보호법령 및 지침.고시 해설서“에서도 언급되어 있습니다.

 

[행안부 개인정보보호법령 해설서]

 

행안부의 개인정보보보호법령 해설은 현재 중요한 역할을 하고 있다고 볼 수 있는데, 그 이유는 개인정보 관련 재판이 아직까지 많지 않기 때문입니다. 판례가 적어서 참고할 수 있는 부분이 많지 않고, 자연스럽게 행안부의 해설이 판결에 영향을 줄 수도 있습니다.

본 블로그 글에서는 기업이 개인정보 암호화를 완벽하게 해야 한다는 것이 아니라 암호화된 개인정보를 누구나 쉽게 풀 수 있게 해서는 안된다고 말하고 있습니다. 다시 언급하지만, 컴퓨터 보안은 어렵습니다. 따라서 개인정보보호법령이나 해설에도 보완되고 발전되어야 할 부분들이 있습니다.

향후, 해커의 눈으로 보는 개인정보보호법령이나 해설에 대한 시리즈를 준비할 예정이니 기대해주시기 바랍니다.

 

본 글은 공격자가 암호화된 데이터베이스를 해독하기 위해서 필요한 복호화 키를 획득할 수 없는 상태라고 전제한 것입니다. 그러나 만약 해커가 복호화에 필요한 키를 탈취한다면 암호화는 무용지물이 되기 때문에 데이터베이스의 권한과 기타 웹 자원의 권한을 명확히 분리하는 작업이 필요합니다.

또한, 이미 국민 절반 이상의 주민등록번호가 유출된 상황이기 때문에, 더 이상의 보호가 어떤 의미가 있겠냐는 의견도 있을 수 있습니다. 하지만 주민등록번호 이외에도 보호되어야 할 개인정보는 많이 있기 때문에 어떤 방식으로 보호를 해야할 지 논의하는 것은 앞으로도 필요할 것으로 보입니다.

 

리뷰를 해주신 분들입니다. 감사합니다!

민병호 연구원
        Twitter – http://twitter.com/tais9
        Facebook – http://www.facebook.com/tais9

구태언 변호사
        Twitter – https://twitter.com/gootiee
        Facebook – http://www.facebook.com/Gootiee

Advertisements
Leave a Comment

댓글을 남겨주세요.

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: