멀티테넌트 클라우드 환경에서 AES 기반 데이터 보호와 가용성 확보

멀티테넌트 클라우드 환경에서 AES 기반 데이터 보호와 가용성 확보

초록

본 논문은 클라우드 SQL과 Google App Engine을 활용해 멀티테넌트 환경에서 각 테넌트의 데이터를 AES 암호화로 보호하고, 서비스 거부 공격 상황에서도 데이터 가용성을 유지하는 방법을 제안한다. 실험 결과, 제안된 시스템이 데이터 기밀성, 무결성, 가용성을 동시에 만족함을 확인하였다.

상세 분석

본 연구는 클라우드 멀티테넌시 모델에서 가장 핵심적인 보안 과제인 데이터 격리와 접근 제어 문제를 AES(Advanced Encryption Standard) 암호화와 Cloud SQL 연동을 통해 해결하고자 한다. 먼저, 테넌트마다 고유한 암호화 키를 생성하고, 데이터 입출력 시 키 기반 암호화·복호화를 수행함으로써 동일 물리적 데이터베이스에 저장되는 서로 다른 테넌트의 데이터가 논리적으로 완전히 분리된다. AES는 대칭키 암호화 알고리즘으로, 연산 효율성이 높아 대규모 트랜잭션을 처리하는 클라우드 환경에 적합하며, 128비트, 192비트, 256비트 키 길이 옵션을 제공해 보안 수준을 유연하게 조정할 수 있다.

클라우드 SQL은 관리형 관계형 데이터베이스 서비스로, 자동 백업·복구, 스케일링, 고가용성 복제 등을 기본 제공한다. 논문에서는 Cloud SQL에 암호화된 데이터를 저장하고, Google App Engine(GAE)에서 애플리케이션 로직을 실행한다. GAE는 자동 스케일링과 트래픽 분산 기능을 통해 DDoS(Distributed Denial‑of‑Service) 공격에 대한 내성을 강화한다. 특히, GAE의 인스턴스 격리와 요청 라우팅 메커니즘은 공격 트래픽이 특정 인스턴스로 집중되는 것을 방지하고, 서비스 중단 없이 정상 요청을 처리할 수 있게 한다.

실험 설계는 두 가지 축으로 진행된다. 첫째, 암호화·복호화 연산이 전체 응답 시간에 미치는 영향을 측정하기 위해 동일한 쿼리 워크로드를 평문과 암호문으로 각각 실행한다. 결과는 AES‑256을 사용했을 때 평균 응답 시간이 약 12% 증가했지만, 클라우드 인프라의 자동 스케일링 덕분에 처리량은 유지되었다는 점을 보여준다. 둘째, DDoS 시뮬레이션 환경에서 GAE 기반 서비스와 전통적인 VM 기반 서비스를 비교한다. GAE는 트래픽 급증 시 자동으로 인스턴스를 추가하고, 로드 밸런서를 통해 부하를 분산함으로써 99.9% 이상의 가용성을 유지했다. 반면, VM 기반 서비스는 CPU 사용률이 80%를 초과하자 즉시 서비스가 중단되는 현상이 관찰되었다.

보안 측면에서는 AES 암호화가 데이터 유출 위험을 현저히 낮추는 것으로 확인되었다. 키 관리 방안으로는 Google Cloud KMS(Key Management Service)를 활용해 키를 하드웨어 보안 모듈(HSM) 수준으로 보호한다. 키 롤링 정책을 적용해 일정 주기마다 키를 교체함으로써 장기 키 노출에 따른 위험을 최소화한다. 또한, 데이터베이스 레벨에서의 접근 제어와 애플리케이션 레벨에서의 인증·인가 체계를 이중화하여 내부 위협에도 대비한다.

종합적으로, 본 논문은 멀티테넌트 클라우드 환경에서 데이터 기밀성, 무결성, 가용성을 동시에 만족시키는 실용적인 아키텍처를 제시한다. AES 암호화와 Cloud SQL, GAE의 조합은 기존 보안 솔루션 대비 구현 복잡도와 운영 비용을 크게 낮추면서도 높은 보안 수준을 제공한다는 점에서 클라우드 서비스 제공자와 기업 고객 모두에게 유용한 모델이라 할 수 있다. 향후 연구에서는 동형암호(Homomorphic Encryption)나 비밀분산 저장(Secret Sharing) 기법을 도입해 암호화된 상태에서도 데이터 분석이 가능한 환경을 구축하는 방향으로 확장할 필요가 있다.