aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/security
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab+samsung@kernel.org>2019-04-15 17:46:48 -0400
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>2019-07-15 08:20:24 -0400
commit675aaf05d8982d3d304d4652d1555714be8b4af2 (patch)
tree57870b715f877de966105bfeed6d68346f4343d7 /Documentation/security
parent2bbbf827d339032dbeda62f0a5f20d2fde07b0f5 (diff)
docs: xen-tpmfront.txt: convert it to .rst
In order to be able to add this file to the security book, we need first to convert it to reST. While this is not part of any book, mark it as :orphan:, in order to avoid build warnings. Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Diffstat (limited to 'Documentation/security')
-rw-r--r--Documentation/security/tpm/xen-tpmfront.rst (renamed from Documentation/security/tpm/xen-tpmfront.txt)107
1 files changed, 60 insertions, 47 deletions
diff --git a/Documentation/security/tpm/xen-tpmfront.txt b/Documentation/security/tpm/xen-tpmfront.rst
index 69346de87ff3..98a16ab87360 100644
--- a/Documentation/security/tpm/xen-tpmfront.txt
+++ b/Documentation/security/tpm/xen-tpmfront.rst
@@ -1,4 +1,8 @@
1:orphan:
2
3=============================
1Virtual TPM interface for Xen 4Virtual TPM interface for Xen
5=============================
2 6
3Authors: Matthew Fioravante (JHUAPL), Daniel De Graaf (NSA) 7Authors: Matthew Fioravante (JHUAPL), Daniel De Graaf (NSA)
4 8
@@ -6,7 +10,8 @@ This document describes the virtual Trusted Platform Module (vTPM) subsystem for
6Xen. The reader is assumed to have familiarity with building and installing Xen, 10Xen. The reader is assumed to have familiarity with building and installing Xen,
7Linux, and a basic understanding of the TPM and vTPM concepts. 11Linux, and a basic understanding of the TPM and vTPM concepts.
8 12
9INTRODUCTION 13Introduction
14------------
10 15
11The goal of this work is to provide a TPM functionality to a virtual guest 16The goal of this work is to provide a TPM functionality to a virtual guest
12operating system (in Xen terms, a DomU). This allows programs to interact with 17operating system (in Xen terms, a DomU). This allows programs to interact with
@@ -24,81 +29,89 @@ This mini-os vTPM subsystem was built on top of the previous vTPM work done by
24IBM and Intel corporation. 29IBM and Intel corporation.
25 30
26 31
27DESIGN OVERVIEW 32Design Overview
28--------------- 33---------------
29 34
30The architecture of vTPM is described below: 35The architecture of vTPM is described below::
31 36
32+------------------+ 37 +------------------+
33| Linux DomU | ... 38 | Linux DomU | ...
34| | ^ | 39 | | ^ |
35| v | | 40 | v | |
36| xen-tpmfront | 41 | xen-tpmfront |
37+------------------+ 42 +------------------+
38 | ^ 43 | ^
39 v | 44 v |
40+------------------+ 45 +------------------+
41| mini-os/tpmback | 46 | mini-os/tpmback |
42| | ^ | 47 | | ^ |
43| v | | 48 | v | |
44| vtpm-stubdom | ... 49 | vtpm-stubdom | ...
45| | ^ | 50 | | ^ |
46| v | | 51 | v | |
47| mini-os/tpmfront | 52 | mini-os/tpmfront |
48+------------------+ 53 +------------------+
49 | ^ 54 | ^
50 v | 55 v |
51+------------------+ 56 +------------------+
52| mini-os/tpmback | 57 | mini-os/tpmback |
53| | ^ | 58 | | ^ |
54| v | | 59 | v | |
55| vtpmmgr-stubdom | 60 | vtpmmgr-stubdom |
56| | ^ | 61 | | ^ |
57| v | | 62 | v | |
58| mini-os/tpm_tis | 63 | mini-os/tpm_tis |
59+------------------+ 64 +------------------+
60 | ^ 65 | ^
61 v | 66 v |
62+------------------+ 67 +------------------+
63| Hardware TPM | 68 | Hardware TPM |
64+------------------+ 69 +------------------+
65 70
66 * Linux DomU: The Linux based guest that wants to use a vTPM. There may be 71* Linux DomU:
72 The Linux based guest that wants to use a vTPM. There may be
67 more than one of these. 73 more than one of these.
68 74
69 * xen-tpmfront.ko: Linux kernel virtual TPM frontend driver. This driver 75* xen-tpmfront.ko:
76 Linux kernel virtual TPM frontend driver. This driver
70 provides vTPM access to a Linux-based DomU. 77 provides vTPM access to a Linux-based DomU.
71 78
72 * mini-os/tpmback: Mini-os TPM backend driver. The Linux frontend driver 79* mini-os/tpmback:
80 Mini-os TPM backend driver. The Linux frontend driver
73 connects to this backend driver to facilitate communications 81 connects to this backend driver to facilitate communications
74 between the Linux DomU and its vTPM. This driver is also 82 between the Linux DomU and its vTPM. This driver is also
75 used by vtpmmgr-stubdom to communicate with vtpm-stubdom. 83 used by vtpmmgr-stubdom to communicate with vtpm-stubdom.
76 84
77 * vtpm-stubdom: A mini-os stub domain that implements a vTPM. There is a 85* vtpm-stubdom:
86 A mini-os stub domain that implements a vTPM. There is a
78 one to one mapping between running vtpm-stubdom instances and 87 one to one mapping between running vtpm-stubdom instances and
79 logical vtpms on the system. The vTPM Platform Configuration 88 logical vtpms on the system. The vTPM Platform Configuration
80 Registers (PCRs) are normally all initialized to zero. 89 Registers (PCRs) are normally all initialized to zero.
81 90
82 * mini-os/tpmfront: Mini-os TPM frontend driver. The vTPM mini-os domain 91* mini-os/tpmfront:
92 Mini-os TPM frontend driver. The vTPM mini-os domain
83 vtpm-stubdom uses this driver to communicate with 93 vtpm-stubdom uses this driver to communicate with
84 vtpmmgr-stubdom. This driver is also used in mini-os 94 vtpmmgr-stubdom. This driver is also used in mini-os
85 domains such as pv-grub that talk to the vTPM domain. 95 domains such as pv-grub that talk to the vTPM domain.
86 96
87 * vtpmmgr-stubdom: A mini-os domain that implements the vTPM manager. There is 97* vtpmmgr-stubdom:
98 A mini-os domain that implements the vTPM manager. There is
88 only one vTPM manager and it should be running during the 99 only one vTPM manager and it should be running during the
89 entire lifetime of the machine. This domain regulates 100 entire lifetime of the machine. This domain regulates
90 access to the physical TPM on the system and secures the 101 access to the physical TPM on the system and secures the
91 persistent state of each vTPM. 102 persistent state of each vTPM.
92 103
93 * mini-os/tpm_tis: Mini-os TPM version 1.2 TPM Interface Specification (TIS) 104* mini-os/tpm_tis:
105 Mini-os TPM version 1.2 TPM Interface Specification (TIS)
94 driver. This driver used by vtpmmgr-stubdom to talk directly to 106 driver. This driver used by vtpmmgr-stubdom to talk directly to
95 the hardware TPM. Communication is facilitated by mapping 107 the hardware TPM. Communication is facilitated by mapping
96 hardware memory pages into vtpmmgr-stubdom. 108 hardware memory pages into vtpmmgr-stubdom.
97 109
98 * Hardware TPM: The physical TPM that is soldered onto the motherboard. 110* Hardware TPM:
111 The physical TPM that is soldered onto the motherboard.
99 112
100 113
101INTEGRATION WITH XEN 114Integration With Xen
102-------------------- 115--------------------
103 116
104Support for the vTPM driver was added in Xen using the libxl toolstack in Xen 117Support for the vTPM driver was added in Xen using the libxl toolstack in Xen