Amazon EC2 인스턴스용 NitroTPM

Amazon EC2 인스턴스용 NitroTPM (NitroTPM for Amazon EC2 instances)

NitroTPM(Nitro Trusted Platform Module)은 AWS Nitro System이 제공하는 가상 장치로, TPM 2.0 사양을 따르는 장치예요. 인스턴스 인증에 사용되는 아티팩트(비밀번호, 인증서, 암호화 키 등)를 안전하게 저장해요. NitroTPM은 키를 생성하고 해싱, 서명, 암호화, 복호화 같은 암호화 기능에 사용할 수 있어요.

출처: 문서

본문

NitroTPM은 measured boot(측정 부팅)를 제공해요. 이는 부트로더와 운영 체제가 모든 부팅 바이너리의 암호화 해시를 만들고 이를 NitroTPM 내부 Platform Configuration Registers(PCR)의 이전 값과 결합하는 과정이에요. measured boot로 NitroTPM에서 서명된 PCR 값을 얻어 인스턴스 부팅 소프트웨어의 무결성을 원격 엔터티에 증명할 수 있어요. 이것을 원격 attestation(증명)이라고 해요.

NitroTPM으로 키와 비밀을 특정 PCR 값으로 태그할 수 있어서, PCR 값(즉 인스턴스 무결성)이 변경되면 절대 접근할 수 없어요. 이런 특수한 조건부 접근을 sealing/unsealing(봉인·봉인 해제)이라고 해요. BitLocker 같은 운영 체제 기술은 NitroTPM을 사용해 드라이브 복호화 키를 봉인해서, 운영 체제가 올바르게 부팅되어 알려진 정상 상태일 때만 드라이브가 복호화되도록 할 수 있어요.

NitroTPM을 사용하려면 NitroTPM 지원용으로 구성된 AMI(Amazon Machine Image)를 선택한 다음 그 AMI로 Nitro 기반 인스턴스를 실행해야 해요. Amazon의 미리 빌드된 AMI를 선택하거나 직접 만들 수 있어요.

요금: NitroTPM 사용에 추가 비용은 없어요. 기본 리소스 비용만 지불해요.

요구사항 – NitroTPM을 사용하려면 Nitro 기반 인스턴스와 NitroTPM 지원으로 구성된 AMI가 필요해요.

동작:

  • Linux AMI를 NitroTPM용으로 활성화 – AMI 생성을 위한 요구사항을 충족하도록 구성할 수 있어요.
  • AMI가 NitroTPM용으로 활성화되었는지 확인 – 등록된 AMI의 NitroTPM 지원 상태를 확인할 수 있어요.
  • NitroTPM 활성화 또는 사용 중지 – 인스턴스 실행 시 또는 실행 후에 활성화 상태를 변경할 수 있어요.
  • 인스턴스가 NitroTPM용으로 활성화되었는지 확인 – 인스턴스의 NitroTPM 지원 여부를 확인할 수 있어요.
  • 공개 endorsement 키 검색 – 인스턴스의 endorsement 키를 검색해 원격 증명을 설정할 수 있어요.

더 알아보기