TPM 2.0 Library Specification FAQ
FAQs for the Trusted Platform Module Library Specifications in Public Review
TPM 2.0 Library Specification: Frequently Asked Questions
TCG has released the TPM 2.0 library specification for public review. The specification includes updates to a number of TPM commands and adds support for additional cryptographic algorithms. The key changes to that specification as compared to the existing TPM 1.2 specification include:
- Support for additional algorithms
- Agility of algorithms for use by geographies or markets that require specific-use algorithms
- Enhancements to the availability of the TPM to applications
- Enhanced authorization for improved TPM management
- Additional cryptographic services to enhance the security of platform services
Other, future TCG specifications will detail how the TPM can be implemented in various platforms through TCG Platform Specific Specifications. These future specifications include separate specs for PCs, mobile, embedded, servers and virtualized platforms. A TCG Software Specification (TSS) also will be provided.
Q. What will this specification be used for?
A. The TPM 2.0 specification will be used as the basis for creation of platform-specific TPM specifications. The specification is a “library specification”, which means that it supports a wide variety of functions, algorithms and capabilities upon which future platform-specific specifications will be based. Basically, it is the core capabilities and commands of the TPM
Q. Do I need another specification to build a TPM for use in PCs?
A. The PC Client WG will be providing additional specifications that make a variety of decisions about how TPM 2.0 is to be incorporated into PCs. TCG’s other work groups will provide similar guidance for other platforms in the future.
Q. Does this specification provide enough information to develop and manufacture a TPM similar to currently available TPMs?
A. The specification is sufficiently detailed to enable vendors to develop and manufacture TPM 2.0 products with functionality that is similar to TPM 1.2. In fact, it is expected that some TPM 2.0 implementations will be substantially similar in function and physical instantiation to TPM 1.2. However, as indicated in the response to the previous question, vendors wishing to offer TPM 2.0 on a particular class of platforms may be subject to additional requirements based on the platform-specific specifications when those specifications are released.
Q. Why was this new library specification developed?
A. Five primary early drivers for creating the library specification were algorithm agility, TPM usability, platform protections and enhanced authorization.
Algorithm agility was needed to provide an alternative to SHA-1, which is reaching its end-of-life for many purposes. It was also needed to enable other localities to use their selected algorithms and to enable replacement of algorithms when needed
The challenges related to usability of TPM 1.2 prompted some changes to make TPM 2.0 more reliably available to application
Attacks on BIOS and the pre-boot environment created a desire to use the TPM to provide protection for the BIOS and other platform services.Finally, the authorization mechanisms in TPM 1.2 did not provide sufficient flexibility for certain applications, prompting a push to include enhanced authorization in TPM 2.0 .
The new specification also adds some additional functionality and capabilities.
Q. What is new and updated in the library specification that was not previously released by TCG?
A. Some of the key changes include:
- Support for new algorithms: flexibility for the inclusion of a variety of algorithms, Elliptic curve-based algorithms and SHA-2 . and potentially multiple “algorithm sets” on a single TPM.
- Support for more than one “bank” of PCRs: enables the TPM to keep track of platform state using more than one distinct hash algorithm
- Inclusion of three ownership hierarchies: a “platform hierarchy” for platform protection, an “endorsement hierarchy” for privacy control and a “storage hierarchy” for general cryptographic usage
- Support for enhanced authorization: support for very flexible and fine-grained control over how and when TPM-protected data and keys can be accessed
- Support for additional key usage: along with support for new algorithms includes the ability to provide more general cryptographic operations with public and symmetric keys, including signature verification and symmetric encryption
- Support for multiple “trusted keys”: support for potentially more than one “endorsement key” and more than one “storage root key”, potentially using different algorithms
- A reference implementation – the specification includes a reference implementation in ANSI C that provides benefits to developers of TPMs and applications
Q. Why is TPM 2.0 written as a library specification, compared to the TPM 1.2 specification?
A. TPM 1.2 was designed with features that made it particularly appropriate for PCs and other PC-like platforms. TPM 2.0 is intended to be usable for a very broad range of platforms from embedded systems to mobile devices to PCs to servers. In order to accommodate all of these different platforms, the TPM 2.0 specification is written in a way that enables the platform-specific specifications to tailor TPM 2.0 to meet the requirements of their platform.
Q. Who benefits from TPM 2.0?
A. Enterprise, consumers, the public sector and others who want improved protection for their private and sensitive information can benefit from the TPM 2.0.
Q. How can a developer use this specification?
A. TPM developers can use this specification in conjunction with platform-specific specifications to create a TPM for a given platform. Application developers can use it to define solutions that interoperate with and/or use TPMs.
Q. Will TPMs based on the 1.2 spec be replaced by ones based on the TPM 2.0 specification?
A. Decisions made by vendors will determine when and how TPM 2.0 replaces existing TPMs. In the near term, it is expected that both TPM 1.2 and TPM 2.0 will be available and that vendors will provide implementations that support both TPM 1.2 and TPM 2.0.
Q. Once platform specifications are available and TPMs are available in the market, what are the differences apparent to the end users on systems with a TPM 2.0 compared to a TPM 1.2?
A. This will depend on the platform and the choices by vendors. In certain environments, it may be desired that old and new TPMs appear essentially the same from an end user perspective, with the primary changes being in the security of the algorithms in use. In other environments, TPM 2.0 may enable new use cases that could not be supported using TPM 1.2.
Q. When can developers start using the spec? What other specifications or support from TCG are required to get started implementing the new spec?
A. The specification is being made available to give the broader community the opportunity to gain understanding about how TPM 2.0 works and how it can be used. TCG will not provide certifications for TPM 2.0 on any given platform until platform-specific specifications are written and compliance requirements are specified.
Q. What type of platforms will be the first to implement TPM 2.0?
A. It is anticipated that the market will see tablet-type platforms first, with a transition to PC implementations over time.
Q. Will future products based on the TPM 2.0 spec require new software?
A. Yes, software vendors will need to provide new software to work with TPM 2.0 to provide the user a comparable use model to TPM 1.2 and to take advantage of additional capabilities.
Q. When does TCG anticipate availability of systems with the new TPMs?
A. Availability of implementations based on draft versions of the specifications are anticipated imminently. TCG-compliant implementation timelines will necessarily be based on the final release of the TPM 2.0 specification, platform-specific specifications and compliance specifications.
Q. If platforms ship before the platform specifications are released, how do we know these are compliant to the TCG specification?
A. It is up to vendors to indicate their compliance with TCG specifications in the absence of a formal TCG compliance program. Vendor statements of compliance to draft or final specifications do not represent formal endorsements by TCG of actual compliance or fitness for any particular purpose. Secure firmware update mechanisms are available in the specification that can allow a deferred deployment of TPM 2.0 (depending on vendors’ implementations).
Q. Is TCG planning a certification program for TPM 2.0 similar to that offered currently for TPM 1.2?
A. Yes, our plan is to add a TCG Certification Program for implementations of the TPM 2.0 specification, including compliance and security evaluation requirements, just as we have for the TPM 1.2 specification and products. No timeline can be communicated yet.
The TPM 2.0 Library specification for public review can be reviewed athttp://www.trustedcomputinggroup.org/resources/tpm_library_specification