HSM·SGX·Apple Secure Enclave — 개념 정리와 Fireblocks 적용 방식

본 문서는 디지털 자산 커스터디 인프라에서 사용되는 세 가지 신뢰 실행 환경(TEE) — HSM (Hardware Security Module), Intel SGX (Software Guard Extensions) Enclave, Apple Secure Enclave — 의 개념, 키 생성·보관 방식, 알려진 위협, 그리고 Fireblocks가 이들을 어떻게 활용해 MPC-CMP 키 샤드를 보호하는지 정리합니다. Key Link 옵션은 본 문서 범위에서 제외하며, 모든 Fireblocks 고객이 디폴트로 받게 되는 보안 계층에 초점을 맞춥니다.


1. HSM (Hardware Security Module)

키를 만들고, 보관하고, 서명하는 전용 하드웨어 보안 칩/장비. 일반 서버나 OS와 분리된 별도의 신뢰 경계(trust boundary)를 가집니다.

1.1 핵심 특성

항목 내용
형태 전용 하드웨어 (PCIe 카드, 네트워크 어플라이언스, USB 토큰)
핵심 원리 키가 칩 내부에서 생성되어 평문으로 칩 밖으로 절대 나오지 않음. 외부에 노출되는 것은 서명·암호화 결과뿐
물리 보안 Tamper Evident / Tamper Resistant — 케이스 분해, X-ray, 전압 글리치, 온도 공격, 레이저 fault injection 감지 시 키 자가 파괴(zeroization)
인증 표준 FIPS 140-2 / 140-3 Level 1~4, Common Criteria EAL4+
표준 API PKCS#11, KMIP, JCE, CNG
대표 벤더 Thales Luna, Entrust nShield, Utimaco, AWS CloudHSM, Azure Dedicated HSM, Google Cloud HSM
비용 어플라이언스 단가 수천만 원 ~ 억 단위 + 운영 인력 필요
주요 약점 비싸고 느리며 운영 부담이 큼. 클라우드 네이티브하지 않음

1.2 키 생성·보관 방식

HSM 내부에는 TRNG(True Random Number Generator) 가 내장되어 있어 (대부분 노이즈 다이오드·열잡음 기반의 물리 엔트로피원) 키 재료 자체가 칩 안에서 만들어집니다.

[ HSM 내부 ]
   ├─ TRNG (FIPS 인증 난수 생성기)
   ├─ 키 저장소 (보호된 메모리, 탬퍼 감지 시 즉시 wipe)
   ├─ 암호 연산 엔진 (서명·암복호화 가속기)
   └─ 외부 인터페이스 (PCIe / 네트워크) ← 키는 안 나가고 결과만 나감

키가 HSM 밖으로 추출되는 명령어 자체가 존재하지 않습니다. 백업이 필요하면 KEK(Key Encryption Key)로 감싼 암호문 형태로만 export 가능하고, KEK도 다른 HSM 안에 있어야 풀 수 있습니다.

1.3 쓰이는 자리

1.4 한국 규제 관점

이용자보호법·특금법·KISA 가이드 어디에도 HSM 도입 의무 조항은 없습니다. "안전한 키 관리 시스템 사용" 정도 권고이므로 일반 VASP·커스터디는 HSM 없이도 규제를 충족할 수 있습니다. HSM은 한국에서는 자율 보안 정책 또는 해외 모회사 규제 준수 차원에서 선택되는 장치입니다.


2. Intel SGX (Software Guard Extensions) Enclave

Intel CPU 내부에 만드는 소프트웨어 격리 영역(Enclave). 별도 하드웨어 구매 없이 일반 Xeon 등 SGX 지원 CPU에서 실행됩니다.

2.1 핵심 특성

항목 내용
형태 Intel Xeon 등 SGX 지원 CPU의 명령어 집합 확장
핵심 원리 CPU가 RAM의 특정 영역(Enclave Page Cache)을 암호화해 격리. OS·하이퍼바이저·루트 권한자도 안을 못 봄
원격 증명 Remote Attestation — 실행 중인 코드가 변조되지 않은 정상 엔클레이브임을 외부에서 검증 가능
인증 표준 FIPS 인증 없음 (CPU 단위 인증이라 별도 표준 부재)
비용 CPU 라이선스 비용만, 추가 하드웨어 0
운영 모델 클라우드 친화적. Azure Confidential Computing, IBM Cloud Confidential Computing, AWS Nitro Enclaves(동등 기술) 등이 제공
주요 약점 CPU zero-day가 주기적으로 보고됨 — Foreshadow(2018), Plundervolt(2019), LVI(2020), ÆPIC Leak(2022). 부채널 공격에 본질적으로 취약

2.2 키 생성 메커니즘 — "CPU 다이 내부에서 끝남"

SGX의 모든 키는 CPU 다이(die) 내부에서 생성·파생되며, 평문 상태로 칩 밖으로 절대 나오지 않습니다. RAM·디스크·OS는 키의 평문을 한 번도 보지 못합니다.

2.2.1 두 가지 키 계층

(1) 루트 키 (Hardware Root) — CPU 제조 시 칩에 굳어짐(fused)

CPU 제조 단계에서 e-fuse(전기적으로 한 번만 쓸 수 있는 회로)에 새겨지는 256비트 비밀값들:

루트 키 용도
Root Provisioning Key (RPK) Intel만 알고 있음 — 원격 증명(Attestation)용
Root Sealing Key (RSK) Intel도 모름 — 칩별 고유, 데이터 봉인(sealing)용

이 두 값은 CPU 내부에서만 읽을 수 있는 특별 회로에 저장됩니다. 운영체제·하이퍼바이저·심지어 BIOS도 직접 읽지 못하며, EGETKEY 명령어를 통해 간접적으로 파생된 키만 외부에 노출됩니다.

(2) 애플리케이션 키 — 엔클레이브가 그때그때 파생/생성

엔클레이브가 필요할 때 CPU 명령어로 키를 얻습니다:

[ Enclave 코드 ]
      │
      │  EGETKEY 명령어
      ▼
[ CPU 키 파생 회로 ]  ← Root Sealing Key + 엔클레이브 측정값(MRENCLAVE) + 정책
      │
      ▼
[ 엔클레이브 안의 메모리 ]  ← 여기에만 평문이 존재

같은 CPU의 다른 엔클레이브는 같은 키를 얻지 못합니다 — MRENCLAVE(코드 해시)가 달라서 다른 키가 파생되기 때문입니다. 이 성질이 SGX의 격리 보장의 근간입니다.

2.2.2 실제 키 생성 흐름 — Fireblocks MPC 샤드 예시

엔클레이브 코드가 새 비밀(예: MPC 샤드)을 만들고 디스크에 보관하는 과정:

1. 엔클레이브 진입 (EENTER)
       ↓
2. 엔클레이브 안에서 RDRAND/RDSEED 실행
   ├─ RDRAND  : CPU 내장 하드웨어 RNG (NIST SP 800-90A/B/C 인증)
   └─ RDSEED  : RDRAND의 시드, 진정 난수
       ↓
3. 난수로 MPC 샤드 키 생성  ← 여기서 키가 "태어남"
       ↓
4. EGETKEY로 Sealing Key 받음 (Root Sealing Key + MRENCLAVE에서 파생)
       ↓
5. AES-GCM 으로 샤드를 Sealing Key로 암호화
       ↓
6. 암호문만 OS·디스크에 저장 (.sealed 파일)
       ↓
7. 엔클레이브 종료 (EEXIT) — 평문 샤드는 메모리에서 소거

핵심 포인트:

2.2.3 핵심 구성요소 / 명령어

구성요소 역할
RDRAND / RDSEED CPU 내장 하드웨어 난수 생성기 (TRNG) — 키 재료 entropy
EGETKEY 엔클레이브 전용 명령어. Root Sealing Key + 엔클레이브 정체성에서 키 파생
EREPORT 엔클레이브 측정값에 서명한 보고서 생성 (Attestation 시작점)
MRENCLAVE 엔클레이브 코드의 해시 — 같은 코드면 같은 값, 한 비트만 바뀌어도 완전히 달라짐
MRSIGNER 엔클레이브 서명자(개발자)의 해시 — 같은 개발자가 만든 여러 엔클레이브를 한 가족으로 묶음
MEE (Memory Encryption Engine) EPC RAM을 자동 암호화하는 CPU 내부 하드웨어
PRMRR EPC 영역을 OS·DMA로부터 격리하는 메모리 보호 레지스터
EPC (Enclave Page Cache) 엔클레이브 메모리가 머무는 보호된 RAM 영역

2.3 쓰이는 자리

2.4 알려진 SGX 위협 — Zero-day와 부채널 공격

2.4.1 Zero-day란?

제로데이(Zero-day) = 벤더가 패치를 만들 시간이 0일이었던 보안 취약점. 즉, 공격자가 먼저 알고 있고 아직 패치가 없는 취약점을 말합니다.

세 가지 표현으로 자주 쓰입니다:

용어 의미
Zero-day vulnerability 패치되지 않은 알려지지 않은 취약점 자체
Zero-day exploit 그 취약점을 실제로 공격에 쓰는 코드
Zero-day attack 그 익스플로잇을 사용한 공격 사건

왜 위험한가:

2.4.2 SGX 부채널 공격의 본질

키가 칩 안에서 생성·보관되는 건 맞는데, CPU 내부 동작 패턴(전력·캐시·타이밍) 을 외부에서 측정해 키를 역산하는 공격이 가능합니다. SGX는 물리 칩 자체를 뜯는 공격은 막지 못하고, 소프트웨어 격리만 강제하기 때문입니다.

2.4.3 대표 SGX zero-day 사례

연도 이름 공격 벡터 결과
2018 Foreshadow (L1TF) L1 캐시 부채널 Sealing Key까지 추출 가능했음
2018 SGAxe 캐시 추출 + Attestation 위조 EPID Attestation Key 노출
2019 Plundervolt CPU 전압을 미세하게 떨어뜨려 fault injection EGETKEY 결과 비트 플립으로 키 추출
2020 LVI (Load Value Injection) 추측 실행 역방향 공격 엔클레이브 메모리 주입·유출
2022 ÆPIC Leak APIC 레지스터에 남은 EPC 잔재 엔클레이브 메모리 평문 유출
2023 Downfall (Gather Data Sampling) AVX 명령어 부채널 SGX 메모리 노출

→ 이런 이유로 가이드에서 "SGX는 강하지만 zero-day가 주기적으로 보고됨", "FIPS 140-2 Level 3 HSM은 물리 탐침까지 방어" 라고 표현합니다. 패치는 마이크로코드 업데이트로 이루어지지만, 발견 → 패치 사이의 윈도우가 항상 존재합니다.

2.4.4 그래도 SGX가 안전한 이유 — MPC와의 결합

SGX 단독에 의존하면 위험할 수 있지만, Fireblocks는 SGX를 MPC와 결합해 사용합니다:


3. Apple Secure Enclave

iPhone·iPad·Apple Watch·Mac에 내장된 별도 보안 코프로세서. SGX와 같은 계열의 TEE이지만 Apple이 자체 설계한 ARM 기반 칩입니다.

3.1 적용 기기

기기 Secure Enclave
iPhone 5s 이후 모든 iPhone (2013~)
iPad Air 이후 모든 iPad (2013~)
Apple Watch 전 모델
Apple Silicon Mac (M1·M2·M3·M4)
Intel Mac (T2 칩 탑재, 2018~)
iPhone 5c 이전
HomePod, Apple TV 4K

A7 SoC(2013) 이후 Apple이 만든 거의 모든 디바이스에 들어 있습니다. 별도 옵션이 아니라 칩 자체에 내장되어 있어 사용자가 활성화할 필요도 없습니다.

3.2 실제로 처리하고 있는 것

당신의 iPhone에서 Secure Enclave가 이미 다음을 처리하고 있습니다:

3.3 일반 앱·OS와의 분리

┌──────────────────────────────────────────────────┐
│  iOS / 사용자 앱 / 사용자                          │  ← Secure Enclave 안을 절대 못 봄
└─────────────────┬────────────────────────────────┘
                  │
┌─────────────────▼────────────────────────────────┐
│  Application Processor (A 시리즈/M 시리즈 메인)    │
└─────────────────┬────────────────────────────────┘
                  │  암호화된 메일박스만 통과
                  │  (Mailbox 메커니즘)
┌─────────────────▼────────────────────────────────┐
│  Secure Enclave Processor                        │
│  ├─ 자체 ARM 기반 CPU (메인 CPU와 물리 분리)       │
│  ├─ 자체 암호화된 RAM (메인 RAM과 분리된 SRAM)     │
│  ├─ 자체 비휘발성 저장소 (Effaceable Storage)      │
│  ├─ AES 가속기 + TRNG                            │
│  └─ Public Key Accelerator (PKA)                 │
└──────────────────────────────────────────────────┘

탈옥(jailbreak)을 해서 iOS 루트 권한을 얻어도 Secure Enclave 안의 키는 추출되지 않도록 설계되어 있습니다.

3.4 SGX와의 차이점

항목 Intel SGX Apple Secure Enclave
격리 방식 메인 CPU 안의 가상 영역 (EPC) 물리적으로 분리된 별도 코프로세서
RAM 메인 RAM의 보호 영역 (MEE 암호화) 별도의 SRAM
CPU 메인 CPU와 공유 자체 ARM 코어
개발자 코드 실행 자유롭게 가능 (SDK) Apple이 정의한 sepOS 만 실행
외부 공격면 RDRAND 부채널, 캐시, 전압 매우 좁음 (전용 메일박스만)
zero-day 빈도 주기적 보고 훨씬 드묾 (외부 코드 실행 불가)
FIPS 인증 ❌ (단, CC EAL5+ 인증 받은 모델 다수)

핵심 차이: SGX는 공유 CPU의 격리 영역, Secure Enclave는 물리적으로 분리된 별도 칩. 그래서 부채널 공격면이 훨씬 좁고, 동시에 외부 개발자가 자유 코드를 실행할 수 없어 공격 표면 자체가 작습니다.

3.5 Fireblocks와의 연결

Fireblocks 모바일 Cosigner / 에어갭 iOS Cosigner 가 활용하는 것이 바로 이 Apple Secure Enclave입니다:

💡 이미 당신 iPhone에서 Face ID가 되고 있다면, Secure Enclave가 활발하게 일하고 있는 중입니다. Fireblocks 모바일 Cosigner는 그 위에 한 층 더 얹는 구조예요.


4. 세 가지 TEE 비교 — HSM vs SGX vs Apple Secure Enclave

항목 HSM Intel SGX Apple Secure Enclave
격리 방식 별도 하드웨어 CPU 내 가상 영역 별도 코프로세서
물리 공격 방어 ✅ 탬퍼 자가 파괴 ❌ 부채널 취약 🟡 부분 (UID key 추출 어려움)
FIPS 140-2 Level 3 ❌ (단, CC EAL5+ 다수)
키 생성 위치 칩 내부 TRNG EPC 안에서 RDRAND SE 안에서 자체 TRNG
키 추출 가능성 명령어 자체 없음 EGETKEY는 파생만 UID는 영구 칩 외부 노출 X
클라우드 적합성 어려움 자연스러움 모바일/엣지 전용
비용 매우 높음 매우 낮음 0 (디바이스 내장)
zero-day 빈도 매우 드묾 주기적 드묾
개발자 코드 실행 제한적 (펌웨어 한정) 자유 (SGX SDK) Apple sepOS만
운영 부담 높음 (Key Ceremony, HA) 낮음 (코드 배포) 0 (Apple이 관리)

한 줄 요약:

세 가지 모두 키를 격리하지만 신뢰 경계의 두께와 공격면이 다릅니다.


5. MPC와의 관계 — "대체재가 아니라 계층"

MPC(Multi-Party Computation)와 HSM/SGX/Secure Enclave는 동일 계층의 대체재가 아니라, 목적이 다른 두 보호 계층 입니다.

MPC                      = 키를 "여러 샤드"로 분산 → 단일 장애점(SPOF) 제거
HSM/SGX/Secure Enclave   = 각 샤드를 "추출 불가 환경"에 보관 → 메모리 덤프·멀웨어 차단
시나리오 결과
MPC만 쓰고 샤드를 평범한 서버 메모리에 두면 메모리 덤프·멀웨어로 샤드 유출 가능
HSM만 쓰고 키 1개를 통째로 넣으면 HSM 자체가 SPOF — 탈취·고장 시 끝
MPC × (HSM 또는 SGX 또는 Secure Enclave) 두 계층이 곱해져서 보호 — Fireblocks의 기본 설계

Fireblocks는 MPC-CMP 샤드를 반드시 SGX(서버) / Secure Enclave(모바일) / HSM(Key Link 옵션) 안에서만 다루도록 설계해 두 계층을 결합합니다.


6. Fireblocks가 SGX와 HSM을 제공하는 방식

Fireblocks는 단일 개인키가 아니라 여러 MPC 샤드를 다루므로, "각 샤드를 어디에 저장하고 어디서 서명할지"가 보안의 핵심입니다.

6.1 SGX·Secure Enclave — 모든 Fireblocks 고객의 디폴트

별도 추가 비용·하드웨어 없이 모든 Fireblocks 워크스페이스에 자동 적용되는 기본 보안 계층 입니다.

컴포넌트 위치 사용 기술
Fireblocks Cloud (Cosigner #1) Fireblocks SaaS Intel SGX Enclave
Mobile Cosigner (Cosigner #2) 사용자 iOS 기기 Apple Secure Enclave
API Co-Signer (Cosigner #3) 고객 인프라 또는 Fireblocks 클라우드 Intel SGX (온프레미스 시 SGX 지원 서버 필요) — AWS Nitro Enclaves / GCP Confidential Space 동등 옵션 가능
Guard Co-Signer (선택) Fireblocks 인프라, 다중 AZ 여러 SGX 노드 분산 — m-of-n 쿼럼

핵심 원칙 — 샤드는 절대 평문으로 디스크나 메모리에 노출되지 않습니다. MPC 서명 라운드 자체도 TEE 안에서만 이루어지고, 결과 서명만 밖으로 나옵니다.

6.2 Guard Co-Signer — SGX 강화 옵션

여전히 SGX 기반이지만, 여러 노드에 분산해 가용성·쿼럼 정책·공격면 축소 를 추가하는 옵션입니다.

해결하는 문제 해결하지 못하는 문제
가용성 (AZ 장애) Fireblocks 자체의 공급망·내부자 공격
단일 노드 침해 법적 강제 (모든 노드가 Fireblocks 소유)
공격면 분산 FIPS 140-2 명문 요구

6.3 HSM — 옵션 (BYO 모델)

Fireblocks는 HSM을 호스팅해 주지 않습니다. "고객 소유 HSM을 가져와 통합"하는 BYO(Bring Your Own) 모델로만 제공됩니다.

옵션 위치 특징
외부 키 보관 (BYOK) 고객 HSM 고객이 별도 HSM에서 관리하는 키를 Fireblocks에 연결
MPC 샤드 자체를 HSM에 보관 고객 온프레미스/클라우드 HSM Key Link 영역 — 본 문서 범위 밖

📌 본 문서는 Key Link를 다루지 않습니다. Key Link 상세는 별도 가이드의 8~9장을 참고하세요.


7. Fireblocks 보안 스택의 전체 그림

[ 고객 자산 ]
     │
     ▼
[ MPC-CMP 샤드 3개 (3-of-3) ]   ← 단일 개인키 자체가 존재하지 않음
     │
     ├── 샤드 1 → Fireblocks Cloud      → SGX Enclave (기본)
     │                                        ↑ EPC + RDRAND + EGETKEY
     │                                        ↑ 마이크로코드 패치로 zero-day 대응
     │
     ├── 샤드 2 → 모바일/Cosigner       → Apple Secure Enclave (기본)
     │                                        ↑ 별도 코프로세서, sepOS만 실행
     │                                        ↑ Face ID/Touch ID로 사용자 인증
     │
     └── 샤드 3 → 고객 API Co-Signer    → SGX (기본) / HSM (Key Link 시 교체)
                                              ↑
                                Guard Co-Signer 추가 시
                                여러 SGX 노드를 m-of-n 분산
                                (여전히 SGX, 하지만 단일 zero-day 영향 축소)

핵심 메시지:


8. FAQ

8.1 SGX Enclave는 HSM과 같은 건가요?

같지 않습니다. 둘 다 "샤드 보관소" 역할을 하지만 보호 수준이 다릅니다. SGX는 CPU 기반 소프트웨어 격리로 강력하지만 Foreshadow·ÆPIC Leak 같은 zero-day가 꾸준히 보고됩니다. FIPS 140-2 Level 3 HSM은 전용 하드웨어로 물리 탐침 공격까지 방어 설계되어 있습니다. 규제가 "FIPS 인증 HSM"을 명시하면 SGX만으로는 준수가 어렵습니다.

8.2 SGX는 키를 어디서 생성하나요?

Intel CPU 다이 안의 EPC(Enclave Page Cache) 영역에서 RDRAND/RDSEED 명령어로 생성합니다. 그리고 EGETKEY 명령어로 파생한 Sealing Key로 암호화한 뒤에야 디스크에 내보냅니다. 평문 키는 EPC 안에서만, 그것도 엔클레이브 코드가 실행되는 동안만 존재합니다. Sealed 데이터는 같은 CPU의 같은 엔클레이브 가 아니면 복호화할 수 없습니다.

8.3 MPC와 HSM 중 하나만 고르면 되지 않나요?

아니요. 둘은 대체재가 아니라 계층이 다른 보호장치입니다.

MPC만 있고 샤드가 평범한 서버 메모리에 있으면 덤프·멀웨어로 유출 가능. HSM만 있고 키 1개를 넣으면 HSM 자체가 SPOF. Fireblocks는 MPC 샤드를 SGX(또는 HSM·Secure Enclave) 안에서만 다루게 해서 두 계층을 결합합니다.

8.4 한국 VASP는 HSM이 꼭 필요한가요?

아니요. 이용자보호법·특금법·KISA 어느 조항도 HSM을 명문으로 요구하지 않습니다. MPC + SGX + 에어갭 으로 한국 규제는 충족됩니다. HSM은 키 주권·해외 모회사 정책·FIPS 인증 명시 요구가 있는 기관에서만 추가합니다.

8.5 SGX zero-day가 자주 발견되는데, 그래도 안전한가요?

SGX 단독에 의존하면 위험할 수 있지만, Fireblocks는 SGX를 MPC와 결합해 사용합니다. 한 샤드의 SGX가 뚫려도 다른 샤드 없이는 서명을 만들 수 없습니다. Guard Co-Signer로 여러 SGX 노드에 m-of-n 쿼럼을 적용하면 단일 zero-day의 영향이 더 줄어듭니다. 마이크로코드 업데이트로 발견된 취약점은 빠르게 패치됩니다.

8.6 Zero-day는 정확히 무엇을 말하나요?

벤더가 패치를 만들 시간이 0일이었던 보안 취약점 — 즉, 공격자가 먼저 알고 있고 아직 패치가 없는 상태입니다. 백신·EDR로는 잡을 수 없고 패치 배포 전까지 모든 사용자가 무방비라는 점이 위험합니다. Stuxnet(2010)은 zero-day 4개를 동시에 사용했고, NSO Group 같은 행위자는 한 건당 수억~수십억 원에 거래합니다.

8.7 iPhone에 Apple Secure Enclave가 들어 있나요?

네. iPhone 5s(2013) 이후 모든 iPhone·iPad·Apple Watch·Apple Silicon Mac에 별도 보안 코프로세서로 내장되어 있습니다. Face ID/Touch ID, Apple Pay, iMessage 암호화, Passkey 등이 이미 SE 위에서 동작 중입니다. Fireblocks 모바일 Cosigner는 그 위에 MPC 샤드 한 층을 더 얹는 구조입니다.

8.8 Apple Secure Enclave가 SGX보다 안전한가요?

공격면 측면에서 더 좁습니다. 별도 코프로세서라서 메인 CPU의 캐시·전압·추측 실행 부채널 공격에 노출되지 않고, Apple이 정의한 sepOS만 실행되므로 외부 개발자가 임의 코드를 돌릴 수 없습니다. 다만 FIPS 140-2 인증은 받지 않으며, Apple 디바이스에 종속됩니다 — 클라우드 서버에서는 사용할 수 없어 SGX와 용도가 다릅니다.

8.9 Fireblocks 모바일 앱으로 서명하려면 비밀번호 외에 뭐가 필요한가요?

iOS 기기 자체와 Face ID/Touch ID 입니다. 모바일 Cosigner의 MPC 샤드는 Secure Enclave 안에 있고, 서명 시점에 사용자 생체 인증이 함께 요구됩니다. 기기를 분실해도 생체 인증 없이는 샤드를 깨워서 서명할 수 없습니다.


9. 용어집

용어 풀이름 의미
TEE Trusted Execution Environment 신뢰 실행 환경 (HSM/SGX/SE 모두 TEE의 일종)
HSM Hardware Security Module 키 보관·연산 전용 하드웨어
SGX Software Guard Extensions Intel CPU의 엔클레이브 격리 명령어 집합
SE Secure Enclave Apple의 별도 보안 코프로세서
EPC Enclave Page Cache SGX 엔클레이브 메모리가 사는 보호된 RAM 영역
MEE Memory Encryption Engine EPC를 자동 암호화하는 CPU 내부 엔진
PRMRR Processor Reserved Memory Range Registers EPC를 OS·DMA로부터 보호하는 레지스터
RPK Root Provisioning Key CPU에 fused된 Intel Attestation 루트 키
RSK Root Sealing Key CPU에 fused된 칩별 고유 봉인 루트 키
MRENCLAVE Measurement of Enclave 엔클레이브 코드의 SHA-256 해시
MRSIGNER Measurement of Signer 엔클레이브 서명자의 공개키 해시
EGETKEY (CPU 명령어) 엔클레이브 안에서 키를 파생받는 명령어
EREPORT (CPU 명령어) 엔클레이브 측정값으로 보고서를 생성하는 명령어
RDRAND/RDSEED (CPU 명령어) CPU 내장 하드웨어 난수 생성기 명령어
TRNG True Random Number Generator 물리 노이즈 기반 난수 생성기
MPC-CMP MPC with Concurrent Multiparty Protocol Fireblocks가 자체 개발한 MPC 프로토콜
FIPS 140 Federal Information Processing Standard 미국 정부의 암호 모듈 인증 표준
Sealing (개념) 엔클레이브 키로 데이터를 암호화해 디스크에 보관하는 작업
Attestation (개념) 엔클레이브가 정상 코드임을 외부에 증명하는 절차
Zero-day (개념) 패치되지 않은 알려지지 않은 취약점

10. 참고 자료

SGX 공격 사례 (학술 논문)