VLSI Wiki | Chase Na

VLSI Wiki | Chase Na

Semiconductor Engineer & Tech Expert

Contact

βœ‰οΈ gc@vlsi.kr

Connect

Contents:
  1. Trusted Execution Environment (TEE) / TrustZone
    1. 1. Definition: What is Trusted Execution Environment (TEE) / TrustZone?
    2. 2. Components and Operating Principles
      1. 2.1 Hardware Security
      2. 2.2 Secure OS
      3. 2.3 API and Protocols
    3. 3. Related Technologies and Comparison
    4. 4. References
    5. 5. One-line Summary

Trusted Execution Environment (TEE) / TrustZone

1. Definition: What is Trusted Execution Environment (TEE) / TrustZone?

Trusted Execution Environment (TEE)λŠ” μ»΄ν“¨νŒ… ν™˜κ²½μ—μ„œ μ‹ λ’°ν•  수 μžˆλŠ” 싀행을 보μž₯ν•˜λŠ” 기술둜, 주둜 λͺ¨λ°”일 μž₯μΉ˜μ™€ μž„λ² λ””λ“œ μ‹œμŠ€ν…œμ—μ„œ μ‚¬μš©λ©λ‹ˆλ‹€. TEEλŠ” 일반 운영 μ²΄μ œμ™€ λΆ„λ¦¬λœ μ•ˆμ „ν•œ μ˜μ—­μ„ μ œκ³΅ν•˜μ—¬ λ―Όκ°ν•œ 데이터와 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λ³΄ν˜Έν•©λ‹ˆλ‹€. TrustZone은 ARM μ•„ν‚€ν…μ²˜μ—μ„œ TEEλ₯Ό κ΅¬ν˜„ν•˜κΈ° μœ„ν•œ 기술둜, ν•˜λ“œμ›¨μ–΄ 기반의 λ³΄μ•ˆ κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€. TEE의 μ£Όμš” 역할은 λ³΄μ•ˆμ„±μ„ 높이고, 데이터 무결성을 μœ μ§€ν•˜λ©°, μ‚¬μš©μž ν”„λΌμ΄λ²„μ‹œλ₯Ό λ³΄ν˜Έν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

TEEλŠ” λ‹€μŒκ³Ό 같은 μ€‘μš”ν•œ κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€:

  1. 격리된 μ‹€ν–‰ ν™˜κ²½: TEE λ‚΄μ—μ„œ μ‹€ν–‰λ˜λŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ€ 일반 OS의 영ν–₯을 λ°›μ§€ μ•ŠμœΌλ©°, μ™ΈλΆ€ κ³΅κ²©μœΌλ‘œλΆ€ν„° λ³΄ν˜Έλ©λ‹ˆλ‹€.
  2. λ³΄μ•ˆ λΆ€νŒ…: μ‹œμŠ€ν…œμ΄ λΆ€νŒ…λ  λ•Œ, TEEλŠ” μ†Œν”„νŠΈμ›¨μ–΄μ˜ 무결성을 ν™•μΈν•˜μ—¬ μ•…μ„± μ½”λ“œμ˜ 싀행을 λ°©μ§€ν•©λ‹ˆλ‹€.
  3. μ•”ν˜Έν™” 및 ν‚€ 관리: TEEλŠ” μ•”ν˜Έν™” ν‚€λ₯Ό μ•ˆμ „ν•˜κ²Œ μ €μž₯ν•˜κ³  κ΄€λ¦¬ν•˜μ—¬ λ―Όκ°ν•œ λ°μ΄ν„°μ˜ μ•”ν˜Έν™”λ₯Ό μˆ˜ν–‰ν•©λ‹ˆλ‹€.
  4. μ‹ λ’°ν•  수 μžˆλŠ” 인증: TEEλŠ” μ‚¬μš©μž 및 μž₯치 인증을 μ§€μ›ν•˜μ—¬ μ•ˆμ „ν•œ 거래 및 데이터 전솑을 κ°€λŠ₯ν•˜κ²Œ ν•©λ‹ˆλ‹€.

TEEλŠ” 특히 λ””μ§€ν„Έ 결제 μ‹œμŠ€ν…œ, 온라인 λ±…ν‚Ή, 개인 정보 보호 μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λ“±μ—μ„œ μ€‘μš”ν•œ 역할을 ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ ν™˜κ²½μ—μ„œλŠ” 데이터 μœ μΆœμ΄λ‚˜ λ³€μ‘°λ₯Ό λ°©μ§€ν•˜κΈ° μœ„ν•΄ 높은 μˆ˜μ€€μ˜ λ³΄μ•ˆμ΄ μš”κ΅¬λ©λ‹ˆλ‹€. TEEλ₯Ό 톡해 κ°œλ°œμžλŠ” λ―Όκ°ν•œ μž‘μ—…μ„ μ•ˆμ „ν•˜κ²Œ μˆ˜ν–‰ν•  수 있으며, μ‚¬μš©μžμ—κ²ŒλŠ” λ³΄μ•ˆμ΄ κ°•ν™”λœ μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

2. Components and Operating Principles

TEE의 ꡬ성 μš”μ†Œμ™€ μž‘λ™ μ›λ¦¬λŠ” λ‹€μŒκ³Ό 같이 μ„€λͺ…될 수 μžˆμŠ΅λ‹ˆλ‹€. TEEλŠ” 크게 ν•˜λ“œμ›¨μ–΄, μ†Œν”„νŠΈμ›¨μ–΄, 그리고 λ³΄μ•ˆ ν”„λ‘œν† μ½œλ‘œ λ‚˜λˆŒ 수 μžˆμŠ΅λ‹ˆλ‹€.

  1. ν•˜λ“œμ›¨μ–΄ 기반 λ³΄μ•ˆ: TEEλŠ” 일반적으둜 ARM TrustZone κΈ°μˆ μ„ 톡해 κ΅¬ν˜„λ©λ‹ˆλ‹€. TrustZone은 CPU 내에 두 개의 μ‹€ν–‰ ν™˜κ²½μ„ λ§Œλ“€μ–΄, 일반 OS와 λ³΄μ•ˆ OSλ₯Ό λΆ„λ¦¬ν•©λ‹ˆλ‹€. 이둜 인해 TEEλŠ” ν•˜λ“œμ›¨μ–΄μ—μ„œ 직접 μ§€μ›λ°›λŠ” λ³΄μ•ˆ κΈ°λŠ₯을 ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

  2. λ³΄μ•ˆ 운영 체제 (Secure OS): TEE λ‚΄μ—μ„œ μ‹€ν–‰λ˜λŠ” λ³΄μ•ˆ 운영 μ²΄μ œλŠ” λ―Όκ°ν•œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜κ³Ό 데이터λ₯Ό κ΄€λ¦¬ν•©λ‹ˆλ‹€. 이 운영 μ²΄μ œλŠ” 일반 OSμ™€λŠ” λ…λ¦½μ μœΌλ‘œ μž‘λ™ν•˜λ©°, λ³΄μ•ˆ 정책을 μ μš©ν•˜μ—¬ μ•ˆμ „ν•œ 싀행을 보μž₯ν•©λ‹ˆλ‹€.

  3. API 및 ν”„λ‘œν† μ½œ: TEEλŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜κ³Ό λ³΄μ•ˆ κΈ°λŠ₯ κ°„μ˜ μƒν˜Έμž‘μš©μ„ μœ„ν•΄ λ‹€μ–‘ν•œ APIλ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ APIλŠ” λ³΄μ•ˆ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ TEE의 κΈ°λŠ₯을 ν™œμš©ν•  수 μžˆλ„λ‘ λ•μŠ΅λ‹ˆλ‹€.

  4. 데이터 보호 λ©”μ»€λ‹ˆμ¦˜: TEEλŠ” λ°μ΄ν„°μ˜ κΈ°λ°€μ„±κ³Ό 무결성을 보μž₯ν•˜κΈ° μœ„ν•΄ μ•”ν˜Έν™” κΈ°μˆ μ„ μ‚¬μš©ν•©λ‹ˆλ‹€. λ―Όκ°ν•œ μ •λ³΄λŠ” TEE λ‚΄μ—μ„œλ§Œ μ ‘κ·Ό κ°€λŠ₯ν•˜λ©°, μ™ΈλΆ€μ˜ κ³΅κ²©μœΌλ‘œλΆ€ν„° μ•ˆμ „ν•˜κ²Œ λ³΄ν˜Έλ©λ‹ˆλ‹€.

TEE의 μž‘λ™ μ›λ¦¬λŠ” λ‹€μŒκ³Ό 같은 μ£Όμš” 단계λ₯Ό ν¬ν•¨ν•©λ‹ˆλ‹€:

  • μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μš”μ²­: 일반 OSμ—μ„œ TEE κΈ°λŠ₯을 ν˜ΈμΆœν•˜λŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ μš”μ²­μ„ λ³΄λƒ…λ‹ˆλ‹€.
  • λ³΄μ•ˆ μ»¨ν…μŠ€νŠΈ μ „ν™˜: TEEλŠ” μš”μ²­μ„ μˆ˜μ‹ ν•˜κ³ , λ³΄μ•ˆ μ»¨ν…μŠ€νŠΈλ‘œ μ „ν™˜ν•˜μ—¬ μš”μ²­μ„ μ²˜λ¦¬ν•©λ‹ˆλ‹€.
  • κ²°κ³Ό λ°˜ν™˜: μš”μ²­μ΄ 처리된 ν›„, TEEλŠ” κ²°κ³Όλ₯Ό 일반 OS둜 λ°˜ν™˜ν•©λ‹ˆλ‹€.

μ΄λŸ¬ν•œ 과정은 TEE의 λ³΄μ•ˆμ„±μ„ μœ μ§€ν•˜λ©΄μ„œλ„ 효율적인 데이터 처리λ₯Ό κ°€λŠ₯ν•˜κ²Œ ν•©λ‹ˆλ‹€. TEEλŠ” 특히 λͺ¨λ°”일 μž₯μΉ˜μ—μ„œμ˜ λ³΄μ•ˆ μš”κ΅¬ 사항을 μΆ©μ‘±μ‹œν‚€κΈ° μœ„ν•΄ μ„€κ³„λ˜μ—ˆμœΌλ©°, λ‹€μ–‘ν•œ λ³΄μ•ˆ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ ν•„μˆ˜μ μΈ μš”μ†Œλ‘œ 자리 작고 μžˆμŠ΅λ‹ˆλ‹€.

2.1 Hardware Security

ν•˜λ“œμ›¨μ–΄ λ³΄μ•ˆμ€ TEE의 κ°€μž₯ μ€‘μš”ν•œ μš”μ†Œ 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€. TrustZone κΈ°μˆ μ€ ν•˜λ“œμ›¨μ–΄μ—μ„œ μ œκ³΅ν•˜λŠ” λ³΄μ•ˆ κΈ°λŠ₯을 톡해 TEE의 μ•ˆμ „μ„±μ„ λ†’μž…λ‹ˆλ‹€. 이 κΈ°μˆ μ€ CPU의 νŠΉμ • 뢀뢄을 μ•ˆμ „ν•œ μ˜μ—­μœΌλ‘œ μ„€μ •ν•˜μ—¬, μ‹ λ’°ν•  수 μ—†λŠ” μ½”λ“œκ°€ μ•ˆμ „ μ˜μ—­μ— μ ‘κ·Όν•˜μ§€ λͺ»ν•˜λ„둝 ν•©λ‹ˆλ‹€.

2.2 Secure OS

Secure OSλŠ” TEE λ‚΄μ—μ„œ μ‹€ν–‰λ˜λŠ” 운영 체제둜, λ³΄μ•ˆ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ΄€λ¦¬ν•˜κ³  λ³΄ν˜Έν•©λ‹ˆλ‹€. 이 운영 μ²΄μ œλŠ” μ΅œμ†Œν•œμ˜ κΈ°λŠ₯λ§Œμ„ ν¬ν•¨ν•˜μ—¬ 곡격 ν‘œλ©΄μ„ 쀄이고, 효율적인 λ³΄μ•ˆμ„ μ œκ³΅ν•©λ‹ˆλ‹€.

2.3 API and Protocols

TEEμ—μ„œ μ œκ³΅ν•˜λŠ” APIλŠ” λ³΄μ•ˆ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ TEE의 κΈ°λŠ₯을 μ‰½κ²Œ μ‚¬μš©ν•  수 μžˆλ„λ‘ μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ APIλŠ” λ³΄μ•ˆ ν‚€ 관리, 데이터 μ•”ν˜Έν™”, μ‚¬μš©μž 인증 λ“± λ‹€μ–‘ν•œ κΈ°λŠ₯을 ν¬ν•¨ν•©λ‹ˆλ‹€.

TEEλŠ” μ—¬λŸ¬ λ³΄μ•ˆ 기술과 비ꡐ할 수 μžˆμŠ΅λ‹ˆλ‹€. μ—¬κΈ°μ—λŠ” ν•˜λ“œμ›¨μ–΄ λ³΄μ•ˆ λͺ¨λ“ˆ (HSM), 가상화 기술, 그리고 λ³΄μ•ˆ λΆ€νŠΈ 기술이 ν¬ν•¨λ©λ‹ˆλ‹€.

  1. ν•˜λ“œμ›¨μ–΄ λ³΄μ•ˆ λͺ¨λ“ˆ (HSM): HSM은 물리적으둜 μ•ˆμ „ν•œ μž₯치둜, μ•”ν˜Έν™” ν‚€λ₯Ό κ΄€λ¦¬ν•˜κ³  데이터 보호λ₯Ό μœ„ν•œ λ‹€μ–‘ν•œ κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€. TEE와 HSM λͺ¨λ‘ λ³΄μ•ˆμ„±μ„ μ œκ³΅ν•˜μ§€λ§Œ, HSM은 일반적으둜 독립적인 ν•˜λ“œμ›¨μ–΄λ‘œ μ‘΄μž¬ν•˜λ©°, TEEλŠ” CPU λ‚΄μ—μ„œ μ‹€ν–‰λ©λ‹ˆλ‹€.

  2. 가상화 기술: 가상화 κΈ°μˆ μ€ μ—¬λŸ¬ 운영 체제λ₯Ό ν•˜λ‚˜μ˜ ν•˜λ“œμ›¨μ–΄μ—μ„œ μ‹€ν–‰ν•  수 있게 ν•΄μ€λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ TEEλŠ” λ³΄μ•ˆμ„±μ„ λ”μš± κ°•ν™”ν•˜κΈ° μœ„ν•΄ ν•˜λ“œμ›¨μ–΄ 기반의 격리λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. 가상화 κΈ°μˆ μ€ 일반적으둜 μ‹ λ’°ν•  수 μ—†λŠ” ν™˜κ²½μ—μ„œλ„ 운영될 수 μžˆμ§€λ§Œ, TEEλŠ” μ‹ λ’°ν•  수 μžˆλŠ” ν™˜κ²½μ—μ„œλ§Œ μž‘λ™ν•©λ‹ˆλ‹€.

  3. λ³΄μ•ˆ λΆ€νŠΈ 기술: λ³΄μ•ˆ λΆ€νŠΈλŠ” μ‹œμŠ€ν…œμ΄ λΆ€νŒ…λ  λ•Œ μ†Œν”„νŠΈμ›¨μ–΄μ˜ 무결성을 ν™•μΈν•˜λŠ” κΈ°μˆ μž…λ‹ˆλ‹€. TEEλŠ” λ³΄μ•ˆ λΆ€νŠΈ κΈ°λŠ₯을 ν¬ν•¨ν•˜μ—¬, μ‹œμŠ€ν…œμ΄ μ•ˆμ „ν•˜κ²Œ μ‹œμž‘λ  수 μžˆλ„λ‘ 보μž₯ν•©λ‹ˆλ‹€.

μ΄λŸ¬ν•œ κΈ°μˆ λ“€μ€ 각기 λ‹€λ₯Έ μž₯점과 단점을 κ°€μ§€κ³  있으며, νŠΉμ • μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ μš”κ΅¬ 사항에 따라 선택될 수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, HSM은 λŒ€κ·œλͺ¨ 데이터 μ„Όν„°μ—μ„œμ˜ μ•”ν˜Έν™” μž‘μ—…μ— 적합할 수 μžˆμ§€λ§Œ, TEEλŠ” λͺ¨λ°”일 μž₯μΉ˜μ—μ„œμ˜ 개인 정보 λ³΄ν˜Έμ™€ 같은 νŠΉμ • μš”κ΅¬ 사항에 더 μ ν•©ν•©λ‹ˆλ‹€.

4. References

  • ARM Holdings: TrustZone κΈ°μˆ μ— λŒ€ν•œ 곡식 λ¬Έμ„œ 및 자료.
  • GlobalPlatform: TEE와 κ΄€λ ¨λœ ν‘œμ€€ 및 ν”„λ‘œν† μ½œμ— λŒ€ν•œ 정보 제곡.
  • IEEE: TEE κ΄€λ ¨ 기술 연ꡬ 및 ν•™μˆ  λ…Όλ¬Έ.

5. One-line Summary

Trusted Execution Environment (TEE) / TrustZone은 ν•˜λ“œμ›¨μ–΄ 기반의 μ•ˆμ „ν•œ μ‹€ν–‰ ν™˜κ²½μ„ μ œκ³΅ν•˜μ—¬ λ―Όκ°ν•œ 데이터와 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λ³΄ν˜Έν•˜λŠ” κΈ°μˆ μž…λ‹ˆλ‹€.