[논문 리뷰] Intel SGX Enabled Key Manager Service with OpenStack Barbican
이 논문은 Intel SGX를 활용한 소프트웨어 기반 암호화 플러그인을 OpenStack Barbican에 도입하여, 낮은 비용과 높은 확장성으로 하드웨어 기반 격리 기능을 활용해 키 관리 보안을 향상시킨다. 이는 원격 인증, 상호 인증, 그리고 기밀성과 무결성 보장을 제공하며, HSM 수준의 보안을 HSM 비용이나 확장성 제약 없이 달성한다.
Protecting data in the cloud continues to gain in importance, with encryption being used to achieve the desired data protection. While there is desire to use encryption, various cloud components do not want to deal with key management, which points to a strong need for a separate key management system. OpenStack Barbican is a platform developed by the OpenStack community aimed at providing cryptographic functions useful for all environments, including large ephemeral clouds. Barbican exposes REST APIs designed for the secure storage, provisioning and management of secrets such as passwords, encryption keys, and X.509 certificates, and supports plugins for a variety of crypto solutions in the backend. Crypto plugins store secrets as encrypted blobs within the Barbican database. Software based crypto plugins offer a scalable solution, but are vulnerable to system software attacks. Hardware Security Module or HSM plugins offer strong security guarantees, but they are expensive and don't scale well. We propose to build an Intel Software Guard Extension or SGX based software crypto plugin that offers security similar to an HSM with the low cost and scalability of a software based solution. We extend OpenStack Barbican API to support attestation of an Intel SGX crypto plugin, to allow clients higher confidence in the software they are using for storing keys. In addition, the API provides support for mutual attestation for Intel SGX enabled clients, multi-user key distribution, and extensions for protecting the confidentiality and integrity of the backend database.
연구 동기 및 목표
- 클라우드 환경에서의 증가하는 보안적이고 확장 가능한 키 관리 수요, 특히 일시적이고 동적인 클라우드 워크로드를 위해.
- 시스템 수준 공격에 취약한 소프트웨어 기반 암호 플러그인의 한계와 비용이 많이 들고 확장성이 떨어지는 HSM 기반 솔루션의 한계를 극복하기 위해.
- Intel SGX를 사용하여 하드웨어 수준의 보안 보장을 제공하는 소프트웨어 기반 암호 플러그인을 설계하고 구현하기 위해.
- SGX 기반 플러그인의 원격 인증을 지원하도록 Barbican의 API를 확장하여, 클라이언트가 키 관리 서비스의 진위성과 무결성을 검증할 수 있도록 하기 위해.
- 다중 사용자 키 배포를 지원하고, SGX 에인클레이브를 활용해 백엔드 데이터베이스의 기밀성과 무결성을 보호하기 위해.
제안 방법
- Intel SGX 기반 암호 플러그인의 원격 인증을 지원하도록 OpenStack Barbican의 REST API를 확장하여, 클라이언트가 플러그인의 신원과 무결성을 검증할 수 있도록 한다.
- Intel SGX를 사용해 암호 연산을 격리하고, 시스템 운영체제나 다른 프로세스로부터 비밀 키가 노출되는 것을 방지하기 위해 안전한 에인클레이브를 구현한다.
- 클라이언트와 SGX 기반 키 매니저 간의 상호 인증을 구현하여, 양측이 모두 신뢰할 수 있는 코드를 실행하고 있음을 보장한다.
- SGX 에인클레이브 내부에서 데이터를 암호화하여 백엔드 데이터베이스의 기밀성과 무결성을 보호하며, 권한이 있는 코드만 접근 가능하도록 한다.
- SGX 기반 플러그인을 Barbican의 백엔드 모듈로 통합하여 기존 소프트웨어 또는 HSM 플러그인 대신 사용하면서도 API 호환성을 유지한다.
- Intel의 quoting 및 sealing 메커니즘을 활용해 안전한 키 프로비저닝과 에인클레이브 상태의 원격 검증을 가능하게 한다.
실험 결과
연구 질문
- RQ1Intel SGX 기반 소프트웨어 플러그인은 소프트웨어 솔루션의 저비용 및 확장성 이점을 유지하면서도 HSM 수준의 보안 보장을 제공할 수 있는가?
- RQ2OpenStack Barbican에 원격 인증을 통합하여 클라이언트가 키 매니저 서비스의 신뢰성을 검증할 수 있도록 할 수 있는가?
- RQ3다중 사용자 클라우드 환경에서 클라이언트와 SGX 기반 키 매니저 간의 상호 인증을 지원하기 위해 필요한 메커니즘은 무엇인가?
- RQ4클라우드 환경에서 소프트웨어 기반 키 매니저를 사용할 경우, 백엔드 데이터베이스의 기밀성과 무결성을 어떻게 유지할 수 있는가?
- RQ5Barbican의 기존 API를 수정하여 SGX 전용 보안 기능인 sealing 및 quoting 기능을 지원하기 위해 필요한 변경 사항은 무엇인가?
주요 결과
- 제안된 SGX 기반 플러그인은 Intel SGX의 하드웨어 기반 격리 기능을 활용하여 HSM 수준의 보안 보장을 달성하며, 호스트 시스템이 해킹되더라도 키가 유출되지 않도록 보호한다.
- SGX 플러그인의 원격 인증을 통해 클라이언트는 키 매니저의 진위성과 무결성을 암호적으로 검증할 수 있으며, 이는 서비스에 대한 신뢰도를 높인다.
- 클라이언트와 키 매니저 간의 상호 인증을 통해 양측이 모두 신뢰할 수 있는 코드를 실행하고 있음을 보장하여 중간자 공격 및 위조 공격을 방지한다.
- 해당 솔루션은 기존 OpenStack Barbican API와 호환되며, 아키텍처를 대대적으로 재설계하지 않고도 기존 클라우드 인fra구조에 원활하게 통합될 수 있다.
- 백엔드 데이터베이스는 SGX 에인클레이브 내부에서 암호화되어 보호되며, 데이터베이스가 유출되더라도 비밀 정보는 기밀 유지된다.
- 실제 구현을 통해 소프트웨어 기반 키 관리가 최소한의 성능 오버헤드로 강력한 보안을 달성할 수 있음을 입증하였으며, 이는 대규모이고 동적인 클라우드 환경에 적합하다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.