Trusted Platform Module
From Wikipedia, the free encyclopedia
In computing, Trusted Platform Module (TPM) is both the name of a published specification detailing a secure cryptoprocessor that can store cryptographic keys that protect information, as well as the general name of implementations of that specification, often called the "TPM chip" or "TPM Security Device" (as designated in certain Dell BIOS settings[1]). It was dubbed the "Fritz chip" by professor Ross Anderson, Security Engineering Professor at the University of Cambridge Computer Laboratory, in reference to the former United States Senator Ernest "Fritz" Hollings, who according to Anderson "worked tirelessly in Congress to make TC a mandatory part of all consumer electronics."[2] The TPM specification is the work of the Trusted Computing Group. The current version of the TPM specification is 1.2 Revision 103, published on July 9, 2007.[3]
Contents |
[edit] Overview
The Trusted Platform Module offers facilities for the secure generation of cryptographic keys, and limitation of their use, in addition to a hardware pseudo-random number generator. It also includes capabilities such as remote attestation and sealed storage. "Remote attestation" creates a nearly unforgeable hash key summary of the hardware and software configuration. The extent of the summary of the software is decided by the program encrypting the data. This allows a third party to verify that the software has not been changed. "Sealing" encrypts data in such a way that it may be decrypted only if the TPM releases the associated decryption key, which it only does for software that can provide the same password that was supplied when software "ownership" of the TPM was initially configured.[4] "Binding" encrypts data using the TPM endorsement key, a unique RSA key burned into the chip during its production, or another trusted key descended from it.
A Trusted Platform Module can be used 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. For example, it can be used to verify that a system seeking access is the expected system.
Generally, pushing the security down to the hardware level in conjunction with software provides more protection than a software-only solution that is more easily compromised by an attacker. However even where a TPM is used, a key is still vulnerable while a software application that has obtained it from the TPM is using it to perform encryption/decryption operations, as has been illustrated in the case of a cold boot attack[5].
[edit] Uses
[edit] Disk encryption
Full disk encryption applications, such as the PGP Whole Disk Encryption and BitLocker Drive Encryption feature of Microsoft's Windows Vista Ultimate, Windows Vista Enterprise, and Windows Server 2008 operating systems, can use this technology to protect the keys used to encrypt the computer's operating system volume and provide integrity authentication for a trusted boot pathway (i.e. BIOS, boot sector, etc.) A number of third party full disk encryption products also support the TPM chip.
[edit] Other uses
Almost any encryption-enabled application can in theory make use of a TPM, including:
- Digital Rights Management
- Software license protection & enforcement
- Password protection
These potential other uses have given rise to privacy concerns. Consequently, to address these concerns, the TPM chip cannot be enabled via software alone - a "physical presence request" operation is required, whereby a human sitting at the computer must acknowledge the request to activate the device via a prompt at BIOS level.[6] Furthermore, each application that uses the TPM must register a unique passphrase when it takes ownership of the TPM in order to prevent other applications from also making unauthorized use of the TPM while it's enabled.[7] Future operating systems are expected to have increased TPM support for additional cryptographic features.
[edit] 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. Intel is planning to integrate the TPM capabilities into the southbridge chipset in 2008.[8][dated info]
Trusted Platform Module microcontrollers are currently produced by:
- Atmel
- Broadcom
- Infineon (Infineon TPM)
- Intel (via Intel Manageability Engine as iTPM)
- Sinosun
- STMicroelectronics
- NuvoTon (formerly Winbond)
[edit] Failings
Because of System Management Mode it is possible for firmware to run arbitrary code with full permissions completely transparent from the operating system. Using this it is possible to emulate a TPM chip or trap and forward TPM calls. This has been made possible with coreboot.[9]
[edit] See also
[edit] References
- ^ "Dell OptiPlex GX620 User's Guide". Dell. 2008. http://support.dell.com/support/edocs/systems/opgx620/en/ug/advfeat0.htm. Retrieved on 2008-06-28.
- ^ Anderson, Ross (2003-08). "Trusted Computing FAQ". Cambridge University. http://www.cl.cam.ac.uk/~rja14/tcpa-faq.html. Retrieved on 2008-06-28.
- ^ "Trusted Platform Module (TPM) Specifications". Trusted Computing Group. https://www.trustedcomputinggroup.org/specs/TPM/.
- ^ "TakeOwnership Method of the Win32_Tpm Class". Microsoft. http://msdn.microsoft.com/en-us/library/aa376479(VS.85).aspx. Retrieved on 2008-05-27.
- ^ Don't Panic - Cold Boot Reality Check
- ^ "SetPhysicalPresenceRequest Method of the Win32_Tpm Class". Microsoft. http://msdn.microsoft.com/en-us/library/aa376478(VS.85).aspx. Retrieved on 2008-05-20.
- ^ "TakeOwnership Method of the Win32_Tpm Class". Microsoft. http://msdn.microsoft.com/en-us/library/aa376479(VS.85).aspx. Retrieved on 2008-05-20.
- ^ Microsoft PowerPoint - GovSec Presentation_052505_v05.ppt
- ^ http://www.youtube.com/watch?v=X72LgcMpM9k Google Tech Talks - Coreboot - 00:34:30
[edit] External links
- Trusted Computing Group
- Device Authentication-The answer to attacks launched using stolen passwords?
- LWN: OLS: Linux and trusted computing
- GRC podcast: Trusted Platform Module (TPM) (TPM content starts 27 minutes 30 seconds in.)
- TPM Setup (for Mac OS X)
- Trusted Computing Group Bulletin on the Security of the Trusted Platform Module (TPM) February 2008
- Take Control of TCPA
- TPM Reset Attack
- Trusted platform motherboard having physical presence detection based on activation of power-on-switch