← Documents 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 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약·해설

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. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 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.