제 목 | 기밀계산을 활용한 AI 데이터 보호 연구 |
---|---|
등록일 | 2022-03-11 |
첨부파일 | |
데이터 보호의 중요성 모든 것이 데이터로 저장되고 처리되는 오늘날 데이터 보호는 어느 보안 문제보다 중요한 문제라 할 수 있다. 특히 AI 서비스가 보편적으로 적용되고 있는 최근 트렌드에 따라, AI를 가능하게 하는 핵심 요 소인 데이터에 대한 보안 이슈는 더욱더 중요해질 것이라 전망되고 있다. 일반적으로 데이터는 다음의 세 가지 상태로 존재한다. 1) 전송 중인 데이터(Data in transit), 2) 사 용 중이지 않은 데이터(Data at rest), 3) 사용 중인 데이터(Data in use). 이러한 각각의 상태마다 다 른 활용처가 있으며 때문에 다른 보안 솔루션이 적용된다. 전송 중인 데이터(Data in transit)의 경우에는 모든 종류의 통신을 통해 전달되는 데이터를 의미하며, 일반적인 대칭/비대칭 암호화 알고리즘으로 기밀성 및 무결성을 보장할 수 있다. 사용 중이지 않은 데이터(Data at rest)는 보통 저장장치가 담고 있는 데이터를 의미하며, 전송 중인 데이터와 비슷하게 암호화 알고리즘 적용을 통하여 기밀성 및 무결성을 보장할 수 있다. 사용 중인 데이터(Data in use)는 실제로 계산에 사용 중인 데이터를 의미한다. 모든 종류의 데이터 기반 서비스를 제공하기 위한 계산에 사용되는 모든 데이터들이 여기에 포함된다. 이러한 사용 중인 데 이터의 경우에는 위의 두 데이터 종류와 다르게 일반적인 암호화 알고리즘을 통하여 기밀성과 무결성을 보장할 수 없다. 이는 암호화 알고리즘이라는 것은 복호화 키를 가지지 않은 임의의 사용자가 인식할 수 없는 공간으로 데이터를 매핑하는 것이 핵심인데, 이렇게 매핑 된 공간에서는 통상적인 계산 법칙이 성 립하지 않기 때문이다. AI 시대에서의 사용 중인 데이터(Data in use) 보호 앞으로 다가올 보편화된 AI 세상에선 사용 중인 데이터에 대한 기밀성 및 무결성 보장이 가장 중요할 것으로 전망되고 있다. AI 서비스의 질을 결정짓는 가장 중요한 요소 중 하나는 결국 데이터의 퀄리티 다. 그리고 우수한 데이터 퀄리티는 결국 무엇보다 개인적이고, 포괄적이며, 또한 상세한 데이터들을 필 요로 한다. 훌륭한 AI 기반 헬스케어 서비스를 제공하기 위해서는 각 개인의 일거수일투족을 담은 데이터를 기반 으로 한 계산이 도움이 될 것이며, 우수한 자율 주행 서비스는 개별 차량의 운행 정보뿐만이 아니라, 도 로 위의 모든 차량에 대한 운행 정보를 기반으로 계산하는 것이 좋을 것이다. 또한 이러한 모든 데이터 들의 측정값이 공간적으로 그리고 시간적으로 보다 정확하고 정밀하게 표현된 데이터를 기반으로 한 계 산이라면 더욱 양질의 서비스를 제공하는데 도움이 될 것이다. 하지만 사용 중인 데이터에 대한 의존성은 결국 각 개별 사용자들에게 “내 데이터는 과연 잘 보호 되 고 있을까?”라는 의구심을 낳을 것이며, 이러한 데이터 보호에 대한 이슈는 여러 곳에서 발생하고 있다. <사진 출처 : www.freepik.com> 기밀 계산: 사용 중인 데이터 보호를 위한 솔루션 기밀 계산 기술은 사용 중인 데이터를 보호하기 위한 솔루션이다. 기밀 계산은 일반적으로 보안 솔루 션의 제1원칙인 최소 권한(The principle of least privilege)을 구현한 기술이라 할 수 있다. 최소 권한 원칙은 “모든 컴퓨팅 주체는 정해진 계산을 수행하기 위해 필요로 하는 최소한의 권한만 가져야 한다”를 말하는 것이며, 이러한 원칙을 지킴으로써 임의의 공격을 받을 수 있는 부분을 최소화하고 혹 공격자가침입에 성공하더라도 그 피해를 최소화하는 것이다. 기밀 계산 기술은 CPU 제조 과정에서 CPU 마다 유일한 암호화키를 저장하고 있도록 함으로써 이러 한 최소 권한 원칙을 구현하기 위한 바탕을 제공한다. CPU 내에 저장된 암호화키를 활용하여, CPU를 벗어나는 모든 종류의 데이터를 암호화함으로써 데이터에 대한 기밀성 및 무결성을 보장한다. 이는 곧 CPU 내부에서는 데이터가 복호화된 상태로 존재하지만 CPU 외부에서는 항상 모든 종류의 데이터가 암 호화된 상태로 존재한다는 것을 의미한다. 위의 방식은 결국 CPU 내부에서는 데이터가 복호화된 상태로 존재할 것이므로 사용 중인 데이터에 대한 완벽한 형태의 기밀성 및 무결성 보장이 아닌 것으로 보일 수 있다. 이러한 문제를 해결하기 위해, CPU의 접근 제어(Access control) 디자인을 통하여 복호화된 데이터는 항상 원천적으로 공격자가 접근 할 수 없는 블랙박스(Blackbox) 또는 앙클레이브(Enclave)에만 머무르도록 디자인된다. 기밀 계산의 우수한 활용성 기밀 계산의 가장 큰 장점은 그 우수한 활용성을 들 수 있다. 이는 기술적으로 기밀 계산이 하드웨어 적으로 가장 낮은 레벨인 CPU에서 동작하는 것이 그 이유이며, 때문에 CPU 위에서 이루어지는 모든 상위 소프트웨어 스택들은 큰 변경 없이 그대로 사용가능하다는 점에 있다. 즉, 사용 중인 데이터에 대한 기밀성과 무결성을 필요로 하는 대부분의 컴퓨팅 서비스에 활용가능하 다. 예를 들면 Apache, Nginx를 포함한 웹서버들, 그리고 MySQL과 같이 널리 사용되고 있는 데이터 베이스 어플리케이션에 큰 어려움 없이 기밀 계산 기술을 적용가능하다. 또한 이러한 계산 퍼포먼스가 일반 네이티브 수행에 비하여 크게 느려지지 않는 다는 큰 장점을 가지고 있다. 서비스 측면보다 개별적 문제 자체에 집중을 하자면, 기밀 계산을 활용하여 기존의 Private information retrieval 또는 Private set intersection과 같은 널리 알려진 보안 문제들에 대하여 그 솔 루션을 제공할 수 있다. 기밀 계산 지원 CPU: Intel SGX와 AMD SEV 기밀 계산 기술의 중요성을 증명하듯, 기밀 계산 기술은 이미 Intel과 AMD, 두 메이저 CPU 제조사 에서 적용을 하여 제품을 생산하고 있다. Intel의 경우 2015년 Skylake부터 Intel SGX(Secure Guard Extension)이라 부르는 기밀 계산 기술을 상용 CPU 제품에 적용하고 있다. AMD의 경우 SEV(Secure Encrypted Virtualization)라 부르는 기밀 계산 기술을 상용 CPU 제품에 적용하고 있다. 이 두 가지 기술은 기본적으로 기밀 계산 기술을 적용하고 있다는 점에서는 큰 차이가 없다. 즉 CPU에 유일한 암호화키가 담겨있으며, 이러한 키를 이용하여 CPU를 벗어나는 모든 데이터에 대한 하드웨어기반 암호화를 수행하며, 이를 통하여 데이터 기밀성 및 무결성을 보장한다. 가장 큰 차이점은 Intel SGX의 경 우 앙클레이브(Enclave)가 유저프로그램의 권한으로 생성되며, AMD SEV의 경우 가상머신의 권한으로 생 성된다. 이런 차이점은 각각 기술의 활용성 및 보안성 측면에서 각기 다른 장단점이 있을 수 있다. <사진 출처 : www.freepik.com> 기밀 계산 지원 클라우드 기밀 계산에 대한 컴퓨팅 서비스 업체의 요구는 어찌보면 당연한 것이라 할 수 있다. 특히 최근의 컴퓨팅 서비스는 대부분 클라우드를 통해서 제공되는 만큼 메이저 클라우드 업체에서도 이미 기밀계산에 대한 지원을 시작했다. Microsoft Azure의 경우 Confidential computing service라는 이름으로 Intel SGX 기반 기밀 계 산을 지원하는 컴퓨팅 인스턴스를 만들 수 있도록 제공하고 있으며, Google Cloud의 경우에도 Confidential VMs이라는 AMD SEV 기반 서비스를 제공하여 기밀계산 기술을 활용할 수 있도록 하고 있다. 기밀 계산을 활용한 미래 서비스 기밀 계산을 활용하여 앞으로 데이터 기반 서비스에 대한 혁신을 가져올 수 있을 것으로 전망된다. 최 근 Covid-19 사태로 인하여 비대면 서비스가 더욱 활성화되고, 디지털 데이터에 대한 의존성이 더욱 커 지고 있는 만큼, 안전한 데이터 서비스에 대한 사회적, 국민적 요구는 더욱 커지고 있으며, 기밀 계산은 이러한 보안적 요구를 충족시킬 수 있는 중요한 기술적 바탕을 제공한다. 예를 들면 코로나 확진자와 동선이 겹치는지 확인하기 위해서는, 각 개개인의 위치 정보를 외부에 제 공해야 한다는 문제가 있으며 이는 곧 개인정보 문제로 이어질 수 있다. 이런 문제를 해결하기 위해 기 밀계산 기술을 활용하여 개개인의 위치 정보는 항상 앙클레이브(Enclave) 안에만 머물도록 디자인하며, 동선이 겹치는지 여부에 대한 계산 또한 앙클레이브(Enclave) 안에서만 이뤄지도록 강제하는 디자인을 통해 이런 보안 문제를 해결할 수 있다. 또한 최근 화상회의 서비스의 서버가 외부에 있음으로 인해 화상회의 데이터에 대한 보안이 사회적으 로 이슈가 되었다. 이런 문제를 해결하기 위해 앙클레이브(Enclave) 내부에서 화상회의 데이터에 대한 비디오/오디오 믹싱 서비스를 제공한다면 서버가 외부에 있더라도 안전하게 화상회의 데이터를 보호함과 동시에 화상회의에 필요한 계산을 안전하게 수행할 수 있다. <자료 출처 : 한국인터넷 진흥원 KISA Library 이병영/ 서울대학교 전기정보공학부 부교수> |