최초로 4세대 동형암호 개발

암호기술 응용 사례 상용화돼

속도·기능 문제 개선 필요해  

 

 

  암호는 더 이상 정보를 보호하는 안전한 수단이 아닌 게 된 지 오래다. 개인정보보호위원회에 따르면 올해 상반기 유출된 민간 기업 개인정보는 총 682만 9000건으로, 이 중 90.5%가 해킹에 의한 것으로 밝혀졌다. 인터넷 서비스 이용에서 암호는 늘 이용되지만, 개인정보 유출의 두려움에서 벗어나기는 쉽지 않다. 암호로서 내 데이터를 보호할 다른 방법은 없는 걸까. 천정희(서울대 수리과학부) 교수는 동형암호를 해결책으로 제시했다. 

  세계 최초 4세대 동형암호기술인 ‘HEAAN(혜안)’을 개발한 천정희 교수는 “동형암호기술은 데이터 유출 방지에 효과적이며, 지금까지 개인정보 유출이라는 사회적 문제 때문에 제약을 받아왔던 기술들이 동형암호를 통해 더욱 효율적으로 상용화됐다”고 말했다. 동형암호의 개념과 암호학의 전망에 대해 들어보고자 천정희 교수를 찾았다.

 

  - 암호화란 무엇이며 그 원리가 궁금합니다

  “우리가 암호를 사용하는 이유는 중요한 데이터를 외부로부터 안전하게 보호하기 위해서입니다. 암호화는 어떤 데이터를 비밀키를 이용해 무작위로 만들어진 난수로 변환하는 작업입니다. 비밀키는 우리가 이해할 수 있는 평문에서, 봐도 이해할 수 없는 암호문으로 바꾸는 것이죠. 암호화를 하게 되면 암호문을 본 사람들은 평문을 유추할 수 없기에, 우리의 데이터가 보호되는 것입니다. 이때 비밀키는 평문을 암호문으로, 암호문을 평문으로 변환하는 역할을 합니다. 무수히 많은 데이터를 일일이 감출 필요 없이, 키 하나만 잘 보관하면 데이터 유출을 방지한다는 점에서 비밀키의 역할이 매우 중요합니다. 마치 금고에 데이터를 넣고 열쇠로 잠군 후 그 열쇠만 잘 지키고 있으면, 금고에 있는 데이터들은 다 보호되는 것처럼요.”

 

  -기존 암호의 한계를 보완하려 동형암호가 등장했는데요

  “암호기술의 가장 큰 문제는 개인정보 유출에 취약하다는 점입니다. 개인정보 유출은 대부분 데이터의 소유주와 처리자가 분리될 때 발생합니다. 데이터 가공을 직접 하기 어려운 소유주가 다른 사람에게 일을 위탁하는 것은 어쩔 수 없는 당연한 일입니다. 문제는 다른 사람에게 위탁하기 위해 비밀키로 금고문을 여는 순간 내 데이터가 해킹될 우려가 있다는 점입니다. 즉, 비밀키가 해킹당하면 내 개인정보도 자연스레 유출될 수밖에 없죠. 개인정보를 보호하기 위해서는 비밀키가 도난당하지 않으면 됩니다. 

  동형암호는 데이터 유출 방지를 위해 고안된 암호로, 비밀키 없이도 위탁자가 데이터를 가공할 수 있습니다. 기존 암호기술은 데이터를 이용할 때 열쇠를 통해 금고문을 열고 데이터를 꺼내서 가공한 뒤, 다시 열쇠를 이용해 금고에 데이터를 넣은 후 잠갔습니다. 해커가 비밀키를 훔치면 우리의 데이터는 손쉽게 유출될 수밖에 없었습니다. 하지만 동형암호는 금고문을 열쇠로 열 필요 없이, 데이터 처리자가 금고 안에 직접 손을 넣어서 가공하기 때문에, 우리의 데이터는 외부로부터 안전합니다. 정보를 가공하는 사람들이 데이터를 처리하고 있지만, 그 내용은 알 수 없기 때문입니다. 즉, 동형암호는 암호화된 상태에서 데이터 작업을 하는 안전한 기술로 ‘말랑말랑한 금고’라고 이해하면 됩니다.”

 

  - 1세대부터 4세대 동형암호의 특징은

  “1세대 동형암호는 동형암호기술이 개념적으로 완전하다는 것을 증명하는 정도에서 그쳤습니다. 기술을 실제로 구현하지 못했어요. 2세대에 들어서야 동형암호기술이 현실에 구현됐지만, 느리다는 단점이 있었습니다. 3세대 때는 2세대 동형암호기술을 빠르게 구현할 방법이 등장했습니다. 2세대에는 정수 연산만 가능했지만, 3세대에는 비트 연산이 가능한 방법이 마련돼 효율적인 일 처리가 가능해졌기 때문입니다.

  4세대에 들어서야 동형암호기술은 실수 연산이 가능하게 됐습니다. 실수 연산을 하는 이유는 우리가 실제로 보호하려는 데이터들이 대부분 실수로 이뤄져 있기 때문입니다. 이때 실수는 덧셈, 곱셈, 반올림 정도의 연산 대상을 의미합니다. 4세대 이전에는 덧셈, 곱셈만 할 수 있었지만, 이제는 반올림까지 하게 된 것이죠. 따라서 계산 속도가 빨라졌을 뿐만 아니라 내가 원하는 함수를 계산하기 더 수월해졌고 데이터 가공 시 선택의 폭이 넓어지게 됐습니다.” 

 

  - 최초로 4세대 동형암호인 ‘혜안’을 개발했는데

  “동형암호의 이론적인 훌륭함은 누구나 다 알고 있지만, 실제로 상용화하지 못하고 있다는 아쉬움이 있었습니다. 저는 현실에서 동형암호가 사용될 만큼 기술을 발전시키고, 보호하려고 노력해야겠다는 생각을 했습니다. 제가 소속돼있는 서울대 산업수학센터에서 반올림 연산이 가능한 4세대 동형암호기술을 만드는 것을 공동문제로 삼고 연구했습니다. 지금까지 동형암호는 속도와 기능의 문제로 효율성이 떨어져 상용화의 어려움이 있었습니다. 하지만 반올림 연산이 가능해지면 실수 연산이 빠른 속도로 이뤄지게 되고, 따라서 현실에서의 활용이 수월해집니다. 어느 날 당시 박사 과정에 있던 한 학생이 그 문제를 풀었고, 최초의 4세대 동형암호인 ‘혜안’이 2015년 12월 24일에 탄생했습니다. 2016년 발표를 한 이후에 나온 4세대 동형암호는 아직 없습니다. 혜안이 현재 유일한 4세대 동형암호입니다. 

  지금 혜안은 산업수학센터에서 개발한 ‘코동이(코로나동선안심이)’라는 앱에 활용되고 있습니다. 코동이는 앱 이용자가 코로나 확진자와 이동 경로가 겹치는지 확인할 수 있는 앱인데, 이용자의 이동 경로가 유출될 걱정 없이 사용할 수 있습니다. 지금까지 이런 앱이 나오기 어려웠던 이유는 기술적 문제 때문이 아니라, 개인정보 유출이라는 사회적 우려 때문이었습니다. 기술적으로는 매우 쉽게 구현이 됩니다. 확진자들의 동선을 추적하고 이를 핸드폰 속 이용자 위치와 대조해서 교집합을 찾으면 되는 거니까요. 이동 경로를 데이터 처리자에게 보낼 때 개인정보가 해킹당할지 모른다는 걱정 때문인 건데, 동형암호를 이용하면 처리자는 암호화된 제 데이터만 보게 돼 개인정보가 유출되지 않으니 상용화에 문제가 없습니다. 실제로 코동이는 현재 전국에서 활용되고 있습니다.”

 

  - 동형암호기술은 어느 분야에 적용될 수 있을까요

  “프라이버시 보존, 추론, 훈련 분야 등에 사용 가능합니다. 먼저 프라이버시 보존의 경우, 내 패스워드가 해킹된 패스워드인지 알려주는 서비스를 현재 마이크로소프트에서 운영하고 있습니다. 다음으로 프라이버시 추론 분야 중 헬스케어 관련 서비스에서도 활용됩니다. 예를 들면 고객의 DNA를 분석한 후 어떤 질병에 걸릴 위험성이 높은지 알려주는 기업이 있습니다. 고객이 자신의 DNA 정보 유출을 걱정하지 않고 서비스를 이용하도록 동형암호 기술이 이용되고 있습니다. 이외에도 음성 인식, 코로나19 백신 부작용자 파악 등에 활용 가능합니다.” 

 

  - 동형암호기술에도 한계가 있을까요

  “동형암호기술은 현재 속도와 기능 두 가지 부분에서 한계를 가지고 있습니다. 먼저 동형암호기술은 데이터가 암호화된 상태에서 가공되다 보니 다른 암호기술에 비해 우둔합니다. 빠른 일처리를 하려면, 암호 데이터를 처리하는 속도를 향상해야 합니다. 이를 위해서는 효율적인 가속기를 만들어야 하는데, 현재 세계 유수 업체들이 달려들어서 연구하고 있습니다. 

  또 다른 문제는 기능입니다. 가속기만 있어서는 계산이 빨라지지 않습니다. 따라서 수학적으로도 계산을 더 빨리할 수 있는 알고리즘을 모색해야 합니다. 예컨대 컴퓨터가 있다고 옛날에 인공지능 기술이 가능했던 것은 아니었습니다. 컴퓨터가 느렸다는 문제와 효율적인 알고리즘이 없었다는 두 문제 때문이었죠. 이와 마찬가지로, 동형암호도 속도와 기능적 문제를 해결해야 더 향상된 기술로 발전할 것입니다.” 

 

  - 앞으로 주목할만한 암호기술이 있다면

  “‘zk-SNARKs(zero-knowledge Succinct Non-interactive Argument of Knowledge)’라는 암호기술이 주목받고 있습니다. SNARKs는 기계가 주어진 일을 했는지 증명하는 기술입니다. 예를 들면, 클라우드에 제 사진을 주고 반복 연습을 시킨 후, 나중에 내 얼굴을 보여주면 잠금 해제를 하게 한다고 생각해봅시다. 제가 클라우드에게 1000번 연습하라고 지시했는데, 우리는 클라우드가 몇 번의 훈련을 했는지 확인할 길이 없습니다. 

  그런데 SNARKs를 이용하면 우리는 기계가 주어진 일을 성실하게 했는지 검증할 수 있습니다. 이 기술이 필요한 이유는 위험한 일이 발생했을 시 기계의 문제를 증명하는 게 매우 중요하기 때문입니다. 만약 해커가 기계에게 내가 시킨 일과 다른 일을 부여할 경우 문제가 발생할 수 있습니다. 내가 사진 1000장을 클라우드에게 줬는데 클라우드가 해커의 사진 1장과 같이 연습을 해서, 해커가 자신의 얼굴을 통해 잠금 해제를 하게 되는 경우를 예로 들어 봅시다. 즉, SNARKs는 내가 시킨 일을 기계가 올바르게 수행했는지 또는 엉뚱한 일을 했는지 확인하고, 기계가 한 일을 검증해줌으로써 발생할 문제를 해결할 수 있습니다. 

  지금까지 암호기술은 무엇을 '못하게' 하는 기술로서 인식됐습니다. 하지만, 동형암호기술은 그렇지 않습니다. 개인정보 유출의 우려가 없으니 걱정 없이 이용 가능하기 때문이죠. 동형암호라는 새로운 세상이 열린 만큼, 앞으로 많은 사람이 관심을 가지고 응용 연구를 이어갔으면 좋겠습니다.” 

'코동이' 앱이 동형암호를 활용해 코로나19 확진자와 앱 이용자의 이동 경로가 겹치는지 확인하고 있다.
'코동이' 앱이 동형암호를 활용해 코로나19 확진자와 앱 이용자의 이동 경로가 겹치는지 확인하고 있다.

 

 

글 | 진서연 문화부장 standup@

사진 | 김예락 기자 emancipate@

사진출처 | 코동이

 

저작권자 © 고대신문 무단전재 및 재배포 금지