개인정보 비식별화에 대한 꽤 진지한 고찰

도대체 빅 데이터란 무엇이고 무엇이어야 하는가? (번외)

순서 따르자니 ‘빅 데이터를 위한 정보보호’ 차례지만 이건 얄짤없이 방법론이라 분야가 하도 방대해 도무지 엄두가 나지 않아서 이 일을 어쩌나 큰일 벌인 스스로를 원망하던 참에, 고맙게도 마침 등장해 준 ‘(빅 데이터 활용에 관한,) 개인정보 비식별화에 대한 적정성 자율평가 방안’을 보며 일단 이 문제부터 훑고 보자 작정했다.

개인정보 비식별화

‘개인정보 비식별화’란, 어떤 정보를 통해 어떤 개인의 신원을 확인할 수 없게끔 내용을 감추는 일을 뜻한다. 다소 두루뭉실하다 싶은 ‘개인정보’란, 해당 정보만 딱 봐도 누구의 것인지 알아낼 수 있는 주민등록번호, 신용카드번호 CCN, 전화번호 등 개인의 신상 관련 정보로 읽어도 무방하다.

개인정보를 비식별화하려는 까닭은 간단하다. 주요 정보만 감춤으로써 나머지 기타 정보는 자유롭게 쓰겠다는 강력한 의지다. 누구의 의지? 일단은 기업의 마케팅 관련자.

마케터들에게 개인정보는 그야말로 밥줄이다. “고객이란 무엇인가? 도대체 무엇인가?” 정체를 파악하기 위한 결정적 도구라고 주장하는 상품들은 많았지만 대부분 실패했고, 개중 최근 등장한 것이 바로 빅 데이터. 성공 여부는 앞으로 두고 볼 일이지만 지금껏 등장했던 그 어떤 수법보다도 더 성공 가능성 높은 방법이라는 건 틀림없다.

빅 데이터를 향한 마케터의 간절한 의지를 간단하게 정리해 보자면, ‘페르소나 정교화’ 목적이라 할 수 있겠다. 페르소나란, 어떤 상품의 잠재적 사용자 유형을 대표하는 가상적 인물로서, 마케터들은 어떤 페르소나를 설정하고 그(녀)가 어떤 제품을 원하는지, 제품의 어떤 면에서 편리 그리고 불편을 느끼는지, 가격이 얼마 정도면 “이건 사야만 해!” 결심할지 등을 연구함으로써 마케팅 전략을 수립한다. 빅 데이터 분석을 통해 페르소나 설정 작업이 보다 정교해지리라는 기대. 실제로 빅 데이터의 정보적 가치의 상당 지분이 마케터의 몫이다

문제는, 오직 소비자에 대한 실제 접근과 상품 판매만을 실적으로 쳐주는 분위기, 특히 한국 업계 풍토 때문에라도, 가상적 인물이어야 할 페르소나가 실제 구매자 목록으로 그대로 이어지길 바라는 마음이 어쩔 수 없이 일어나고, 즉 비식별화 처리된 개인정보를 ‘해킹’하려는 노력도 뻔히 일어날 일이다. 그러한 정보가 (이 말 참 식상하긴 하나) 범죄에 악용되리라는 것도 자명한 일이고.

벌써부터 마케터들의 원성이 막 들려온다. “우리에게 필요한 건 개인정보가 아니라 소비자 성향에 대한 분석일 뿐이라고!” 그렇다. 옳은 말이고 실제로도 그러하다. 빅 데이터 활용 의지에 대한 사회의 부정적 의심은 상당히 억울한 면이 있다. 분석이 주업무인 마케터에게는 ‘개인의 식별’은 아무 의미가 없다. ‘그는 누구인가’보다 ‘어떤 사람들이 이 제품을 구입한다’가 훨씬 더 중요하기 때문이다. 그래서 늘 소비자 성향에 대한 짐작을 하는 것이고, 그 작업을 보다 효과적으로 하기 위한 가장 최신의 도구가 빅 데이터일 뿐이니, 그들 입장에선 억울할 만하다.

그러나, 성향에 대한 추론만 가능한 정도로 개인정보가 제대로 은닉된 상태라면 정보 취급에 대한 규제는 그저 방해일 뿐이겠지만, 개인 식별이 가능한 정보의 수집-저장-조합-분석 이전 단계에서의 비식별화 방법론 자체의 위험이 따로 있다. 심지어 그 방법은 빅 데이터 사용 허용의 전제이기도 하다.

정보 취급의 정당함 따지기 이전에 전제부터 문제가 있다는 뜻이니, 살펴보자.

방법1) 토크나이제이션 방식

작업공간과 안전지대를 분리한다는 점에서 한참 유행하던 ‘망 분리’와 개발 철학이 비슷하다. 작업공간에서는, 실제 데이터 대신에 ‘랜덤 토큰’이라는 대체 데이터를 사용한다. 실제 데이터는 AES 암호화를 통해 보호되는 별도의 DB에 따로 보관한다. 중요한 데이터만 따로 안전하게 보관한다는 점에서 편리해 보여 실제로도 자주 쓰이는 방식이다.

1)랜덤 토큰: 전산에 있어 ‘랜덤’은 정말이지 까다로운 테마다. “진짜 랜덤인가?” 무지무지 까다로운 질문인 것. 게다가 작업공간의 시스템적 필요에 따라 (아래 ‘형태 보존 암호화’ 참조) 토큰은 일정한 형식을 갖춰야만 한다. 따라서, 간단히 말해 랜덤 토큰은 랜덤일 수가 없는 것이다.

2)통신구간 보안: 작업공간과 안전지대는 서로 통신해야 한다. 토큰으로 작업하더라도 결정적 순간에는 실제 데이터와 합치할 필요가 있으니, 저장 1회로 그치는 일이 아니다. 통신구간의 문제는 보안 외, 전체 시스템 성능 저하 문제도 일으킨다.

3)안전지대 보안: AES로 암호화 한다고 해서 무조건 안전한가? 시스템 자체가 안전해야 한다. 정보보안의 가장 큰 허점은? “이곳은 안전한다”는 확신인데, 보안장치보다 시스템 자체의 허점이 크고 실제 정보 유출도 대개 황당하리만치 기본적인 곳에서 일어난다.

간단하게 말하자면,

“따로 안전하게 보관했으니까, 안전하다.”

이 믿음만큼 위험한 게 따로 없다.

그리고, 별도 시스템 사이의 통신이 필수적인 등 전체 시스템의 복잡도가 높아지고 따라서 성능에 영향을 준다는 단점도 크다. 이건 뒤에 다시 서술함.

방법2) 형태 보존 암호화

토크나이제이션 방식의 여러 문제점 때문에 개발된 것이, 암호화 장치를 작업공간 내부에 탑재하여 시스템과 유기적으로 연동하는 ‘형태보존 암호화 (FPE: Format-preserving encryption)’방식이다

실제 데이터를 (후술하는) FPE 방식을 통해 비식별화 처리하고, FPE 암호문으로 실제 작업을 수행하고, 실제 데이터 값이 필요할 때가 되면 암호문을 복호화한다. 시스템 간 통신 없이 시스템 내부에서 동작하기 때문에 성능에 미치는 영향이 거의 없다.

1)암복호화 키 관리: 암호화한 실제 데이터를 다루기 때문에 암복호화 키 관리가 매우 중요하다. 키를 뺏기면? 암호가 암호가 아니게 되니까,,

2)정보 보안 일반: 시스템 전체의 일반적 보안 상태가 좋아야 한다는 전제가 따른다. 하지만 이는 어느 시스템에서나 마찬가지 요구.

일단, 그림이 단순하다!

“적은 수의 논리로 설명이 가능하면, 많은 수의 논리를 세우지 마라”
“상황을 설명하는 두 주장이 있다면, 간단한 쪽을 선택하라”

꽤 진지하게 숙고해 볼 만한 오컴(William of Ockham)의 금언들.

빠른 성능과 높은 보안성을 동시에 추구해야 하는 상황이라면 토크나이제이션 방식보다는 FPE 방식이 더 적절한 선택이지만, 정보 보안 일반에 대한 통합적 이해를 갖추고 특히 FPE 방식을 제대로 다루는 전문기업과의 긴밀한 협조가 필수적이라는 어째 좀 피곤함이 단점이라면 단점이다.

“그런데, 형태 보존 암호화가 뭔데?”

형태 보존 암호화란, 데이터 형태를 보존하는 암호화다,,

모든 전산 시스템은 데이터 형식에 민감하다. 특히 규모가 큰 통합 시스템의 경우 데이터 구조나 연결된 하부 시스템을 건드리기 어려워, 데이터의 형식과 길이 등을 변경하는 일이 매우 까다롭다. 따라서 데이터의 속성을 유지하는 동시에 보안성을 갖추는 일이 가장 심각한 문제다.

대개 데이터 구조 변경 작업은 여러 가지 제약을 가진다. 업무 효율을 위해 표준화 및 가독성 위주로 짜여진 설계 때문에, 일반적으로 데이터의 길이나 속성 변경은 위험을 감수해야 한다.

말이 어째 좀 복잡하다 싶으니 간단히 예를 들어,

4개 숫자의 4개 묶음으로 이루어진 정보가 있다. 이를 일반적인 AES 암호화를 통해 암호문으로 바꾸면? 알아볼 수 없는 문자열이 만들어진다. 그걸 그대로 들고 평소 하던 대로 일을 할 수 없는 것이다.

FPE 암호화를 통해 암호문으로 바꾸면? 암호화 목적은 달성하지만, 즉 AES 수준의 보안성은 충분히 갖추지만 평소 하던 대로 작업하더라도 문제가 없는, ‘형태가 보존된 암호문’이 만들어지는 것이다. 그렇다. 복잡한 이야기다. 하지만 매우 중요한 이야기다.

개인정보 비식별화 방법에 대해 알아보았고,
다시 처음으로 되돌아가 애초 질문에 답해 보자.

“개인정보 비식별화만 하면, 빅 데이터 분석 막 해도 되나?”

감히 말하건대, 막 해도 된다.
단, 개인정보 비식별화 방법에 대해선 좀 따져 볼 필요가 있다.

특히 ‘랜덤 토큰’ 방식은 문제가 많다. 거듭 강조하는 바,

“따로 안전하게 보관했으니까, 안전하다.”

이 믿음만큼 위험한 게 따로 없다. 지난 수많은 사건사고들을 되짚어 보라.

0 답글

댓글을 남겨주세요

Want to join the discussion?
Feel free to contribute!

답글 남기기