개인정보의 암호화 대상 및 방법

Posted in SW개발 // Posted at 2020. 7. 28. 21:42
728x90

요즘 개인정보가 핫(hot)? 하다.

산업 전 분야에 걸쳐 개인정보가 주요한 비즈니스 데이터로 활용되고 4차 산업혁명의 인공지능, 빅데이터, 사물인터넷 등의 융/복합 기술 기반에는 방대하고 광범위한 데이터가 활용되는데 여기서 개인정보 역시 예외가 아니다.

하지만 무분별한 개인정보의 활용은 많은 부작용을 낳는 것도 사실이다.

기업이나 개인은 타인의 개인정보를 활용할 때, 자칫 잘 못 하면 법 방망이(?)에 후드려 맞을 수 있다는 것을 명심해야 한다.


보통 개인정보를 정보시스템에 저장 또는 송/수신할 때 암호화 해야 한다고 알고 있는데, 그 기준이 모호할 때가 많다.

"모든 개인정보를 암호화 해야 하는가? 개인정보의 범위는 어디까지 인가?"

 

이 글에서는, 법령과 행정규칙에 근거하여 개인정보의 개념을 이해하고 암호화 대상과 방법에 대해 알아보고자 한다.

By 개인정보보호법

'개인정보보호법'에서는 '개인정보'를 다음과 같이 정의하고 있다.


[개인정보보호법, 제2조(정의)]

"개인정보"란 살아 있는 개인에 관한 정보로서 다음 각 목의 어느 하나에 해당하는 정보를 말한다

  • 성명, 주민등록번호 및 영상 등을 통하여 개인을 알아볼 수 있는 정보
  • 해당 정보만으로는 특정 개인을 알아볼 수 없더라도 다른 정보와 쉽게 결합하여 알아볼 수 있는 정보. 이 경우 쉽게 결합할 수 있는지 여부는 다른 정보의 입수 가능성 등 개인을 알아보는 데 소요되는 시간, 비용, 기술 등을 합리적으로 고려해야 한다.
  • 가명처리함으로써 원래의 상태로 복원하기 위한 추가 정보의 사용,결합 없이는 특정 개인을 알아볼 수 없는 정보(가명정보)

(참고) 가명처리
- 개인정보의 일부를 삭제하거나 일부 또는 전부를 대체하는 등의 방법으로 추가 정봅가 없이는 특정 개인을 알아볼 수 없도록 처리하는 것

법령 정의에 근거하여 개인정보를 해석하더라도, 개인정보의 범위는 매우 광범위 할 수 있으며 상황에 따라 해석이 달라질 수 있는 것을 알 수 있다

개인정보보호법의 '개인정보의 안전성 확보조치 기준'에서는 개인정보 암호화 대상 및 방법을 명시하고 있다.

 


[개인정보의 안정성 확보조치 기준, 제7조(개인정보의 암호화)]

  • 고유식별정보/비밀번호/바이오정보를 정보통신망으로 송신하거나 보조저장매체 등을 통하여 전달하는 경우
  • 비밀번호/바이오정보를 저장하는 경우(단 비밀번호를 저장하는 경우 복호화 되지 않도록 일방향 암호화 저장)
  • 인터넷 구간 및 DMZ에 고유식별정보를 저장하는 경우
  • 내부망에 고유식별정보를 저장하는 경우 다음 각 호의 기준에 따라 암호화 적용여부/범위 정하여 시행
    • 개인정보 영향평가의 대상이 되는 공공기관의 경우 해당 개인정보 영향평가 결과
    • 암호화 미적용시 위험도 분석에 따른 결과
  • 개인정보를 암호화 하는 경우 안전한 암호알고리즘으로 암호화 저장
  • 암호화된 개인정보를 안전하게 보관하기 위해 안전한 암호 키 생성, 이용, 보관, 배포 및 파기 등에 관한 절차 수립/시행
  • 업무용 컴퓨터 또는 모바일 기기에 고유식별정보를 저장하여 관리하는 경우 상용 암호화 SW 또는 안전한 암호화 알고리즘을 사용

(고유식별정보)
- 주민등록번호 / 외국인등록번호 / 운전면허번호 / 여권번호

(암호화 미적용시 위험도 분석에 따른 결과)
- 개인정보처리시스템의 보호수준을 진단하여 암호화에 상응하는 조치를 했는지를 분석
- (참고) 개인정보 위험도 분석 기준 및 해설서

 

글로 나열된 법 조문으로는 한눈에 들어오지 않는다. KISA(한국인터넷진흥원)에서 발간한 '개인정보의 암호화 조치 안내서'의 요약표를 옮겨 보았다.

암호화 적용 기준 요약표

 

또한 해당 안내서에서는 안전한 암호 알고리즘을 안내하고 있다.


  • 안전한 암호 알고리즘이란 국내 및 미국, 일본, 유럽 등의 국외 암호 연구 관련 기관에서 권고하는 암호 알고리즘을 의미
  • 공공기관은 국가정보원의 검증대상 암호 알고리즘을 기반으로, 민간부문(법인,단체,개인)은 국내/외 전문기관(KISA, NIST, ECRYPT, CRYPTREC 등)이 권고하는 암호 알고리즘을 기반으로 개인정보보호법상의 개인정보 암호화에 사용할 수 있는 안전한 암호 알고리즘의 예시는 다음의 표와 같다.

 

By 정보통신망법

개인정보보호법 뿐만 아니라, 정보통신망법에서도 '개인정보의 기술적/관리적 보호조치 기준'을 통해 개인정보 암호화에 대한 행정 규칙을 명시하고 있다.


[개인정보의 기술적/관리적 보호조치 기준, 제6조(개인정보의 암호화)]

  • 비빌번호는 복호화 되지 않도록 일방향 암호화해서 저장
  • 다음 각 호의 정보를 안전한 암호알고리즘으로 암호화해서 저장
    • 주민등록번호
    • 여권번호
    • 운전면허번호
    • 외국인등록번호
    • 신용카드번호
    • 계좌번호
    • 바이오정보
  • 개인정보 및 인증정보를 송/수신할 때에는 안전한 보안서버 구축 등의 조치. 보안서버는 다음 각 중 하나의 기능을 갖추어야 함
    • 웹서버에 SSL 인증서를 설치하여 전송 정보 암호화 송/수신 기능
    • 웹서버에 암호화 응용프로그램을 설치하여 전송 정보 암호화 송/수신 기능
  • 개인정보를 컴퓨터, 모바일 기기 및 보조저장매체 등에 저장할 때에는 암호화
  •  

개인정보보호법과 거의 유사하지만, 암호화 대상에 있어 두 가지(신용카드번호, 계좌번호)가 추가되어 있는 것을 확인할 수 있다.

결론

지금까지 관련 법령(개보법/정통망법)과 행정규칙을 살펴 보았는데, 쉽게 풀어서 결론 지으면 다음과 같다.

1. 고유식별정보(주민등록번호/운전면허번호/여권번호/외국인등록번호)와 비밀번호, 바이오정보는 무조건 암호화
(내부망 저장시 예외가 있긴 하나, 이는 한정된 기관(일부 공공기관 등)에 한하므로 패스. 상세한 내용은 위의 표 참조)

2. 암호화 할 때는 안전한 암호화 알고리즘을 사용
(안전한 알고리즘은 위에 표 참조)


3. 비밀번호는 (복회화 되지 않도록) 일방향 (해쉬) 암호화


4. 정통망법 적용 사업자는 추가로 신용카드번호, 계좌번호도 암호화

(주의)
이 글에서는 두개의 법(개보법/정통망법)만을 참조하여 작성되었습니다.
분야별로 법 적용이 다를 수 있으므로 사업자별로 적용받는 법(신용정보법, 위치정보법 등)을 추가로 확인해야 할 수도 있습니다.


(참고) FAQ

KISA가 발간한 '개인정보 암호화 조치 안내서'에는 실무자들이 암호화 조치 관련하여 자주 궁금해 하는 점들을 부록의 FAQ로 안내하고 있는데, 여기에 그 내용을 옮겨와 본다.

[Q1] . 개인정보 보호법 상의 암호화 대상은 무엇이며 어떻게 암호화해야 하나요?

개인정보 보호법상 암호화 대상은 고유식별정보(주민등록번호, 외국인등록번호, 운전면허번호, 여권번호), 비밀번호, 바이오정보입니다. 암호화 대상 정보를 전송시 그리고 저장시 아래 표에 따라 암호화하여야 합니다

암호화 적용 기준 요약표

 

[Q2]. 공공기관입니다. 개인정보처리시스템의 DBMS (DataBase Management System)에서 제공하는 TDE(Transparent Data Encryption) 방식을 사용한 암호화가 개인정보 보호법에 위배됩니까?

개인정보 보호법 관점에서는 개인정보의 안전성 확보조치 기준(고시)에 따라 고유식별정보 암호화시 안전한 알고리즘을 사용하도록 하고 있습니다. TDE 방식에서 안전한 알고리즘을 사용하여 암호화한다면 법 위반 사항이 아닙니다. 다만, 공공기관은 전자정부법에 따라 국가정보원이 안전성을 확인한 암호모듈 또는 제품을 우선 적용하여야 하며 자세한 사항은 해당 기관에 적용되는 관련 법령, 고시, 규정, 지침 등을 확인하시기 바랍니다

 

[Q3]. 암호화 관련하여 우리 기관(공공, 민간)에 적용되는 규정·지침과 개인정보보호법에서 적용하는 암호화 요구사항이 서로 다를 때 어느 것을 적용해야 하나요?

개인정보 보호법 및 시행령, 고시에서 규정한 암호화 요구사항을 준수하면 개인정보 보호법상 암호화 의무는 준수한 것입니다. 본 고시 준수로 인하여 다른 규정·지침을 준수하기 어렵게 된다면 “개인정보 보호법”은 준수 하였으나 해당 규정·지침은 위배한 것이 될 수 있습니다. 따라서, 최선의 방법은 개인정보 보호법과 해당 기관에 적용되는 규정·지침에서 요구하는 암호화 관련 사항 모두를 준수하는 것이라 할 수 있습니다.

 

[Q4]. 안전한 암호 알고리즘에는 어떤 것들이 있나요?

안전한 암호 알고리즘은 국내·외 전문기관에서 권고하고 있는 알고리즘으로서 본 안내서의 ‘[참고 1] 국내·외 암호 연구 관련 기관의 권고 암호 알고리즘’, ‘[참고 2] 국가정보원 검증대상 암호 알고리즘 목록’의 내용을 참고하시기 바랍니다

 

[Q5]. 대칭키 암호 알고리즘 DES나 해쉬함수 MD5를 사용하면 안 됩니까?

DES와 MD5와 같은 암호 알고리즘의 경우 안전성 유지가 어려우므로 안전한 암호 알고리즘으로 볼 수 없어 권고하고 있지 않습니다. 안전한 암호 알고리즘은 본 안내서의 ‘[참고 1] 국내·외 암호 연구 관련 기관의 권고 암호 알고리즘’, ‘[참고 2] 국가정보원 검증대상 암호 알고리즘 목록’ 내용을 참고하시기 바랍니다.

 

[Q6]. DB에 저장된 주민등록번호를 일부분만 암호화해서 저장해도 되는 것인지요?

예, 일부분 암호화가 가능합니다. 시스템 운영이나 개인 식별을 위해 해당 정보를 활용해야 하는 경우 생년월일 및 성별을 포함한 앞 7자리를 제외하고 뒷자리 6개 번호를 암호화 하여 사용할 수도 있습니다.

 

[Q7]. 암호화해야 하는 바이오정보의 대상은 어디까지 인지요?

암호화하여야 하는 바이오정보는 식별 및 인증 등의 업무절차상 수집이 명확한 경우로 한정되며, 이와 무관하게 수집되는 이미지, 녹취 정보 등은 암호화 대상에서 제외됩니다. 예를 들어, 콜센터 등에서 업무절차상 주민등록번호 수집이 명확한 경우의 음성기록은 암호화 해야 하나, 단순 상담 시 저장되는 음성기록 등은 암호화 대상에서 제외될 수 있습니다.

 

[Q8]. 안전한 대칭키 암호화 알고리즘 사용시 암호키(비밀키)의 길이는 어떻게 설정해야 하나요?

암호키의 길이가 짧거나 사용되는 문자의 종류를 섞어 쓰지 않으면 암호화가 되었더라도 공격자가 쉽게 암호 해독을 할 수 있습니다. 암호해독이 어렵도록 암호키 설정시 문자, 숫자, 특수문자 등의 문자조합 방법과 문자열 길이, 사용기간 등의 암호키 작성 규칙을 정하여 운영하는 것이 바람직합니다. 특히 잘 알려진 영문자, 숫자(1234, 123456, love, happy, admin, admin1234) 등은 쉽게 유추 할 수 있으므로 사용하지 않도록 주의해야 합니다.

 

[Q9]. 회사에 고객들의 이름, 주소, 전화번호, 이메일, 비밀번호를 저장하고 있습니다. 암호화 대상이 무엇인가요?

개인정보의 안전성 확보조치 기준 고시에서 암호화 대상은 고유식별정보(주민등록번호, 여권번호, 운전면허 번호, 외국인등록번호), 비밀번호, 바이오정보입니다. 특히, 비밀번호의 경우에는 일방향(해쉬) 암호화하여 저장하시면 됩니다

 

[Q10]. 부동산중개업을 하고 있습니다. 업무용 컴퓨터에 한글, 엑셀을 이용하여 주민등록번호를 처리 하고 있습니다. 암호화를 어떻게 해야 합니까?

PC에 저장된 개인정보의 경우 상용프로그램(한글, 엑셀 등)에서 제공하는 비밀번호 설정기능을 사용하여 암호화를 적용하거나, 안전한 암호화 알고리즘을 이용하는 소프트웨어를 사용하여 암호화할 수 있습니다.
※ 한컴 오피스 : 파일 >> 다른이름으로 저장하기 >> 문서 암호 설정에서 암호 설정 가능 ※ MS 오피스 : 파일 >> 다른이름으로 저장하기 >> 도구 >> 일반옵션에서 암호 설정 가능

 

[Q11]. A사가 개인정보처리시스템을 위탁하거나, ASP(Application Service Provider), 클라우드 서비스를 이용하는 경우 암호화 수행을 누가 해야 하나요?

개인정보의 암호화 등 안전성 확보조치는 원칙적으로 “개인정보처리자”의 의무입니다. 따라서 개인정보 처리시스템을 위탁하거나 ASP를 이용하는 경우에도 암호화 조치사항에 대한 이행여부에 대한 책임은 위탁기관인 A사가 지게 됩니다. 다만, A사는 암호화에 대한 요구사항을 A사의 위탁을 받은 수탁기관(ASP, 클라우드 서비스 제공자 등)과의 계약서 등에 명시하여 수탁기관으로 하여금 암호화를 처리하게 요구할 수 있습니다.

'SW개발' 카테고리의 다른 글

2진수 <-> 8 진수, 16 진수 변환  (0) 2023.09.27
n 진수? 진수 변환 !  (0) 2023.09.27
The Scale Cube (규모 확장성 모델)  (0) 2019.02.21
해킹 피해에 따른 행정처분 사례  (0) 2019.02.08
[웹보안] SQL Injection  (1) 2019.01.28