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]). The TPM specification is the work of the Trusted Computing Group. The current version of the TPM specification is 1.2 Revision 116, published on March 3rd, 2011.[2] This specification is also available as the international standard ISO/IEC 11889.
Contents |
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.
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. 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. 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.
The TPM sometimes goes by the name of the former United States Senator Ernest "Fritz" Hollings. The name "Fritz chip" was coined by Professor Ross Anderson, author of Security Engineering and Professor at the University of Cambridge[5]
The primary scope of a TPM (in combination with other TCG implementations) 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 just Windows: Start the power-on boot process from a trusted condition and extend this trust until the OS has fully booted and applications running.
Together with the BIOS, the TPM forms a Root of Trust: The TPM contains several PCRs (Platform Configuration Registers) 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. A good example can be found in Microsoft's BitLocker Drive Encryption (see below).
Therefore the BIOS and the Operating System have the primary responsibility to utilize the TPM to assure platform integrity. Only then applications and users running on that platform can rely on its security characteristics such as secure I/O "what you see is what you get", uncompromised keyboard entries, memory and storage operations.
Full disk encryption applications, such as the BitLocker Drive Encryption feature of Microsoft's Windows Vista Ultimate, Windows Vista Enterprise, Windows Server 2008, and the Windows 7 Enterprise and Windows 7 Ultimate operating systems, 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 (i.e. BIOS, boot sector, etc.). A number of third party full disk encryption products also support the TPM chip.
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 the TPM is implemented in a dedicated hardware module, a dictionary attack prevention mechanism was built in, which effectively prevents from guessing or automated dictionary attacks, while still allowing the user for 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.
Almost any encryption-enabled application can in theory make use of a TPM, including:
Other uses exist, some of which give rise to privacy concerns. The "physical presence" feature of the TPM addresses some of these concerns by requiring BIOS-level confirmation for operations such as activating, deactivating, clearing or changing ownership of the TPM by someone who is physically present at the console of the machine.[6][7]
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 PC the LPC bus is used.
Trusted Platform Module microcontrollers are currently produced by:
The Trusted Computing Group, the developers of the specification, has faced resistance in some areas to deploy this technology, especially in academia, where some authors still see possible uses not specifically related to Trusted Computing, which may raise privacy concerns. The concerns include the abuse of remote validation of software (where the manufacturer — and not the user who owns the computer system — decides what software is allowed to run) and possible ways to follow actions taken by the user being recorded in a database.[8]
Currently TPM is used by nearly all PC and Notebook manufacturers, primarily offered on professional product lines.
TPM is supported by several vendors:
There are also hybrid types, e.g. where the TPM module is integrated into the Ethernet chip, as from Broadcom, while the software which runs “on top” is based on Infineon.