증명

컴퓨팅은 스마트폰부터 중요한 인프라에 이르기까지 모든 것을 구동하는 일상 생활의 필수적인 부분입니다. 그러나 규제 환경 증가, 사이버 공격 유행, 공격자의 정교함 증가로 인해 우리가 의존하는 컴퓨팅 기술의 신뢰성과 무결성을 신뢰하기가 어려워졌습니다. 시스템의 소프트웨어 및 하드웨어 구성 요소를 확인하는 기술인 증명은 우리가 사용하는 컴퓨팅 기술을 신뢰할 수 있도록 설정하고 보장하기 위한 중요한 프로세스입니다.

이 문서에서는 증명, 현재 Microsoft에서 제공하는 증명 형식 및 고객이 Microsoft 솔루션에서 이러한 형식의 증명 시나리오를 활용하는 방법을 살펴봅니다.

증명이란?

원격 증명에서 “한 피어("증명자")는 원격 피어("신뢰 당사자")가 해당 증명자를 신뢰할 수 있는 피어로 간주할지 여부를 결정할 수 있도록 자신에 대한 신뢰할 수 있는 정보("증거")를 생성합니다. 원격 증명 프로시저는 추가 필수 당사자("검증자")에 의해 촉진됩니다. 간단히 말해서 증명은 컴퓨터 시스템이 신뢰할 수 있음을 증명하는 방법입니다. 증명과 실제 작동 방식을 더 잘 이해하기 위해 컴퓨팅의 증명 프로세스를 여권 및 신원 조사와 같은 실제 예제와 비교합니다. 이 문서에서 사용하는 정의와 모델은 IETF(국제 인터넷 표준화 기구) RAT(원격 증명 프로시저) 아키텍처 문서에 설명되어 있습니다. 자세한 내용은 국제 인터넷 표준화 기구: RAT(원격 증명 프로시저) 아키텍처를 참조하세요.

여권 모델

여권 모델 - 출국장

  1. 시민은 해외 여행을 하기 위해 여권을 원합니다. 시민은 현지 국가/지역에 증거 요구 사항을 제출합니다.
  2. 현지 국가/지역은 개인으로부터 정책 준수 증거를 받고 제공된 증거가 개인의 여권 발급 정책 준수를 입증하는지 여부를 확인합니다.
    • 출생 증명서는 유효하며 변경되지 않았습니다.
    • 출생 증명서 발급자를 신뢰할 수 있습니다.
    • 개인은 제한된 목록에 속하지 않습니다.
  3. 현지 국가/지역에서 증거가 해당 정책을 충족한다고 결정하면 현지 국가/지역은 시민에게 여권을 발급합니다.
  4. 시민은 해외 여행을 떠나지만 먼저 평가를 위해 해외 국가/지역 국경 순찰 요원에게 여권을 제시해야 합니다.
  5. 해외 국가/지역 국경 순찰 요원은 여권을 신뢰하기 전에 여권에 대한 일련의 규칙을 확인합니다.
    • 여권은 위조 및 변경되지 않았습니다.
    • 여권은 신뢰할 수 있는 국가/지역에서 발급되었습니다.
    • 여권은 만료되거나 해지되지 않습니다.
    • 여권은 비자 또는 연령 요구 사항 정책을 준수합니다.
  6. 해외 국가/지역 국경 순찰 요원은 여권을 승인하고 시민은 해외 국가/지역에 입국할 수 있습니다.

Diagram of remote attestation with the passport model for an immigration desk.

여권 모델 - 컴퓨팅

  1. 증명자라고도 하는 TEE(신뢰 실행 환경)는 비밀 관리자(신뢰 당사자)에서 비밀을 검색하려고 합니다. 비밀 관리자에서 비밀을 검색하려면 TEE는 비밀 관리자에게 신뢰할 수 있으며 위조가 아님을 증명해야 합니다. TEE는 검증 도구에 증거를 제출하여 실행된 코드의 해시, 빌드 환경의 해시 및 제조업체에서 생성한 인증서를 포함하여 신뢰할 수 있고 위조가 아님을 증명합니다.
  2. 증명 서비스인 검증 도구는 TEE에서 제공한 증거가 다음과 같은 신뢰 요구 사항을 충족하는지 여부를 평가합니다.
    • 증명서는 유효하며 변경되지 않았습니다.
    • 증명서 발급자를 신뢰할 수 있습니다.
    • TEE 증거가 제한된 목록에 속하지 않습니다.
  3. 검증 도구에서 정의된 정책을 충족하는 증거를 결정하면 검증 도구는 증명 결과를 만들어 TEE에 제공합니다.
  4. TEE는 비밀 관리자와 비밀을 교환하려고 하지만 먼저 평가를 위해 비밀 관리자에게 증명 결과를 제공해야 합니다.
  5. 비밀 관리자는 증명 결과를 신뢰하기 전에 증명 결과에 대한 일련의 규칙을 확인합니다.
    • 증명 결과는 위조 및 변경되지 않았습니다.
    • 증명 결과는 신뢰할 수 있는 기관에서 생성되었습니다.
    • 증명 결과가 만료되거나 해지되지 않습니다.
    • 증명 결과가 구성된 관리자 정책을 따릅니다.
  6. 비밀 관리자는 증명 결과를 승인하고 TEE와 비밀을 교환합니다.

Diagram of remote attestation with the passport model for computing.

신원 조사 모델

신원 조사 – 학교 확인

  1. 한 사람이 취업을 위해 잠재 고용주와 함께 신원 조사를 수행하고 있습니다. 이 사람은 잠재 고용주에게 학력을 제출합니다.
  2. 고용주는 이 사람의 학력을 검색하고 이를 확인할 각 학교에 전달합니다.
  3. 학교는 이 사람이 제공한 학력이 학교 기록을 충족하는지 여부를 평가합니다.
  4. 학교는 개인 학력이 학교 기록과 일치하는지 확인하는 증명 결과를 발행하고 고용주에게 보냅니다.
  5. 고용주(신뢰 당사자)는 증명 결과를 신뢰하기 전에 증명 결과에 대한 일련의 규칙을 확인할 수 있습니다.
    • 증명 결과는 위조 및 변경되지 않았으며 학교에서 제공됩니다.
    • 증명 결과는 신뢰할 수 있는 학교에서 생성되었습니다.
  6. 고용주는 증명 결과를 승인하고 해당 사람을 고용합니다.

Diagram of remote attestation with the background check model for education background.

신원 조사 - 컴퓨팅

  1. 증명자라고도 하는 TEE(신뢰 실행 환경)는 비밀 관리자(신뢰 당사자)에서 비밀을 검색하려고 합니다. 비밀 관리자에서 비밀을 검색하려면 TEE는 신뢰할 수 있으며 위조가 아님을 증명해야 합니다. TEE는 비밀 관리자에게 증거를 보내 실행된 코드의 해시, 빌드 환경의 해시 및 제조업체에서 생성한 인증서를 포함하여 신뢰할 수 있고 위조가 아님을 증명합니다.
  2. 비밀 관리자는 TEE에서 증거를 검색하고 검증 도구로 전달하여 확인합니다.
  3. 검증 도구 서비스는 TEE에서 제공한 증거가 정의된 신뢰 정책 요구 사항을 충족하는지 여부를 평가합니다.
    • 증명서는 유효하며 변경되지 않았습니다.
    • 증명서 발급자를 신뢰할 수 있습니다.
    • TEE 증거가 제한된 목록에 속하지 않습니다.
  4. 검증 도구는 TEE의 증명 결과를 만들어 비밀 관리자로 보냅니다.
  5. 비밀 관리자는 증명 결과를 신뢰하기 전에 증명 결과에 대한 일련의 규칙을 확인합니다.
    • 증명 결과는 위조 및 변경되지 않았습니다.
    • 증명 결과는 신뢰할 수 있는 기관에서 생성되었습니다.
    • 증명 결과가 만료되거나 해지되지 않습니다.
    • 증명 결과가 구성된 관리자 정책을 따릅니다.
  6. 비밀 관리자는 증명 결과를 승인하고 TEE와 비밀을 교환합니다.

Diagram of remote attestation with the background check model for computing.

증명 형식

증명 서비스는 각각 고유한 이점을 제공하는 두 가지 방법으로 활용 가능합니다.

클라우드 공급자

Microsoft에서는 MAA(Microsoft Azure Attestation)를 고객 관련 서비스로 제공하고 Intel SGX(Software Guard Extensions) enclave, VBS(가상화 기반 보안) enclave, TPM(신뢰 플랫폼 모듈), 신뢰할 수 있는 시작 및 기밀 Virtual Machines와 같은 TEE(신뢰 실행 환경)를 증명하기 위한 프레임워크를 제공합니다. Azure Attestation과 같은 클라우드 공급자 증명 서비스 사용 이점은 다음과 같습니다.

  • 자유롭게 사용 가능
  • Microsoft 코드 센터 프리미엄 도구를 통해 정부 고객이 소스 코드를 사용할 수 있습니다.
  • Intel SGX enclave 내에서 작동하여 사용 중인 데이터를 보호합니다.
  • 단일 솔루션에서 여러 TEE를 증명합니다.
  • 강력한 SLA(서비스 수준 계약)를 제공합니다.

직접 빌드

고객은 클라우드 및 하드웨어 공급자가 제공하는 도구에서 컴퓨팅 인프라를 신뢰하는 자체 증명 메커니즘을 만들 수 있습니다. Microsoft 솔루션에 대한 자체 증명 프로세스를 빌드하려면 Azure에 있는 모든 TEE(신뢰 실행 환경)에 대한 인증서 캐시를 관리하고 증명 솔루션에 대한 최소 기준을 적용하기 위해 TCB(신뢰할 수 있는 컴퓨팅 기반) 정보를 제공하는 솔루션인 THIM(신뢰할 수 있는 하드웨어 ID 관리)을 사용해야 합니다. 자체 증명 서비스 빌드 및 사용 이점은 다음과 같습니다.

  • 규정 및 규정 준수 요구 사항이 충족되도록 증명 프로세스 100% 제어
  • 다른 컴퓨팅 기술과 통합 사용자 지정

Microsoft의 증명 시나리오

Microsoft에는 고객이 클라우드 공급자 또는 자체 증명 서비스 시나리오 빌드를 선택할 수 있는 다양한 증명 시나리오가 있습니다. 각 섹션에서는 Azure 제품과 사용 가능한 증명 시나리오를 살펴봅니다.

애플리케이션 Enclave가 있는 VM

애플리케이션 Enclave가 있는 VM은 Intel SGX에서 사용되며, 이를 사용하면 조직에서 데이터를 보호하는 enclave를 만들고 CPU가 데이터를 처리하는 동안 데이터를 암호화된 상태로 유지할 수 있습니다. 고객은 MAA를 사용하여 Azure에서 Intel SGX enclave를 직접 증명할 수 있습니다.

기밀 가상 머신

기밀 Virtual Machines는 AMD SEV-SNP에서 사용되며, 이를 사용하면 조직에서 가상 머신과 기본 호스트 관리 코드(하이퍼바이저 포함) 사이에서 하드웨어 기반 격리를 수행할 수 있습니다. 고객은 MAA를 사용하여 Azure에서 관리되는 기밀 가상 머신을 직접 증명할 수 있습니다.

Azure Container Instances의 기밀 컨테이너

Azure Container Instances의 기밀 컨테이너는 더욱 강화된 데이터 보안, 데이터 개인 정보 보호 및 런타임 코드 무결성 목표를 달성하기 위해 표준 컨테이너 워크로드를 더욱 안전하게 보호하는 기능 세트를 제공합니다. 기밀 컨테이너는 데이터 무결성, 데이터 기밀성 및 코드 무결성과 같은 기본 기능을 제공하는 하드웨어 지원 TEE(신뢰 실행 환경)에서 실행됩니다.