Documentation/security/tpm/tpm_ftpm_tee.rst GitHub 원문 ↗

Linux 6.18.37 · Security

Firmware TPM Driver

ARM TrustZone firmware TPM을 표준 /dev/tpmX interface에 연결하는 얇은 fTPM driver 구조를 설명합니다.

Source pathDocumentation/security/tpm/tpm_ftpm_tee.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.

1. 요약·해설

원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.

요약·해설

tpm_ftpm_tee.rst:1-27

ARM TrustZone firmware TPM을 표준 /dev/tpmX interface에 연결하는 얇은 fTPM driver 구조를 설명합니다.

2. 영어 원문 전체

번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.

원문 전체 펼치기
1 =============================================
2 Firmware TPM Driver
3 =============================================
4
5 This document describes the firmware Trusted Platform Module (fTPM)
6 device driver.
7
8 Introduction
9 ============
10
11 This driver is a shim for firmware implemented in ARM's TrustZone
12 environment. The driver allows programs to interact with the TPM in the same
13 way they would interact with a hardware TPM.
14
15 Design
16 ======
17
18 The driver acts as a thin layer that passes commands to and from a TPM
19 implemented in firmware. The driver itself doesn't contain much logic and is
20 used more like a dumb pipe between firmware and kernel/userspace.
21
22 The firmware itself is based on the following paper:
23 https://www.microsoft.com/en-us/research/wp-content/uploads/2017/06/ftpm1.pdf
24
25 When the driver is loaded it will expose ``/dev/tpmX`` character devices to
26 userspace which will enable userspace to communicate with the firmware TPM
27 through this device.
28

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.

fTPM driver 개요

1-7

이 문서는 firmware Trusted Platform Module(fTPM) device driver를 설명한다. Hardware TPM chip 대신 firmware에 구현된 TPM을 Linux TPM subsystem에 연결하는 driver다.

fTPM 위치
구성역할
TrustZone firmwareTPM command 실행
fTPM driverKernel TPM interface 연결
Userspace/dev/tpmX로 접근

TPM 기능이 별도 chip이 아니라 trusted firmware에 존재한다.

=============================================
Firmware TPM Driver
=============================================

This document describes the firmware Trusted Platform Module (fTPM)
device driver.

TrustZone shim

8-14

Driver는 ARM TrustZone 환경에 구현된 firmware를 위한 shim이다. 프로그램은 실제 hardware TPM을 사용할 때와 같은 방식으로 firmware TPM과 상호 작용할 수 있다.

fTPM 호환 경로
TPM 응용 프로그램/dev/tpmXLinux fTPM shimTrustZone transportFirmware TPM

기존 TPM userspace interface를 TrustZone 구현에 그대로 연결한다.

Introduction
============

This driver is a shim for firmware implemented in ARM's TrustZone
environment. The driver allows programs to interact with the TPM in the same
way they would interact with a hardware TPM.

얇은 command 전달 계층

15-27

Driver는 firmware TPM으로 command를 보내고 response를 돌려받는 얇은 계층이다. 자체 logic은 거의 없으며 firmware와 kernel·userspace 사이의 단순한 pipe처럼 사용된다.

Firmware 설계의 근거는 Microsoft Research의 fTPM 논문 `ftpm1.pdf`다. Driver가 로드되면 `/dev/tpmX` character device를 userspace에 공개하고, userspace는 이 device를 통해 firmware TPM과 통신한다.

fTPM command 왕복
Userspace가 /dev/tpmX에 command 기록Kernel fTPM driver가 전달TrustZone firmware가 처리Response를 driver로 반환Userspace가 /dev/tpmX에서 읽음

Driver가 내용을 해석하기보다 transport 역할을 수행한다.

Design
======

The driver acts as a thin layer that passes commands to and from a TPM
implemented in firmware. The driver itself doesn't contain much logic and is
used more like a dumb pipe between firmware and kernel/userspace.

The firmware itself is based on the following paper:
https://www.microsoft.com/en-us/research/wp-content/uploads/2017/06/ftpm1.pdf

When the driver is loaded it will expose ``/dev/tpmX`` character devices to
userspace which will enable userspace to communicate with the firmware TPM
through this device.