Transcription of TCG PC Client Specific TIS - Trusted Computing Group
1 TCG TCG PC Client Platform Firmware Profile Specification Family Level 00 Revision March 30, 2016 Published Contact: TCG PUBLISHED Copyright TCG 2003 - 2016 Specification TCG PC Client Platform Firmware Profile Page ii TCG PUBLISHED Family March 30, 2016 Copyright TCG 2003 - 2016 Level 00 Revision Disclaimers, Notices, and License Terms THIS SPECIFICATION IS PROVIDED "AS IS" WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY PROPOSAL, SPECIFICATION OR SAMPLE. Without limitation, TCG disclaims all liability, including liability for infringement of any proprietary rights, relating to use of information in this specification and to the implementation of this specification, and TCG disclaims all liability for cost of procurement of substitute goods or services, lost profits, loss of use, loss of data or any incidental, consequential, direct, indirect, or special damages, whether under contract, tort, warranty or otherwise, arising in any way out of use or reliance upon this specification or any information herein.
2 This document is copyrighted by Trusted Computing Group (TCG), and no license, express or implied, is granted herein other than as follows: You may not copy or reproduce the document or distribute it to others without written permission from TCG, except that you may freely do so for the purposes of (a) examining or implementing TCG specifications or (b) developing, testing, or promoting information technology standards and best practices, so long as you distribute the document with these disclaimers, notices, and license terms. Contact the Trusted Computing Group at for information on specification licensing through membership agreements. Any marks and brands contained herein are the property of their respective owners.
3 TCG PC Client Platform Firmware Profile Specification Family TCG PUBLISHED Page iii Level 00 Revision Copyright TCG 2003 - 2016 March 30, 2016 Change History Revision Date Description 21 March 30, 2016 Initial Release Specification TCG PC Client Platform Firmware Profile Page iv TCG PUBLISHED Family March 30, 2016 Copyright TCG 2003 - 2016 Level 00 Revision Acknowledgements The writing of a specification, particularly a security specification, takes many hours for both development and review. The TCG would like to acknowledge the contribution of those individuals (listed below) and the companies who allowed them to volunteer their time to the development of this specification.
4 Special thanks are due to Amy Nelson and Rob Spiger, who served as Chairs of the PC Client Working Group during the development of this specification. The TCG would also like to give special thanks to Amy Nelson who served as the editor of this specification. Contributors Gary Simpson, AMD Gongyuan Zhuang, AMD Ronnie Thomas, Atmel Mong Sim, Atmel Bill Jacobs, Cisco Systems Amy Nelson, Dell Inc Andreas Fuchs, Fraunhofer Institute for Secure Information Technology Shiva Desari, Hewlett Packard Enterprise Ken Goldman, IBM Monty Wiseman, Intel Robert Hart, Johns Hopkins University, Applied Physics Lab James Hoff, Lenovo Inc Scott Piper, Lenovo Inc Ronald Aigner, Microsoft Gabriel Stocco, Microsoft Dick Wilkins, Phoenix Tom Brostrom, United States Government Eugene Myers, United States Government TCG PC Client Platform Firmware Profile Specification Family TCG PUBLISHED Page v Level 00 Revision Copyright TCG 2003 - 2016 March 30.
5 2016 Contents 1 Introduction and Concepts .. 1 PC Client Specific Architecture .. 2 PC Client Concepts .. 4 Host Platform TPM .. 4 Trusted Building Block (TBB) .. 4 Roots of Trust .. 4 Host Platform .. 5 Non-Host Platforms .. 5 System .. 6 Host Platform and TPM Reset .. 6 PCI Option ROM Request for Reset .. 7 Trusted Process .. 7 TPM Control Surface .. 7 Boot State Transition .. 8 Establishing the Chain of 8 Locality .. 9 System and TPM Power 11 General Host Platform Power Requirements .. 12 Overview of the Measurement Process .. 13 Usage and Optimization of Hash Functions .. 13 Terminology .. 13 TCG Specification Dependency and Naming .. 13 Division of Documentation.
6 13 This Specification .. 14 Platform TPM Profile (PTP) .. 14 TPM Library Specification .. 14 TCG TSS Specification .. 14 TCG ACPI Specification .. 14 TCG Physical Presence Specification .. 14 TCG Platform Reset Attack Mitigation Specification .. 15 TCG UEFI Protocol Specification .. 15 External Specifications .. 15 Specification Conventions .. 16 2 Host Platform Roots of Trust Requirements .. 17 Introduction .. 17 Locality Support Requirements .. 17 Pre-OS Environment .. 17 OS Environment .. 17 SRTM .. 18 Introduction of Concepts .. 18 Initial TBB Control and Host Platform Reset .. 18 Static Root of Trust for Measurement (SRTM) .. 18 Transfer of Control from SRTM.
7 18 Integrity Collection and Reporting .. 18 Collection and Reporting of Measurements .. 19 Error Conditions .. 20 Boot Event and PCR Usage Model .. 22 PCR Usage .. 25 Localities assigned to RTM s .. 47 Specification TCG PC Client Platform Firmware Profile Page vi TCG PUBLISHED Family March 30, 2016 Copyright TCG 2003 - 2016 Level 00 Revision 3 Non-Volatile Storage .. 49 NV RAM Size and Allocation .. 49 4 Maintenance .. 50 Platform Firmware Recovery Mode .. 50 Flash Maintenance .. 51 Firmware Compliance Requirements .. 51 5 TCG Certificates and Verification of a Platform for SP800-155 Compliance .. 52 6 TPM Discoverability .. 54 TPM Visibility to the OS .. 54 TPM Visibility to End-Users through BIOS Setup.
8 55 Platform Firmware Setup TPM Control Surface .. 56 7 State Transitions .. 60 Architecture and Definitions .. 60 Procedure for Pre-Boot to OS-Present Transition .. 60 Extending PCR[4] .. 61 Extending PCR[5] .. 61 Extending PCR[7] .. 61 Measuring OS Boot Events .. 61 Passing Control of the TPM from Pre-Boot to Post-Boot .. 62 Power States, Transitions, and TPM Initialization .. 63 General Host Platform and OS Power Requirements .. 63 Power State Transitions .. 64 Off to S0 (Working) .. 64 S0(Working) to Off .. 66 S1(Sleep) to S0 Working, S0 to S1 .. 66 S0 (Working) to S2 (Sleep) .. 66 S2 (Sleep) to S0 (Working) .. 67 S0 (Working) to S3 (Sleep) .. 68 S3 (Sleep) to S0( Working).
9 69 8 ACPI Device Object for TPM .. 72 TPM 72 TPM Hidden .. 73 ACPI Table Usage .. 73 9 Event Logging .. 75 TCG Defined Structures .. 75 TCG_PCR_EVENT2 Structure .. 75 EFI_IMAGE_LOAD_EVENT Structure .. 76 Measuring Industry Standard Tables and Data Structures .. 76 EFI_PLATFORM_FIRMWARE_BLOB Structure Definition .. 76 Measuring UEFI Variables .. 77 Measurement Event Entries and Log .. 78 Event Descriptions .. 80 Event Types .. 80 EV_ACTION Event Types .. 84 EV_EFI_ACTION Event Types .. 86 EV_NO_ACTION Event Types .. 87 10 Platform Hierarchy (Physical Presence) .. 91 11 Predictive Event Logs .. 92 TCG PC Client Platform Firmware Profile Specification Family TCG PUBLISHED Page vii Level 00 Revision Copyright TCG 2003 - 2016 March 30, 2016 12 Supporting TCG Opal SSC Block SID enabled 93 Specification TCG PC Client Platform Firmware Profile Page viii TCG PUBLISHED Family March 30, 2016 Copyright TCG 2003 - 2016 Level 00 Revision List of Figures Figure 1 PC Client Platform Architectural 3 Figure 2 Example of SRTM and DRTM Initialization Sequence.
10 10 Figure 3 SRTM remediation steps when initializing the TPM .. 21 Figure 4 UEFI 22 Figure 5 UEFI Platform Boot Process .. 23 Figure 6 PCR Mapping of UEFI Components .. 24 Figure 7 Firmware Actions during transitions from Off .. 65 Figure 8 Firmware Actions for S2 resume .. 68 Figure 9 Firmware Actions for Resume from S3 .. 70 Figure 10 ACPI Table .. 74 Figure 10 ACPI Table .. 74 TCG PC Client Platform Firmware Profile Specification Family TCG PUBLISHED Page ix Level 00 Revision Copyright TCG 2003 - 2016 March 30, 2016 List of Tables Table 1 PCR Usage .. 25 Table 2 Comparison of TPM Family and Firmware User Interface .. 57 Table 3 TCG_Digests Structure .. 75 Table 4 TCG_PCR_EVENT2 Structure.
