Arm, 컨피덴셜 컴퓨팅의 접근성 높이는 Arm CCA 기술 사양 최초 공개
Arm이 올해 초 발표한 새로운 Armv9의 보안 기능인 Arm 컨피덴셜 컴퓨팅 아키텍처(Arm Confidential Compute Architecture, 이하 Arm CCA)의 기술 사양을 최초 공개했다.
Armv9은 앞으로 출시될 3,000억 개의 Arm 기반 칩에 최첨단 기술을 제공할 것이며, Arm CCA는 모든 애플리케이션에서 컴퓨팅 환경의 신뢰 모델(trust model)에 대한 사고방식을 변화시키는 다음 단계를 제시할 것으로 기대된다. 이번에 처음으로 공개한 Arm CCA 기술 사양과 더불어, Arm은 모든 개발자들이 컨피덴셜 컴퓨팅의 이점을 활용할 수 있도록 함으로써 데이터의 힘과 잠재력을 극대화한다는 비전을 공유했다.
현재 애플리케이션과 가상 머신(VM)에서는 이들을 관리하는 슈퍼바이저 소프트웨어인 커널 또는 하이퍼바이저에 상당히 높은 수준의 신뢰를 부여한다. 슈퍼바이저는 애플리케이션이 프로그램 코드 및 데이터를 위해 사용하는 리소스에 액세스할 수 있는데, 이에 따라 슈퍼바이저에 대한 공격은 애플리케이션 내 기밀 데이터 및 알고리즘의 유출로 이어질 수 있다.
컨피덴셜 컴퓨팅은 이러한 애플리케이션과 슈퍼바이저 간의 전통적 신뢰 관계를 변화시킨다. 즉, 애플리케이션이 사용하는 리소스에 접근할 수 있었던 슈퍼바이저의 권한을 제거하고, 관리 권한만 유지시키는 것이다. 현재 사용되고 있는 디바이스들이 엄청난 양의 기밀 데이터를 처리하고 있다는 점을 고려할 때, 해당 액세스 권한을 제거하는 것은 대단히 중요한 일이다. 클라우드 시스템은 매우 다양한 고객의 페이로드(payloads)를 실행할 수 있으며, 모바일 디바이스는 의료 데이터부터 기업 이메일까지 이르는 개인 및 업무 정보를 모두 보유할 수 있다. 컨피덴셜 컴퓨팅은 모든 컴퓨팅 환경에서 비가시적인 기술을 신뢰해야 할 필요성을 낮춘다.
센서부터 스마트폰, 그리고 슈퍼컴퓨터에 이르는 광범위한 애플리케이션에서 채택되고 있는 컴퓨팅 아키텍처로서, Arm은 업계가 필요로 하는 견고한 보안 기반을 제공하면서 개발자들이 최대한 간단하고 신속하게 Arm의 보안 기술을 구현할 수 있도록 보장할 수 있는 특별한 위치에 있다.
Arm CCA는 워크로드 격리(isolation)를 확장함으로써, 그간 고객 데이터에 의도적으로 액세스하지 않는 위치에 있었던 서비스 제공자들을 고객 데이터에 액세스할 수 없는 위치로 전환시킨다. 결과적으로, 신뢰가 필수로 요구되는 소프트웨어의 규모, 해커 공격면(attack surface), 그리고 고객 데이터 및 알고리즘 침해의 가능성을 줄인다. Arm CCA는 사용 중인 데이터 및 코드까지도 보호할 수 있도록 하는 새로운 종류의 컨피덴셜 컴퓨팅 환경인 영역(Realm)을 제공한다.
영역의 코드 및 데이터는 특정 영역에 할당된 메모리 내에 위치하며, 해당 영역을 생성한 슈퍼바이저 소프트웨어인 커널 또는 하이퍼바이저, 트러스트존 코드, 해당 영역이 신뢰할 수 없는 다른 영역 및 디바이스들이 관련 메모리에 접근하려는 시도는 모두 차단되며 예외 오류로 처리된다. 이를 구현하기 위해, 기존 아키텍처에 그래뉼 보호 테이블(Granule Protection Table)이라는 새로운 데이터 구조가 추가됐다. 이 구조는 특정 페이지가 영역에 사용될 것인지, 또는 트러스트존, 기존 애플리케이션, 커널 및 하이퍼바이저가 실행되는 일반적인 세계에 사용될 것인지를 추적한다.
하드웨어는 모든 액세스에서 해당 테이블을 확인한 후 비정상적인 액세스는 차단한다. 하이퍼바이저 및 커널은 이 테이블을 간접적으로 업데이트하여, 일반적인 세계에서의 사용과 영역에서의 사용, 또는 일반적인 세계에서의 사용과 트러스트존에서의 사용 사이에서 페이지의 마이그레이션을 허용한다. 이처럼 서로 다른 보안 환경에서 메모리 리소스를 이동할 수 있도록 하는 역량은 아키텍처의 주요 변화다. 영역에 대한 설명과 영역이 어떻게 운영되는지에 대한 자세한 정보는 Arm 펠로우인 찰스 가르시아-토빈(Charles García-Tobin)의 블로그에서 확인할 수 있다.
Arm CCA 개발의 핵심 목표는 모든 개발자들이 어떤 애플리케이션을 개발하고 있는지에 상관없이 항상 컨피덴셜 컴퓨팅에 액세스 가능하도록 만드는 것이다. 하드웨어 사양을 공개함에 이어, Arm은 Arm CCA 개발의 중요한 다음 단계로 나아가기 위해 광범위한 소프트웨어 에코시스템과 지속적으로 협력하고 있다.
더불어, 6월 23일 오후 2시(UTC 기준)에 온라인으로 개최된 Linaro Arm CCA Tech Event에서 Arm은 OSS 개발 및 업스트리밍에 사용할 수 있는 하드웨어 및 소프트웨어 아키텍처와 리소스를 공개했다. 여기에는 컴파일러 지원, 오픈소스 트러스티드 펌웨어(Trusted Firmware)-A (TF-A) Monitor 코드, 프로젝트 Veraison 등이 포함됐다. 향후 Arm은 Realm Management Monitor의 레퍼런스 구현을 제공하고, 툴체인 및 OS 벤더와 긴밀한 협력을 통해 최대한 광범위한 애플리케이션 개발자들이 영역에 액세스할 수 있도록 할 계획이라고 밝혔다.
Arm CCA에 대한 자세한 정보는 웹사이트에서 확인할 수 있다.
댓글
댓글 쓰기