Trusted Platform Module is an international standard for a secure cryptoprocessor, which
is a dedicated microprocessor designed to secure hardware by integrating cryptographic
keys into devices.
TPM's technical specification was written by a computer industry consortium called Trusted
Computing Group.
International Organization for Standardization and International Electrotechnical Commission
standardized the specification as ISO/IEC 11889 in 2009.
TCG continues to revise the TPM specification.
They published revision 116 of the TPM specification version 1.2 on 3 March 2011.
They published draft revision 1.07 of the TPM specification version 2.0 for public review
on 13 March 2014.
Overview Trusted Platform Module offers facilities
for the secure generation of cryptographic keys, and limitation of their use, in addition
to a random number generator.
It also includes capabilities such as remote attestation and sealed storage, as follows:
Remote attestation Creates a nearly unforgeable hash key summary
of the hardware and software configuration.
The program hashing the configuration data determines the extent of the summary of the
software.
This allows a third party to verify that the software has not been changed.
Binding Encrypts data using TPM bind key, a unique
RSA key descended from a storage key.
Sealing Encrypts data in a similar manner to binding,
but in addition specifies a state in which TPM must be in order for the data to be decrypted.
Software can use a Trusted Platform Module to authenticate hardware devices.
Since each TPM chip has a unique and secret RSA key burned in as it is produced, it is
capable of performing platform authentication.
Generally, pushing the security down to the hardware level in conjunction with software
provides more protection than a software-only solution.
However even where a TPM is used, a key would still be vulnerable while a software application
that has obtained it from TPM is using it to perform encryption/decryption operations,
as has been illustrated in the case of a cold boot attack.
This problem is eliminated if key(s) used in TPM are not accessible on a bus or to external
programs and all encryption/decryption is done in TPM.
Uses An example of use is Intel's Trusted Execution
Technology.
Intel's TXT is used to create a "chain of trust", and to remotely attest that a computer
has a specified hardware setup and is using specified software.
Platform integrity The primary scope of a TPM is to assure the
integrity of a platform.
In this context "integrity" means "behave as intended", and a "platform" is generically
any computer platform – not limited to PCs or a particular operating system: start the
power-on boot process from a trusted condition and extend this trust until the operating
system has fully booted and applications are running.
Together with the BIOS, TPM forms a "root of trust": TPM contains several PCRs that
allow a secure storage and reporting of security relevant metrics.
These metrics can be used to detect changes to previous configurations and derive decisions
how to proceed.
Good examples can be found in Linux Unified Key Setup, and in Microsoft's BitLocker Drive
Encryption and PrivateCore vCage memory encryption.
Therefore the BIOS and the operating system have the primary responsibility to utilize
TPM in order to assure platform integrity.
Only then can applications and users running on that platform rely on its security characteristics,
such as secure I/O "what you see is what you get", uncompromised keyboard entries, memory
and storage operations.
Disk encryption Full disk encryption applications, such as
SecureDoc, dm-crypt in modern Linux kernels, and BitLocker Drive Encryption in some versions
of Windows, can use this technology to protect the keys used to encrypt the computer's hard
disks and provide integrity authentication for a trusted boot pathway A number of third
party full disk encryption products also support TPM.
TrueCrypt however decided not to use it.
Password protection Access to keys, data or systems is often protected
and requires authentication by presenting a password.
If the authentication mechanism is implemented in software only, the access typically is
prone to "dictionary attacks."
Since TPM is implemented in a dedicated hardware module, a dictionary attack prevention mechanism
was built in, which effectively protects against guessing or automated dictionary attacks,
while still allowing the user a sufficient and reasonable number of tries.
With this hardware based dictionary attack prevention, the user can opt for shorter or
weaker passwords which are more memorable.
Without this level of protection, only passwords with high complexity would provide sufficient
protection.
Other uses and concerns Almost any encryption-enabled application
can, in theory, make use of a TPM, including: digital rights management
protection and enforcement of software licenses.
prevention of cheating in online games.
Other uses exist, some of which give rise to privacy concerns.
The "physical presence" feature of TPM addresses some of these concerns by requiring BIOS-level
confirmation for operations such as activating, deactivating, clearing or changing ownership
of TPM by someone who is physically present at the console of the machine.
TPM hardware
Starting in 2006, many new laptop computers have been sold with a Trusted Platform Module
chip built-in.
In the future, this concept could be co-located on an existing motherboard chip in computers,
or any other device where a TPM's facilities could be employed, such as a cell phone.
On a PC, either the LPC bus or the SPI bus is used to connect to the TPM.
TPM microcontrollers are currently manufactured by Atmel, Broadcom, Infineon, Intel, ITE,
Nuvoton, Sinosun, STMicroelectronics and Toshiba.
Criticism TCG have faced resistance in some areas to
deploy this technology, especially in academia, where some authors see possible uses not specifically
related to Trusted Computing, which may raise privacy concerns.
The concerns include the abuse of remote validation of software and possible ways to follow actions
taken by the user being recorded in a database, in a manner that is completely undetectable
to the user.
Availability Currently TPM is used by nearly all PC and
notebook manufacturers, primarily offered on professional product lines.
TPM is implemented by several vendors: Acer, Wipro, Asus, Dell, Inc., Gigabyte Technology,
IBM, LG, Fujitsu, HP, Lenovo, MSI, Panasonic, Samsung, Sony, Eurocom Corporation, and Toshiba
provide TPM integration on their devices.
Infineon provides both TPM chips and TPM software, which is delivered as OEM versions with new
computers, as well as separately by Infineon for products with TPM technology which complies
to TCG standards.
Wave Systems offers a broad range of client and server software, which runs on all TPM
chip-sets.
For instance, this software is pre-installed on several models from Dell and Gateway.
Microsoft operating systems, Windows Vista and later use the chip in conjunction with
the included disk encryption component named BitLocker.
Microsoft has announced that from January 1, 2015 all computers will have to be equipped
with a TPM 2.0 module in order to pass Windows 8.1 hardware certification.
In 2006, with the introduction of first Macintosh models with Intel processors, Apple started
to ship Macs with TPM. Apple never provided an official driver, but there was a port under
GPL available.
Apple has not shipped a computer with TPM since 2006.
In 2011, Taiwanese manufacturer MSI launched its Windpad 110W tablet featuring an AMD CPU
and Infineon Security Platform TPM, which ships with controlling software version 3.7.
The chip is disabled by default but can be enabled with the included, pre-installed software.
Oracle ships TPMs in their recent X- and T-Series Systems such as T3 or T4 series of servers.
Support is included in Solaris 11.
Google includes TPMs in Chromebooks as part of their security model.
VMware's ESXi hypervisor has supported TPM since 4.x, and from 5.0 it is enabled by default.
PrivateCore vCage uses TPM chips in conjunction with Intel Trusted Execution Technology to
validate systems on bootup.
There are also hybrid types; for example, TPM can be integrated into an Ethernet controller,
thus eliminating the need for a separate motherboard component.
See also Hardware Security Module
Hengzhi chip Next-Generation Secure Computing Base
Trusted Computing Unified Extensible Firmware Interface
References
External links Trusted Computing Group
Specifications
LWN: OLS: Linux and trusted computing GRC podcast: Trusted Platform Module
TPM Setup Trusted Computing Group Bulletin on the Security
of the Trusted Platform Module February 2008 Take Control of TCPA
TPM Reset Attack Trusted platform motherboard having physical
presence detection based on activation of power-on-switch
White Paper by Intel Corporation and IBM Corporation Trusted Platforms