AMD SEV 내부: 오늘날 메모리 암호화가 작동하는 방식(그리고 부족한 점)
Source: Dev.to
AMD SEV vs Intel SGX
AMD SEV (Secure Encrypted Virtualization)는 전체 집을 둘러싼 요새를 건설하는 것이라고 생각할 수 있습니다: 운영 체제, 모든 애플리케이션, 그리고 데이터가 암호화되어 외부(클라우드 제공자나 하이퍼바이저)로부터 보호됩니다. 도둑이 집 안으로 들어가게 되면—예를 들어 게스트 OS에 악성코드가 감염된 경우—그들은 내부에 있는 모든 것을 볼 수 있습니다.
반면 Intel SGX (Software Guard Extensions)는 집 안 방에 강철 금고를 배치하는 것과 같습니다. 집에 벽이 없고 도둑(손상된 OS나 하이퍼바이저)이 자유롭게 돌아다니더라도 금고에 접근할 수 없습니다. 금고에 넣은 특정 항목만이 보호됩니다.
Adoption by Cloud Providers
주요 클라우드 업체인 Azure, Google Cloud, 그리고 NVIDIA는 AMD SEV를 적극적으로 홍보하고 있습니다. 그 이유는 실용적입니다:
- 모델 가중치는 노출 위험이 크기 때문에 비용이 많이 듭니다.
- 학습 데이터는 종종 엄격한 규제를 받습니다.
AMD SEV가 NVIDIA GPU와 결합될 때, 컴퓨터 소유자조차도 머신이 처리하고 있는 내용을 검사할 수 없다는 하드웨어 수준의 보장을 제공합니다. 이는 은행에서 사기 탐지 모델을 학습시키는 경우처럼 “클린룸”이 필요하고 계산 과정에 대한 어떠한 가시성도 허용되지 않아야 하는 시나리오에 특히 유용합니다.
Limitations of AMD SEV
AMD SEV의 암호화 계층은 견고하지만, 워크로드 동작의 모든 측면을 숨기지는 못합니다. 관찰자는 여전히 다음으로부터 정보를 유추할 수 있습니다:
- 각 연산의 타이밍.
- 어떤 메모리 주소가 접근되는지.
- 전체 연산의 형태.
AI 추론의 경우, 연산 형태가 모델이나 입력에 대한 세부 정보를 누출할 수 있습니다. 이러한 사이드채널 누출은 기밀 컴퓨팅 분야에서 아직 완전히 해결되지 않은 문제입니다. 실제로, 암호화된 환경의 “설계와 장식”을 모니터링할 수 있는 공격자는 내부에서 무슨 일이 일어나고 있는지 놀라울 정도로 정확한 그림을 그릴 수 있습니다.