Advanced

Emulation of TPM on Raspberry Pi

Nilsson, Erik LU and Sundberg, Marcus (2015) EITM01 20142
Department of Electrical and Information Technology
Abstract
The Trusted Platform Module (TPM) is a dedicated microprocessor designed
to secure hardware by integrating cryptographic keys into the non-volatile memory of the module. TPM is specified by the Trusted Computing Group (TCG).

TCG is an initiative started in 2003 by several multinational semiconductor and IT-companies. The initiative is an effort to develop standards for Trusted Computing where hardware is used to provide security support to software. The TPM is typically connected to the LPC bus on the motherboard of a PC and can be used to create and store cryptographic keys, generate random numbers, hash values and encrypt data.

The purpose of this thesis is to develop a TPM learning environment and a laboratory manual for... (More)
The Trusted Platform Module (TPM) is a dedicated microprocessor designed
to secure hardware by integrating cryptographic keys into the non-volatile memory of the module. TPM is specified by the Trusted Computing Group (TCG).

TCG is an initiative started in 2003 by several multinational semiconductor and IT-companies. The initiative is an effort to develop standards for Trusted Computing where hardware is used to provide security support to software. The TPM is typically connected to the LPC bus on the motherboard of a PC and can be used to create and store cryptographic keys, generate random numbers, hash values and encrypt data.

The purpose of this thesis is to develop a TPM learning environment and a laboratory manual for introductory courses in computer security where the students are able to learn about the functionalities of the TPM as a means to secure hardware.

The functions of the TPM will be emulated on the ARM based single board
computer Raspberry Pi developed by the Raspberry Pi foundation. The TPM
commands will be executed from a PC which will connect to the Raspberry Pi
remotely through TCP.

Several exercises related to TPM and its functionalities are provided as an appendix to this report. The exercises are intended for students or others interested in Trusted Computing. This report also provides exercises related to the creation of TPM applications using TSS (Trusted Computing Software Stack). (Less)
Please use this url to cite or link to this publication:
author
Nilsson, Erik LU and Sundberg, Marcus
supervisor
organization
course
EITM01 20142
year
type
H1 - Master's Degree (One Year)
subject
keywords
TPM, Trusted Computing, Raspberry Pi
report number
LU/LTH-EIT 2015-434
language
English
id
5157718
date added to LUP
2015-03-25 13:58:30
date last changed
2015-03-25 13:58:30
@misc{5157718,
  abstract     = {The Trusted Platform Module (TPM) is a dedicated microprocessor designed
to secure hardware by integrating cryptographic keys into the non-volatile memory of the module. TPM is specified by the Trusted Computing Group (TCG).

TCG is an initiative started in 2003 by several multinational semiconductor and IT-companies. The initiative is an effort to develop standards for Trusted Computing where hardware is used to provide security support to software. The TPM is typically connected to the LPC bus on the motherboard of a PC and can be used to create and store cryptographic keys, generate random numbers, hash values and encrypt data.

The purpose of this thesis is to develop a TPM learning environment and a laboratory manual for introductory courses in computer security where the students are able to learn about the functionalities of the TPM as a means to secure hardware. 

The functions of the TPM will be emulated on the ARM based single board
computer Raspberry Pi developed by the Raspberry Pi foundation. The TPM
commands will be executed from a PC which will connect to the Raspberry Pi
remotely through TCP.

Several exercises related to TPM and its functionalities are provided as an appendix to this report. The exercises are intended for students or others interested in Trusted Computing. This report also provides exercises related to the creation of TPM applications using TSS (Trusted Computing Software Stack).},
  author       = {Nilsson, Erik and Sundberg, Marcus},
  keyword      = {TPM,Trusted Computing,Raspberry Pi},
  language     = {eng},
  note         = {Student Paper},
  title        = {Emulation of TPM on Raspberry Pi},
  year         = {2015},
}