11605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
21605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
31605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
41605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
51605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
61605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContact: admin@trustedcomputinggroup.org
81605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTCG
131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLicenses and Notices
191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1. Copyright Licenses:
201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Computing Group (TCG) grants to the user of the source code in this specification (the
231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn“Source Code”) a worldwide, irrevocable, nonexclusive, royalty free, copyright license to
241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreproduce, create derivative works, distribute, display and perform the Source Code and
251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnderivative works thereof, and to grant others the rights granted herein.
261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TCG grants to the user of the other parts of the specification (other than the Source Code)
301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe rights to reproduce, distribute, display, and perform the specification solely for the purpose of
311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndeveloping products based on such documents.
321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2. Source Code Distribution Conditions:
341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRedistributions of Source Code must retain the above copyright licenses, this list of conditions
371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand the following disclaimers.
381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRedistributions in binary form must reproduce the above copyright licenses, this list of conditions
421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand the following disclaimers in the documentation and/or other materials provided with the
431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndistribution.
441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3. Disclaimers:
461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTHE COPYRIGHT LICENSES SET FORTH ABOVE DO NOT REPRESENT ANY FORM OF
491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLICENSE OR WAIVER, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, WITH
501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRESPECT TO PATENT RIGHTS HELD BY TCG MEMBERS (OR OTHER THIRD PARTIES)
511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTHAT MAY BE NECESSARY TO IMPLEMENT THIS SPECIFICATION OR OTHERWISE.
521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContact TCG Administration (admin@trustedcomputinggroup.org) for information on specification
531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlicensing rights available through TCG membership agreements.
541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTHIS SPECIFICATION IS PROVIDED "AS IS" WITH NO EXPRESS OR IMPLIED WARRANTIES
581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A
591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPARTICULAR PURPOSE, ACCURACY, COMPLETENESS, OR NONINFRINGEMENT OF
601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINTELLECTUAL PROPERTY RIGHTS, OR ANY WARRANTY OTHERWISE ARISING OUT OF
611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnANY PROPOSAL, SPECIFICATION OR SAMPLE.
621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWithout limitation, TCG and its members and licensors disclaim all liability, including liability for
661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninfringement of any proprietary rights, relating to use of information in this specification and to the
671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementation of this specification, and TCG disclaims all liability for cost of procurement of
681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsubstitute goods or services, lost profits, loss of use, loss of data or any incidental, consequential,
691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndirect, indirect, or special damages, whether under contract, tort, warranty or otherwise, arising in
701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnany way out of use or reliance upon this specification or any information herein.
711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAny marks and brands contained herein are the property of their respective owners.
731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage ii
751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCONTENTS
881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnScope .................................................................................................................................................... 1
911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTerms and definitions ............................................................................................................................ 1
951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSymbols and abbreviated terms ............................................................................................................ 1
991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4
1011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNotation ................................................................................................................................................. 1
1031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.1
1041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction ................................................................................................................................ 1
1051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.2
1061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNamed Constants ...................................................................................................................... 2
1071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.3
1081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnData Type Aliases (typedefs) .................................................................................................... 3
1091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.4
1101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEnumerations............................................................................................................................. 3
1111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.5
1121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnInterface Type ............................................................................................................................ 4
1131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.6
1141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnArrays ........................................................................................................................................ 5
1151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.7
1161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStructure Definitions .................................................................................................................. 6
1171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.8
1181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnConditional Types ...................................................................................................................... 7
1191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9
1201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnions........................................................................................................................................ 8
1211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9.1
1221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction...................................................................................................................... 8
1231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9.2
1241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnion Definition ............................................................................................................... 8
1251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9.3
1261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnion Instance ................................................................................................................ 9
1271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9.4
1281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnion Selector Definition ............................................................................................... 10
1291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.10 Bit Field Definitions .................................................................................................................. 11
1301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.11 Parameter Limits ..................................................................................................................... 11
1311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.12 Enumeration Macro ................................................................................................................. 13
1321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.13 Size Checking .......................................................................................................................... 13
1331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.14 Data Direction .......................................................................................................................... 14
1341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.15 Structure Validations ............................................................................................................... 14
1351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.16 Name Prefix Convention .......................................................................................................... 14
1361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.17 Data Alignment ........................................................................................................................ 15
1371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.18 Parameter Unmarshaling Errors .............................................................................................. 15
1381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5
1401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBase Types ......................................................................................................................................... 17
1421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5.1
1431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPrimitive Types ........................................................................................................................ 17
1441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5.2
1451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMiscellaneous Types ............................................................................................................... 17
1461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6
1481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnConstants ............................................................................................................................................ 18
1501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.1
1511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SPEC (Specification Version Values) ............................................................................ 18
1521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.2
1531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_GENERATED ................................................................................................................. 18
1541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.3
1551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ID .......................................................................................................................... 19
1561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.4
1571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_CURVE ................................................................................................................. 22
1581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.5
1591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC (Command Codes) .................................................................................................. 22
1601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.5.1
1611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFormat ........................................................................................................................... 22
1621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.5.2
1631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription .................................................................................................................... 23
1641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.5.3
1651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC Listing ............................................................................................................ 24
1661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.6
1671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC (Response Codes) ................................................................................................... 28
1681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.6.1
1691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription .................................................................................................................... 28
1701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.6.2
1711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnResponse Code Formats .............................................................................................. 29
1721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.6.3
1731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC Values ........................................................................................................... 32
1741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.7
1751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CLOCK_ADJUST ........................................................................................................... 37
1761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.8
1771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO (EA Arithmetic Operands) ........................................................................................ 37
1781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.9
1791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST (Structure Tags) ....................................................................................................... 38
1801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.10 TPM_SU (Startup Type) .......................................................................................................... 40
1811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.11 TPM_SE (Session Type) ......................................................................................................... 40
1821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.12 TPM_CAP (Capabilities) .......................................................................................................... 41
1831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.13 TPM_PT (Property Tag) .......................................................................................................... 41
1841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.14 TPM_PT_PCR (PCR Property Tag) ........................................................................................ 47
1851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.15 TPM_PS (Platform Specific) .................................................................................................... 49
1861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
1881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
1891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
1911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
1921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage iii
1941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
1951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
1971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
1981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
1991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
2001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7
2011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
2021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHandles ............................................................................................................................................... 50
2031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.1
2041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction .............................................................................................................................. 50
2051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.2
2061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT (Handle Types) ......................................................................................................... 50
2071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.3
2081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPersistent Handle Sub-ranges................................................................................................. 51
2091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.4
2101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH (Permanent Handles)............................................................................................... 52
2111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.5
2121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HC (Handle Value Constants) ....................................................................................... 53
2131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
2141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8
2151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
2161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAttribute Structures .............................................................................................................................. 55
2171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.1
2181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription ............................................................................................................................... 55
2191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.2
2201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_ALGORITHM ............................................................................................................... 55
2211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3
2221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_OBJECT (Object Attributes) ........................................................................................ 55
2231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.1
2241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction.................................................................................................................... 55
2251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.2
2261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStructure Definition ........................................................................................................ 56
2271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3
2281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAttribute Descriptions .................................................................................................... 57
2291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.1
2301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction ............................................................................................................ 57
2311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.2
2321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[1] – fixedTPM ................................................................................................... 57
2331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.3
2341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[2] – stClear ....................................................................................................... 58
2351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.4
2361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[4] – fixedParent ................................................................................................ 58
2371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.5
2381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[5] – sensitiveDataOrigin ................................................................................... 58
2391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.6
2401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[6] – userWithAuth............................................................................................. 59
2411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.7
2421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[7] – adminWithPolicy........................................................................................ 59
2431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.8
2441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[10] – noDA ....................................................................................................... 59
2451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.9
2461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[11] – encryptedDuplication .............................................................................. 60
2471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.10
2481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[16] – restricted ................................................................................................. 60
2491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.11
2501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[17] – decrypt .................................................................................................... 61
2511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.12
2521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[18] – sign .......................................................................................................... 61
2531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.4
2541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_SESSION (Session Attributes) .................................................................................... 62
2551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.5
2561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_LOCALITY (Locality Attribute) ..................................................................................... 63
2571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.6
2581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_PERMANENT .............................................................................................................. 64
2591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.7
2601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_STARTUP_CLEAR ...................................................................................................... 65
2611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.8
2621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_MEMORY .................................................................................................................... 66
2631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9
2641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_CC (Command Code Attributes) ................................................................................. 67
2651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.1
2661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction.................................................................................................................... 67
2671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.2
2681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStructure Definition ........................................................................................................ 67
2691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3
2701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnField Descriptions .......................................................................................................... 67
2711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.1
2721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBits[15:0] – commandIndex ................................................................................... 67
2731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.2
2741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[22] – nv ............................................................................................................ 67
2751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.3
2761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[23] – extensive ................................................................................................. 67
2771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.4
2781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[24] – flushed ..................................................................................................... 68
2791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.5
2801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBits[27:25] – cHandles .......................................................................................... 68
2811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.6
2821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[28] – rHandle .................................................................................................... 68
2831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.7
2841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[29] – V .............................................................................................................. 69
2851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.8
2861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBits[31:30] – Res ................................................................................................... 69
2871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
2881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9
2891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
2901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnInterface Types .................................................................................................................................... 70
2911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.1
2921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction .............................................................................................................................. 70
2931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.2
2941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_YES_NO ....................................................................................................................... 70
2951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.3
2961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_DH_OBJECT ................................................................................................................. 70
2971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.4
2981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_DH_PERSISTENT ........................................................................................................ 71
2991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.5
3001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_DH_ENTITY .................................................................................................................. 71
3011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.6
3021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_DH_PCR ....................................................................................................................... 72
3031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.7
3041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_SH_AUTH_SESSION ................................................................................................... 72
3051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.8
3061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_SH_HMAC .................................................................................................................... 72
3071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.9
3081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_SH_POLICY .................................................................................................................. 72
3091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.10 TPMI_DH_CONTEXT .............................................................................................................. 73
3101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.11 TPMI_RH_HIERARCHY .......................................................................................................... 73
3111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.12 TPMI_RH_ENABLES .............................................................................................................. 73
3121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
3131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage iv
3141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
3151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
3161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
3171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
3181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
3191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
3201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
3211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
3221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
3231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.13
3241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.14
3251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.15
3261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.16
3271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.17
3281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.18
3291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.19
3301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.20
3311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.21
3321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.22
3331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.23
3341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.24
3351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.25
3361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.26
3371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.27
3381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.28
3391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.29
3401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.30
3411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10
3421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
3431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
3441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
3451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_HIERARCHY_AUTH .............................................................................................. 74
3461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_PLATFORM ........................................................................................................... 74
3471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_OWNER ................................................................................................................. 74
3481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_ENDORSEMENT ................................................................................................... 75
3491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_PROVISION ........................................................................................................... 75
3501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_CLEAR ................................................................................................................... 75
3511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_NV_AUTH .............................................................................................................. 76
3521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_LOCKOUT ............................................................................................................. 76
3531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_NV_INDEX ............................................................................................................. 76
3541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH ................................................................................................................... 77
3551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_ASYM (Asymmetric Algorithms) .......................................................................... 77
3561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_SYM (Symmetric Algorithms) .............................................................................. 78
3571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_SYM_OBJECT ..................................................................................................... 78
3581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_SYM_MODE ........................................................................................................ 79
3591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_KDF (Key and Mask Generation Functions) ........................................................ 79
3601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_SIG_SCHEME ..................................................................................................... 80
3611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ECC_KEY_EXCHANGE ............................................................................................... 80
3621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ST_COMMAND_TAG ................................................................................................... 80
3631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
3641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStructure Definitions ............................................................................................................................ 81
3651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.1 TPMS_ALGORITHM_DESCRIPTION .................................................................................... 81
3661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.2 Hash/Digest Structures ............................................................................................................ 81
3671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.2.1
3681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_HA (Hash) ......................................................................................................... 81
3691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.2.2
3701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_HA...................................................................................................................... 82
3711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3 Sized Buffers ........................................................................................................................... 82
3721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.1
3731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction.................................................................................................................... 82
3741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.2
3751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST ........................................................................................................... 83
3761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.3
3771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DATA ............................................................................................................... 83
3781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.4
3791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NONCE ........................................................................................................... 83
3801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.5
3811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_AUTH .............................................................................................................. 83
3821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.6
3831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_OPERAND ...................................................................................................... 84
3841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.7
3851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_EVENT ............................................................................................................ 84
3861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.8
3871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_MAX_BUFFER ................................................................................................ 84
3881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.9
3891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_MAX_NV_BUFFER ......................................................................................... 84
3901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.10 TPM2B_TIMEOUT ........................................................................................................ 85
3911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.11 TPM2B_IV ..................................................................................................................... 85
3921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.4 Names ..................................................................................................................................... 85
3931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.4.1
3941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction.................................................................................................................... 85
3951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.4.2
3961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_NAME ................................................................................................................ 85
3971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.4.3
3981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NAME .............................................................................................................. 86
3991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.5 PCR Structures ........................................................................................................................ 86
4001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.5.1
4011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_PCR_SELECT ................................................................................................... 86
4021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.5.2
4031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_PCR_SELECTION ............................................................................................ 87
4041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6 Tickets ..................................................................................................................................... 87
4051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.1
4061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction.................................................................................................................... 87
4071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.2
4081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA NULL Ticket ............................................................................................................... 88
4091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.3
4101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_TK_CREATION ................................................................................................. 89
4111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.4
4121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_TK_VERIFIED ................................................................................................... 90
4131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.5
4141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_TK_AUTH .......................................................................................................... 91
4151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.6
4161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_TK_HASHCHECK ............................................................................................. 92
4171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.7 Property Structures .................................................................................................................. 92
4181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.7.1
4191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ALG_PROPERTY ............................................................................................. 92
4201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.7.2
4211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_TAGGED_PROPERTY ..................................................................................... 92
4221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.7.3
4231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_TAGGED_PCR_SELECT ................................................................................. 93
4241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8 Lists ......................................................................................................................................... 93
4251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
4261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
4271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
4281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
4291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
4301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
4311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
4321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage v
4331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
4341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
4351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
4361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
4371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
4381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
4391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.1
4401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_CC...................................................................................................................... 93
4411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.2
4421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_CCA ................................................................................................................... 94
4431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.3
4441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_ALG.................................................................................................................... 94
4451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.4
4461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_HANDLE ............................................................................................................ 94
4471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.5
4481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_DIGEST ............................................................................................................. 95
4491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.6
4501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_DIGEST_VALUES ............................................................................................. 95
4511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.7
4521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST_VALUES........................................................................................... 95
4531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.8
4541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_PCR_SELECTION............................................................................................. 96
4551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.9
4561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_ALG_PROPERTY.............................................................................................. 96
4571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.10 TPML_TAGGED_TPM_PROPERTY ............................................................................ 96
4581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.11 TPML_TAGGED_PCR_PROPERTY ............................................................................ 97
4591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.12 TPML_ECC_CURVE .................................................................................................... 97
4601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.9 Capabilities Structures ............................................................................................................. 97
4611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.9.1
4621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_CAPABILITIES .................................................................................................. 97
4631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.9.2
4641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CAPABILITY_DATA .......................................................................................... 98
4651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10 Clock/Counter Structures ........................................................................................................ 98
4661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.1 TPMS_CLOCK_INFO ................................................................................................... 98
4671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.2 Clock ............................................................................................................................. 98
4681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.3 ResetCount ................................................................................................................... 98
4691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.4 RestartCount ................................................................................................................. 99
4701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.5 Safe ............................................................................................................................... 99
4711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.6 TPMS_TIME_INFO ....................................................................................................... 99
4721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11 TPM Attestation Structures .................................................................................................... 100
4731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.1 Introduction.................................................................................................................. 100
4741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.2 TPMS_TIME_ATTEST_INFO ..................................................................................... 100
4751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.3 TPMS_CERTIFY_INFO .............................................................................................. 100
4761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.1 TPMS_QUOTE_INFO ................................................................................................. 100
4771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.2 TPMS_COMMAND_AUDIT_INFO .............................................................................. 101
4781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.3 TPMS_SESSION_AUDIT_INFO ................................................................................. 101
4791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.4 TPMS_CREATION_INFO ........................................................................................... 101
4801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.5 TPMS_NV_CERTIFY_INFO ....................................................................................... 101
4811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.6 TPMI_ST_ATTEST ..................................................................................................... 102
4821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.7 TPMU_ATTEST .......................................................................................................... 102
4831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.8 TPMS_ATTEST .......................................................................................................... 103
4841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.9 TPM2B_ATTEST ........................................................................................................ 103
4851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.12 Authorization Structures ........................................................................................................ 104
4861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.12.1 TPMS_AUTH_COMMAND ......................................................................................... 104
4871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.12.2 TPMS_AUTH_RESPONSE ........................................................................................ 104
4881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11
4891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
4901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAlgorithm Parameters and Structures ............................................................................................... 105
4911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1 Symmetric .............................................................................................................................. 105
4921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.1
4931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction.................................................................................................................. 105
4941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.2
4951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_AES_KEY_BITS ............................................................................................... 105
4961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.3
4971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_SM4_KEY_BITS ............................................................................................... 105
4981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.4
4991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SYM_KEY_BITS ............................................................................................. 106
5001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.5
5011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SYM_MODE ................................................................................................... 106
5021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.6
5031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SYM_DETAILS ............................................................................................... 107
5041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.7
5051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SYM_DEF ....................................................................................................... 107
5061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.8
5071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SYM_DEF_OBJECT ....................................................................................... 107
5081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.9
5091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_SYM_KEY ..................................................................................................... 108
5101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.10 TPMS_SYMCIPHER_PARMS .................................................................................... 108
5111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.11 TPM2B_SENSITIVE_DATA ........................................................................................ 108
5121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.12 TPMS_SENSITIVE_CREATE ..................................................................................... 109
5131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.13 TPM2B_SENSITIVE_CREATE ................................................................................... 110
5141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.14 TPMS_SCHEME_SIGHASH....................................................................................... 110
5151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.15 TPMI_ALG_HASH_SCHEME ..................................................................................... 110
5161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
5171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage vi
5181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
5191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
5201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
5211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
5221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
5231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
5241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
5251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
5261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
5271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
5281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
5291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
5301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.16 HMAC_SIG_SCHEME ................................................................................................ 110
5311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.17 TPMS_SCHEME_XOR ............................................................................................... 111
5321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.18 TPMU_SCHEME_HMAC ............................................................................................ 111
5331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.19 TPMT_KEYEDHASH_SCHEME ................................................................................. 111
5341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2 Asymmetric ............................................................................................................................ 112
5351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1
5361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSigning Schemes ........................................................................................................ 112
5371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.1
5381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction .......................................................................................................... 112
5391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.2
5401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA_SIG_SCHEMES ......................................................................................... 112
5411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.3
5421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC_SIG_SCHEMES ......................................................................................... 112
5431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.4
5441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_ECDAA................................................................................... 112
5451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.5
5461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SIG_SCHEME......................................................................................... 113
5471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.6
5481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SIG_SCHEME ......................................................................................... 113
5491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.2
5501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncryption Schemes ................................................................................................... 114
5511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.2.1
5521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction .......................................................................................................... 114
5531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.2.2
5541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_OAEP ..................................................................................... 114
5551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.2.3
5561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_ECDH ..................................................................................... 114
5571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3
5581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnKey Derivation Schemes ............................................................................................. 114
5591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.1
5601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction .......................................................................................................... 114
5611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.2
5621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_MGF1 ..................................................................................... 114
5631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.3
5641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_KDF1_SP800_56a ................................................................. 114
5651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.4
5661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_KDF2 ...................................................................................... 115
5671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.5
5681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_KDF1_SP800_108 ................................................................. 115
5691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.6
5701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_KDF_SCHEME........................................................................................ 115
5711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.7
5721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_KDF_SCHEME ........................................................................................ 115
5731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.8
5741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_ASYM_SCHEME ............................................................................. 116
5751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.9
5761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_ASYM_SCHEME..................................................................................... 116
5771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.10 TPMT_ASYM_SCHEME ..................................................................................... 117
5781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4
5791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA ............................................................................................................................. 117
5801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.1
5811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_RSA_SCHEME ................................................................................ 117
5821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.2
5831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_RSA_SCHEME ........................................................................................ 117
5841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.3
5851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_RSA_DECRYPT .............................................................................. 118
5861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.4
5871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_RSA_DECRYPT ...................................................................................... 118
5881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.5
5891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PUBLIC_KEY_RSA ............................................................................... 118
5901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.6
5911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RSA_KEY_BITS ....................................................................................... 118
5921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.7
5931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE_KEY_RSA ............................................................................ 119
5941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5
5951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC ............................................................................................................................. 120
5961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.1
5971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER .............................................................................. 120
5981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.2
5991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ECC_POINT ............................................................................................ 120
6001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.3
6011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_POINT .......................................................................................... 120
6021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.4
6031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_ECC_SCHEME ............................................................................... 121
6041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.5
6051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ECC_CURVE ............................................................................................ 121
6061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.6
6071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_ECC_SCHEME........................................................................................ 121
6081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.7
6091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ALGORITHM_DETAIL_ECC ................................................................... 122
6101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3 Signatures.............................................................................................................................. 122
6111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.1
6121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SIGNATURE_RSASSA .................................................................................. 122
6131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.2
6141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SIGNATURE_RSAPSS .................................................................................. 122
6151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.3
6161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SIGNATURE_ECDSA ..................................................................................... 123
6171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.4
6181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SIGNATURE ................................................................................................... 123
6191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.5
6201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SIGNATURE ................................................................................................... 124
6211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.4 Key/Secret Exchange ............................................................................................................ 124
6221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.4.1
6231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction.................................................................................................................. 124
6241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.4.2
6251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_ENCRYPTED_SECRET ................................................................................. 124
6261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.4.3
6271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ENCRYPTED_SECRET ............................................................................... 125
6281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12
6291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
6301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnKey/Object Complex.......................................................................................................................... 126
6311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
6321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
6331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
6341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
6351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
6361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
6371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
6381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage vii
6391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
6401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
6411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
6421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
6431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
6441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
6451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.1 Introduction ............................................................................................................................ 126
6461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2 Public Area Structures ........................................................................................................... 126
6471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.1
6481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription .................................................................................................................. 126
6491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.2
6501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_PUBLIC ................................................................................................... 126
6511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3
6521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType-Specific Parameters ........................................................................................... 126
6531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.1
6541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription .......................................................................................................... 126
6551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.2
6561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_PUBLIC_ID .............................................................................................. 127
6571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.3
6581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_KEYEDHASH_PARMS ........................................................................... 127
6591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.4
6601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ASYM_PARMS ....................................................................................... 127
6611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.5
6621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_RSA_PARMS .......................................................................................... 128
6631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.6
6641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ECC_PARMS .......................................................................................... 129
6651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.7
6661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_PUBLIC_PARMS .................................................................................... 129
6671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.8
6681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_PUBLIC_PARMS ..................................................................................... 130
6691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.4
6701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_PUBLIC ........................................................................................................... 130
6711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.5
6721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PUBLIC ......................................................................................................... 131
6731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3 Private Area Structures ......................................................................................................... 131
6741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.1
6751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction.................................................................................................................. 131
6761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2
6771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSensitive Data Structures ............................................................................................ 131
6781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2.1
6791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction .......................................................................................................... 131
6801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2.2
6811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE_VENDOR_SPECIFIC ........................................................... 131
6821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2.3
6831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SENSITIVE_COMPOSITE ...................................................................... 132
6841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2.4
6851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SENSITIVE .............................................................................................. 132
6861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.3
6871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_SENSITIVE ................................................................................................... 132
6881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.4
6891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncryption ................................................................................................................... 133
6901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.5
6911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntegrity........................................................................................................................ 133
6921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.6
6931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn_PRIVATE ................................................................................................................... 133
6941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.7
6951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE ....................................................................................................... 133
6961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.4 Identity Object ........................................................................................................................ 134
6971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.4.1
6981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription .................................................................................................................. 134
6991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.4.2
7001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn_ID_OBJECT .............................................................................................................. 134
7011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.4.3
7021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ID_OBJECT .................................................................................................. 134
7031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13
7041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV Storage Structures ...................................................................................................................... 135
7061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13.1 TPM_NV_INDEX ................................................................................................................... 135
7071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13.2 TPMA_NV (NV Index Attributes) ........................................................................................... 136
7081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13.3 TPMS_NV_PUBLIC ............................................................................................................... 139
7091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13.4 TPM2B_NV_PUBLIC ............................................................................................................. 139
7101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14
7121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContext Data ..................................................................................................................................... 140
7141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.1 Introduction ............................................................................................................................ 140
7151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.2 TPM2B_CONTEXT_SENSITIVE........................................................................................... 140
7161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.3 TPMS_CONTEXT_DATA ...................................................................................................... 140
7171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.4 TPM2B_CONTEXT_DATA .................................................................................................... 140
7181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.5 TPMS_CONTEXT ................................................................................................................. 141
7191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.6 Parameters of TPMS_CONTEXT .......................................................................................... 142
7201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.6.1
7211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsequence ..................................................................................................................... 142
7221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.6.2
7231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsavedHandle ............................................................................................................... 142
7241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.6.3
7251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhierarchy...................................................................................................................... 143
7261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.7 Context Protection ................................................................................................................. 143
7271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.7.1
7281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContext Integrity .......................................................................................................... 143
7291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.7.2
7301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContext Confidentiality ................................................................................................ 143
7311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15
7331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation Data .................................................................................................................................... 144
7351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15.1 TPMS_CREATION_DATA .................................................................................................... 144
7361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15.2 TPM2B_CREATION_DATA .................................................................................................. 144
7371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage viii
7391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
7401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
7421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
7431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
7451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
7461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
7481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
7501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAnnex A (informative) Algorithm Constants ............................................................................................. 145
7521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.1
7531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction ............................................................................................................................ 145
7541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2
7551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAllowed Hash Algorithms....................................................................................................... 145
7561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.1
7571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA1 ........................................................................................................................... 145
7581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.2
7591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA256 ....................................................................................................................... 145
7601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.3
7611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA384 ....................................................................................................................... 145
7621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.4
7631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA512 ....................................................................................................................... 146
7641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.5
7651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM3_256 ..................................................................................................................... 146
7661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.3
7671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnArchitectural Limits ................................................................................................................ 146
7681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAnnex B (informative) Implementation Definitions ................................................................................... 147
7691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.1
7701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction ............................................................................................................................ 147
7711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.2
7721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLogic Values .......................................................................................................................... 147
7731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.3
7741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnProcessor Values .................................................................................................................. 147
7751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.4
7761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplemented Algorithms ........................................................................................................ 148
7771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.5
7781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplemented Commands ...................................................................................................... 148
7791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6
7801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAlgorithm Constants .............................................................................................................. 151
7811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.1
7821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA ............................................................................................................................. 152
7831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.2
7841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC ............................................................................................................................. 152
7851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.3
7861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAES ............................................................................................................................. 152
7871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.4
7881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM4 ............................................................................................................................. 152
7891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.5
7901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSymmetric ................................................................................................................... 153
7911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.7
7921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplementation Specific Values ............................................................................................ 154
7931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
7951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
7961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
7971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
7981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
7991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage ix
8011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
8021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
8041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
8061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTables
8081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 1 — Name Prefix Convention ........................................................................................................... 15
8091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 2 — Unmarshaling Errors ................................................................................................................. 16
8101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 3 — Definition of Base Types ........................................................................................................... 17
8111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 4 — Definition of Types for Documentation Clarity ........................................................................... 17
8121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 5 — Definition of (UINT32) TPM_SPEC Constants <> ..................................................................... 18
8131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 6 — Definition of (UINT32) TPM_GENERATED Constants <O> ..................................................... 18
8141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 7 — Definition of (UINT16) TPM_ALG_ID Constants <IN/OUT, S> ................................................. 19
8151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 8 — Definition of (UINT16) {ECC} TPM_ECC_CURVE Constants <IN/OUT, S> ............................ 22
8161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 9 — TPM Command Format Fields Description ............................................................................... 22
8171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 10 — Legend for Command Code Tables ........................................................................................ 23
8181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 11 — Definition of (UINT32) TPM_CC Constants (Numeric Order) <IN/OUT, S> ........................... 24
8191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 12 — Format-Zero Response Codes ................................................................................................ 30
8201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 13 — Format-One Response Codes ................................................................................................ 31
8211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 14 — Response Code Groupings ..................................................................................................... 31
8221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 15 — Definition of (UINT32) TPM_RC Constants (Actions) <OUT> ................................................ 32
8231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 16 — Definition of (INT8) TPM_CLOCK_ADJUST Constants <IN> ................................................. 37
8241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 17 — Definition of (UINT16) TPM_EO Constants <IN/OUT> ........................................................... 37
8251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 18 — Definition of (UINT16) TPM_ST Constants <IN/OUT, S> ....................................................... 38
8261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 19 — Definition of (UINT16) TPM_SU Constants <IN> .................................................................... 40
8271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 20 — Definition of (UINT8) TPM_SE Constants <IN> ...................................................................... 40
8281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 21 — Definition of (UINT32) TPM_CAP Constants .......................................................................... 41
8291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 22 — Definition of (UINT32) TPM_PT Constants <IN/OUT, S> ....................................................... 41
8301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 23 — Definition of (UINT32) TPM_PT_PCR Constants <IN/OUT, S> ............................................. 47
8311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 24 — Definition of (UINT32) TPM_PS Constants <OUT> ................................................................ 49
8321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 25 — Definition of Types for Handles ............................................................................................... 50
8331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 26 — Definition of (UINT8) TPM_HT Constants <S> ....................................................................... 50
8341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 27 — Definition of (UINT32) TPM_RH Constants <IN, S> ............................................................... 52
8351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 28 — Definition of (TPM_HANDLE) TPM_HC Constants <IN, S> ................................................... 54
8361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 29 — Definition of (UINT32) TPMA_ALGORITHM Bits .................................................................... 55
8371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 30 — Definition of (UINT32) TPMA_OBJECT Bits ........................................................................... 56
8381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 31 — Definition of (UINT8) TPMA_SESSION Bits <IN/OUT> .......................................................... 62
8391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 32 — Definition of (UINT8) TPMA_LOCALITY Bits <IN/OUT> ........................................................ 64
8401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 33 — Definition of (UINT32) TPMA_PERMANENT Bits <OUT> ...................................................... 64
8411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 34 — Definition of (UINT32) TPMA_STARTUP_CLEAR Bits <OUT> .............................................. 65
8421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 35 — Definition of (UINT32) TPMA_MEMORY Bits <Out> .............................................................. 66
8431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 36 — Definition of (TPM_CC) TPMA_CC Bits <OUT> ..................................................................... 67
8441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 37 — Definition of (BYTE) TPMI_YES_NO Type ............................................................................. 70
8451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage x
8471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
8481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
8501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
8511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
8531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
8541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
8561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
8581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 38 — Definition of (TPM_HANDLE) TPMI_DH_OBJECT Type........................................................ 70
8601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 39 — Definition of (TPM_HANDLE) TPMI_DH_PERSISTENT Type ............................................... 71
8611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 40 — Definition of (TPM_HANDLE) TPMI_DH_ENTITY Type <IN> ................................................ 71
8621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 41 — Definition of (TPM_HANDLE) TPMI_DH_PCR Type <IN> ..................................................... 72
8631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 42 — Definition of (TPM_HANDLE) TPMI_SH_AUTH_SESSION Type <IN/OUT> ........................ 72
8641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 43 — Definition of (TPM_HANDLE) TPMI_SH_HMAC Type <IN/OUT> .......................................... 72
8651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 44 — Definition of (TPM_HANDLE) TPMI_SH_POLICY Type <IN/OUT> ....................................... 72
8661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 45 — Definition of (TPM_HANDLE) TPMI_DH_CONTEXT Type .................................................... 73
8671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 46 — Definition of (TPM_HANDLE) TPMI_RH_HIERARCHY Type ................................................ 73
8681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 47 — Definition of (TPM_HANDLE) TPMI_RH_ENABLES Type ..................................................... 73
8691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 48 — Definition of (TPM_HANDLE) TPMI_RH_HIERARCHY_AUTH Type <IN> ............................ 74
8701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 49 — Definition of (TPM_HANDLE) TPMI_RH_PLATFORM Type <IN> ......................................... 74
8711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 50 — Definition of (TPM_HANDLE) TPMI_RH_OWNER Type <IN> ............................................... 74
8721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 51 — Definition of (TPM_HANDLE) TPMI_RH_ENDORSEMENT Type <IN> ................................. 75
8731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 52 — Definition of (TPM_HANDLE) TPMI_RH_PROVISION Type <IN> ......................................... 75
8741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 53 — Definition of (TPM_HANDLE) TPMI_RH_CLEAR Type <IN> ................................................. 75
8751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 54 — Definition of (TPM_HANDLE) TPMI_RH_NV_AUTH Type <IN> ............................................ 76
8761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 55 — Definition of (TPM_HANDLE) TPMI_RH_LOCKOUT Type <IN> ........................................... 76
8771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 56 — Definition of (TPM_HANDLE) TPMI_RH_NV_INDEX Type <IN/OUT> .................................. 76
8781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 57 — Definition of (TPM_ALG_ID) TPMI_ALG_HASH Type............................................................ 77
8791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 58 — Definition of (TPM_ALG_ID) TPMI_ALG_ASYM Type ........................................................... 77
8801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 59 — Definition of (TPM_ALG_ID) TPMI_ALG_SYM Type .............................................................. 78
8811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 60 — Definition of (TPM_ALG_ID) TPMI_ALG_SYM_OBJECT Type ............................................. 78
8821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 61 — Definition of (TPM_ALG_ID) TPMI_ALG_SYM_MODE Type ................................................. 79
8831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 62 — Definition of (TPM_ALG_ID) TPMI_ALG_KDF Type .............................................................. 79
8841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 63 — Definition of (TPM_ALG_ID) TPMI_ALG_SIG_SCHEME Type .............................................. 80
8851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 64 — Definition of (TPM_ALG_ID) TPMI_ECC_KEY_EXCHANGE Type ........................................ 80
8861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 65 — Definition of (TPM_ST) TPMI_ST_COMMAND_TAG Type .................................................... 80
8871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 66 — Definition of TPMS_ALGORITHM_DESCRIPTION Structure <OUT> .................................... 81
8881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 67 — Definition of TPMU_HA Union <IN/OUT, S> ........................................................................... 81
8891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 68 — Definition of TPMT_HA Structure <IN/OUT> .......................................................................... 82
8901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 69 — Definition of TPM2B_DIGEST Structure ................................................................................. 83
8911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 70 — Definition of TPM2B_DATA Structure ..................................................................................... 83
8921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 71 — Definition of Types for TPM2B_NONCE ................................................................................. 83
8931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 72 — Definition of Types for TPM2B_AUTH .................................................................................... 83
8941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 73 — Definition of Types for TPM2B_OPERAND ............................................................................ 84
8951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 74 — Definition of TPM2B_EVENT Structure ................................................................................... 84
8961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 75 — Definition of TPM2B_MAX_BUFFER Structure ...................................................................... 84
8971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
8981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
8991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
9001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
9021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
9031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage xi
9051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
9061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
9081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
9101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 76 — Definition of TPM2B_MAX_NV_BUFFER Structure ............................................................... 84
9121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 77 — Definition of TPM2B_TIMEOUT Structure <IN/OUT> ............................................................. 85
9131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 78 — Definition of TPM2B_IV Structure <IN/OUT> .......................................................................... 85
9141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 79 — Definition of TPMU_NAME Union <> ...................................................................................... 85
9151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 80 — Definition of TPM2B_NAME Structure .................................................................................... 86
9161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 81 — Definition of TPMS_PCR_SELECT Structure ......................................................................... 87
9171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 82 — Definition of TPMS_PCR_SELECTION Structure ................................................................... 87
9181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 83 — Values for proof Used in Tickets ............................................................................................. 88
9191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 84 — General Format of a Ticket ...................................................................................................... 88
9201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 85 — Definition of TPMT_TK_CREATION Structure ........................................................................ 89
9211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 86 — Definition of TPMT_TK_VERIFIED Structure .......................................................................... 90
9221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 87 — Definition of TPMT_TK_AUTH Structure ................................................................................ 91
9231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 88 — Definition of TPMT_TK_HASHCHECK Structure .................................................................... 92
9241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 89 — Definition of TPMS_ALG_PROPERTY Structure <OUT> ....................................................... 92
9251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 90 — Definition of TPMS_TAGGED_PROPERTY Structure <OUT> ............................................... 92
9261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 91 — Definition of TPMS_TAGGED_PCR_SELECT Structure <OUT> ........................................... 93
9271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 92 — Definition of TPML_CC Structure ............................................................................................ 93
9281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 93 — Definition of TPML_CCA Structure <OUT> ............................................................................. 94
9291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 94 — Definition of TPML_ALG Structure .......................................................................................... 94
9301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 95 — Definition of TPML_HANDLE Structure <OUT>...................................................................... 94
9311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 96 — Definition of TPML_DIGEST Structure .................................................................................... 95
9321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 97 — Definition of TPML_DIGEST_VALUES Structure ................................................................... 95
9331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 98 — Definition of TPM2B_DIGEST_VALUES Structure ................................................................. 95
9341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 99 — Definition of TPML_PCR_SELECTION Structure ................................................................... 96
9351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 100 — Definition of TPML_ALG_PROPERTY Structure <OUT> ..................................................... 96
9361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 101 — Definition of TPML_TAGGED_TPM_PROPERTY Structure <OUT> ................................... 96
9371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 102 — Definition of TPML_TAGGED_PCR_PROPERTY Structure <OUT> ................................... 97
9381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 103 — Definition of {ECC} TPML_ECC_CURVE Structure <OUT> ................................................. 97
9391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 104 — Definition of TPMU_CAPABILITIES Union <OUT>............................................................... 97
9401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 105 — Definition of TPMS_CAPABILITY_DATA Structure <OUT> ................................................. 98
9411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 106 — Definition of TPMS_CLOCK_INFO Structure ........................................................................ 98
9421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 107 — Definition of TPMS_TIME_INFO Structure ........................................................................... 99
9431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 108 — Definition of TPMS_TIME_ATTEST_INFO Structure <OUT> ............................................. 100
9441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 109 — Definition of TPMS_CERTIFY_INFO Structure <OUT> ...................................................... 100
9451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 110 — Definition of TPMS_QUOTE_INFO Structure <OUT> ........................................................ 100
9461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 111 — Definition of TPMS_COMMAND_AUDIT_INFO Structure <OUT> ..................................... 101
9471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 112 — Definition of TPMS_SESSION_AUDIT_INFO Structure <OUT> ........................................ 101
9481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 113 — Definition of TPMS_CREATION_INFO Structure <OUT> .................................................. 101
9491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 114 — Definition of TPMS_NV_CERTIFY_INFO Structure <OUT> ............................................... 101
9501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage xii
9511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
9521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
9541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
9551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
9571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
9581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
9601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
9621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
9631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 115 — Definition of (TPM_ST) TPMI_ST_ATTEST Type <OUT> .................................................. 102
9641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 116 — Definition of TPMU_ATTEST Union <OUT> ....................................................................... 102
9651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 117 — Definition of TPMS_ATTEST Structure <OUT> .................................................................. 103
9661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 118 — Definition of TPM2B_ATTEST Structure <OUT> ................................................................ 103
9671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 119 — Definition of TPMS_AUTH_COMMAND Structure <IN> ..................................................... 104
9681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 120 — Definition of TPMS_AUTH_RESPONSE Structure <OUT> ................................................ 104
9691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 121 — Definition of {AES} (TPM_KEY_BITS) TPMI_AES_KEY_BITS Type ................................. 105
9701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 122 — Definition of {SM4} (TPM_KEY_BITS) TPMI_SM4_KEY_BITS Type ................................. 105
9711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 123 — Definition of TPMU_SYM_KEY_BITS Union ....................................................................... 106
9721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 124 — Definition of TPMU_SYM_MODE Union ............................................................................. 106
9731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 125 — xDefinition of TPMU_SYM_DETAILS Union ....................................................................... 107
9741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 126 — Definition of TPMT_SYM_DEF Structure ............................................................................ 107
9751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 127 — Definition of TPMT_SYM_DEF_OBJECT Structure ............................................................ 107
9761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 128 — Definition of TPM2B_SYM_KEY Structure .......................................................................... 108
9771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 129 — Definition of TPMS_SYMCIPHER_PARMS Structure ........................................................ 108
9781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 130 — Definition of TPM2B_SENSITIVE_DATA Structure ............................................................ 108
9791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 131 — Definition of TPMS_SENSITIVE_CREATE Structure <IN> ................................................ 109
9801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 132 — Definition of TPM2B_SENSITIVE_CREATE Structure <IN, S> .......................................... 110
9811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 133 — Definition of TPMS_SCHEME_SIGHASH Structure ........................................................... 110
9821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 134 — Definition of (TPM_ALG_ID) TPMI_ALG_KEYEDHASH_SCHEME Type .......................... 110
9831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 135 — Definition of Types for HMAC_SIG_SCHEME .................................................................... 110
9841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 136 — Definition of TPMS_SCHEME_XOR Structure ................................................................... 111
9851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 137 — Definition of TPMU_SCHEME_KEYEDHASH Union <IN/OUT, S> .................................... 111
9861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 138 — Definition of TPMT_KEYEDHASH_SCHEME Structure ..................................................... 111
9871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 139 — Definition of {RSA} Types for RSA_SIG_SCHEMES .......................................................... 112
9881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 140 — Definition of {ECC} Types for ECC_SIG_SCHEMES.......................................................... 112
9891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 141 — Definition of {ECC} TPMS_SCHEME_ECDAA Structure .................................................... 112
9901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 142 — Definition of TPMU_SIG_SCHEME Union <IN/OUT, S> .................................................... 113
9911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 143 — Definition of TPMT_SIG_SCHEME Structure ..................................................................... 113
9921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 144 — Definition of {RSA} TPMS_SCHEME_OAEP Structure ...................................................... 114
9931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 145 — Definition of {ECC} TPMS_SCHEME_ECDH Structure ...................................................... 114
9941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 146 — Definition of TPMS_SCHEME_MGF1 Structure ................................................................. 114
9951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 147 — Definition of {ECC} TPMS_SCHEME_KDF1_SP800_56a Structure .................................. 114
9961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 148 — Definition of TPMS_SCHEME_KDF2 Structure .................................................................. 115
9971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 149 — Definition of TPMS_SCHEME_KDF1_SP800_108 Structure ............................................. 115
9981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 150 — Definition of TPMU_KDF_SCHEME Union <IN/OUT, S> ................................................... 115
9991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 151 — Definition of TPMT_KDF_SCHEME Structure .................................................................... 115
10001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 152 — Definition of (TPM_ALG_ID) TPMI_ALG_ASYM_SCHEME Type <> ................................. 116
10011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
10031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
10041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
10061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
10071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage xiii
10091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
10101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
10121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
10141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 153 — Definition of TPMU_ASYM_SCHEME Union ...................................................................... 116
10161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 154 — Definition of TPMT_ASYM_SCHEME Structure <> ............................................................ 117
10171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 155 — Definition of (TPM_ALG_ID) {RSA} TPMI_ALG_RSA_SCHEME Type .............................. 117
10181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 156 — Definition of {RSA} TPMT_RSA_SCHEME Structure ......................................................... 117
10191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 157 — Definition of (TPM_ALG_ID) {RSA} TPMI_ALG_RSA_DECRYPT Type ............................ 118
10201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 158 — Definition of {RSA} TPMT_RSA_DECRYPT Structure ....................................................... 118
10211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 159 — Definition of {RSA} TPM2B_PUBLIC_KEY_RSA Structure ................................................ 118
10221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 160 — Definition of {RSA} (TPM_KEY_BITS) TPMI_RSA_KEY_BITS Type ................................. 119
10231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 161 — Definition of {RSA} TPM2B_PRIVATE_KEY_RSA Structure .............................................. 119
10241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 162 — Definition of {ECC} TPM2B_ECC_PARAMETER Structure ............................................... 120
10251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 163 — Definition of {ECC} TPMS_ECC_POINT Structure ............................................................. 120
10261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 164 — Definition of {ECC} TPM2B_ECC_POINT Structure ........................................................... 120
10271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 165 — Definition of (TPM_ALG_ID) {ECC} TPMI_ALG_ECC_SCHEME Type ............................. 121
10281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 166 — Definition of {ECC} (TPM_ECC_CURVE) TPMI_ECC_CURVE Type ................................ 121
10291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 167 — Definition of (TPMT_SIG_SCHEME) {ECC} TPMT_ECC_SCHEME Structure .................. 121
10301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 168 — Definition of {ECC} TPMS_ALGORITHM_DETAIL_ECC Structure <OUT> ....................... 122
10311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 169 — Definition of {RSA} TPMS_SIGNATURE_RSASSA Structure ............................................ 122
10321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 170 — Definition of {RSA} TPMS_SIGNATURE_RSAPSS Structure ............................................ 123
10331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 171 — Definition of {ECC} TPMS_SIGNATURE_ECDSA Structure .............................................. 123
10341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 172 — Definition of TPMU_SIGNATURE Union <IN/OUT, S> ....................................................... 123
10351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 173 — Definition of TPMT_SIGNATURE Structure ........................................................................ 124
10361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 174 — Definition of TPMU_ENCRYPTED_SECRET Union <S> ................................................... 124
10371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 175 — Definition of TPM2B_ENCRYPTED_SECRET Structure .................................................... 125
10381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 176 — Definition of (TPM_ALG_ID) TPMI_ALG_PUBLIC Type .................................................... 126
10391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 177 — Definition of TPMU_PUBLIC_ID Union <IN/OUT, S> ......................................................... 127
10401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 178 — Definition of TPMS_KEYEDHASH_PARMS Structure........................................................ 127
10411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 179 — Definition of TPMS_ASYM_PARMS Structure <> .............................................................. 128
10421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 180 — Definition of {RSA} TPMS_RSA_PARMS Structure ............................................................ 128
10431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 181 — Definition of {ECC} TPMS_ECC_PARMS Structure ........................................................... 129
10441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 182 — Definition of TPMU_PUBLIC_PARMS Union <IN/OUT, S> ................................................ 129
10451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 183 — Definition of TPMT_PUBLIC_PARMS Structure ................................................................. 130
10461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 184 — Definition of TPMT_PUBLIC Structure ................................................................................ 130
10471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 185 — Definition of TPM2B_PUBLIC Structure .............................................................................. 131
10481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 186 — Definition of {RSA} TPM2B_PRIVATE_VENDOR_SPECIFIC Structure<> ........................ 131
10491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 187 — Definition of TPMU_SENSITIVE_COMPOSITE Union <IN/OUT, S> ................................. 132
10501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 188 — Definition of TPMT_SENSITIVE Structure .......................................................................... 132
10511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 189 — Definition of TPM2B_SENSITIVE Structure <IN/OUT> ...................................................... 132
10521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 190 — Definition of _PRIVATE Structure <> .................................................................................. 133
10531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 191 — Definition of TPM2B_PRIVATE Structure <IN/OUT, S> ..................................................... 133
10541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage xiv
10551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
10561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
10581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
10591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
10611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
10621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
10641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
10661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 192 — Definition of _ID_OBJECT Structure <> .............................................................................. 134
10681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 193 — Definition of TPM2B_ID_OBJECT Structure <IN/OUT> ..................................................... 134
10691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 194 — Definition of (UINT32) TPM_NV_INDEX Bits <> ................................................................. 135
10701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 195 — Options for space Field of TPM_NV_INDEX ....................................................................... 136
10711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 196 — Definition of (UINT32) TPMA_NV Bits ................................................................................ 137
10721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 197 — Definition of TPMS_NV_PUBLIC Structure ......................................................................... 139
10731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 198 — Definition of TPM2B_NV_PUBLIC Structure ....................................................................... 139
10741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 199 — Definition of TPM2B_CONTEXT_SENSITIVE Structure <IN/OUT> ................................... 140
10751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 200 — Definition of TPMS_CONTEXT_DATA Structure <IN/OUT, S> .......................................... 140
10761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 201 — Definition of TPM2B_CONTEXT_DATA Structure <IN/OUT> ............................................ 140
10771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 202 — Definition of TPMS_CONTEXT Structure ........................................................................... 141
10781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 203 — Context Handle Values ........................................................................................................ 142
10791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 204 — Definition of TPMS_CREATION_DATA Structure <OUT> ................................................. 144
10801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 205 — Definition of TPM2B_CREATION_DATA Structure <OUT> ............................................... 144
10811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 206 — Defines for SHA1 Hash Values ........................................................................................... 145
10821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 207 — Defines for SHA256 Hash Values ....................................................................................... 145
10831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 208 — Defines for SHA384 Hash Values ....................................................................................... 145
10841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 209 — Defines for SHA512 Hash Values ....................................................................................... 146
10851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 210 — Defines for SM3_256 Hash Values ..................................................................................... 146
10861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 211 — Defines for Architectural Limits Values ............................................................................... 146
10871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 212 — Defines for Logic Values ..................................................................................................... 147
10881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 213 — Defines for Processor Values .............................................................................................. 147
10891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 214 — Defines for Implemented Algorithms ................................................................................... 148
10901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 215 — Defines for Implemented Commands .................................................................................. 149
10911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 216 — Defines for RSA Algorithm Constants ................................................................................. 152
10921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 217 — Defines for ECC Algorithm Constants ................................................................................. 152
10931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 218 — Defines for AES Algorithm Constants ................................................................................. 152
10941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 219 — Defines for SM4 Algorithm Constants ................................................................................. 152
10951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 220 — Defines for Symmetric Algorithm Constants ....................................................................... 153
10961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 221 — Defines for Implementation Values ..................................................................................... 154
10971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
10981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
10991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
11001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
11021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
11031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage xv
11051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
11061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
11081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
11101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigures
11121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 1 — Command Format .................................................................................................................... 22
11131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 2 — Format-Zero Response Codes ................................................................................................. 29
11141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 3 — Format-One Response Codes ................................................................................................. 30
11151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 4 — TPM 1.2 TPM_NV_INDEX ..................................................................................................... 135
11161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 5 — TPM 2.0 TPM_NV_INDEX ..................................................................................................... 135
11171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage xvi
11191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
11201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
11221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
11231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
11251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
11261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
11281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
11301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
11321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
11331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
11341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnScope
11361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis part of the Trusted Platform Module Library specification contains the definitions of the constants,
11381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnflags, structure, and union definitions used to communicate with the TPM. Values defined in this
11391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndocument are used by the TPM commands defined in part 3: Commands and by the functions in part 4:
11401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSupporting Routines.
11411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
11421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
11441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe structures in this document are the canonical form of the structures on the interface. All structures
11461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnare "packed" with no octets of padding between structure elements. The TPM-internal form of the
11471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructures is dependent on the processor and compiler for the TPM implementation.
11481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTerms and definitions
11501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor the purposes of this document, the terms and definitions given in part 1 of this specification apply.
11521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
11531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSymbols and abbreviated terms
11551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor the purposes of this document, the symbols and abbreviated terms given in part 1 apply.
11571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4
11581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.1
11591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNotation
11611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
11621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe information in this document is formatted so that it may be converted to standard computer-language
11641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnformats by an automated process. The purpose of this automated process is to minimize the transcription
11651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerrors that often occur during the conversion process.
11661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor the purposes of this document, the conventions given in Part 1 apply.
11671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn addition, the conventions and notations in this clause describe the representation of various data so
11681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat it is both human readable and amenable to automated processing.
11691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a table row contains the keyword “reserved” (all lower case) in columns 1 or 2, the tools will not
11701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproduce any values for the row in the table.
11711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
11721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn the examples in this clause 4, the unmarshaling routines are shown as returning bool. In the code of
11741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe reference implementation, the return value is a TPM_RC. A bool is used in the examples, because
11751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe meaning of a TPM_RC is not yet defined.
11761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
11781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe unmarshaling code examples are the actual code that would be produced by the automatic code
11801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerator used in the construction of the reference code. The actual code contains additional parameter
11811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchecking that is omitted for clarity of the principle being illustrated. Actual examples of the code are found
11821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin Part 4.
11831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
11851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
11861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
11881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
11891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 1
11911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
11921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
11941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.2
11951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
11971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
11981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNamed Constants
11991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA named constant is a numeric value to which a name has been assigned. In the C language, this is done
12011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith a #define statement. In this specification, a named constant is defined in a table that has a title that
12021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstarts with “Definition” and ends with “Constants.”
12031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table title will indicate the name of the class of constants that are being defined in the table. The title
12041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwill include the data type of the constants in parentheses.
12051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table in Example 1 names a collection of 16-bit constants and Example 2 shows the C code that
12061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmight be produced from that table by an automated process.
12071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
12081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA named constant (#define) has no data type in C and an enumeration would be a better choice for
12101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmany of the defined constants. However, the C language does not allow an enumerated type to have a
12111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstorage type other than int so the method of using a combination of typedef and #define is used.
12121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
12141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of (UINT16) COUNTING Constants
12161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
12171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
12191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
12211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst
12231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
12251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecimal value is implicitly the size of the
12271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsecond
12291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0002
12311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhex value will match the number of bits in the constant
12331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthird
12351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
12371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfourth
12391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0004
12411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
12431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn/* The C language equivalent of the constants from the table above */
12441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef
12451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
12461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCOUNTING;
12471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#define
12481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst
12491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
12501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#define
12511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsecond
12521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0002
12531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#define
12541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthird
12551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
12561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#define
12571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfourth
12581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0004
12591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 2
12611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
12621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
12641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
12651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
12671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
12681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
12701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.3
12711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
12731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnData Type Aliases (typedefs)
12751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a group of named items is assigned a type, it is placed in a table that has a title starting with
12771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn“Definition of Types.” In this specification, defined types have names that use all upper-case characters.
12781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table in Example 1 shows how typedefs would be defined in this specification and Example 2 shows
12791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe C-compatible code that might be produced from that table by an automated process.
12801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
12811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of Types for Some Purpose
12831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
12841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
12861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
12881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsigned short
12901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
12921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
12941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSOME_TYPE
12961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsigned long
12981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
12991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
13001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
13021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLAST_TYPE
13041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
13061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn/* C language equivalent of the typedefs from the table above */
13071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef unsigned short
13081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16;
13091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef UINT16
13101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSOME_TYPE;
13111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef unsigned long
13121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32;
13131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef UINT32
13141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLAST_TYPE;
13151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.4
13171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEnumerations
13191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA table that defines an enumerated data type will start with the word “Definition” and end with “Values.”
13211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA value in parenthesis will denote the intrinsic data size of the value and may have the values "INT8",
13221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn"UINT8", "INT16", “UINT16”, "INT32", and “UINT32.” If this value is not present, “UINT16” is assumed.
13231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMost C compilers set the type of an enumerated value to be an integer on the machine – often 16 bits –
13241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbut this is not always consistent. To ensure interoperability, the enumeration values may not exceed
13251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn32,384.
13261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table in Example 1 shows how an enumeration would be defined in this specification. Example 2
13271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshows the C code that might be produced from that table by an automated process.
13281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
13291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of (UINT16) CARD_SUIT Values
13311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSuit Names
13321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
13341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLUBS
13361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000
13381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDIAMONDS
13401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000D
13421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHEARTS
13441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x001A
13461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSPADES
13481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
13501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0027
13521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
13541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn/* C language equivalent of the structure defined in the table above */
13551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef enum {
13561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLUBS
13571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn=
13581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000,
13591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDIAMONDS
13601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn=
13611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000D,
13621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHEARTS
13631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn=
13641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x001A,
13651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSPADES
13661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn=
13671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0027
13681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn} CARD_SUIT;
13691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
13711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
13721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
13741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
13751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 3
13771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
13781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
13801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.5
13811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
13831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnInterface Type
13851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn interface type is used for an enumeration that is checked by the unmarshaling code. This type is
13871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined for purposes of automatic generation of the code that will validate the type. The title will start with
13881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe keyword “Definition” and end with the keyword “Type.” A value in parenthesis indicates the base type
13891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof the interface. The table may contain an entry that is prefixed with the “#” character to indicate the
13901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code if the validation code determines that the input parameter is the wrong type.
13911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
13921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of (CARD_SUIT) RED_SUIT Type
13941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
13951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
13971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
13981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHEARTS
13991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDIAMONDS
14001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SUIT
14011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
14031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
14041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SUIT is an example and no such response
14061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode is actually defined in this specification.
14071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
14091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn/* Validation code that might be automatically generated from table above */
14101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnif((*target != HEARTS) && (*target != DIAMONDS))
14111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturn TPM_RC_SUIT;
14121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn some cases, the allowed values are numeric values with no associated mnemonic. In such a case, the
14141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlist of numeric values may be given a name. Then, when used in an interface definition, the name would
14151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhave a "$" prefix to indicate that a named list of values should be substituted.
14161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTo illustrate, assume that the implementation only supports two sizes (1024 and 2048 bits) for keys
14171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassociated with some algorithm (MY algorithm). In the implementation section (Annex B a named list
14181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwould be created.
14191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 3
14201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Defines for MY Algorithm Constants
14221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
14231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
14251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
14271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMY_KEY_SIZES_BITS
14291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{1024, 2048}
14311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbraces because this is a list value
14331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 4
14351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
14361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
14381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
14391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
14411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
14421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
14441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
14461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThen, whenever an input value would need to be a valid MY key size for the implementation, the value
14481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn$MY_KEY_SIZES_BITS could be used. Given the definition for MY_KEY_SIZES_BITS in example 3
14491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnabove, the tables in example 4 and 5 below, are equivalent.
14501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 4
14511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of (UINT16) MY_KEY_BITS Type
14531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
14541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
14561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{1024, 2048}
14581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of bits in the supported key
14601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 5
14621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of (UINT16) MY_KEY_BITS Type
14641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
14651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn$MY_KEY_SIZES_BITS
14661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.6
14681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
14701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of bits in the supported key
14711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnArrays
14731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnArrays are denoted by a value in square brackets (“[ ]”) following a parameter name. The value in the
14751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbrackets may be either an integer value such as “[20]” or the name of a component of the same structure
14761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat contains the array.
14771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table in Example 1 shows how a structure containing fixed and variable-length arrays would be
14781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined in this specification. Example 2 shows the C code that might be produced from that table by an
14791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnautomated process.
14801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
14811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of A_STRUCT Structure
14831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
14841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
14861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
14881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnarray1[20]
14901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
14921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan array of 20 UINT16s
14941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna_size
14961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
14981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
14991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnarray2[a_size]
15001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
15021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan array of UINT32 values that has a
15041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of elements determined by a_size
15051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnabove
15061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
15081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn/* C language equivalent of the typedefs from the table above */
15091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef struct {
15101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
15111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnarray1[20];
15121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
15131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna_size;
15141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
15151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnarray2[];
15161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn} A_STRUCT;
15171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
15191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
15201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
15221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
15231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 5
15251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
15261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
15281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.7
15301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
15321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStructure Definitions
15341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe tables used to define structures have a title that starts with the word “Definition” and ends with
15361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn“Structure.” The first column of the table will denote the reference names for the structure members; the
15371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsecond column the data type of the member; and the third column a synopsis of the use of the element.
15381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table in Example 1 shows an example of how a structure would be defined in this specification and
15391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExample 2 shows the C code that might be produced from the table by an automated process. Example 3
15401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnillustrates the type of unmarshaling code that could be generated using the information available in the
15411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntable.
15421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
15431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of SIMPLE_STRUCTURE Structure
15451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
15461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
15481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
15501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag
15521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST
15541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue1
15561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT32
15581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue2
15601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT32
15621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
15641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn/* C language equivalent of the structure defined in the table above */
15651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef struct {
15661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST
15671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag;
15681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT32
15691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue1
15701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT32
15711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue2;
15721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn} SIMPLE_STRUCTURE;
15731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 3
15741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbool SIMPLE_STRUCTURE_Unmarshal(SIMPLE_STRUCTURE *target, BYTE **buffer, INT32 *size)
15751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{
15761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// If unmarshal of tag succeeds
15771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnif(TPM_ST_Unmarshal((TPM_ST *)&(target->tag), buffer, size))
15781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// then umarshal value1, and if that succeeds...
15791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnif(INT32_Unmarshal((INT32 *)&(target->value1, buffer, size))
15801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// then return the results of unmarshaling values
15811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturn(INT32_Unmarshal((INT32 *)&(target->value2, buffer, size))
15821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// if unmarshal of tag or value failed, return failure
15831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturn FALSE;
15841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn}
15851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 6
15871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
15881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
15901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
15911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
15931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
15941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
15961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.8
15971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
15981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
15991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnConditional Types
16011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn enumeration may contain an extended value indicated by “+” preceding the name in the "Value"
16031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncolumn. This “+” indicates that this is a conditional value that may be allowed in certain situations.
16041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
16051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn many cases, the input values are algorithm IDs. When two collections of algorithm IDs differ only
16071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbecause one collection allows TPM_ALG_NULL and the other does not, it is preferred that the re not be
16081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntwo completely different enumerations because this leads to many casts. To avoid this, the “+” can be
16091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadded to a TPM_ALG_NULL value in the table defining the type. When the use of that type allows
16101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL to be in the set, the use would append a “+” to the instance.
16111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
16131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of (CARD_SUIT) TPMI_CARD_SUIT Type
16151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
16161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
16181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSPADES
16201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHEARTS
16211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDIAMONDS
16221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLUBS
16231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+JOKER
16241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan optional value that may be allowed
16261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SUIT
16281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the input value is not one of the
16301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues above
16311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen an interface type is used, a “+” will be appended to the type specification for the parameter when
16331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe conditional value is allowed. If no “+” is present, then the conditional value is not allowed.
16341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
16351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of POKER_CARD Structure
16371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
16381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
16401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
16421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsuit
16441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_CARD_SUIT+
16461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallows joker
16481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber
16501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT8
16521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe card value
16541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
16561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of BRIDGE_CARD Structure
16581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
16591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
16611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
16631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsuit
16651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_CARD_SUIT
16671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndoes not allow joker
16691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber
16711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT8
16731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe card value
16751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
16771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
16781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
16801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
16811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 7
16831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
16841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
16861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9
16871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
16891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnions
16911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9.1
16931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
16951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
16961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA union allows a structure to contain a variety of structures or types. The union has members, only one of
16971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhich is present at a time. Three different tables are required to fully characterize a union so that it may
16981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe communicated on the TPM interface and used by the TPM:
16991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1) union definition;
17001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2) union instance; and
17011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3) union selector definition.
17021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9.2
17031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnion Definition
17051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table in Example 1 illustrates a union definition. The title of a union definition table starts with
17071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn“Definition” and ends with “Union.” The “Parameter” column of a union definition lists the different names
17081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat are used when referring a specific type. The “Type” column identifies the data type of the member.
17091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe “Selector” column identifies the value that is used by the marshaling and unmarshaling code to
17101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndetermine which case of the union is present.
17111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf a parameter is the keyword “null,” then this denotes a selector with no contents. The table in Example 1
17121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnillustrates a union in which a conditional null selector is allowed to indicate an empty union member.
17131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExample 2 shows how the table would be converted into C-compatible code.
17141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe expectation is that the unmarshaling code for the union will validate that the selector for the union is
17151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnone of values in the selector list.
17161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
17171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of NUMBER_UNION Union
17191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
17201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
17221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
17241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna_byte
17261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
17281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE_SELECT
17301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan_int
17321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint
17341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT_SELECT
17361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna_float
17381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfloat
17401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFLOAT_SELECT
17421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+null
17441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNULL_SELECT
17461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
17481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe empty branch
17501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
17521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// C-compatible version of the union defined in the table above
17531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef union {
17541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
17551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna_byte;
17561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint
17571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan_int;
17581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfloat
17591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna_float;
17601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn} NUMBER_UNION;
17611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 3
17621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 8
17641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
17651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
17671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
17681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
17701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
17711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
17731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
17751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// Possible auto-generated code to unmarshal a union in Example 2 based on the
17771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// input value of selector
17781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbool NUMBER_UNION_Unmarshal(NUMBER_UNION *target, BYTE **buffer,
17791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT32 *size, UINT32 selector)
17801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{
17811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnswitch (selector) {
17821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncase BYTE_SELECT:
17831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturn BYTE_Unmarshal((BYTE *)&(target->a_byte), buffer, size);
17841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncase INT_SELECT:
17851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturn INT_Unmarshal((int *)&(target->an_int), buffer, size);
17861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncase FLOAT_SELECT:
17871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturn FLOAT_Unmarshal((float *)&(target->a_float), buffer, size);
17881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncase NULL_SELECT:
17891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturn;
17901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn}
17911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA table may have a type with no selector. This is used when the first part of the structure for all union
17931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmembers is identical. This type is a programming convenience, allowing code to reference the common
17941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmembers without requiring a case statement to determine the specific structure. In object oriented
17951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprogramming terms, this type is a superclass and the types with selectors are subclasses.
17961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9.3
17971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnion Instance
17991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a union is used in a structure that is sent on the interface, the structure will minimally contain a
18011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselector and a union. The selector value indicates which of the possible union members is present so that
18021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe unmarshaling code can unmarshal the correct type. The selector may be any of the parameters that
18031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoccur in the structure before the union instance. To denote the structure parameter that is used as the
18041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselector, its name is in brackets (“[ ]”) placed before the parameter name associated with the union.
18051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table in Example 1 shows the definition of a structure that contains a union and a selector. Example 2
18061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshows how the table would be converted into C-compatible code and Example 3 shows how the
18071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunmarshaling code would handle the selector.
18081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
18091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of STRUCTURE_WITH_UNION Structure
18111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
18121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
18141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
18161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselect
18181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUMBER_SELECT
18201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value indicating the type in number
18221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[select] number
18241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUMBER_UNION
18261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna union as shown in 4.9.2
18281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
18301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// C-compatible version of the union structure in the table above
18311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef struct {
18321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUMBER_SELECT
18331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselect;
18341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUMBER_UNION
18351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber;
18361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn} STRUCT_WITH_UNION;
18371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 3
18381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
18401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
18411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
18431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
18441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 9
18461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
18471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
18491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
18511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// Possible unmarshaling code for the structure above
18531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbool STRUCT_WITH_UNION_Unmarshal(STRUCT_WITH_UNION *target, BYTE **buffer, INT32 *size)
18541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{
18551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// Unmarshal the selector value
18561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnif(!NUMBER_SELECT_Unmarshal((NUMBER_SELECT *)&target->select, buffer, size))
18571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturn FALSE;
18581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// Use the unmarshaled selector value to indicate to the union unmarshal
18591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn// function which unmarshaling branch to follow.
18601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturn(NUMBER_UNION_Unmarshal((NUMBER_UNION *)&(target->number),
18611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer, size, (UINT32)target->select);
18621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn}
18631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.9.4
18651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnion Selector Definition
18671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe selector definition limits the values that are used in unmarshaling a union. Two different selector sets
18691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnapplied to the same union define different types.
18701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor the union in 4.9.2, a selector definition should be limited to no more than four values, one for each of
18711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe union members. The selector definition could have fewer than four values.
18721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn Example 1, the table defines a value for each of the union members.
18731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
18741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of (INT8) NUMBER_SELECT Values <IN>
18761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
18771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
18791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE_SELECT
18811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
18831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT_SELECT
18851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
18871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFLOAT_SELECT
18891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
18911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNULL_SELECT
18931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
18951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
18971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
18981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe unmarshaling code would limit the input values to the defined values. When the NUMBER_SELECT
18991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis used in the union instance of 4.9.3, any of the allowed union members of NUMBER_UNION could be
19001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpresent.
19011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA different selection could be used to limit the values in a specific instance. To get the different selection,
19021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna new structure is defined with a different selector. The table in example 2 illustrates a way to subset the
19031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunion. The base type of the selection is NUMBER_SELECT so a NUMBER_SELECT will be unmarshaled
19041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbefore the checks are made to see if the value is in the correct range for JUST_INTEGERS types. If the
19051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbase type had been UINT8, then no checking would occur prior to checking that the value is in the
19061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed list. In this particular case, the effect is the same in either case since the only values that will be
19071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaccepted by the unmarshaling code for JUST_INTEGER are BYTE_SELECT and INT_SELECT.
19081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
19091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of (NUMBER_SELECT) AN_INTEGER Type <IN>
19111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
19121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{BYTE_SELECT, INT_SELECT}
19131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
19141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
19161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlist of allowed values
19171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSince NULL_SELECT is not in the list of values accepted as a JUST_INTEGER, the “+” modifier will have
19191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno effect if used for a JUST_INTEGERS type shown in Example 3.
19201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 10
19221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
19231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
19251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
19261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
19281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
19291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
19311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
19331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe selector in Example 2 can then be used in a subset union as shown in Example 3.
19351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 3
19361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of JUST_INTEGERS Structure
19381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
19391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
19411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
19431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselect
19451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAN_INTEGER
19471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value indicating the type in number
19491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[select] number
19511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUMBER_UNION
19531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna union as shown in 4.9.2
19551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.10 Bit Field Definitions
19571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA table that defines a structure containing bit fields has a title that starts with “Definition” and ends with
19581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn“Bits.” A type identifier in parentheses in the title indicates the size of the datum that contains the bit
19591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfields.
19601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen the bit fields do not occupy consecutive locations, a spacer field is defined with a name of
19611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn“Reserved.” Bits in these spaces are reserved and shall be zero.
19621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table in Example 1 shows how a structure containing bit fields would be defined in this specification.
19631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExample 2 shows the C code that might be produced from that table by an automated process.
19641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a field has more than one bit, the range is indicated by a pair of numbers separated by a colon (“:”).
19651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe numbers will be in high:low order.
19661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE1
19671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of (UINT32) SOME_ATTRIBUTE Bits
19691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
19701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
19711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
19731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAction
19751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnzeroth_bit
19771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): what to do if bit is 1
19791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): what to do if bit is 0
19801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
19821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst_bit
19841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): what to do if bit is 1
19861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): what to do if bit is 0
19871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6:2
19891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7
19901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
19921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA placeholder that spans 5 bits
19941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthird_bit
19961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
19971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): what to do if bit is 1
19981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): what to do if bit is 0
19991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31:8
20011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
20031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPlaceholder to fill 32 bits
20051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
20071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn/* C language equivalent of the attributes structure defined in the table above */
20081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntypedef struct {
20091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint zeroth_bit : 1;
20101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint first_bit : 1;
20111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint Reserved3 : 5;
20121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint third_bit : 1;
20131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint Reserved7 : 24;
20141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn} SOME_ATTRIBUTE;
20151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.11 Parameter Limits
20171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA parameter used in a structure may be given a set of values that can be checked by the unmarshaling
20181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode. The allowed values for a parameter may be included in the definition of the parameter by
20191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnappending the values and delimiting them with braces (“{ }”). The values are comma-separated
20201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexpressions. A range of numbers may be indicated by separating two expressions with a colon (“:”). The
20211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
20221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
20231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
20251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
20261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 11
20281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
20291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
20311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
20331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst number is an expression that represents the minimum allowed value and the second number
20351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates the maximum. If the minimum or maximum value expression is omitted, then the range is openended.
20361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter limits expressed using braces apply only to inputs to the TPM. Any value returned by the
20371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM is assumed to be valid.
20381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe maximum size of an array may be indicated by putting a “{}” delimited expression following the
20391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsquare brackets (“[ ]”) that indicate that the value is an array.
20401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
20411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of B_STRUCT Structure
20431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
20441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
20461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
20481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue1 {20:25}
20501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
20521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna parameter that must have a value between 20
20541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand 25
20551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue2 {20}
20571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
20591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna parameter that must have a value of 20
20611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue3 {:25}
20631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT16
20651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna parameter that may be no larger than 25
20671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSince the parameter is signed, the minimum value
20681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis the largest negative integer that may be
20691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexpressed in 16 bits.
20701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue4 {20:}
20721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna parameter that must be at least 20
20741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue5 {1,2,3,5}
20761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
20781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna parameter that may only have one of the four
20801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlisted values
20811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue6 {1, 2, 10:(10+10)}
20831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
20851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna parameter that may have a value of 1, 2, or be
20871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbetween 10 and 20
20881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnarray1[value1]
20901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
20921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
20931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBecause the index refers to value1, which is a
20941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue limited to be between 20 and 25 inclusive,
20951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnarray1 is an array that may have between 20 and
20961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn25 octets. This is not the preferred way to indicate
20971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe upper limit for an array as it does not indicate
20981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe upper bound of the size.
20991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
21001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnarray2[value4]{:25}
21021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
21041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is a limitation of the current
21061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparser. A different parser could
21071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassociate the range of value1 with this
21081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue and compute the maximum size
21091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof the array.
21101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan array that may have between 20 and 25 octets
21121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis arrangement is used to allow the automatic
21131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode generation to allocate 25 octets to store the
21141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlargest array2 that can be unmarshaled. The code
21151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngeneration can determine from this expression that
21161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue4 shall have a value of 25 or less. From the
21171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefinition of value4 above, it can determine that
21181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue4 must have a value of at least 20.
21191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 12
21211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
21221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
21241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
21251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
21271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
21281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
21301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
21321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.12 Enumeration Macro
21341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn enumeration can be a list of allowed numeric values. For example, the allowed sizes for an RSA key
21351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmight be expressed as:
21361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.13 Size Checking
21381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn some structures, a size field is present to indicate the number of octets in some subsequent part of the
21391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure. In the B_STRUCT table in 4.11, value4 indicates how many octets to unmarshal for array2. This
21401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsemantic applies when the size field determines the number of octets to unmarshal. However, in some
21411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncases, the subsequent structure is self-defining. If the size precedes a parameter that is not an octet
21421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnarray, then the unmarshaled size of that parameter is determined by its data type. The table in Example 1
21431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshows a structure where the size parameter would nominally indicate the number of octets in the
21441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnremainder of the structure.
21451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
21461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of C_STRUCT Structure
21481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
21491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
21511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
21531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
21551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
21571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe expected size of the remainder of the structure
21591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnanInteger
21611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
21631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna 4-octet value
21651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn this particular case, the value of size would be incorrect if it had any value other than 4. So that the
21671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntable parser is able to know that the purpose of the size parameter is to define the number of octets
21681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexpected in the remainder of the structure, an equal sign (“=”) is appended to the parameter name.
21691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn the example below, the size= causes the parser to generate validation code that will check that the
21701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunmarshaled size of someStructure and someData adds to the value unmarshaled for size. When the “=”
21711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecoration is present, a value of zero is not allowed for the size.
21721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
21731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of D_STRUCT Structure
21751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
21761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
21781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
21801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize=
21821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
21841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe size of a structure
21861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe “=” indicates that the TPM is required to
21871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalidate that the remainder of the D_STRUCT
21881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure is exactly the value in size. That is, the
21891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of bytes in the input buffer used to
21901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsuccessfully unmarshal someStructure must be the
21911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsame as size.
21921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsomeStructure
21941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA_STRUCT
21961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
21971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna structure to be unmarshaled
21981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe size of the structure is computed when it is
21991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunmarshaled. Because an “=” is present on the
22001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefinition of size, the TPM is required to validate
22011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat the unmarshaled size exactly matches size.
22021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsomeData
22041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
22061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
22071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
22091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value
22111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
22131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
22141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 13
22161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
22171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
22191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
22211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.14 Data Direction
22231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA structure or union may be input (IN), output (OUT), or internal. An input structure is sent to the TPM and
22241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis unmarshaled by the TPM. An output structure is sent from the TPM and is marshaled by the TPM. An
22251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninternal structure is not used outside of the TPM except that it may be included in a saved context.
22261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBy default, structures are assumed to be both IN and OUT and the code generation tool will generate
22271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnboth marshaling and unmarshaling code for the structure. This default may be changed by using values
22281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnenclosed in angle brackets (“<>”) as part of the table title. If the angle brackets are empty, then the
22291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure is internal and neither marshaling nor unmarshaling code is generated. If the angle brackets
22301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontain the letter “I” (such as in “IN” or “in” or “i”), then the structure is input and unmarshaling code will be
22311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerated. If the angle brackets contain the letter “O” (such as in “OUT” or “out” or “o”), then the structure
22321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis output and marshaling code will be generated.
22331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
22341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBoth of the following table titles would indicate a structure that is used in both input and output
22361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of TPMS_A Structure
22371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of TPMS_A Structure <IN/OUT>
22381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
22401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe following table title would indicate a structure that is used only for input
22421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of TPMS_A Structure <IN>
22431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 3
22451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe following table title would indicate a structure that is used only for output
22471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of TPMS_A Structure <OUT>
22481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.15 Structure Validations
22501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBy default, when a structure is used for input to the TPM, the code generation tool will generate the
22511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunmarshaling code for that structure. Auto-generation may be suppressed by adding an “S” within the
22521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnangle brackets.
22531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
22541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe following table titles indicate a structure for which the auto -generation of the validation code is to be
22561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsuppressed.
22571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of TPMT_A Structure <S>
22581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of TPMT_A Structure <IN, S>
22591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable xx — Definition of TPMT_A Structure <IN/OUT, S>
22601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.16 Name Prefix Convention
22621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameters are constants, variables, structures, unions, and structure members. Structure members are
22631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngiven a name that is indicative of its use, with no special prefix. The other parameter types are named
22641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaccording to their type with their name starting with “TPMx_”, where “x” is an optional character to indicate
22651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe data type.
22661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn some cases, additional qualifying characters will follow the underscore. These are generally used when
22671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndealing with an enumerated data type.
22681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_ This is an attribute structure, where bits are associated with particular attributes
22691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 14
22711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
22721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
22741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
22751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
22771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
22781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
22801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
22821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 1 — Name Prefix Convention
22841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPrefix
22851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
22871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn_TPM_
22891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan indication/signal from the TPM’s system interface
22911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_
22931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna constant or an enumerated type
22951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_
22971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
22981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna command defined by this specification
22991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_
23011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna structure that is a sized buffer where the size of the buffer is contained in a 16-bit, unsigned
23031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue
23041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe first parameter is the size in octets of the second parameter. The second parameter may be
23051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnany type.
23061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_
23081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna structure where each of the fields defines an attribute and each field is usually a single bit
23101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAll the attributes in an attribute structure are packed with the overall size of the structure
23111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicated in the heading of the attribute description (UINT8, UINT16, or UINT32).
23121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_
23141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan enumerated type that indicates an algorithm
23161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPM_ALG_ is often used as a selector for a union.
23171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_
23191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan interface type
23211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe value is specified for purposes of dynamic type checking when unmarshaled.
23221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_
23241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna list length followed by the indicated number of entries of the indicated type
23261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is an array with a length field.
23271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_
23291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna structure that is not a size buffer or a tagged buffer or a list
23311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_
23331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna structure with the first parameter being a structure tag, indicating the type of the structure that
23351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfollows
23361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA structure tag may be either a TPMT_ST_ or TPM_ALG_ depending on context.
23371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_
23391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna union of structures, lists, or unions
23411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf a union exists, there will normally be a companion TPMT_ that is the expression of the union
23421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin a tagged structure, where the tag is the selector indicating which member of the union is
23431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpresent.
23441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_xx_
23461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan enumeration value of a particular type
23481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe value of “xx” will be indicative of the use of the enumerated type. A table of “TPM_xx”
23491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnconstant definitions will exist to define each of the TPM_xx_ values.
23501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
23511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ indicates that the type is used for a commandCode. The allowed enumeration
23531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues will be found in the table defining the TPM_CC constants (Table 11).
23541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
23561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_ indicates that the type is used for a responseCode. The allowed enumeration
23581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues are in Table 15.
23591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.17 Data Alignment
23611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe data structures in this Part 2 use octet alignment for all structures. When used in a table to indicate a
23621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum size, the sizeof() function returns the octet-aligned size of the structure, with no padding.
23631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4.18
23641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter Unmarshaling Errors
23661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM commands are defined in Part 3. The command definition included C code that details the
23681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnactions performed by that command. The code is written assuming that the parameters of the command
23691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhave been unmarshaled.
23701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
23711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn implementation is not required to process parameters in this manner or to separate the parameter
23731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparsing from the command actions. This method was chosen for the specification so that the normative
23741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbehavior described by the detailed actions would be clear and unencumbered.
23751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
23771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
23781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
23801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
23811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 15
23831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
23841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
23861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
23881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnmarshaling is the process of processing the parameters in the input buffer and preparing the
23901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameters for use by the command-specific action code. No data movement need take place but it is
23911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired that the TPM validate that the parameters meet the requirements of the expected data type as
23921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined in this Part 2.
23931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen an error is encountered while unmarshaling a command parameter, an error response code is
23941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturned and no command processing occurs. A table defining a data type may have response codes
23951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnembedded in the table to indicate the error returned when the input value does not match the parameters
23961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof the table.
23971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
23981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
23991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 11 has a listing of TPM command code values. The last row in the table contains
24001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn"#TPM_RC_COMMAND_CODE" indicating the response code that is returned if the TPM is unmarshaling
24011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value that it expects to be a TPM_CC and the input value is not in the table.
24021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
24041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn the reference implementation, a parameter number is added to the response code so that the offending
24061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameter can be isolated.
24071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn many cases, the table contains no specific response code value and the return code will be determined
24091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnas defined in Table 2.
24101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 2 — Unmarshaling Errors
24111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnResponse code
24121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUsage
24141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_INSUFFICIENT
24161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe input buffer did not contain enough octets to allow unmarshaling of the
24181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexpected data type;
24191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_RESERVED
24211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna non-zero value was found in a reserved field of an attribute structure (TPMA_)
24231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SIZE
24251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe value of a size parameter is larger or smaller than allowed
24271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_VALUE
24291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA parameter does not have one of its allowed values
24311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_TAG
24331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA parameter that should be a structure tag has a value that is not supported by
24351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM
24361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn some commands, a parameter may not be used because of various options of that command.
24381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHowever, the unmarshaling code is required to validate that all parameters have values that are allowed
24391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnby the Part 2 definition of the parameter type even if that parameter is not used in the command actions.
24401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 16
24421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
24431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
24451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
24461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
24481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
24491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
24511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5
24531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
24551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBase Types
24571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5.1
24591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPrimitive Types
24611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe types listed in Table 3 are the primitive types on which all of the other types and structures are
24631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbased. The values in the “Type” column should be edited for the compiler and computer on which the
24641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM is implemented. The values in the “Name” column should remain the same because these values
24651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnare used in the remainder of the specification.
24661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
24671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe types are compatible with the C99 standard and should be defined in stdint.h that is provided with a
24691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnC99-compliant compiler;
24701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe parameters in the Name column should remain in the order shown.
24721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 3 — Definition of Base Types
24731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
24741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
24761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
24781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuint8_t
24801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT8
24821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsigned, 8-bit integer
24841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuint8_t
24861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
24881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsigned 8-bit integer
24901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint8_t
24921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT8
24941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsigned, 8-bit integer
24961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint
24981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
24991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBOOL
25001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna bit in an int
25021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is not used across the interface but is used in many places in the code. If
25031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe type were sent on the interface, it would have to have a type with a specific
25041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of bytes.
25051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuint16_t
25071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
25091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsigned, 16-bit integer
25111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint16_t
25131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT16
25151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsigned, 16-bit integer
25171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuint32_t
25191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
25211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsigned, 32-bit integer
25231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint32_t
25251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT32
25271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsigned, 32-bit integer
25291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuint64_t
25311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT64
25331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsigned, 64-bit integer
25351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnint64_t
25371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnINT64
25391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsigned, 64-bit integer
25411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5.2
25431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMiscellaneous Types
25451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese types are defined either for compatibility with previous versions of this specification or for clarity of
25471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis specification.
25481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 4 — Definition of Types for Documentation Clarity
25491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
25501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
25521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
25541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
25561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALGORITHM_ID
25581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis is the 1.2 compatible form of the TPM_ALG_ID
25601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
25621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_MODIFIER_INDICATOR
25641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
25661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_AUTHORIZATION_SIZE
25681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe authorizationSize parameter in a command
25701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
25721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PARAMETER_SIZE
25741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe parameterSizeset parameter in a command
25761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
25781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_KEY_SIZE
25801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna key size in octets
25821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
25841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_KEY_BITS
25861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna key size in bits
25881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
25901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
25911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
25931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
25941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 17
25961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
25971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
25981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
25991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6
26011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
26031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnConstants
26051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.1
26071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SPEC (Specification Version Values)
26091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese values are readable with TPM2_GetCapability().
26111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
26121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis table will require editing when the specification is updated.
26141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 5 — Definition of (UINT32) TPM_SPEC Constants <>
26161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
26171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
26191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
26211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnASCII “2.0” with null terminator
26221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SPEC_FAMILY
26241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x322E3000
26261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SPEC_LEVEL
26281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn00
26301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe level number for the specification
26321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SPEC_VERSION
26341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn99
26361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe version number of the spec (00.99 * 100)
26381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SPEC_YEAR
26401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2013
26421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe year of the version
26441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SPEC_DAY_OF_YEAR
26461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn304
26481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe day of the year (October 31, 2013)
26501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.2
26521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_GENERATED
26541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis constant value differentiates TPM-generated structures from non-TPM structures.
26561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 6 — Definition of (UINT32) TPM_GENERATED Constants <O>
26571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
26581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
26601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
26621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_GENERATED_VALUE
26641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xff544347
26661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xFF ‘TCG’ (FF 54 43 4716)
26681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 18
26701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
26711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
26731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
26741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
26761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
26771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
26791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.3
26801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
26821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ID
26841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TCG maintains a registry of all algorithms that have an assigned algorithm ID. That registry is the
26861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefinitive list of algorithms that may be supported by a TPM.
26871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
26881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnInclusion of an algorithm does NOT indicate that the necessary claims of the algorithm are av ailable
26901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunder RAND terms from a TCG member.
26911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
26921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 7 is a copy of the TPM_ALG_ID constants table in the TCG registry as of the date of publication of
26931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis specification. Table 7 is provided for illustrative purposes only.
26941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{{Note for TCG Admin: Table 7 and the text in the paragraph above should be updated to reflect the final
26951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecisions by the TCG Board of Directors about inclusion of the table and the contents of the table. The
26961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndesired approach is to leave the text as is and, immediately before publication of this specification for
26971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTCG admin to verify that Table 7 is the same as the algorithm registry table published by the TCG.}}
26981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn algorithm ID is often used like a tag to determine the type of a structure in a context-sensitive way.
26991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe values for TPM_ALG_ID shall be in the range of 00 0016 – 7F FF16. Other structure tags will be in the
27001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrange 80 0016 – FF FF16.
27011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
27021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn TPM 1.2, these were defined as 32-bit constants. This specification limits the future size of the
27041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm ID to 16 bits. The TPM_ALGORITHM_ID data type will continue to be a 32-bit number.
27051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn algorithm shall not be assigned a value in the range 00 C116 – 00 C616 in order to prevent any overlap
27071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith the command structure tags used in TPM 1.2.
27081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe implementation of some algorithms is dependent on the presence of other algorithms. When there is
27091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna dependency, the algorithm that is required is listed in column labeled "D" (dependent) in Table 7.
27101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
27111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplementation of TPM_ALG_RSASSA requires that the RSA algorithm be implemented.
27131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KEYEDHASH and TPM_ALG_NULL are required of all TPM implementations.
27151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 7 — Definition of (UINT16) TPM_ALG_ID Constants <IN/OUT, S>
27161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAlgorithm Name
27171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
27191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
27211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
27231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnD
27251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
27271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ERROR
27291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000
27311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshould not occur
27331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_FIRST
27351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0001
27371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSA
27391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0001
27411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAO
27431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe RSA algorithm
27451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA
27471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0004
27491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnH
27511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe SHA1 algorithm
27531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA1
27551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0004
27571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnH
27591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnredefinition for documentation consistency
27611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOID 30 21 30 09 06 05 2B 0E 03 02 1A 05 00 04 14 16
27621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_HMAC
27641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0005
27661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHX
27681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe RFC 2104 Hash Message Authentication Code
27701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(HMAC) algorithm
27711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_AES
27731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0006
27751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnS
27771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe AES algorithm with a key size of 128 bits for TPM
27791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1.2
27801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe AES algorithm with multiple sizes of key for TPM
27811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2.0
27821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_MGF1
27841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0007
27861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHM
27881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe mask-generation function defined in IEEE Std
27901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1363-2000
27911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KEYEDHASH
27931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0008
27951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHEXO
27971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
27981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan encryption or signing algorithm using a keyed hash,
27991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined by TCG in the TPM 2.0 specification
28001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay also refer to a data object that is neither signing
28011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnor encrypting
28021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_XOR
28041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000A
28061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHS
28081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmarker value
28101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe XOR obfuscation algorithm
28121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
28131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
28151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
28161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe implementation of XOR obfuscation in TPM
28181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2.0 is not the same as the XOR encryption
28191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmethod in TPM 1.2.
28201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
28221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
28231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 19
28251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
28261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
28281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAlgorithm Name
28291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
28311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
28321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
28341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
28361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA256
28381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000B
28401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnH
28421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnD
28441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
28461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe SHA 256 algorithm
28471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOID 30 31 30 0d 06 09 60 86 48 01 65 03 04 02 01 05
28481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn00 04 2016
28491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA384
28511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000C
28531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnH
28551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe SHA 384 algorithm
28571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOID 30 41 30 0d 06 09 60 86 48 01 65 03 04 02 02 05
28581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn00 04 3016
28591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA512
28611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000D
28631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnH
28651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe SHA 512 algorithm
28671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOID 30 51 30 0d 06 09 60 86 48 01 65 03 04 02 03 05
28681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn00 04 4016
28691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
28711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0010
28731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM3_256
28751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0012
28771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnH
28791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash algorithm standardized by OSCCA
28811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBlock size is 512 bits.
28821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOutput size is 256 bits.
28831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM4
28851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0013
28871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnS
28891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric algorithm standardized by OSCCA
28911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnKey and block size are 128 bits.
28921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSASSA
28941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0014
28961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAX
28981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
28991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA a signature algorithm according to PKCS#1v2.1, 8.2
29001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAES
29021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0015
29041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAE
29061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA a padding algorithm according to PKCS#1v2.1, 7.2
29081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAPSS
29101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0016
29121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAX
29141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA signature algorithm (RSSASSA-PSS) according to
29161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPKCS#1v2.1, 8.1
29171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_OAEP
29191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0017
29211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAE
29231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA padding algorithm
29251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPKCS#1v2.1, 7.1
29261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDSA
29281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0018
29301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAX
29321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC signature algorithm using elliptic curve cryptography
29341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(ECC)
29351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDH
29371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0019
29391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAM
29411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC secret sharing using ECC from SP800-56A
29431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBased on context, this can be either One-Pass DiffieHellman, C(1, 1, ECC CDH) defined in 6.2.2.2 or Full
29441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnified Model C(2, 2, ECC CDH) defined in 6.1.1.2
29451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDAA
29471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x001A
29491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAX
29511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC elliptic-curve based, anonymous signing scheme
29531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM2
29551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x001B
29571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAXE
29591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNull algorithm
29611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(RSAES_OAEP)
29631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaccording
29651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto
29671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC depending on context, either an elliptic-curve based,
29691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsignature algorithm or a key exchange protocol
29701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
29711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis would be one of the algorithms specified in
29731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCM/T 0002 – 2012.
29741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECSCHNORR
29761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x001C
29781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAX
29801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC elliptic-curve-based Schnorr signature
29821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECMQV
29841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x001D
29861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAE
29881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC two-phase elliptic-curve key exchange -- C(2, 2, ECC
29901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMQV) from SP800-56A
29911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KDF1_SP800_56a
29931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0020
29951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHM
29971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
29981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC key derivation alternative #1 from SP800-56A
29991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KDF2
30011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0021
30031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHM
30051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey derivation function from IEEE Std 1363a-2004
30071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KDF1_SP800_108
30091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0022
30111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHM
30131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna key derivation method according to SP 800-108, "5.1
30151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnKDF in Counter Mode”
30161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECC
30181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0023
30201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAO
30221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprime field ECC
30241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SYMCIPHER
30261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0025
30281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
30301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_CTR
30321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0040
30341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSE
30361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCounter mode – if implemented, all symmetric block
30381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnciphers (S type) implemented shall be capable of using
30391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis mode.
30401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_OFB
30421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0041
30441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSE
30461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOutput Feedback mode – if implemented, all
30481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric block ciphers (S type) implemented shall be
30491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncapable of using this mode.
30501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_CBC
30521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0042
30541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSE
30561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCipher Block Chaining mode – if implemented, all
30581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric block ciphers (S type) implemented shall be
30591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncapable of using this mode.
30601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 20
30621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
30631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe object type for a symmetric block cipher
30651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
30671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
30681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
30701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
30711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
30731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
30751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
30761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAlgorithm Name
30781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
30801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
30821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_CFB
30841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0043
30861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSE
30881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnD
30901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
30921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCipher Feedback mode – if implemented, all
30931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric block ciphers (S type) implemented shall be
30941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncapable of using this mode.
30951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECB
30971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
30981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0044
30991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSE
31011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnElectronic Codebook mode – if implemented, all
31031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric block ciphers (S type) implemented shall be
31041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncapable of using this mode.
31051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
31061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis mode is not recommended for uses unless
31081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe key is frequently rotated such as in video
31091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncodecs.
31101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_LAST
31121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0044
31141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmarker value
31161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
31181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00C1
31201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00C1 – 0x00C6 are reserved
31221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
31241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00C2
31261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
31281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00C3
31301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
31321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00C4
31341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
31361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00C5
31381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
31401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00C6
31421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE a Column Indicates the algorithm type and use of the algorithm inside of the TPM. The values are:
31441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA – asymmetric algorithm with a public and private key
31451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnS – symmetric algorithm with only a private key
31461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnH – hash algorithm that compresses input data to a digest value
31471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnX – signing algorithm
31481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnE – an encryption algorithm
31491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnM – a method such as a mask generation function
31501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO – an object type
31511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
31531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
31541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
31561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
31571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 21
31591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
31601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
31621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.4
31631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
31651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_CURVE
31671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TCG maintains a registry of all curves that have an assigned curve identifier. That registry is the
31691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefinitive list of curves that may be supported by a TPM.
31701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 8 is a copy of the TPM_ECC_CURVE constants table in the TCG registry as of the date of
31711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpublication of this specification. Table 8 is provided for illustrative purposes only.
31721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{{Note for TCG Admin: Table 8 and the text in the paragraph above should be updated to reflect the final
31731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecisions by the TCG Board of Directors about inclusion of the table and the contents of the table. The
31741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndesired approach is to leave the text as is and, immediately before publication of this specification for
31751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTCG admin to verify that Table 8 is the same as the curve registry table published by the TCG.}}
31761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 8 — Definition of (UINT16) {ECC} TPM_ECC_CURVE Constants <IN/OUT, S>
31771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
31781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
31801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
31821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_NONE
31841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000
31861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_NIST_P192
31881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0001
31901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_NIST_P224
31921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0002
31941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_NIST_P256
31961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0003
31981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
31991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_NIST_P384
32001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0004
32021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_NIST_P521
32041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0005
32061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_BN_P256
32081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0010
32101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncurve to support ECDAA
32121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_BN_P638
32141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0011
32161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncurve to support ECDAA
32181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_SM2_P256
32201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0020
32221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_CURVE
32241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.5
32261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.5.1
32271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC (Command Codes)
32291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFormat
32301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA command is a 32-bit structure with fields assigned as shown in Figure 1.
32321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3 3 2 2
32331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1 0 9 8
32341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRes V
32361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1 1
32381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6 5
32391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
32411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
32431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
32441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommand Index
32461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 1 — Command Format
32481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 9 — TPM Command Format Fields Description
32491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
32501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15:0
32511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
32531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
32551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommand Index
32571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe index of the command
32591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn28:16 Reserved
32611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn29
32621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnV
32641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31:30 Res
32661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 22
32681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
32691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
32711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET(1): the command is vendor specific
32721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR(0): the command is not vendor specific
32731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
32741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
32761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
32771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
32791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
32801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
32821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.5.2
32831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
32851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
32871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 10 provides the legend for the interpretation of the column data in Table 11.
32891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 10 — Legend for Command Code Tables
32901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnColumn
32911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAllowed
32931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
32941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
32961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
32981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
32991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommand
33001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCode Name
33011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName of the command
33031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommand Code
33051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNumeric value
33071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe numeric value for the commandCode
33091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV Write
33111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnblank, Y, O
33131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates whether the command may cause an NV write operation
33151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this column contains a “Y,” then successful completion of the
33161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand is expected to cause modification of the NV memory
33171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbecause of the command actions.
33181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the column contains an “O,” then the command may cause a
33191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmodification to NV associated with an orderly shutdown. That is, the
33201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand may modify the orderly save state of NV, in which case, an
33211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV write will be necessary.
33221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
33231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAny command may be delayed in order for the TPM to complete
33251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV actions due to a previous command or because of an
33261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnasynchronous update of Clock.
33271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
33291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAny command with an authorization value may cause an NV write
33311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnon an authorization failure but the command does not complete
33321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsuccessfully.
33331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the entry is blank, then writing to NV is not allowed in the command
33351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnactions.
33361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPhysical Presence
33371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnblank, Y
33391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates whether the platformAuth for this command may require
33411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnconfirmation through a physical presence indication
33421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypted
33441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnblank, 2, 4
33461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA numeric value that indicates the number of octets in the size field of
33481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe first parameter of a command
33491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBlank indicates that no size field is present and no parameter
33501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnencryption is allowed.
33511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypt
33531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnblank, 2, 4
33551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA numeric value that indicates the number of octets in the size field of
33571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe first parameter of a response
33581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBlank indicates that no size field is present and no parameter
33591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnencryption is allowed.
33601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
33621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
33631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
33651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
33661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 23
33681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
33691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
33711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.5.3
33721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
33741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC Listing
33761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 11 lists the command codes and their attributes. The only normative column in this table is the
33781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncolumn indicating the command code assigned to a specific command (the "Command Code" column).
33791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor all other columns, the command and response tables in Part 3 are definitive.
33801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypt
33821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypted
33841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPhysical Presence
33861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV Write
33881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 11 — Definition of (UINT32) TPM_CC Constants (Numeric Order) <IN/OUT, S>
33901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
33921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommand
33941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCode
33951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_FIRST
33971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
33981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000011F
33991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCompile variable. May decrease
34011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbased on implementation.
34021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PP_FIRST
34041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000011F
34061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCompile variable. Would decrease
34081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnif new PP commands are added
34091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_UndefineSpaceSpecial
34111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000011F
34131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_EvictControl
34191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000120
34211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_HierarchyControl
34271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000121
34291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_UndefineSpace
34351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000122
34371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ChangeEPS
34431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000124
34451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ChangePPS
34511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000125
34531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Clear
34591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000126
34611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ClearControl
34671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000127
34691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ClockSet
34751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000128
34771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_HierarchyChangeAuth
34831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000129
34851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
34911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_DefineSpace
34931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000012A
34951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
34981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
34991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
35011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PCR_Allocate
35031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000012B
35051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PCR_SetAuthPolicy
35111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000012C
35131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PP_Commands
35191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000012D
35211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_SetPrimaryPolicy
35271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000012E
35291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
35351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_FieldUpgradeStart
35371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000012F
35391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
35411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
35451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ClockRateAdjust
35471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000130
35491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
35511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_CreatePrimary
35551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000131
35571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_GlobalWriteLock
35591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000132
35611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PP_LAST
35631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000132
35651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_GetCommandAuditDigest
35671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000133
35691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_Increment
35731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000134
35751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 24
35791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
35801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
35831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
35851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
35871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
35891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
35911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
35931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCompile variable
35941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
35951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
35971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
35981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
35991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
36001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
36011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommand
36031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCode
36041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_SetBits
36061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000135
36081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
36101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_Extend
36121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000136
36141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
36161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_Write
36181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000137
36201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
36221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_WriteLock
36241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000138
36261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
36281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_DictionaryAttackLockReset
36301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000139
36321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
36341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_DictionaryAttackParameters
36361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000013A
36381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
36401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_ChangeAuth
36421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000013B
36441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
36461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
36481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PCR_Event
36501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000013C
36521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
36541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
36561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PCR_Reset
36581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000013D
36601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
36621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_SequenceComplete
36641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000013E
36661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
36681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_SetAlgorithmSet
36701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000013F
36721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
36741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_SetCommandCodeAuditStatus
36761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000140
36781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
36801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_FieldUpgradeData
36821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000141
36841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
36861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_IncrementalSelfTest
36881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000142
36901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
36921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_SelfTest
36941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000143
36961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
36981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
36991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Startup
37001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000144
37021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
37041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Shutdown
37061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000145
37081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
37101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_StirRandom
37121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000146
37141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
37161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ActivateCredential
37181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000147
37201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Certify
37221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000148
37241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyNV
37261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000149
37281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_CertifyCreation
37301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000014A
37321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Duplicate
37341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000014B
37361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_GetTime
37381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000014C
37401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
37421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
37441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_GetSessionAuditDigest
37461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000014D
37481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
37501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
37521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_Read
37541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000014E
37561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_ReadLock
37581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000014F
37601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ObjectChangeAuth
37621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000150
37641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
37661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicySecret
37681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000151
37701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
37721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Rewrap
37741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000152
37761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
37781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
37801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
37811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypt
37831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
37851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV Write
37871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypted
37891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
37911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPhysical Presence
37931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
37951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
37971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
37981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR
37991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR
38001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
38111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
38201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
38221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
38241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
38351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
38371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
38381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
38411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 25
38441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
38451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
38471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommand
38491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCode
38501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypt
38521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Create
38541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000153
38561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ECDH_ZGen
38621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000154
38641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_HMAC
38701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000155
38721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Import
38781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000156
38801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Load
38861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000157
38881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Quote
38941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000158
38961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
38981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
38991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_RSA_Decrypt
39021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000159
39041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_HMAC_Start
39061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000015B
39081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_SequenceUpdate
39121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000015C
39141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Sign
39181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000015D
39201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Unseal
39241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000015E
39261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicySigned
39281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000160
39301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ContextLoad
39321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000161
39341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
39361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContext
39381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ContextSave
39401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000162
39421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
39441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContext
39461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ECDH_KeyGen
39481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000163
39501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_EncryptDecrypt
39541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000164
39561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_FlushContext
39601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000165
39621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_LoadExternal
39641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000167
39661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_MakeCredential
39721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000168
39741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
39781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_ReadPublic
39801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000169
39821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyAuthorize
39841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000016A
39861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyAuthValue
39881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000016B
39901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
39921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyCommandCode
39941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000016C
39961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
39981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
39991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyCounterTimer
40001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000016D
40021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
40061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyCpHash
40081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000016E
40101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
40141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyLocality
40161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000016F
40181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyNameHash
40201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000170
40221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyOR
40241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000171
40261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyTicket
40281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000172
40301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ReadPublic
40321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000173
40341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 26
40361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
40371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV Write
40391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
40411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypted
40431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPhysical Presence
40451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
40471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
40491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
40511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
40591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
40611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContext
40631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV
40651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
40681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
40701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
40731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
40741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
40781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
40791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
40811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
40841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
40851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypt
40871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
40891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV Write
40911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypted
40931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
40951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPhysical Presence
40971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
40981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
40991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
41011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
41031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
41051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
41071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommand
41091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCode
41101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_RSA_Encrypt
41121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000174
41141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_StartAuthSession
41161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000176
41181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_VerifySignature
41201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000177
41221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ECC_Parameters
41241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000178
41261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_FirmwareRead
41281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000179
41301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_GetCapability
41321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000017A
41341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_GetRandom
41361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000017B
41381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_GetTestResult
41401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000017C
41421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Hash
41441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000017D
41461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PCR_Read
41481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000017E
41501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR
41521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyPCR
41541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000017F
41561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
41581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyRestart
41601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000180
41621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ReadClock
41641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000181
41661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PCR_Extend
41681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000182
41701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
41721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
41741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PCR_SetAuthValue
41761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000183
41781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnN
41801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
41821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_NV_Certify
41841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000184
41861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
41881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_EventSequenceComplete
41901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000185
41921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
41941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_HashSequenceStart
41961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000186
41981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
41991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyPhysicalPresence
42001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000187
42021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
42041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyDuplicationSelect
42061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000188
42081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
42101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyGetDigest
42121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000189
42141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
42161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_TestParms
42181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000018A
42201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_Commit
42221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000018B
42241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyPassword
42261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000018C
42281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_ZGen_2Phase
42301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000018D
42321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_EC_Ephemeral
42341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000018E
42361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_PolicyNvWritten
42381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000018F
42401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
42421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC_LAST
42441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000018F
42461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCompile variable. May increase
42481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbased on implementation.
42491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
42511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
42531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
42551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
42571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
42591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnO
42611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
42631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
42651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
42671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
42681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
42701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
42721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
42741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_COMMAND_CODE
42761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
42781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
42791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
42811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
42821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is not a FMT1 code
42841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand a parameter indicator
42851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue may not be added to
42861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 27
42881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
42891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypt
42911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncrypted
42931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommand
42951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCode
42961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
42981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
42991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPhysical Presence
43001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
43021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV Write
43041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
43061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
43081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis value.
43091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.6
43111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC (Response Codes)
43131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.6.1
43151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
43171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEach return from the TPM has a 32-bit response code. The TPM will always set the upper 20 bits (31:12)
43191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof the response code to 0 00 0016 and the low-order 12 bits (11:00) will contain the response code.
43201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a command succeeds, the TPM shall return TPM_RC_SUCCESS (0 0016) and will update any
43211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization-session nonce associated with the command.
43221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a command fails to complete for any reason, the TPM shall return
43231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn43241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna TPM_ST (UINT16) with a value of TPM_TAG_RSP_COMMAND or TPM_ST_NO_SESSIONS,
43261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfollowed by
43271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn43291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna UINT32 (responseSize) with a value of 10, followed by
43311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn43331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna UINT32 containing a response code with a value other than TPM_RC_SUCCESS.
43351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommands defined in this specification will use a tag of either TPM_ST_NO_SESSIONS or
43371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_SESSIONS. Error responses will use a tag value of TPM_ST_NO_SESSIONS and the
43381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code will be as defined in this specification. Commands that use tags defined in the TPM 1.2
43391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification will use TPM_TAG_RSP_COMMAND in an error and a response code defined in TPM 1.2.
43401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the tag of the command is not a recognized command tag, the TPM error response will differ depending
43411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnon TPM 1.2 compatibility. If the TPM supports 1.2 compatibility, the TPM shall return a tag of
43421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_TAG_RSP_COMMAND and an appropriate TPM 1.2 response code (TPM_BADTAG =
43431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn00 00 00 1E16). If the TPM does not have compatibility with TPM 1.2, the TPM shall return
43441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_NO_SESSION and a response code of TPM_RC_TAG.
43451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a command fails, the TPM shall not update the authorization-session nonces associated with the
43461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand and will not close the authorization sessions used by the command. Audit digests will not be
43471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnupdated on an error. Unless noted in the command actions, a command that returns an error shall leave
43481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe state of the TPM as if the command had not been attempted. The exception to this principle is that a
43491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfailure due to an authorization failure may update the dictionary-attack protection values.
43501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 28
43521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
43531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
43551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
43561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
43581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
43591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
43611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.6.2
43621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
43641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnResponse Code Formats
43661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe response codes for this specification are defined such that there is no overlap between the response
43681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncodes used for this specification and those assigned in previous TPM specifications.
43691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe formats defined in this clause only apply when the tag for the response is TPM_ST_NO_SESSIONS.
43701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe response codes use two different format groups. One group contains the TPM 1.2 compatible
43711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse codes and the response codes for this specification that are not related to command
43721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameters. The second group contains the errors that may be associated with a command parameter,
43731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle, or session.
43741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 2 shows the format for the response codes when bit 7 is zero.
43751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
43761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
43771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
43791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
43801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
43821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9
43831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
43851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8
43861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
43881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7
43891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnS
43911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbit
43931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnT
43951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnr
43971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
43981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnV
43991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
44011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6
44021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
44041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5
44051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnF
44071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
44091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4
44101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
44121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
44131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
44151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
44161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
44181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
44191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
44211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
44221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnE
44241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 2 — Format-Zero Response Codes
44261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
44281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
44291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
44311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
44321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 29
44341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
44351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
44371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
44391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe field definitions are:
44411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 12 — Format-Zero Response Codes
44421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
44431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
44451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
44471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn06:00
44491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnE
44511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe error number
44531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe interpretation of this field is dependent on the setting of the G and S fields.
44541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn07
44561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnF
44581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnformat selector
44601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR when the format is as defined in this Table 12 or when the response code is
44611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_BAD_TAG.
44621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn08
44641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnV
44661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnversion
44681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The error number is defined in this specification and is returned when the response tag
44691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis TPM_ST_NO_SESSIONS.
44701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The error number is defined by a previous TPM specification. The error number is
44711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturned when the response tag is TPM_TAG_RSP_COMMAND.
44721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
44731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn09
44751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn any error number returned by a TPM, the F (bit 7) and V (bit 8) attributes shall be CLEAR
44771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhen the response tag is TPM_TAG_RSP_COMMAND value used in TPM 1.2.
44781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved shall be zero.
44801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10
44821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnT
44841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTCG/Vendor indicator
44861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The response code is defined by the TPM vendor.
44871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The response code is defined by the TCG (a value in this specification).
44881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
44891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11
44911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnS
44931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute does not indicate a vendor-specific code unless the F attribute (bit[07]) is CLEAR.
44951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
44961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnseverity
44971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The response code is a warning and the command was not necessarily in error. This
44981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand indicates that the TPM is busy or that the resources of the TPM have to be adjusted in
44991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnorder to allow the command to execute.
45001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The response code indicates that the command had an error that would prevent it
45011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfrom running.
45021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen the format bit (bit 7) is SET, then the error occurred during the unmarshaling or validation of an
45041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninput parameter to the TPM. Figure 3 shows the format for the response codes when bit 7 is one.
45051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbit
45061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
45081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
45091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
45111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9
45151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnN
45171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8
45201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7
45231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6
45261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
45281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5
45311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnP
45331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4
45361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
45391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
45421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
45451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
45481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnE
45501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 3 — Format-One Response Codes
45521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThere are 64 errors with this format. The errors can be associated with a parameter, handle, or session.
45531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe error number for this format is in bits[05:00]. When an error is associated with a parameter, 0 40 16 is
45541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadded and N is set to the parameter number.
45551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor an error associated with a handle, a parameter number (1 to 7) is added to the N field. For an error
45561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassociated with a session, a value of 8 plus the session number (1 to 7) is added to the N field. In other
45571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwords, if P is clear, then a value of 0 to 7 in the N field will indicate a handle error, and a value of 8 – 15
45581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwill indicate a session error.
45591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
45601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf an implementation is not able to designate the handle, session, or parameter in error, then P and N will
45621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe zero.
45631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 30
45651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
45661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
45681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
45691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
45711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
45721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
45741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
45761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe field definitions are:
45781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 13 — Format-One Response Codes
45791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
45801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName Definition
45821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn05:00
45841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnE
45861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe error number
45881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe error number is independent of the other settings.
45891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn06
45911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnP
45931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The error is associated with a parameter.
45951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The error is associated with a handle or a session.
45961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn07
45981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
45991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnF
46001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe response code format selector
46021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis field shall be SET for the format in this table.
46031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11:08
46051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnN
46071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of the handle, session, or parameter in error
46091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf P is SET, then this field is the parameter in error. If P is CLEAR, then this field indicates the
46101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle or session in error. Handles use values of N between 0000 2 and 01112. Sessions use
46111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues between 10002 and 11112.
46121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe groupings of response codes are determined by bits 08, 07, and 06 of the response code as
46141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsummarized in Table 14.
46151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 14 — Response Code Groupings
46161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
46171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
46181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8
46191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
46211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7
46221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
46241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6
46251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
46271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
46291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
46311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnx
46331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna response code defined by TPM 1.2
46351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
46361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn “x” in a column indicates that this may be either 0 or 1 and not affect the grouping of the response
46381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode.
46391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
46411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
46431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnx
46451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna response code defined by this specification with no handle, session, or parameter number modifier
46471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnx
46491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
46511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
46531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna response code defined by this specification with either a handle or session number modifier
46551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnx
46571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
46591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
46611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna response code defined by this specification with a parameter number modifier
46631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
46651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
46661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
46681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
46691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 31
46711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
46721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
46741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.6.3
46751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
46771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC Values
46791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn general, response codes defined in Part 2 will be unmarshaling errors and will have the F (format) bit
46811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET. Codes that are unique to Part 3 will have the F bit CLEAR but the V (version) attribute will be SET to
46821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicate that it is a TPM 2.0 response code.
46831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
46841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe constant RC_VER1 is used to indicate that the V attribute is SET and the constant RC_ FMT1 is used
46861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto indicate that the F attribute is SET and that the return code is variable based on handle, session, and
46871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameter modifiers.
46881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 15 — Definition of (UINT32) TPM_RC Constants (Actions) <OUT>
46901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
46911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
46931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
46951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SUCCESS
46971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
46981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000
46991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_BAD_TAG
47011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x01E
47031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined for compatibility with TPM 1.2
47051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1
47071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x100
47091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnset for all format 0 response codes
47111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_INITIALIZE
47131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x000
47151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM not initialized
47171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommands not being accepted because of a TPM
47181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfailure
47191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_FAILURE
47211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x001
47231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
47251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SEQUENCE
47271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x003
47291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimproper use of a sequence handle
47311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_PRIVATE
47331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x00B
47351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_HMAC
47371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x019
47391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_DISABLED
47411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x020
47431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_EXCLUSIVE
47451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x021
47471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand failed because audit sequence required
47491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexclusivity
47501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_AUTH_TYPE
47521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x024
47541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization handle is not correct for command
47561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_AUTH_MISSING
47581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x025
47601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand requires an authorization session for
47621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle and it is not present.
47631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_POLICY
47651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x026
47671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpolicy Failure In Math Operation or an invalid
47691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauthPolicy value
47701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_PCR
47721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x027
47741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR check fail
47761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_PCR_CHANGED
47781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x028
47801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR have changed since checked.
47821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_UPGRADE
47841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x02D
47861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor
47881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnall
47891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommands
47901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnother
47911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthan
47921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_FieldUpgradeData(), this code indicates
47931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat the TPM is in field upgrade mode; for
47941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_FieldUpgradeData(), this code indicates
47951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat the TPM is not in field upgrade mode
47961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_TOO_MANY_CONTEXTS
47981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
47991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x02E
48001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext ID counter is at maximum.
48021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_AUTH_UNAVAILABLE
48041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x02F
48061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauthValue or authPolicy is not available for
48081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselected entity.
48091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REBOOT
48111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x030
48131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna _TPM_Init and Startup(CLEAR) is required
48151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbefore the TPM can resume operation.
48161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x031
48181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe protection algorithms (hash and symmetric) are
48201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot reasonably balanced. The digest size of the
48211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash must be larger than the key size of the
48221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric algorithm.
48231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_UNBALANCED
48251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 32
48271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
48281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis
48301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay
48311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe
48321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturned
48331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnby
48341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetTestResult() as the testResult
48351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameter.
48361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
48381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
48391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
48411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
48421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
48441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
48451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
48471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
48481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
48501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_COMMAND_SIZE
48521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x042
48541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand commandSize value is inconsistent with
48561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontents of the command buffer; either the size is
48571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot the same as the octets loaded by the hardware
48581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninterface layer or the value is not large enough to
48591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhold a command header
48601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_COMMAND_CODE
48621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x043
48641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand code not supported
48661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_AUTHSIZE
48681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x044
48701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe value of authorizationSize is out of range or the
48721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of octets in the Authorization Area is
48731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngreater than required
48741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_AUTH_CONTEXT
48761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x045
48781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuse of an authorization session with a context
48801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand
48811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NV_RANGE
48831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x046
48851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV offset+size is out of range.
48871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NV_SIZE
48891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x047
48911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRequested allocation size is larger than allowed.
48931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NV_LOCKED
48951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x048
48971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
48981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV access locked.
48991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NV_AUTHORIZATION
49011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x049
49031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV access authorization fails in command actions
49051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(this failure does not affect lockout.action)
49061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NV_UNINITIALIZED
49081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x04A
49101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan NV Index is used before being initialized or the
49121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstate saved by TPM2_Shutdown(STATE) could not
49131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe restored
49141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NV_SPACE
49161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x04B
49181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninsufficient space for NV allocation
49201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NV_DEFINED
49221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x04C
49241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV Index or persistend object already defined
49261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_BAD_CONTEXT
49281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x050
49301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext in TPM2_ContextLoad() is not valid
49321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_CPHASH
49341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x051
49361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncpHash value already set or not correct for use
49381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_PARENT
49401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x052
49421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle for parent is not a valid parent
49441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NEEDS_TEST
49461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x053
49481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsome function needs testing.
49501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x054
49521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturned when an internal function cannot process
49541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna request due to an unspecified problem. This
49551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode is usually related to invalid parameters that
49561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnare not properly filtered by the input unmarshaling
49571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode.
49581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SENSITIVE
49601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x055
49621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe sensitive area did not unmarshal correctly after
49641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecryption – this code is used in lieu of the other
49651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunmarshaling errors so that an attacker cannot
49661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndetermine where the unmarshaling error occurred
49671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_MAX_FM0
49691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_VER1 + 0x07F
49711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlargest version 1 code that is not a warning
49731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NO_RESULT
49751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNew Subsection
49771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1
49791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x080
49811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis bit is SET in all format 1 response codes
49831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe codes in this group may have a value added to
49841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthem to indicate the handle, session, or parameter
49851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto which they apply.
49861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_ASYMMETRIC
49881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x001
49901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnasymmetric algorithm not supported or not correct
49921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_ATTRIBUTES
49941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x002
49961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninconsistent attributes
49981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
49991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_HASH
50001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x003
50021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash algrithm not supported or not appropriate
50041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_VALUE
50061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x004
50081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue is out of range or is not correct for the
50101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext
50111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_HIERARCHY
50131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x005
50151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhierarchy is not enabled or is not correct for the
50171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuse
50181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
50201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
50211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
50231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
50241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 33
50261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
50271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
50291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
50311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
50331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
50351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
50371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_KEY_SIZE
50391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x007
50411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey size is not supported
50431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_MGF
50451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x008
50471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmask generation function not supported
50491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_MODE
50511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x009
50531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmode of operation not supported
50551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_TYPE
50571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x00A
50591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe type of the value is not appropriate for the use
50611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_HANDLE
50631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x00B
50651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe handle is not correct for the use
50671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_KDF
50691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x00C
50711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsupported key derivation function or function not
50731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnappropriate for use
50741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_RANGE
50761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x00D
50781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue was out of allowed range.
50801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_AUTH_FAIL
50821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x00E
50841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe authorization HMAC check failed and DA
50861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncounter incremented
50871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NONCE
50891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x00F
50911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninvalid nonce size
50931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_PP
50951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x010
50971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
50981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization requires assertion of PP
50991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SCHEME
51011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x012
51031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsupported or incompatible scheme
51051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SIZE
51071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x015
51091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure is the wrong size
51111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SYMMETRIC
51131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x016
51151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunsupported symmetric algorithm or key size, or
51171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot appropriate for instance
51181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_TAG
51201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x017
51221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnincorrect structure tag
51241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SELECTOR
51261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x018
51281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunion selector is incorrect
51301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_INSUFFICIENT
51321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x01A
51341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM was unable to unmarshal a value
51361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbecause there were not enough octets in the input
51371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer
51381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SIGNATURE
51401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x01B
51421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe signature is not valid
51441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_KEY
51461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x01C
51481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey fields are not compatible with the selected use
51501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_POLICY_FAIL
51521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x01D
51541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna policy check failed
51561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_INTEGRITY
51581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x01F
51601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnintegrity check failed
51621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_TICKET
51641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x020
51661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninvalid ticket
51681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_RESERVED_BITS
51701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x021
51721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved bits not set to zero as required
51741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_BAD_AUTH
51761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x022
51781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthroization failure without DA implications
51801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_EXPIRED
51821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x023
51841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe policy has expired
51861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_POLICY_CC
51881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x024
51901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe commandCode in the policy is not the
51921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncommandCode of the command or the command
51931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode in a policy command references a command
51941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat is not implemented
51951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_BINDING
51971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
51981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x025
51991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpublic and sensitive portions of an object are not
52011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncryptographically bound
52021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_CURVE
52041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x026
52061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncurve not supported
52081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_ECC_POINT
52101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_FMT1 + 0x027
52121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpoint is not on the required curve.
52141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNew Subsection
52161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN
52171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x900
52191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnset for warning response codes
52211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_CONTEXT_GAP
52231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x001
52251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngap for context ID is too large
52271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_OBJECT_MEMORY
52291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x002
52311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnout of memory for object contexts
52331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 34
52351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
52361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
52381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
52391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
52411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
52421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
52441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
52461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
52481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
52501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
52521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SESSION_MEMORY
52541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x003
52561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnout of memory for session contexts
52581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_MEMORY
52601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x004
52621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnout of shared object/session memory or need
52641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspace for internal operations
52651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SESSION_HANDLES
52671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x005
52691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnout of session handles – a session must be flushed
52711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbefore a new session may be created
52721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnout of object handles – the handle space for
52731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobjects is depleted and a reboot is required
52741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
52751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_LOCALITY
52771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_YIELDED
52791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis cannot occur
52811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementation.
52821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
52841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_OBJECT_HANDLES
52861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThere is no reason why an implementation
52881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwould implement a design that would deplete
52891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle space. Platform specifications are
52901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnencouraged to forbid it.
52911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x006
52931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x007
52951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x008
52971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
52981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnon
52991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
53011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreference
53031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbad locality
53051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM has suspended operation on the
53061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand; forward progress was made and the
53071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand may be retried.
53081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSee Part 1, “Multi-tasking.”
53091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
53101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis cannot occur
53121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementation.
53131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnon
53151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
53171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreference
53191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_CANCELED
53211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x009
53231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe command was canceled
53251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_TESTING
53271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x00A
53291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM is performing self-tests
53311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_H0
53331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x010
53351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 1 handle in the handle area references a
53371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient object or session that is not loaded
53381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_H1
53401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x011
53421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 2 handle in the handle area references a
53441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient object or session that is not loaded
53451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_H2
53471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x012
53491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 3 handle in the handle area references a
53511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient object or session that is not loaded
53521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_H3
53541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x013
53561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 4 handle in the handle area references a
53581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient object or session that is not loaded
53591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_H4
53611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x014
53631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 5 handle in the handle area references a
53651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient object or session that is not loaded
53661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_H5
53681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x015
53701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 6 handle in the handle area references a
53721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient object or session that is not loaded
53731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_H6
53751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x016
53771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 7 handle in the handle area references a
53791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient object or session that is not loaded
53801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_S0
53821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x018
53841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 1 authorization session handle references a
53861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession that is not loaded
53871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_S1
53891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x019
53911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 2 authorization session handle references a
53931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession that is not loaded
53941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_S2
53961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x01A
53981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
53991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 3 authorization session handle references a
54001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession that is not loaded
54011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_S3
54031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x01B
54051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 4th authorization session handle references a
54071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession that is not loaded
54081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_S4
54101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x01C
54121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 5 session handle references a session that is
54141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot loaded
54151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_S5
54171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x01D
54191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 6 session handle references a session that is
54211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot loaded
54221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnst
54241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnd
54261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrd
54281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
54301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
54321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
54341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
54361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnst
54381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnd
54401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrd
54421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
54441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
54461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
54481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
54491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
54511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
54521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 35
54541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
54551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
54571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
54591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
54611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
54631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
54651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_REFERENCE_S6
54671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x01E
54691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe 7 authorization session handle references a
54711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession that is not loaded
54721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NV_RATE
54741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x020
54761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM is rate-limiting accesses to prevent
54781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwearout of NV
54791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_LOCKOUT
54811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x021
54831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorizations for objects subject to DA protection
54851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnare not allowed at this time because the TPM is in
54861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDA lockout mode
54871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_RETRY
54891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x022
54911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM was not able to start the command
54931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NV_UNAVAILABLE
54951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x023
54971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
54981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe command may require writing of NV and NV is
54991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot current accessible
55001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_NOT_USED
55021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRC_WARN + 0x7F
55041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis value is reserved and shall not be returned by
55061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM
55071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
55091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAdditional Defines
55111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_H
55121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000
55141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a handle-related error
55161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_P
55181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x040
55201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-related error
55221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_S
55241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x800
55261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a session-related error
55281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_1
55301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x100
55321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-, handle-, or session-related
55341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror
55351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_2
55371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x200
55391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-, handle-, or session-related
55411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror
55421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_3
55441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x300
55461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-, handle-, or session-related
55481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror
55491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_4
55511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x400
55531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-, handle-, or session-related
55551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror
55561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_5
55581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x500
55601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-, handle-, or session-related
55621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror
55631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_6
55651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x600
55671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-, handle-, or session-related
55691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror
55701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_7
55721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x700
55741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-, handle-, or session-related
55761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror
55771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_8
55791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x800
55811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-related error
55831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_9
55851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x900
55871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-related error
55891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_A
55911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xA00
55931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-related error
55951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_B
55971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
55981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xB00
55991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-related error
56011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_C
56031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xC00
56051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-related error
56071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_D
56091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xD00
56111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-related error
56131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_E
56151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xE00
56171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-related error
56191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_F
56211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xF00
56231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadd to a parameter-related error
56251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_N_MASK
56271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xF00
56291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber mask
56311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 36
56331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
56341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
56361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
56371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
56391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
56401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
56421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.7
56431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
56451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CLOCK_ADJUST
56471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPM_CLOCK_ADJUST value is used to change the rate at which the TPM internal oscillator is divided.
56491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA change to the divider will change the rate at which Clock and Time change.
56501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
56511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe recommended adjustments are approximately 1% for a course adjustment, 0.1% for a medium
56531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadjustment, and the minimum possible on the implementation for the fine adjustment (e.g., one count of
56541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe pre-scalar if possible).
56551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 16 — Definition of (INT8) TPM_CLOCK_ADJUST Constants <IN>
56571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
56581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
56601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
56621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CLOCK_COARSE_SLOWER
56641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn-3
56661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSlow the Clock update rate by one coarse adjustment step.
56681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CLOCK_MEDIUM_SLOWER
56701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn-2
56721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSlow the Clock update rate by one medium adjustment step.
56741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CLOCK_FINE_SLOWER
56761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn-1
56781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSlow the Clock update rate by one fine adjustment step.
56801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CLOCK_NO_CHANGE
56821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
56841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNo change to the Clock update rate.
56861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CLOCK_FINE_FASTER
56881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
56901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSpeed the Clock update rate by one fine adjustment step.
56921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CLOCK_MEDIUM_FASTER
56941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
56961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSpeed the Clock update rate by one medium adjustment step.
56981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
56991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CLOCK_COARSE_FASTER
57001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
57021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSpeed the Clock update rate by one coarse adjustment step.
57041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
57061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.8
57081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO (EA Arithmetic Operands)
57101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 17 — Definition of (UINT16) TPM_EO Constants <IN/OUT>
57111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOperation Name
57131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
57151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
57171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_EQ
57191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000
57211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA=B
57231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_NEQ
57251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0001
57271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA≠B
57291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_SIGNED_GT
57311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0002
57331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA > B signed
57351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_UNSIGNED_GT
57371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0003
57391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA > B unsigned
57411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_SIGNED_LT
57431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0004
57451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA < B signed
57471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_UNSIGNED_LT
57491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0005
57511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA < B unsigned
57531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_SIGNED_GE
57551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0006
57571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA ≥ B signed
57591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_UNSIGNED_GE
57611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0007
57631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA ≥ B unsigned
57651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_SIGNED_LE
57671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0008
57691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA ≤ B signed
57711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_UNSIGNED_LE
57731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0009
57751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA ≤ B unsigned
57771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_BITSET
57791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000A
57811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAll bits SET in B are SET in A. ((A&B)=B)
57831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_EO_BITCLEAR
57851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x000B
57871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAll bits SET in B are CLEAR in A. ((A&B)=0)
57891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
57911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
57931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
57941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnResponse code returned when unmarshaling of this type fails
57961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
57971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
57981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
57991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 37
58011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
58021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
58041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.9
58061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
58081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST (Structure Tags)
58101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStructure tags are used to disambiguate structures. They are 16-bit values with the most significant bit
58121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET so that they do not overlap TPM_ALG_ID values. A single exception is made for the value
58131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassociated with TPM_ST_RSP_COMMAND (0x00C4), which has the same value as the
58141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_TAG_RSP_COMMAND tag from earlier versions of this specification. This value is used when the
58151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM is compatible with a previous TPM specification and the TPM cannot determine which family of
58161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code to return because the command tag is not valid.
58171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMany of the structures defined in this document have parameters that are unions of other structures. That
58181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis, a parameter may be one of several structures. The parameter will have a selector value that indicates
58191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhich of the options is actually present.
58201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn order to allow the marshaling and unmarshaling code to determine which of the possible structures is
58211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed, each selector will have a unique interface type and will constrain the number of possible tag
58221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues.
58231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 18 defines the structure tags values. The definition of many structures is context-sensitive using an
58241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm ID. In cases where an algorithm ID is not a meaningful way to designate the structure, the
58251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues in this table are used.
58261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 18 — Definition of (UINT16) TPM_ST Constants <IN/OUT, S>
58271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
58281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_RSP_COMMAND
58291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
58311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
58331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00C4
58351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag value for a response; used when there is an error
58371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin the tag. This is also the value returned from a TPM
58381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1.2 when an error occurs. This value is used in this
58391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification because an error in the command tag
58401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay prevent determination of the family. When this tag
58411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis used in the response, the response code will be
58421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_BAD_TAG (0 1E16), which has the same
58431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumeric value as the TPM 1.2 response code for
58441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_BADTAG.
58451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
58461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn a previously published version of this
58481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification,
58491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_BAD_TAG
58501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwas
58511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnincorrectly assigned a value of 0x030 instead of
58521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn30 (0x01e). Some implementations my return the
58531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnold value instead of the new value.
58541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_NULL
58561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0X8000
58581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno structure type specified
58601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_NO_SESSIONS
58621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8001
58641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag value for a command/response for a command
58661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined in this specification; indicating that the
58671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand/response has no attached sessions and no
58681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauthorizationSize/parameterSize value is present
58691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the responseCode from the TPM is not
58701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SUCCESS, then the response tag shall
58711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhave this value.
58721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_SESSIONS
58741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8002
58761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag value for a command/response for a command
58781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined in this specification; indicating that the
58791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand/response has one or more attached
58801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsessions and the authorizationSize/parameterSize
58811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfield is present
58821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 38
58841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
58851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
58871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
58881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
58901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
58911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
58931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
58941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
58951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
58971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
58981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
58991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
59001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8003
59021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen used between application software and the TPM
59041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresource manager, this tag indicates that the
59051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand has no sessions and the handles are using
59061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe Name format rather than the 32-bit handle format.
59071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
59081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe response to application software will have a
59101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag of TPM_ST_NO_SESSIONS.
59111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBetween the TRM and TPM, this tag would occur in a
59131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse from a TPM that overlaps the tag parameter
59141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof a request with the tag parameter of a response,
59151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhen the response has no associated sessions.
59161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
59171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
59191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8004
59211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis tag is not used by all TPM or TRM
59231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementations.
59241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen used between application software and the TPM
59261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresource manager, this tag indicates that the
59271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand has sessions and the handles are using the
59281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName format rather than the 32-bit handle format.
59291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
59301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the command completes successfully, the
59321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse to application software will have a tag
59331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof TPM_ST_SESSIONS.
59341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBetween the TRM and TPM, would occur in a
59361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse from a TPM that overlaps the tag parameter
59371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof a request with the tag parameter of a response,
59381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhen the response has authorization sessions.
59391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
59401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis tag is not used by all TPM or TRM
59421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementations.
59431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_NV
59451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8014
59471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for an attestation structure
59491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_COMMAND_AUDIT
59511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8015
59531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for an attestation structure
59551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_SESSION_AUDIT
59571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8016
59591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for an attestation structure
59611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_CERTIFY
59631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8017
59651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for an attestation structure
59671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_QUOTE
59691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8018
59711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for an attestation structure
59731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_TIME
59751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8019
59771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for an attestation structure
59791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_CREATION
59811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x801A
59831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for an attestation structure
59851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
59871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x801B
59891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndo not use
59911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
59921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
59931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis
59941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwas
59951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpreviously
59961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassigned
59971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto
59981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_NV. The tag is changed
59991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbecause the structure has changed
60001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_CREATION
60021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8021
60041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for a ticket type
60061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_VERIFIED
60081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8022
60101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for a ticket type
60121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_AUTH_SECRET
60141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8023
60161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for a ticket type
60181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_HASHCHECK
60201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8024
60221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for a ticket type
60241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_AUTH_SIGNED
60261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8025
60281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for a ticket type
60301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_FU_MANIFEST
60321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x8029
60341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag for a structure describing a Field Upgrade Policy
60361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
60381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
60391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
60411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
60421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 39
60441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
60451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
60471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
60491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.10 TPM_SU (Startup Type)
60511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese values are used in TPM2_Startup() to indicate the shutdown and startup mode. The defined
60521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstartup sequences are:
60531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna) TPM Reset – Two cases:
60541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1) Shutdown(CLEAR) followed by Startup(CLEAR)
60551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2) Startup(CLEAR) with no Shutdown()
60561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnb) TPM Restart – Shutdown(STATE) followed by Startup(CLEAR)
60571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnc) TPM Resume – Shutdown(STATE) followed by Startup(STATE)
60581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SU values of 80 0016 and above are reserved for internal use of the TPM and may not be assigned
60591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues.
60601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
60611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn the reference code, a value of FF FF 16 indicates that the startup state has not been set. If this was
60631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined in this table to be, say, TPM_SU_NONE, then TPM_SU_NONE would be a valid input value but
60641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe caller is not allowed to indicate the that the startup type is TPM_SU_NONE so the reserved value is
60651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined in the implementation as required for internal TPM uses.
60661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 19 — Definition of (UINT16) TPM_SU Constants <IN>
60681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
60691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
60711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
60731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SU_CLEAR
60751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000
60771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnon TPM2_Shutdown(), indicates that the TPM should prepare
60791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor loss of power and save state required for an orderly startup
60801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM Reset).
60811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnon TPM2_Startup(), indicates that the TPM should start from
60821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnperform TPM Reset or TPM Restart
60831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SU_STATE
60851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0001
60871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnon TPM2_Shutdown(), indicates that the TPM should prepare
60891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor loss of power and save state required for an orderly startup
60901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM Restart or TPM Resume)
60911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnon TPM2_Startup(), indicates that the TPM should restore the
60921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstate saved by TPM2_Shutdown(TPM_SU_STATE)
60931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
60951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when incorrect value is used
60971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
60981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.11 TPM_SE (Session Type)
60991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis type is used in TPM2_StartAuthSession() to indicate the type of the session to be created.
61001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 20 — Definition of (UINT8) TPM_SE Constants <IN>
61011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
61021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
61041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SE_HMAC
61061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00
61081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SE_POLICY
61101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x01
61121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_SE_TRIAL
61141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x03
61161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
61181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 40
61201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
61211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
61231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe policy session is being used to compute the policyHash and
61251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot for command authorization.
61261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis setting modifies some policy commands and prevents
61271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession from being used to authorize a command.
61281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when incorrect value is used
61291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
61311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
61321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
61341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
61351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
61371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
61391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.12 TPM_CAP (Capabilities)
61411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM_CAP values are used in TPM2_GetCapability() to select the type of the value to be returned.
61421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe format of the response varies according to the type of the value.
61431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 21 — Definition of (UINT32) TPM_CAP Constants
61441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
61451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
61471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnProperty Type
61491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReturn Type
61511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_FIRST
61531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000000
61551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_ALGS
61571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000000 TPM_ALG_ID
61591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_HANDLES
61611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000001 TPM_HANDLE
61631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_HANDLE
61651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_COMMANDS
61671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000002 TPM_CC
61691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_CCA
61711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_PP_COMMANDS
61731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000003 TPM_CC
61751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_CC
61771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_AUDIT_COMMANDS
61791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000004 TPM_CC
61811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_CC
61831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_PCRS
61851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000005 reserved
61871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_PCR_SELECTION
61891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_TPM_PROPERTIES
61911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000006 TPM_PT
61931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_TAGGED_TPM_PROPERTY
61951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_PCR_PROPERTIES
61971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
61981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000007 TPM_PT_PCR
61991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(1)
62011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_ECC_CURVES
62031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000008 TPM_ECC_CURVE
62051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_LAST
62071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_ALG_PROPERTY
62091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_TAGGED_PCR_PROPERTY
62111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(1)
62121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000008
62141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_VENDOR_PROPERTY 0x00000100 manufacturer specific
62161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_ECC_CURVE
62181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmanufacturer-specific values
62201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
62221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTES:
62231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(1) The TPM_ALG_ID or TPM_ECC_CURVE is cast to a UINT32
62241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.13 TPM_PT (Property Tag)
62261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM_PT constants are used in TPM2_GetCapability(capability = TPM_CAP_TPM_PROPERTIES) to
62271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicate the property being selected or returned.
62281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe values in the fixed group (PT_FIXED) are not changeable through programmatic means other than a
62291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirmware update. The values in the variable group (PT_VAR) may be changed with TPM commands but
62301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshould be persistent over power cycles and only changed when indicated by the detailed actions code.
62311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 22 — Definition of (UINT32) TPM_PT Constants <IN/OUT, S>
62321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
62331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
62351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
62371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_NONE
62391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000000
62411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates no property type
62431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_GROUP
62451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000100
62471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe number of properties in each group.
62491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE The first group with any properties is group 1
62501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(PT_GROUP * 1). Group 0 is reserved.
62511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED
62531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_GROUP * 1 the
62551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngroup
62561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof
62571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfixed
62581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproperties
62591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturned
62601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnas
62611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_TAGGED_PROPERTY
62621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe values in this group are only changed due to a
62631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirmware change in the TPM.
62641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_FAMILY_INDICATOR
62661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 0 a 4-octet character string containing the TPM Family value
62681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_SPEC_FAMILY)
62691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
62711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
62721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
62741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
62751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 41
62771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
62781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
62801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
62821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_LEVEL
62831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
62851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
62871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
62891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 1 the level of the specification
62911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
62921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_REVISION
62941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor this specification, the level is zero.
62961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
62981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
62991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe level is on the title page of the specification.
63001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 2 the specification Revision times 100
63021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE Revision 01.01 would have a value of 101.
63031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
63041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_DAY_OF_YEAR
63061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe Revision value is on the title page of the
63081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification.
63091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 3 the specification day of year using TCG calendar
63111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE November 15, 2010, has a day of year value of 319
63121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(00 00 01 3F16).
63131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
63141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_YEAR
63161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe specification date is on the title page of the
63181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification.
63191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 4 the specification year using the CE
63211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE The year 2010 has a value of 00 00 07 DA16.
63221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
63231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe specification date is on the title page of the
63251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification.
63261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_MANUFACTURER
63281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 5 the vendor ID unique to each TPM manufacturer
63301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_VENDOR_STRING_1
63321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 6 the first four characters of the vendor ID string
63341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
63351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen the vendor string is fewer than 16 octets, the
63371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnadditional property values do not have to be present.
63381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA vendor string of 4 octets can be represented in one
63391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn32-bit value and no null terminating character is
63401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired.
63411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_VENDOR_STRING_2
63431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 7 the second four characters of the vendor ID string
63451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_VENDOR_STRING_3
63471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 8 the third four characters of the vendor ID string
63491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_VENDOR_STRING_4
63511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 9 the fourth four characters of the vendor ID sting
63531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_VENDOR_TPM_TYPE
63551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 10 vendor-defined value indicating the TPM model
63571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_FIRMWARE_VERSION_1
63591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 11 the most-significant 32 bits of a vendor-specific value
63611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicating the version of the firmware
63621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_FIRMWARE_VERSION_2
63641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 12 the least-significant 32 bits of a vendor-specific value
63661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicating the version of the firmware
63671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_INPUT_BUFFER
63691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 13 the maximum size of
63711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_MAX_BUFFER)
63721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_TRANSIENT_MIN
63741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 14 the minimum number of transient objects that can be held
63761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin TPM RAM
63771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
63781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_PERSISTENT_MIN
63801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameter
63821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(typically,
63841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
63861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis minimum shall be no less than the minimum
63881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue required by the platform-specific specification
63891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto which the TPM is built.
63901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 15 the minimum number of persistent objects that can be
63921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnheld in TPM NV memory
63931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
63941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_LOADED_MIN
63961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
63981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
63991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis minimum shall be no less than the minimum
64001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue required by the platform-specific specification
64011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto which the TPM is built.
64021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 16 the minimum number of authorization sessions that can
64041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe held in TPM RAM
64051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
64061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 42
64081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
64091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis minimum shall be no less than the minimum
64111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue required by the platform-specific specification
64121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto which the TPM is built.
64131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
64151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
64171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
64191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
64211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
64231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
64241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_ACTIVE_SESSIONS_MAX
64251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
64271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
64281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
64301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 17 the number of authorization sessions that may be active at
64321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna time
64331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA session is active when it has a context associated with
64341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnits handle. The context may either be in TPM RAM or be
64351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext saved.
64361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
64371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value shall be no less than the minimum value
64391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired by the platform-specific specification to
64401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhich the TPM is built.
64411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_COUNT
64431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 18 the number of PCR implemented
64451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE This number is determined by the defined
64461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattributes, not the number of PCR that are populated.
64471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_SELECT_MIN
64491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 19 the
64511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnminimum
64521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber
64531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof
64541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_PCR_SELECT.sizeOfSelect
64551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
64561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_CONTEXT_GAP_MAX
64581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoctets
64601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin
64621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
64641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is not determined by the number of PCR
64661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplemented but by the number of PCR required by
64671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe platform-specific specification with which the TPM
64681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis compliant.
64691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 20 the maximum allowed difference (unsigned) between the
64711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncontextID values of two saved session contexts
64721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn16
64731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value shall be at least 2 -1 (65535).
64751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 21 skipped
64761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_NV_COUNTERS_MAX
64771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 22 the maximum number of NV Indexes that are allowed to
64791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhave the TPMA_NV_COUNTER attribute SET
64801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
64811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIt is allowed for this value to be larger than the
64831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of NV Indexes that can be defined. This
64841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwould be indicative of a TPM implementation that did
64851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot use different implementation technology for
64861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndifferent NV Index types.
64871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_NV_INDEX_MAX
64891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 23 the maximum size of an NV Index data area
64911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_MEMORY
64931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 24 a TPMA_MEMORY indicating the memory management
64951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmethod for the TPM
64961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_CLOCK_UPDATE
64981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
64991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 25 interval, in milliseconds, between updates to the copy of
65001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CLOCK_INFO.clock in NV
65011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_CONTEXT_HASH
65031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 26 the algorithm used for the integrity HMAC on saved
65051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontexts
65061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand
65071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor
65081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhashing
65091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
65101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnfuData
65111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof
65121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_FirmwareRead()
65131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_CONTEXT_SYM
65151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 27 the algorithm used for encryption of saved contexts
65171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_CONTEXT_SYM_SIZE
65191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 28 the size of the key used for encryption of saved contexts
65211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_ORDERLY_COUNT
65231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 29 the modulus - 1 of the count for NV update of an orderly
65251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncounter
65261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe returned value is MAX_ORDERLY_COUNT.
65271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnN
65281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis will have a value of 2 – 1 where 1 ≤ N ≤ 32
65291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
65301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn “orderly counter” is an NV Index with
65321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_COUNTER and TPMA_NV_ORDERLY
65331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnboth SET.
65341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_MAX_COMMAND_SIZE
65361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 30 the maximum value for commandSize in a command
65381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_MAX_RESPONSE_SIZE
65401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 31 the maximum value for responseSize in a response
65421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_MAX_DIGEST
65441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 32 the maximum size of a digest that can be produced by the
65461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM
65471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_MAX_OBJECT_CONTEXT
65491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 33 the maximum size of an object context that will be
65511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturned by TPM2_ContextSave
65521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
65541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
65551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
65571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
65581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 43
65601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
65611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
65631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
65651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
65671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
65691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
65711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_MAX_SESSION_CONTEXT PT_FIXED + 34 the maximum size of a session context that will be
65731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturned by TPM2_ContextSave
65741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PS_FAMILY_INDICATOR
65751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 35 platform-specific family (a TPM_PS value)(see Table 24)
65771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
65781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe platform-specific values for the TPM_PT_PS
65801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameters are in the relevant platform-specific
65811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification. In the reference implementation, all of
65821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthese values are 0.
65831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PS_LEVEL
65851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 36 the level of the platform-specific specification
65871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PS_REVISION
65891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 37 the specification Revision times 100 for the platformspecific specification
65911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PS_DAY_OF_YEAR
65931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 38 the platform-specific specification day of year using TCG
65951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncalendar
65961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PS_YEAR
65981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
65991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 39 the platform-specific specification year using the CE
66001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_SPLIT_MAX
66021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 40 the number of split signing operations supported by the
66041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM
66051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_TOTAL_COMMANDS
66071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 41 total number of commands implemented in the TPM
66091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_LIBRARY_COMMANDS
66111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 42 number of commands from the TPM library that are
66131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplemented
66141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_VENDOR_COMMANDS
66161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 43 number of vendor commands that are implemented
66181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_NV_BUFFER_MAX
66201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_FIXED + 44 the maximum data size in one NV write command
66221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR
66241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_GROUP * 2 the group of variable properties returned as
66261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_TAGGED_PROPERTY
66271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe properties in this group change because of a
66281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnProtected Capability other than a firmware update. The
66291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues are not necessarily persistent across all power
66301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransitions.
66311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PERMANENT
66331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 0
66351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_PERMANENT
66371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_STARTUP_CLEAR
66391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 1
66411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_STARTUP_CLEAR
66431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_NV_INDEX
66451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 2
66471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of NV Indexes currently defined
66491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_LOADED
66511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 3
66531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of authorization sessions currently loaded into
66551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM RAM
66561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_LOADED_AVAIL
66581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 4
66601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of additional authorization sessions, of any
66621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntype, that could be loaded into TPM RAM
66631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is an estimate. If this value is at least 1, then at
66641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnleast one authorization session of any type may be
66651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnloaded. Any command that changes the RAM memory
66661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallocation can make this estimate invalid.
66671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
66681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_ACTIVE
66701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 44
66721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
66731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 5
66751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA valid implementation may return 1 even if more
66771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthan one authorization session would fit into RAM.
66781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of active authorization sessions currently
66801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbeing tracked by the TPM
66811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the sum of the loaded and saved sessions.
66821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
66841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
66851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
66871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
66881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
66901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
66911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_ACTIVE_AVAIL
66921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
66941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
66951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
66971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
66981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 6
66991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of additional authorization sessions, of any
67011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntype, that could be created
67021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is an estimate. If this value is at least 1, then at
67031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnleast one authorization session of any type may be
67041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncreated. Any command that changes the RAM memory
67051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallocation can make this estimate invalid.
67061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
67071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_TRANSIENT_AVAIL
67091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 7
67111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA valid implementation may return 1 even if more
67131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthan one authorization session could be created.
67141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnestimate of the number of additional transient objects that
67161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncould be loaded into TPM RAM
67171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is an estimate. If this value is at least 1, then at
67181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnleast one object of any type may be loaded. Any
67191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand that changes the memory allocation can make
67201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis estimate invalid.
67211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
67221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA valid implementation may return 1 even if more
67241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthan one transient object would fit into RAM.
67251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_PERSISTENT
67271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 8
67291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of persistent objects currently loaded into
67311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM NV memory
67321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_HR_PERSISTENT_AVAIL
67341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 9
67361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of additional persistent objects that could be
67381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnloaded into NV memory
67391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is an estimate. If this value is at least 1, then at
67401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnleast one object of any type may be made persistent. Any
67411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand that changes the NV memory allocation can
67421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmake this estimate invalid.
67431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
67441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA valid implementation may return 1 even if more
67461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthan one persistent object would fit into NV memory.
67471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_NV_COUNTERS
67491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 10
67511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of defined NV Indexes that have NV
67531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_COUNTER attribute SET
67541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_NV_COUNTERS_AVAIL
67561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 11
67581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of additional NV Indexes that can be defined
67601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith
67611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntheir
67621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_COUNTER
67631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand
67641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_ORDERLY attribute SET
67651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is an estimate. If this value is at least 1, then at
67661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnleast one NV Index may be created with the
67671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_COUNTER
67681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand
67691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_ORDERLY
67701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattributes SET. Any command that changes the NV
67711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmemory allocation can make this estimate invalid.
67721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE A valid implementation may return 1 even if more
67731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthan one NV counter could be defined.
67741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_ALGORITHM_SET
67761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 12
67781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode that limits the algorithms that may be used with the
67801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM
67811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_LOADED_CURVES
67831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 13
67851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of loaded ECC curves
67871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_LOCKOUT_COUNTER
67891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 14
67911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe current value of the lockout counter (failedTries)
67931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_MAX_AUTH_FAIL
67951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 15
67971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
67981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of authorization failures before DA lockout is
67991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninvoked
68001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_LOCKOUT_INTERVAL
68021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 16
68041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of seconds before the value reported by
68061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_LOCKOUT_COUNTER is decremented
68071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_LOCKOUT_RECOVERY
68091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 17
68111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of seconds after a lockoutAuth failure before
68131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuse of lockoutAuth may be attempted again
68141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_NV_WRITE_RECOVERY
68161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 18
68181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of milliseconds before the TPM will accept
68201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnanother command that will modify NV
68211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is an approximation and may go up or down
68221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnover time.
68231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
68251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
68261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
68281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
68291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 45
68311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
68321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
68341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
68361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
68381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
68401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
68421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_AUDIT_COUNTER_0
68441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 19
68461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe high-order 32 bits of the command audit counter
68481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_AUDIT_COUNTER_1
68501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPT_VAR + 20
68521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe low-order 32 bits of the command audit counter
68541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 46
68561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
68571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
68591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
68601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
68621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
68631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
68651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
68671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.14 TPM_PT_PCR (PCR Property Tag)
68691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM_PT_PCR constants are used in TPM2_GetCapability() to indicate the property being selected
68701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor returned. The PCR properties can be read when capability == TPM_CAP_PCR_PROPERTIES.
68711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 23 — Definition of (UINT32) TPM_PT_PCR Constants <IN/OUT, S>
68721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
68731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
68751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
68771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_FIRST
68791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000000
68811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbottom of the range of TPM_PT_PCR properties
68831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_SAVE
68851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000000
68871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR is
68891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsaved and restored by TPM_SU_STATE
68901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_EXTEND_L0
68921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000001
68941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
68951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
68961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be extended from locality 0
68971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if a locality other than 0 is
68981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplemented.
68991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_RESET_L0
69011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000002
69031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
69051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be reset by TPM2_PCR_Reset() from locality 0
69061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_EXTEND_L1
69081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000003
69101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
69121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be extended from locality 1
69131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if locality 1 is implemented.
69141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_RESET_L1
69161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000004
69181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
69201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be reset by TPM2_PCR_Reset() from locality 1
69211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if locality 1 is implemented.
69221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_EXTEND_L2
69241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000005
69261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
69281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be extended from locality 2
69291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if localities 1 and 2 are
69301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplemented.
69311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_RESET_L2
69331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000006
69351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
69371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be reset by TPM2_PCR_Reset() from locality 2
69381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if localities 1 and 2 are
69391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplemented.
69401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_EXTEND_L3
69421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000007
69441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
69461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be extended from locality 3
69471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if localities 1, 2, and 3 are
69481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplemented.
69491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_RESET_L3
69511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000008
69531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
69551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be reset by TPM2_PCR_Reset() from locality 3
69561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if localities 1, 2, and 3 are
69571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplemented.
69581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_EXTEND_L4
69601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000009
69621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
69641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be extended from locality 4
69651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if localities 1, 2, 3, and 4 are
69661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplemented.
69671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_RESET_L4
69691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000000A
69711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR
69731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be reset by TPM2_PCR_Reset() from locality 4
69741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if localities 1, 2, 3, and 4 are
69751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplemented.
69761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
69781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
69791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
69811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
69821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 47
69841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
69851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
69871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
69891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
69901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
69921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
69941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
69961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
69971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000000B – the values in this range are reserved
69981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000010 They correspond to values that may be used to describe
69991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattributes associated with the extended localities (32255).synthesize additional software localities. The meaning of
70001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthese properties need not be the same as the meaning for the
70011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExtend and Reset properties above.
70021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_NO_INCREMENT
70041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000011
70061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that
70081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmodifications to this PCR (reset or Extend) will not increment
70091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe pcrUpdateCounter
70101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_DRTM_RESET
70121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000012
70141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR is
70161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreset by a DRTM event
70171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese PCR are reset to -1 on TPM2_Startup() and reset to 0 on
70181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna _TPM_Hash_End event following a _TPM_Hash_Start event.
70191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_POLICY
70211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000013
70231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR is
70251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontrolled by policy
70261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if the TPM supports policy control
70271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof a PCR.
70281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_AUTH
70301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000014
70321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna SET bit in the TPMS_PCR_SELECT indicates that the PCR is
70341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontrolled by an authorization value
70351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis property is only present if the TPM supports authorization
70361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontrol of a PCR.
70371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
70391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000015
70411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved for the next (2 ) TPM_PT_PCR_POLICY set
70431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
70451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000016
70471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved for the next (2 ) TPM_PT_PCR_AUTH set
70491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
70511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnd
70531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnd
70541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnd
70561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
70581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000017 – reserved for the 2 through 255 TPM_PT_PCR_POLICY and
70601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000210 TPM_PT_PCR_AUTH values
70611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
70621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand
70641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhighest
70661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed,
70681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnth
70701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand
70721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhighest
70741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed,
70761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
70781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000211
70801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
70821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto
70831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
70841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn256 ,
70851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_POLICY set
70861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
70881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000212
70901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
70921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto
70931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
70941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn256 ,
70951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_AUTH set
70961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved
70981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
70991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000213
71001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnew PCR property values may be assigned starting with this
71021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue
71031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_LAST
71051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000014
71071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntop of the range of TPM_PT_PCR properties of the
71091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementation
71101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the TPM receives a request for a PCR property with a value
71111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlarger than this, the TPM will return a zero length list and set the
71121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnmoreData parameter to NO.
71131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
71141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 48
71161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
71171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is an implementation-specific value. The value shown
71191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreflects the reference code implementation.
71201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
71221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
71231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
71251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
71261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
71281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
71301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6.15 TPM_PS (Platform Specific)
71321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe platform values in Table 24 are used for the TPM_PT_PS_FAMILY_INDICATOR.
71331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
71341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues below six (6) have the same values as the purview assignments in TPM 1.2.
71361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 24 — Definition of (UINT32) TPM_PS Constants <OUT>
71381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapability Name
71391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
71411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
71431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_MAIN
71451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000000
71471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot platform specific
71491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_PC
71511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000001
71531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPC Client
71551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_PDA
71571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000002
71591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPDA (includes all mobile devices that are not specifically cell
71611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnphones)
71621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_CELL_PHONE
71641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000003
71661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCell Phone
71681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_SERVER
71701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000004
71721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnServer WG
71741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_PERIPHERAL
71761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000005
71781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPeripheral WG
71801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_TSS
71821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000006
71841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTSS WG
71861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_STORAGE
71881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000007
71901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStorage WG
71921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_AUTHENTICATION
71941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000008
71961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAuthentication WG
71981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
71991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_EMBEDDED
72001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00000009
72021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEmbedded WG
72041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_HARDCOPY
72061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000000A
72081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHardcopy WG
72101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_INFRASTRUCTURE
72121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000000B
72141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnInfrastructure WG
72161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_VIRTUALIZATION
72181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000000C Virtualization WG
72201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_TNC
72221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000000D Trusted Network Connect WG
72241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_MULTI_TENANT
72261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000000E
72281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMulti-tenant WG
72301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PS_TC
72321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x0000000F
72341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTechnical Committee
72361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
72381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
72391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
72411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
72421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 49
72441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
72451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
72471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7
72491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
72511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHandles
72531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.1
72551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
72571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHandles are 32-bit values used to reference shielded locations of various types within the TPM.
72591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 25 — Definition of Types for Handles
72601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
72611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
72631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
72651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
72671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HANDLE
72691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHandles may refer to objects (keys or data blobs), authorization sessions (HMAC and policy), NV
72711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndexes, permanent TPM locations, and PCR.
72721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.2
72731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT (Handle Types)
72751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe 32-bit handle space is divided into 256 regions of equal size with 2
72771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnranges represents a handle type.
72781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn24
72801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues in each. Each of these
72821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe type of the entity is indicated by the MSO of its handle. The values for the MSO and the entity
72841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreferenced are shown in Table 26.
72851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 26 — Definition of (UINT8) TPM_HT Constants <S>
72861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
72871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
72891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
72911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_PCR
72931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00
72951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
72961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR – consecutive numbers, starting at 0, that reference the PCR
72971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnregisters
72981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA platform-specific specification will set the minimum number of PCR
72991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand an implementation may have more.
73001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_NV_INDEX
73021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x01
73041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV Index – assigned by the caller
73061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_HMAC_SESSION
73081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x02
73101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC Authorization Session – assigned by the TPM when the
73121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession is created
73131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_LOADED_SESSION
73151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x02
73171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoaded Authorization Session – used only in the context of
73191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetCapability
73201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis type references both loaded HMAC and loaded policy
73211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization sessions.
73221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_POLICY_SESSION
73241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x03
73261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy Authorization Session – assigned by the TPM when the
73281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession is created
73291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_ACTIVE_SESSION
73311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x03
73331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnActive Authorization Session – used only in the context of
73351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetCapability
73361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis type references saved authorization session contexts for which
73371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM is maintaining tracking information.
73381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_PERMANENT
73401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40
73421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPermanent Values – assigned by this specification in Table 27
73441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_TRANSIENT
73461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x80
73481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTransient Objects – assigned by the TPM when an object is loaded
73501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninto transient-object memory or when a persistent object is converted
73511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto a transient object
73521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_PERSISTENT
73541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x81
73561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPersistent Objects – assigned by the TPM when a loaded transient
73581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject is made persistent
73591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 50
73611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
73621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
73641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
73651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
73671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
73681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
73701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
73721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a transient object is loaded, the TPM shall assign a handle with an MSO of TPM_HT_TRANSIENT.
73741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe object may be assigned a different handle each time it is loaded. The TPM shall ensure that handles
73751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassigned to transient objects are unique and assigned to only one transient object at a time.
73761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
73771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf a TPM is only able to hold 4 transient objects in internal memory, it might choose to assign handles to
73791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthose objects with the values 80 00 00 0016 – 80 00 00 0316.
73801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a transient object is converted to a persistent object (TPM2_EvictControl()), the TPM shall validate
73821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat the handle provided by the caller has an MSO of TPM_HT_PERSISTENT and that the handle is not
73831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalready assigned to a persistent object.
73841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA handle is assigned to a session when the session is started. The handle shall have an MSO equal to
73851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_SESSION and remain associated with that session until the session is closed or flushed. The
73861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM shall ensure that a session handle is only associated with one session at a time. When the session
73871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis loaded into the TPM using TPM2_LoadContext(), it will have the same handle each time it is loaded.
73881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
73891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.3
73911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf a TPM is only able to track 64 active sessions at a time, it could number those sessions using the
73931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues xx 00 01 0016 – xx 00 01 3F 16 where xx is either 02 16 or 03 16 depending on the session type.
73941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPersistent Handle Sub-ranges
73961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
73971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPersistent handles are assigned by the caller of TPM2_EvictControl(). ownerAuth or platformAuth is
73981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired to authorize allocation of space for a persistent object. These entities are given separate ranges
73991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof persistent handles so that they do not have to allocate from a common range of handles.
74001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
74011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhile this “namespace” allocation of the handle ranges could have been handled by convention, TPM
74031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnenforcement is used to prevent errors by the OS or malicious software from affecting the platform’s use of
74041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe NV memory.
74051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe Owner is allocated persistent handles in the range of 81 00 00 0016 to 81 7F FF FF16 inclusive and
74071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM will return an error if ownerAuth is used to attempt to assign a persistent handle outside of this
74081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrange.
74091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
74111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
74121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
74141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
74151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 51
74171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
74181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
74201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.4
74211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
74231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH (Permanent Handles)
74251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 27 lists the architecturally defined handles that cannot be changed. The handles include
74271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization handles, and special handles.
74281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 27 — Definition of (UINT32) TPM_RH Constants <IN, S>
74291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
74301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
74321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
74341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_FIRST
74361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000000
74381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR
74401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_SRK
74421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000000
74441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR
74461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OWNER
74481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000001
74501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnK, A, P
74521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_REVOKE
74541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000002
74561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR
74581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot used
74601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
74621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_TRANSPORT
74641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000003
74661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR
74681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot used
74701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
74721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OPERATOR
74741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000004
74761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR
74781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot used
74801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
74821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_ADMIN
74841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000005
74861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR
74881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot used
74901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
74921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_EK
74941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000006
74961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR
74981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
74991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot used
75001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
75021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_NULL
75041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000007
75061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnK, A, P
75081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna handle associated with the null hierarchy, an EmptyAuth
75101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauthValue, and an Empty Policy authPolicy.
75111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_UNASSIGNED
75131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000008
75151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR
75171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue reserved to the TPM to indicate a handle location that
75191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhas not been initialized or assigned
75201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RS_PW
75221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x40000009
75241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnS
75261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization value
75281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization session
75291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_LOCKOUT
75311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x4000000A
75331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA
75351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreferences the authorization associated with the dictionary
75371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattack lockout reset
75381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_ENDORSEMENT
75401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x4000000B
75421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnK, A, P
75441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreferences the Endorsement Primary
75461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnendorsementAuth, and endorsementPolicy
75471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM
75491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x4000000C
75511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnK, A, P
75531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreferences the Platform Primary Seed (PPS), platformAuth,
75551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand platformPolicy
75561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM_NV
75581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x4000000D
75601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnC
75621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor phEnableNV
75641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR
75661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe top of the reserved handle area
75681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is set to allow TPM2_GetCapability() to know where to
75691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstop. It may vary as implementations add to the permanent
75701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle area.
75711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_LAST
75731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x4000000D
75751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
75771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot used
75791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
75811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle references the Storage Primary Seed (SPS), the
75831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnownerAuth, and the ownerPolicy
75841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused
75861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto
75881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicate
75901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
75921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpassword
75941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSeed
75961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(EPS),
75981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
75991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType definitions:
76001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnR – a reserved value
76011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnK – a Primary Seed
76021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA – an authorization value
76031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnP – a policy value
76041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnS – a session handle
76051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnC - a controlNote 1 The handle is only used in a TPM that is compatible with a previous version of this specification. It is not used
76061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin any command defined in this version of the specification.
76071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 52
76091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
76101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
76121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
76131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
76151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
76161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
76181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7.5
76191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
76211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HC (Handle Value Constants)
76231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe definitions in Table 28 are used to define many of the interface data types. However, the values of
76251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthese constants, other than PCR_FIRST, are informative and may be changed by an implementation as
76261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlong as the values stay within the prescribed ranges for the handle type.
76271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
76281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR0 is architecturally defined to have a handle value of 0.
76301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor the reference implementation, the handle range for sessions starts at the lowest allowed value for a
76321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession handle. The highest value for a session handle is determined by how many active sessions are
76331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed by the implementation. The MSO of the session handle will be set according to the session type.
76341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA similar approach is used for transient objects with the first assigned handle at the bottom of the range
76351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined by TPM_HT_TRANSIENT and the top of the range determined by the implementation-dependent
76361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue of MAX_LOADED_OBJECTS.
76371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe first assigned handle for evict objects is also at the bottom of the allowed range defined by
76381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_PERSISTENT and the top of the range determined by the implementation-dependent value of
76391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_EVICT_OBJECTS.
76401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
76411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe values in Table 28 are intended to facilitate the process of making the handle larger than 32 bits in
76431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe future. It is intended that HR_MASK and HR_SHIFT are the only values that need change to resize
76441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe handle space.
76451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
76471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
76481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
76501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
76511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 53
76531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
76541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
76561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
76581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 28 — Definition of (TPM_HANDLE) TPM_HC Constants <IN, S>
76601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
76611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
76631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
76651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_HANDLE_MASK
76671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00FFFFFF
76691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto mask off the HR
76711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_RANGE_MASK
76731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0xFF000000
76751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto mask off the variable
76771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpart
76781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_SHIFT
76801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn24
76821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_PCR
76841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_HT_PCR << HR_SHIFT)
76861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_HMAC_SESSION
76881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_HT_HMAC_SESSION << HR_SHIFT)
76901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_POLICY_SESSION
76921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_HT_POLICY_SESSION << HR_SHIFT)
76941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_TRANSIENT
76961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_HT_TRANSIENT << HR_SHIFT)
76981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
76991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_PERSISTENT
77001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_HT_PERSISTENT << HR_SHIFT)
77021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_NV_INDEX
77041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_HT_NV_INDEX << HR_SHIFT)
77061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHR_PERMANENT
77081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_HT_PERMANENT << HR_SHIFT)
77101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_FIRST
77121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(HR_PCR + 0)
77141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst PCR
77161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_LAST
77181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(PCR_FIRST + IMPLEMENTATION_PCR-1)
77201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlast PCR
77221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC_SESSION_FIRST
77241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(HR_HMAC_SESSION + 0)
77261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst HMAC session
77281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC_SESSION_LAST
77301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(HMAC_SESSION_FIRST+MAX_ACTIVE_SESSIONS-1)
77321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlast HMAC session
77341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLOADED_SESSION_FIRST HMAC_SESSION_FIRST
77361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused in GetCapability
77381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLOADED_SESSION_LAST
77401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC_SESSION_LAST
77421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused in GetCapability
77441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPOLICY_SESSION_FIRST
77461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(HR_POLICY_SESSION + 0)
77481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst policy session
77501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPOLICY_SESSION_LAST
77521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(POLICY_SESSION_FIRST + MAX_ACTIVE_SESSIONS-1) last policy session
77541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTRANSIENT_FIRST
77561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(HR_TRANSIENT + 0)
77581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst transient object
77601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnACTIVE_SESSION_FIRST
77621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPOLICY_SESSION_FIRST
77641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused in GetCapability
77661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnACTIVE_SESSION_LAST
77681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPOLICY_SESSION_LAST
77701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused in GetCapability
77721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTRANSIENT_LAST
77741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TRANSIENT_FIRST+MAX_LOADED_OBJECTS-1)
77761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlast transient object
77781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPERSISTENT_FIRST
77801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(HR_PERSISTENT + 0)
77821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst persistent object
77841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPERSISTENT_LAST
77861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(PERSISTENT_FIRST + 0x00FFFFFF)
77881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlast persistent object
77901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPLATFORM_PERSISTENT
77921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(PERSISTENT_FIRST + 0x00800000)
77941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst platform persistent
77961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject
77971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
77981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_INDEX_FIRST
77991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(HR_NV_INDEX + 0)
78011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst allowed NV Index
78031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_INDEX_LAST
78051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(NV_INDEX_FIRST + 0x00FFFFFF)
78071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlast allowed NV Index
78091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPERMANENT_FIRST
78111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_FIRST
78131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPERMANENT_LAST
78151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_LAST
78171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 54
78191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
78201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
78221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
78231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
78251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
78261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
78281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
78301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAttribute Structures
78321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8
78341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.1
78351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
78371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAttributes are expressed as bit fields of varying size. An attribute field structure may be 1, 2, or 4 octets in
78391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlength.
78401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe bit numbers for an attribute structure are assigned with the number 0 assigned to the least-significant
78411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbit of the structure and the highest number assigned to the most-significant bit of the structure.
78421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe least significant bit is determined by treating the attribute structure as an integer. The least-significant
78431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbit would be the bit that is set when the value of the integer is 1.
78441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen any reserved bit in an attribute is SET, the TPM shall return TPM_RC_RESERVED_BITS. This
78451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code is not shown in the tables for attributes.
78461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.2
78471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_ALGORITHM
78491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure defines the attributes of an algorithm.
78511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEach algorithm has a fundamental attribute: asymmetric, symmetric, or hash. In some cases (e.g.,
78521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSA or TPM_ALG_AES), this is the only attribute.
78531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA mode, method, or scheme may have an associated asymmetric, symmetric, or hash algorithm.
78541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 29 — Definition of (UINT32) TPMA_ALGORITHM Bits
78551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
78561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
78581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
78601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
78621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnasymmetric
78641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): an asymmetric algorithm with public and private portions
78661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): not an asymmetric algorithm
78671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
78691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric
78711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): a symmetric block cipher
78731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): not a symmetric block cipher
78741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
78761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash
78781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): a hash algorithm
78801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): not a hash algorithm
78811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
78831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject
78851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): an algorithm that may be used as an object type
78871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): an algorithm that is not used as an object type
78881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7:4
78901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
78921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8
78941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsigning
78961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
78971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): a signing algorithm. The setting of asymmetric, symmetric, and hash
78981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwill indicate the type of signing algorithm.
78991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): not a signing algorithm
79001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9
79021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnencrypting
79041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): an encryption/decryption algorithm. The setting of asymmetric,
79061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric, and hash will indicate the type of encryption/decryption algorithm.
79071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): not an encryption/decryption algorithm
79081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10
79101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmethod
79121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): a method such as a key derivative function (KDF)
79141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): not a method
79151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31:11 Reserved
79171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3
79191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.1
79201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_OBJECT (Object Attributes)
79221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
79231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
79251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
79261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
79281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
79291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 55
79311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
79321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
79341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
79361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute structure indicates an object’s use, its authorization types, and it relationship to other
79381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobjects.
79391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe state of the attributes is determined when the object is created and they are never changed by the
79401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM. Additionally, the setting of these structures is reflected in the integrity value of the private area of an
79411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject in order to allow the TPM to detect modifications of the Protected Object when stored off the TPM.
79421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.2
79431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStructure Definition
79451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 30 — Definition of (UINT32) TPMA_OBJECT Bits
79461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
79481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
79501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
79521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
79541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
79561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
79581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
79601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnfixedTPM
79621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The hierarchy of the object, as indicated by its Qualified Name, may
79641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot change.
79651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The hierarchy of the object may change as a result of this object or
79661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan ancestor key being duplicated for use in another hierarchy.
79671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
79691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnstClear
79711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Previously saved contexts of this object may not be loaded after
79731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStartup(CLEAR).
79741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Saved contexts of this object may be used after a
79751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnShutdown(STATE) and subsequent Startup().
79761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
79781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
79801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
79821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4
79841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnfixedParent
79861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The parent of the object may not change.
79881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The parent of the object may change as the result of a
79891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Duplicate() of the object.
79901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5
79921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsensitiveDataOrigin
79941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
79951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Indicates that, when the object was created with TPM2_Create() or
79961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_CreatePrimary(), the TPM generated all of the sensitive data other than
79971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe authValue.
79981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): A portion of the sensitive data, other than the authValue, was
79991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprovided by the caller.
80001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6
80021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnuserWithAuth
80041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Approval of USER role actions with this object may be with an HMAC
80061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession or with a password using the authValue of the object or a policy
80071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession.
80081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Approval of USER role actions with this object may only be done
80091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith a policy session.
80101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7
80121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnadminWithPolicy
80141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Approval of ADMIN role actions with this object may only be done with
80161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna policy session.
80171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Approval of ADMIN role actions with this object may be with an
80181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC session or with a password using the authValue of the object or a policy
80191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession.
80201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9:8
80221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
80241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
80261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10
80281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnnoDA
80301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The object is not subject to dictionary attack protections.
80321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The object is subject to dictionary attack protections.
80331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11
80351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnencryptedDuplication
80371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): If the object is duplicated, then symmetricAlg shall not be
80391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL and newParentHandle shall not be TPM_RH_NULL.
80401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The object may be duplicated without an inner wrapper on the
80411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprivate portion of the object and the new parent may be TPM_RH_NULL.
80421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15:12 Reserved
80441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn16
80451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrestricted
80471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 56
80491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
80501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
80521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Key usage is restricted to manipulate structures of known format; the
80531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparent of this key shall have restricted SET.
80541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Key usage is not restricted to use on special formats.
80551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
80571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
80581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
80601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
80611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
80631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
80651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
80671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
80691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
80711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn17
80731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecrypt
80751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The private portion of the key may be used to decrypt.
80771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The private portion of the key may not be used to decrypt.
80781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn18
80801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsign
80821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The private portion of the key may be used to sign.
80841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The private portion of the key may not be used to sign.
80851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31:19 Reserved
80871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3
80891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.1
80901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
80921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAttribute Descriptions
80941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
80951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
80961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe following remaining paragraphs in this clause describe the use and settings for each of the
80971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_OBJECT attributes. The description includes checks that are performed on the objectAttributes
80981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhen an object is created, when it is loaded, and when it is imported. In these descriptions:
80991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
81001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates
81021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsettings
81031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor
81041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_CreatePrimary()
81051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
81071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntemplate
81091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameter
81111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin
81131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Create()
81151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor
81171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
81191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn81211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates settings for the inPublic parameter in TPM2_Load()
81231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
81251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn81271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates settings for the objectPublic parameter in TPM2_Import()
81291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
81311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn81331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates settings that apply to the inPublic parameter in TPM2_LoadExternal() if both the
81351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpublic and sensitive portions of the object are loaded
81361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
81381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor TPM2_LoadExternal() when only the public portion of the object is loaded, the only attribute checks
81401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnare the checks in the validation code following Table 30 and the reserved attributes check.
81411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor any consistency error of attributes in TPMA_OBJECT, the TPM shall return TPM_RC_ATTRIBUTES.
81431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.2
81441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[1] – fixedTPM
81461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen SET, the object cannot be duplicated for use on a different TPM, either directly or indirectly and the
81481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnQualified Name of the object cannot change. When CLEAR, the object’s Qualified Name may change if
81491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe object or an ancestor is duplicated.
81501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
81511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute is the logical inverse of the migratable attribute in 1.2. That is, when this attribute is C LEAR,
81531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnit is the equivalent to a 1.2 object with migratable SET.
81541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
81561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf fixedTPM is SET in the object's parent, then fixedTPM and fixedParent shall both be
81581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnset to the same value in template. If fixedTPM is CLEAR in the parent, this attribute shall
81591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalso be CLEAR in template.
81601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
81611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor a Primary Object, the parent is considered to have fixedTPM SET.
81631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
81651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn81671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf fixedTPM is SET in the object's parent, then fixedTPM and fixedParent shall both be
81691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnset to the same value. If fixedTPM is CLEAR in the parent, this attribute shall also be
81701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR.
81711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
81731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn81751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR
81771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
81791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn81811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR if both the public and sensitive portions are loaded or if fixedParent is
81831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR, otherwise may be SET or CLEAR
81841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
81861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
81871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
81891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
81901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 57
81921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
81931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
81951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.3
81961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
81981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
81991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[2] – stClear
82001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this attribute is SET, then saved contexts of this object will be invalidated on
82021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Startup(TPM_SU_CLEAR). If the attribute is CLEAR, then the TPM shall not invalidate the saved
82031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext if the TPM received TPM2_Shutdown(TPM_SU_STATE). If the saved state is valid when checked
82041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnat the next TPM2_Startup(), then the TPM shall continue to be able to use the saved contexts.
82051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
82061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR in template
82081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
82101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn82121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
82141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
82161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn82181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
82201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
82221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn82241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
82261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.4
82281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[4] – fixedParent
82301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this attribute is SET, the object’s parent may not be changed. That is, this object may not be the object
82321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof a TPM2_Duplicate(). If this attribute is CLEAR, then this object may be the object of a
82331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Duplicate().
82341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
82351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR in template
82371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
82391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn82411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
82431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
82451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn82471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR
82491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
82511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn82531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR if both the public and sensitive portions are loaded; otherwise it may be
82551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET or CLEAR
82561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.5
82581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[5] – sensitiveDataOrigin
82601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute is SET for any key that was generated by TPM in TPM2_Create() or
82621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_CreatePrimary(). If CLEAR, it indicates that the sensitive part of the object (other than the
82631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobfuscation value) was provided by the caller.
82641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
82651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the fixedTPM attribute is SET, then this attribute is authoritative and accurately reflects the source of
82671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe sensitive area data. If the fixedTPM attribute is CLEAR, then validation of this attribute requires
82681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnevaluation of the properties of the ancestor keys.
82691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
82711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf inSensitive.sensitive.data.size is zero, then this attribute shall be SET in the template;
82731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnotherwise, it shall be CLEAR in the template.
82741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
82761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe inSensitive.sensitive.data.size parameter is required to be zero for an asymmetric key so
82781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsensitiveDataOrigin is required to be SET.
82791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 3
82811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe inSensitive.sensitive.data.size parameter may not be zero for a data object so sensitiveDataOrigin is
82831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired to be CLEAR. A data object has type = TPM_ALG_KEYEDHASH and its sign and decrypt
82841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattributes are CLEAR.
82851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
82871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn82891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
82911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
82931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn82951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
82971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
82981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
82991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn83011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
83031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 58
83051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
83061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
83081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
83091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
83111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
83121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
83141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.6
83151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
83171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[6] – userWithAuth
83191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf SET, authorization for operations that require USER role authorization may be given if the caller
83211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprovides proof of knowledge of the authValue of the object with an HMAC authorization session or a
83221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpassword.
83231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this attribute is CLEAR, then then HMAC or password authorizations may not be used for USER role
83241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorizations.
83251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
83261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRegardless of the setting of this attribute, authorizations for operations th at require USER role
83281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorizations may be provided with a policy session that satisfies the object's authPolicy.
83291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
83311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRegardless of the setting of this attribute, the authValue may be referenced in a policy session or used to
83331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprovide the bind value in TPM2_StartAuthSession(). However, if userWithAuth is CLEAR, then the object
83341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be used as the bind object in TPM2_StartAuthSession() but the session cannot be used to authorize
83351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnactions on the object. If this were allowed, then the userWithAuth control could be circumvented simply by
83361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnusing the object as the bind object.
83371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
83391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR in template
83411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
83431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn83451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
83471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
83491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn83511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
83531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
83551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn83571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
83591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.7
83611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[7] – adminWithPolicy
83631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf CLEAR, authorization for operations that require ADMIN role may be given if the caller provides proof of
83651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnknowledge of the authValue of the object with an HMAC authorization session or a password.
83661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this attribute is SET, then then HMAC or password authorizations may not be used for ADMIN role
83671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorizations.
83681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
83691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRegardless of the setting of this attribute, operations that require ADMIN role authorization may be
83711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprovided by a policy session that satisfies the object's authPolicy.
83721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
83741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute is similar to userWithAuth but the logic is a bit different. When userWithAuth is CLEAR, the
83761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauthValue may not be used for USER mode authorizations. When adminWithPolicy is CLEAR, it means
83771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat the authValue may be used for ADMIN role. Policy may always be used regardless of t he setting of
83781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnuserWithAuth or adminWithPolicy.
83791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnActions that always require policy (TPM2_Duplicate()) are not affected by the setting of this attribute.
83811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
83821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR in template
83841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
83861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn83881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
83901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
83921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn83941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
83961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
83981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
83991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn84001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
84021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.8
84041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[10] – noDA
84061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf SET, then authorization failures for the object do not affect the dictionary attack protection logic and
84081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization of the object is not blocked if the TPM is in lockout.
84091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
84101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR in template
84121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
84141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn84161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
84181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
84201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn84221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
84241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
84261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn84281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
84301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
84321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
84331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
84351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
84361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 59
84381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
84391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
84411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.9
84421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
84441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[11] – encryptedDuplication
84461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf SET, then when the object is duplicated, the sensitive portion of the object is required to be encrypted
84481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith an inner wrapper and the new parent shall be an asymmetric key and not TPM_RH_NULL
84491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
84501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEnforcement of these requirements in TPM2_Duplicate() is by not allowing symmetricAlg to be
84521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL and newParentHandle may not be TPM_RH_NULL.
84531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute shall not be SET in any object that has fixedTPM SET.
84551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
84561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis requirement means that encryptedDuplication may not be SET if the object cannot be directly or
84581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindirectly duplicated.
84591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf an object's parent has fixedTPM SET, and the object is duplicable (fixedParent == CLEAR), then
84611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnencryptedDuplication may be SET or CLEAR in the object.
84621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 3
84631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis allows the object at the boundary between duplicable and non -duplicable objects to have either
84651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsetting.
84661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf an object's parent has fixedTPM CLEAR, then the object is required to have the same setting of
84681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnencryptedDuplication as its parent.
84691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 4
84701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis requirement forces all
84721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnencryptedDuplication setting.
84731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnduplicable
84751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobjects
84771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin
84791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
84811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnduplication
84831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngroup
84851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto
84871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhave
84891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
84911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsame
84931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
84951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
84961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR if fixedTPM is SET. If fixedTPM is CLEAR, then this attribute shall have
84971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe same value as its parent unless fixedTPM is SET in the object's parent, in which
84981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncase, it may be SET or CLEAR.
84991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
85011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn85031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR if fixedTPM is SET. If fixedTPM is CLEAR, then this attribute shall have
85051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe same value as its parent, unless fixedTPM is SET the parent, in which case, it may
85061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe SET or CLEAR.
85071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
85091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn85111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnif fixedTPM is SET in the object's new parent, then this attribute may be SET or CLEAR,
85131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnotherwise, it shall have the same setting as the new parent.
85141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
85161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn85181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR.
85201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.10
85221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[16] – restricted
85241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis this attribute modifies the decrypt and sign attributes of an object.
85261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
85271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA key with this object CLEAR may not be a parent for another object.
85291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
85311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR in template if neither sign nor decrypt is SET in template.
85331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
85351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn85371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR if neither sign nor decrypt is SET in the object
85391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
85411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn85431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
85451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
85471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn85491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR
85511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 60
85531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
85541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
85561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
85571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
85591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
85601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
85621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.11
85631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
85651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[17] – decrypt
85671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen SET, the private portion of this key can be used to decrypt an external blob. If restricted is SET,
85691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthen the TPM will return an error if the external decrypted blob is not formatted as appropriate for the
85701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand.
85711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
85721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSince TPM-generated keys and sealed data will contain a hash and a structure tag, the TPM can ensure
85741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat it is not being used to improperly decrypt and return sensitive data that should not be returned. The
85751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnonly type of data that may be returned after decryption is a Sealed Data Object (a keyedHash object with
85761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecrypt and sign CLEAR).
85771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen restricted is CLEAR, there are no restrictions on the use of the private portion of the key for
85791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecryption and the key may be used to decrypt and return any structure encrypted by the public portion of
85801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe key.
85811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
85821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA key with this attribute SET may be a parent for another object if restricted is SET and sign is CLEAR.
85841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf decrypt is SET on an object with type set to TPM_ALG_KEYEDHASH, it indicates that the object is an
85861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnXOR encryption key.
85871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
85881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR in template
85901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
85921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn85941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
85961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
85981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
85991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn86001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
86021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
86041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn86061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR
86081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.3.3.12
86101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[18] – sign
86121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen this attribute is SET, the private portion of this key may be used to sign a digest. If restricted is
86141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET, then the key may only be used to sign a digest that was computed by the TPM. A restricted signing
86151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey may be used to sign a TPM-generated digest. If a structure is generated by the TPM, it will begin with
86161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_GENERATED_VALUE and the TPM may sign the digest of that structure. If the data is externally
86171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsupplied and has TPM_GENERATED_VALUE as its first octets, then the TPM will not sign a digest of
86181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat data with a restricted signing key.
86191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf restricted is CLEAR, then the key may be used to sign any digest, whether generated by the TPM or
86201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexternally provided.
86211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
86221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSome asymmetric algorithms may not support both sign and decrypt being SET in the same key.
86241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf sign is SET on an object with type set to TPM_ALG_KEYEDHASH, it indicates that the object is an
86261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC key.
86271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
86281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA key with this attribute SET may not be a parent for another object.
86301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreation –
86321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall not be SET if decrypt and restricted are both SET
86341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
86361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn86381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall not be SET if decrypt and restricted are both SET
86401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
86421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn86441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall not be SET if decrypt and restricted are both SET
86461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExternal
86481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn86501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall not be SET if decrypt and restricted are both SET
86521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
86541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
86551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
86571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
86581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 61
86601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
86611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
86631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.4
86641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
86661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_SESSION (Session Attributes)
86681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis octet in each session is used to identify the session type, indicate its relationship to any handles in
86701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe command, and indicate its use in parameter encryption.
86711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 31 — Definition of (UINT8) TPMA_SESSION Bits <IN/OUT>
86721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
86731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
86751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMeaning
86771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
86791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncontinueSession
86811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): In a command, this setting indicates that the session is to remain active
86831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnafter successful completion of the command. In a response, it indicates that the
86841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession is still active. If SET in the command, this attribute shall be SET in the
86851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse.
86861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): In a command, this setting indicates that the TPM should close the
86871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession and flush any related context when the command completes successfully. In
86881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna response, it indicates that the session is closed and the context is no longer active.
86891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute has no meaning for a password authorization and the TPM will allow
86901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnany setting of the attribute in the command and SET the attribute in the response.
86911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute will only be CLEAR in one response for a logical session. If the attribute
86921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis CLEAR, the context associated with the session is no longer in use and the space
86931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis available. A session created after another session is ended may have the same
86941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle but logically is not the same session.
86951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute has no effect if the command does not complete successfully.
86961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
86981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
86991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauditExclusive
87001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): In a command, this setting indicates that the command should only be
87021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexecuted if the session is exclusive at the start of the command. In a response, it
87031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates that the session is exclusive. This setting is only allowed if the audit
87041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattribute is SET.
87051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): If audit is CLEAR, then this field is reserved but the error is
87061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_ATTRIBUTES rather than TPM_RC_RESERVED_BITS.
87071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSee "Exclusive Audit Session" clause in Part 1.
87081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
87101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauditReset
87121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): In a command, this setting indicates that the audit digest of the session
87141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshould be initialized and the exclusive status of the session SET.
87151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): If audit is CLEAR, then this field is reserved but the error is
87161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_ATTRIBUTES rather than TPM_RC_RESERVED_BITS. This setting is
87171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalways used for a response.
87181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4:3
87201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
87221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR
87241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecrypt
87261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): In a command, this setting indicates that the first parameter in the command
87281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis symmetrically encrypted using the parameter encryption scheme described in Part
87291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1. The TPM will decrypt the parameter after performing any HMAC computations and
87301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbefore unmarshaling the parameter. In a response, the attribute is copied from the
87311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequest but has no effect on the response.
87321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Session not used for encryption.
87331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5
87351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor a password authorization, this attribute will be CLEAR in both the command and
87371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse.
87381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute may only be SET in one session per command.
87391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute may be SET in a session that is not associated with a command
87401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle. Such a session is provided for purposes of encrypting a parameter and not
87411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor authorization.
87421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute may be SET in combination with any other session attributes.
87431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute may only be SET if the first parameter of the command is a sized buffer
87441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM2B_).
87451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 62
87471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
87481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
87501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
87511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
87531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
87541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
87561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
87581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
87601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
87621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMeaning
87641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6
87661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnencrypt
87681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): In a command, this setting indicates that the TPM should use this session to
87701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnencrypt the first parameter in the response. In a response, it indicates that the
87711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattribute was set in the command and that the TPM used the session to encrypt the
87721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirst parameter in the response using the parameter encryption scheme described in
87731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 1 of this specification.
87741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Session not used for encryption.
87751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor a password authorization, this attribute will be CLEAR in both the command and
87761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse.
87771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute may only be SET in one session per command.
87781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute may be SET in a session that is not associated with a command
87791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle. Such a session is provided for purposes of encrypting a parameter and not
87801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor authorization.
87811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute may only be SET if the first parameter of a response is a sized buffer
87821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM2B_).
87831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7
87851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): In a command or response, this setting indicates that the session is for audit
87871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand that auditExclusive and auditReset have meaning. This session may also be
87881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused for authorization, encryption, or decryption. The encrypted and encrypt fields
87891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be SET or CLEAR.
87901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Session is not used for audit.
87911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaudit
87931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute may only be SET in one session per command or response. If SET in
87951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe command, then this attribute will be SET in the response.
87961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.5
87981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
87991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_LOCALITY (Locality Attribute)
88001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn a TPMS_CREATION_DATA structure, this structure is used to indicate the locality of the command that
88021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncreated the object. No more than one of the locality attributes shall be set in the creation data.
88031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen used in TPM2_PolicyLocality(), this structure indicates which localities are approved by the policy.
88041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a policy is started, all localities are allowed. If TPM2_PolicyLocality() is executed, it indicates that
88051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe command may only be executed at specific localities. More than one locality may be selected.
88061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
88071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_LOC_TWO would indicate that only locality 2 is authorized.
88091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
88111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_LOC_ONE + TPM_LOC_TWO would indicate that locality 1 or 2 is authorized.
88131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 3
88151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_LOC_FOUR + TPM_LOC_THREE would indicate that localities 3 or 4 are authorized.
88171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 4
88191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA value of 21 16 would represent a locality of 33.
88211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
88231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLocality values of 5 through 31 are not selectable.
88251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
88271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
88281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
88301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
88311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 63
88331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
88341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
88361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
88381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf Extended is non-zero, then an extended locality is indicated and the TPMA_LOCALITY contains an
88401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninteger value.
88411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 32 — Definition of (UINT8) TPMA_LOCALITY Bits <IN/OUT>
88421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
88431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
88451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
88471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
88491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_LOC_ZERO
88511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
88531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_LOC_ONE
88551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
88571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_LOC_TWO
88591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
88611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_LOC_THREE
88631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4
88651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_LOC_FOUR
88671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7:5
88691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.6
88711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnExtended
88731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf any of these bits is set, an extended locality is indicated
88751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_PERMANENT
88771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe attributes in this structure are persistent and are not changed as a result of _TPM_Init or any
88791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Startup(). Some of the attributes in this structure may change as the result of specific Protected
88801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCapabilities.
88811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis
88821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure
88831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay
88841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe
88851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnread
88861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnusing
88871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetCapability(capability
88881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn=
88891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_TPM_PROPERTIES, property = TPM_PT_PERMANENT).
88901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 33 — Definition of (UINT32) TPMA_PERMANENT Bits <OUT>
88911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
88921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
88941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
88961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
88981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
88991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnownerAuthSet
89001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): TPM2_HierarchyChangeAuth() with ownerAuth has been executed since
89021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe last TPM2_Clear().
89031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): ownerAuth has not been changed since TPM2_Clear().
89041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
89061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnendorsementAuthSet
89081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): TPM2_HierarchyChangeAuth() with endorsementAuth has been executed
89101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsince the last TPM2_Clear().
89111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): endorsementAuth has not been changed since TPM2_Clear().
89121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
89141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnlockoutAuthSet
89161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): TPM2_HierarchyChangeAuth() with lockoutAuth has been executed since
89181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe last TPM2_Clear().
89191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): lockoutAuth has not been changed since TPM2_Clear().
89201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn7:3
89221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8
89231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
89251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahndisableClear
89261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): TPM2_Clear() is disabled.
89281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): TPM2_Clear() is enabled.
89291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
89301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSee “TPM2_ClearControl” in Part 3 of this specification for details on changing
89321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis attribute.
89331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9
89351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahninLockout
89371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The TPM is in lockout and commands that require authorization with other
89391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthan platformAuth will not succeed.
89401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10
89421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahntpmGeneratedEPS
89441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The EPS was created by the TPM.
89461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The EPS was created outside of the TPM using a manufacturerspecific process.
89471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31:11 Reserved
89491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 64
89511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
89521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
89541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
89551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
89571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
89581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
89601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.7
89611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
89631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_STARTUP_CLEAR
89651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese attributes are set to their default state on reset on each TPM Reset or TPM Restart. The attributes
89671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnare preserved on TPM Resume.
89681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOn each TPM2_Startup(TPM_SU_CLEAR), the TPM will set these attributes to their indicated defaults.
89691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure may be read using TPM2_GetCapability(capability = TPM_CAP_TPM_PROPERTIES,
89701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproperty = TPM_PT_STARTUP_CLEAR).
89711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSome of attributes may be changed as the result of specific Protected Capabilities.
89721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 34 — Definition of (UINT32) TPMA_STARTUP_CLEAR Bits <OUT>
89731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
89741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
89751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
89771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
89791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnphEnable
89811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): (default) The platform hierarchy is enabled and platformAuth or
89831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnplatformPolicy may be used for authorization.
89841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): platformAuth and platformPolicy may not be used for authorizations,
89851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand objects in the platform hierarchy, including NV Indexes and persistent objects,
89861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncannot be used.
89871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
89881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
89901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnshEnable
89921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
89931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): (default) The Storage hierarchy is enabled and ownerAuth or ownerPolicy
89941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be used for authorization.
89951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): ownerAuth and ownerPolicy may not be used for authorizations, and
89961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobjects in the Storage hierarchy, including NV Indexes and persistent objects,
89971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncannot be used.
89981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
89991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
90011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnehEnable
90031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnphEnableNV
90051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSee “TPM2_HierarchyControl” in Part 3 of this specification for details on
90071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchanging this attribute.
90081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): (default) The EPS hierarchy is enabled and endorsementAuth may be
90101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused to authorize commands.
90111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): endorsementAuth and endorsementPolicy may not be used for
90121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorizations, and objects in the endorsement hierarchy, including persistent
90131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobjects, cannot be used.
90141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
90151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
90171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSee “TPM2_HierarchyControl” in Part 3 of this specification for details on
90191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchanging this attribute.
90201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSee “TPM2_HierarchyControl” in Part 3 of this specification for details on
90221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchanging this attribute.
90231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): (default) NV indices that have TPMA_PLATFORM_CREATE SET may be
90251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnread or written. The platform can create define and undefine indices.
90261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): NV indices that have TPMA_PLATFORM_CREATE SET may not be
90271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnread or written (TPM_RC_HANDLE). The platform cannot
90281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefine
90291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_RC_HIERARCHY) or undefined (TPM_RC_HANDLE) indices.
90301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
90311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSee “TPM2_HierarchyControl” in Part 3 of this specification for details on changing
90321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis attribute.
90331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
90341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnread refers to these commands: TPM2_NV_Read, TPM2_NV_ReadPublic, TPM_NV_Certify,
90351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_PolicyNV
90361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwrite refers to thse commands: TPM2_NV_Write, TPM2_NV_Increment, TPM2_NV_Extend,
90371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_NV_SetBits
90381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE The TPM must query the index TPMA_PLATFORM_CREATE attribute to determine
90391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhether phEnableNV is applicable. Since the TPM will return TPM_RC_HANDLE if the index
90401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndoes not exist, it also returns this error code if the index is disabled. Otherwise, the TPM
90411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwould leak the existence of an index even when disabled.
90421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn30:4 Reserved
90441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
90461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
90471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
90491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
90511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
90521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 65
90541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
90551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
90571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
90591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
90611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
90631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
90651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31
90671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnorderly
90691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The TPM received a TPM2_Shutdown() and a matching TPM2_Startup().
90711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): TPM2_Startup(TPM_SU_CLEAR) was not preceded by a
90721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Shutdown() of any type.
90731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
90741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.8
90761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA shutdown is orderly if the TPM receives a TPM2_Shutdown() of any type
90781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfollowed by a TPM2_Startup() of any type. However, the TPM will return an error if
90791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Startup(TPM_SU_STATE)
90801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwas
90811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot
90821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpreceded
90831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnby
90841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_State_Save(TPM_SU_STATE).
90851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_MEMORY
90871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
90881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure of this attribute is used to report the memory management method used by the TPM for
90891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient
90901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobjects
90911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand
90921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization
90931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsessions.
90941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis
90951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure
90961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be
90971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnread
90981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnusing
90991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetCapability(capability = TPM_CAP_TPM_PROPERTIES, property = TPM_PT_MEMORY).
91001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the RAM memory is shared, then context save of a session may make it possible to load an additional
91011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient object.
91021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 35 — Definition of (UINT32) TPMA_MEMORY Bits <Out>
91031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
91041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
91061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
91081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
91101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsharedRAM
91121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): indicates that the RAM memory used for authorization session
91141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontexts is shared with the memory used for transient objects
91151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): indicates that the memory used for authorization sessions is not
91161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshared with memory used for transient objects
91171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
91191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsharedNV
91211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): indicates that the NV memory used for persistent objects is shared
91231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith the NV memory used for NV Index values
91241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): indicates that the persistent objects and NV Index values are
91251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallocated from separate sections of NV
91261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
91281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnobjectCopiedToRam
91301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): indicates that the TPM copies persistent objects to a transient-object
91321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnslot in RAM when the persistent object is referenced in a command. The TRM
91331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis required to make sure that an object slot is available.
91341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): indicates that the TPM does not use transient-object slots when
91351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpersistent objects are referenced
91361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31:3
91381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
91401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
91421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 66
91441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
91451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
91471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
91481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
91501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
91511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
91531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9
91541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
91561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_CC (Command Code Attributes)
91581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.1
91601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
91621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure defines the attributes of a command from a context management perspective. The fields of
91641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe structure indicate to the TPM Resource Manager (TRM) the number of resources required by a
91651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand and how the command affects the TPM’s resources.
91661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is only used in a list returned by the TPM in response to TPM2_GetCapability(capability =
91671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_COMMANDS).
91681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor a command to the TPM, only the commandIndex field and V attribute are allowed to be non-zero.
91691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.2
91701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStructure Definition
91721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 36 — Definition of (TPM_CC) TPMA_CC Bits <OUT>
91731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
91751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15:0
91761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
91781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
91801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncommandIndex
91821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates the command being selected
91841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn21:16 Reserved
91861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
91881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn22
91901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnv
91921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): indicates that the command may write to NV
91941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): indicates that the command does not write to NV
91951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn23
91971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
91981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnextensive
91991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): This command could flush any number of loaded contexts.
92011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): no additional changes other than indicated by the flushed attribute
92021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn24
92041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnflushed
92061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The context associated with any transient handle in the command will
92081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe flushed when this command completes.
92091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): No context is flushed as a side effect of this command.
92101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn27:25 cHandles
92121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates the number of the handles in the handle area for this command
92141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn28
92161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnrHandle
92181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): indicates the presence of the handle area in the input
92201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn29
92221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnV
92241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): indicates that the command is vendor-specific
92261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): indicates that the command is defined in a version of this
92271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification
92281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31:30 Res
92301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3
92321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.1
92331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallocated for software; shall be zero
92351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnField Descriptions
92371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBits[15:0] – commandIndex
92381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the command index of the command in the set of commands. The two sets are defined by the V
92401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattribute. If V is zero, then the commandIndex shall be in the set of commands defined in a version of this
92411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification. If V is one, then the meaning of commandIndex is as determined by the TPM vendor.
92421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.2
92431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[22] – nv
92451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this attribute is SET, then the TPM may perform an NV write as part of the command actions. This write
92471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis independent of any write that may occur as a result of dictionary attack protection. If this attribute is
92481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR, then the TPM shall not perform an NV write as part of the command actions.
92491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.3
92501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[23] – extensive
92521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
92541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
92551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
92571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
92581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 67
92601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
92611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
92631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
92651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this attribute is SET, then the TPM may flush many transient objects as a side effect of this command.
92671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn Part 3, a command that has this attribute is indicated by using a “{E}” decoration in the “Description”
92681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncolumn of the commandCode parameter.
92691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
92701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSee “TPM2_Clear” in Part 3.
92721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
92741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe “{E}” decoration may be combined with other decorations such as “{NV}” in which case the decoration
92761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwould be “{NV E}.”
92771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.4
92791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[24] – flushed
92811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this attribute is SET, then the TPM will flush transient objects as a side effect of this command. Any
92831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntransient objects listed in the handle area of the command will be flushed from TPM memory. Handles
92841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassociated with persistent objects, sessions, PCR, or other fixed TPM resources are not flushed.
92851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
92861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TRM is expected to use this value to determine how many objects are loaded into transient TPM
92881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmemory.
92891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
92911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe “{F}” decoration may be combined with other decorations such as “{NV}” in which case the decoration
92931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwould be “{NV F}.”
92941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
92951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this attribute is SET for a command, and the handle of the command is associated with a hierarchy
92961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_RH_PLATFORM, TPM_RH_OWNER, or TPM_RH_ENDORSEMENT), all loaded objects in the
92971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicated hierarchy are flushed.
92981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TRM is expected to know the behaviour of TPM2_ContextSave(), and sessions are flushed when
92991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext saved, but objects are not. The flushed attribute for that command shall be CLEAR.
93001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn Part 3, a command that has this attribute is indicated by using a “{F}” decoration in the “Description”
93011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncolumn of the commandCode parameter.
93021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
93031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.5
93051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSee “TPM2_SequenceComplete” in Part 3.”
93071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBits[27:25] – cHandles
93091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis field indicates the number of handles in the handle area of the command. This number allows the
93111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTRM to enumerate the handles in the handle area and find the position of the authorizations (if any).
93121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.6
93131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[28] – rHandle
93151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf this attribute is SET, then the response to this command has a handle area. This area will contain no
93171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmore than one handle. This field is necessary to allow the TRM to locate the parameterSize field in the
93181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse, which is then used to locate the authorizations.
93191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
93201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TRM is expected to “virtualize” the handle value for any returned handle.
93221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 68
93241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
93251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
93271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
93281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
93301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
93311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
93331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
93351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPM command is only allowed to have one handle in the session area.
93371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.7
93381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit[29] – V
93401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen this attribute is SET, it indicates that the command operation is defined by the TPM vendor. When
93421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR, it indicates that the command is defined by a version of this specification.
93431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8.9.3.8
93441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBits[31:30] – Res
93461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis field is reserved for system software. This field is required to be zero for a command to the TPM.
93481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
93501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
93511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
93531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
93541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 69
93561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
93571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
93591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9
93611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
93631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnInterface Types
93651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.1
93671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
93691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis clause contains definitions for interface types. An interface type is type checked when it is
93711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunmarshaled. These types are based on an underlying type that is indicated in the table title by the value
93721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin parentheses. When an interface type is used, the base type is unmarshaled and then checked to see if
93731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnit has one of the allowed values.
93741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.2
93751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_YES_NO
93771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is used in place of a Boolean type in order to eliminate ambiguity in the handling of a
93791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoctet that conveys a single bit of information. This type only has two allowed values, YES (1) and NO (0).
93801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
93811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is not used as input to the TPM.
93831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 37 — Definition of (BYTE) TPMI_YES_NO Type
93851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
93861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
93881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO
93901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value of 0
93921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
93941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value of 1
93961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
93981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
93991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.3
94001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_DH_OBJECT
94021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_DH_OBJECT interface type is a handle that references a loaded object. The handles in this
94041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnset are used to refer to either transient or persistent object. The range of these values would change
94051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaccording to the TPM implementation.
94061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
94071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese interface types should not be used by system software to qualify the keys produced by the TPM.
94091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe value returned by the TPM shall be used to reference the object.
94101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 38 — Definition of (TPM_HANDLE) TPMI_DH_OBJECT Type
94121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
94131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
94151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{TRANSIENT_FIRST:TRANSIENT_LAST}
94171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed range for transient objects
94191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{PERSISTENT_FIRST:PERSISTENT_LAST}
94211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed range for persistent objects
94231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_RH_NULL
94251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe conditional value
94271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
94291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 70
94311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
94321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
94341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
94351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
94371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
94381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
94401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.4
94411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
94431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_DH_PERSISTENT
94451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_DH_PERSISTENT interface type is a handle that references a location for a transient object.
94471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis type is used in TPM2_EvictControl() to indicate the handle to be assigned to the persistent object.
94481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 39 — Definition of (TPM_HANDLE) TPMI_DH_PERSISTENT Type
94491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
94501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
94521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{PERSISTENT_FIRST:PERSISTENT_LAST}
94541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed range for persistent objects
94561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
94581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.5
94601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_DH_ENTITY
94621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_DH_ENTITY interface type is TPM-defined values that are used to indicate that the handle
94641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrefers to an authValue. The range of these values would change according to the TPM implementation.
94651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 40 — Definition of (TPM_HANDLE) TPMI_DH_ENTITY Type <IN>
94661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
94671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
94691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OWNER
94711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_ENDORSEMENT
94721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM
94731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_LOCKOUT
94741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{TRANSIENT_FIRST : TRANSIENT_LAST}
94751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrange of object handles
94771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{PERSISTENT_FIRST : PERSISTENT_LAST}
94791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{NV_INDEX_FIRST : NV_INDEX_LAST}
94801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{PCR_FIRST : PCR_LAST}
94811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_RH_NULL
94821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnconditional value
94841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
94861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
94881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
94891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
94911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
94921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 71
94941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
94951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
94971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.6
94981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
94991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
95001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_DH_PCR
95021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type consists of the handles that may be used as PCR references. The upper end of this
95041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrange of values would change according to the TPM implementation.
95051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
95061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTypically, the 0 th PCR will have a handle value of zero.
95081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
95101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe handle range for PCR is defined to be the same as the handle range for PCR in previous versions of
95121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM specifications.
95131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 41 — Definition of (TPM_HANDLE) TPMI_DH_PCR Type <IN>
95151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
95161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
95181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{PCR_FIRST:PCR_LAST}
95201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_RH_NULL
95211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnconditional value
95231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
95251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.7
95271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_SH_AUTH_SESSION
95291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_SH_AUTH_SESSION interface type is TPM-defined values that are used to indicate that the
95311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle refers to an authorization session.
95321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 42 — Definition of (TPM_HANDLE) TPMI_SH_AUTH_SESSION Type <IN/OUT>
95331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
95341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
95361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{HMAC_SESSION_FIRST : HMAC_SESSION_LAST}
95381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrange of HMAC authorization session handles
95401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{POLICY_SESSION_FIRST: POLICY_SESSION_LAST}
95421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrange of policy authorization session handles
95441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_RS_PW
95461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna password authorization
95481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
95501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror returned if the handle is out of range
95521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.8
95541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_SH_HMAC
95561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is used for an authorization handle when the authorization session uses an HMAC.
95581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 43 — Definition of (TPM_HANDLE) TPMI_SH_HMAC Type <IN/OUT>
95591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
95601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
95621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{HMAC_SESSION_FIRST: HMAC_SESSION_LAST}
95641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrange of HMAC authorization session handles
95661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
95681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror returned if the handle is out of range
95701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.9
95721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_SH_POLICY
95741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is used for a policy handle when it appears in a policy command.
95761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 44 — Definition of (TPM_HANDLE) TPMI_SH_POLICY Type <IN/OUT>
95771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
95781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
95801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{POLICY_SESSION_FIRST: POLICY_SESSION_LAST}
95821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrange of policy authorization session handles
95841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
95861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror returned if the handle is out of range
95881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 72
95901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
95911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
95931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
95941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
95961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
95971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
95981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
95991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
96011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.10 TPMI_DH_CONTEXT
96031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis type defines the handle values that may be used in TPM2_ContextSave() or TPM2_Flush().
96041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 45 — Definition of (TPM_HANDLE) TPMI_DH_CONTEXT Type
96051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
96061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
96081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{HMAC_SESSION_FIRST : HMAC_SESSION_LAST}
96101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{POLICY_SESSION_FIRST:POLICY_SESSION_LAST}
96111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{TRANSIENT_FIRST:TRANSIENT_LAST}
96121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
96131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.11 TPMI_RH_HIERARCHY
96151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_RH_HIERARCHY interface type is used as the type of a handle in a command when the
96161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle is required to be one of the hierarchy selectors.
96171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 46 — Definition of (TPM_HANDLE) TPMI_RH_HIERARCHY Type
96181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
96191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
96211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OWNER
96231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStorage hierarchy
96251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM
96271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPlatform hierarchy
96291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_ENDORSEMENT
96311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEndorsement hierarchy
96331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_RH_NULL
96351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno hierarchy
96371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
96391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
96411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.12 TPMI_RH_ENABLES
96431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_RH_ENABLES interface type is used as the type of a handle in a command when the handle
96441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis required to be one of the hierarchy or NV enables.
96451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 47 — Definition of (TPM_HANDLE) TPMI_RH_ENABLES Type
96461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
96471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
96491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OWNER
96511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStorage hierarchy
96531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM
96551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPlatform hierarchy
96571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_ENDORSEMENT
96591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEndorsement hierarchy
96611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM_NV
96631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPlatform NV
96651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_RH_NULL
96671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno hierarchy
96691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
96711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
96731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
96751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
96761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
96781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
96791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 73
96811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
96821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
96841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
96861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.13 TPMI_RH_HIERARCHY_AUTH
96881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is used as the type of a handle in a command when the handle is required to be one of
96891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hierarchy selectors or the Lockout Authorization.
96901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 48 — Definition of (TPM_HANDLE) TPMI_RH_HIERARCHY_AUTH Type <IN>
96911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
96921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
96941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OWNER
96961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStorage hierarchy
96981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
96991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM
97001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPlatform hierarchy
97021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_ENDORSEMENT
97041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEndorsement hierarchy
97061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_LOCKOUT
97081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLockout Authorization
97101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
97121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
97141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.14 TPMI_RH_PLATFORM
97161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_RH_PLATFORM interface type is used as the type of a handle in a command when the only
97171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed handle is TPM_RH_PLATFORM indicating that platformAuth is required.
97181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 49 — Definition of (TPM_HANDLE) TPMI_RH_PLATFORM Type <IN>
97191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
97201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
97221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM
97241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPlatform hierarchy
97261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
97281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
97301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.15 TPMI_RH_OWNER
97321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is used as the type of a handle in a command when the only allowed handle is
97331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OWNER indicating that ownerAuth is required.
97341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 50 — Definition of (TPM_HANDLE) TPMI_RH_OWNER Type <IN>
97351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
97361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
97381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OWNER
97401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOwner hierarchy
97421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_RH_NULL
97441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay allow the null handle
97461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
97481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
97501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 74
97521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
97531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
97551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
97561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
97581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
97591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
97611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
97631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.16 TPMI_RH_ENDORSEMENT
97651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is used as the type of a handle in a command when the only allowed handle is
97661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_ENDORSEMENT indicating that endorsementAuth is required.
97671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 51 — Definition of (TPM_HANDLE) TPMI_RH_ENDORSEMENT Type <IN>
97681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
97691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
97711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_ENDORSEMENT
97731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEndorsement hierarchy
97751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_RH_NULL
97771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay allow the null handle
97791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
97811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
97831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.17 TPMI_RH_PROVISION
97851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_RH_PROVISION interface type is used as the type of the handle in a command when the only
97861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed handles are either TPM_RH_OWNER or TPM_RH_PLATFORM indicating that either
97871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnplatformAuth or ownerAuth are allowed.
97881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn most cases, either platformAuth or ownerAuth may be used to authorize the commands used for
97891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmanagement of the resources of the TPM and this interface type will be used.
97901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 52 — Definition of (TPM_HANDLE) TPMI_RH_PROVISION Type <IN>
97911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
97921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
97941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OWNER
97961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle for ownerAuth
97981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
97991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM
98001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle for platformAuth
98021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
98041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
98061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.18 TPMI_RH_CLEAR
98081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_RH_CLEAR interface type is used as the type of the handle in a command when the only
98091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed handles are either TPM_RH_LOCKOUT or TPM_RH_PLATFORM indicating that either
98101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnplatformAuth or lockoutAuth are allowed.
98111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is normally used for performing or controlling TPM2_Clear().
98121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 53 — Definition of (TPM_HANDLE) TPMI_RH_CLEAR Type <IN>
98131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
98141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
98161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_LOCKOUT
98181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle for lockoutAuth
98201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM
98221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle for platformAuth
98241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
98261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
98281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
98301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
98311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
98331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
98341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 75
98361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
98371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
98391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
98411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.19 TPMI_RH_NV_AUTH
98431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is used to identify the source of the authorization for access to an NV location. The
98441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle value of a TPMI_RH_NV_AUTH shall indicate that the authorization value is either platformAuth,
98451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnownerAuth, or the authValue. This type is used in the commands that access an NV Index (commands of
98461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe form TPM2_NV_xxx) other than TPM2_NV_DefineSpace() and TPM2_NV_UndefineSpace().
98471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 54 — Definition of (TPM_HANDLE) TPMI_RH_NV_AUTH Type <IN>
98481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
98491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
98511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM
98531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnplatformAuth is allowed
98551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_OWNER
98571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnownerAuth is allowed
98591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{NV_INDEX_FIRST:NV_INDEX_LAST}
98611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrange for NV locations
98631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
98651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when unmarshaling of this type fails
98671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.20 TPMI_RH_LOCKOUT
98691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMI_RH_LOCKOUT interface type is used as the type of a handle in a command when the only
98701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed handle is TPM_RH_LOCKOUT indicating that lockoutAuth is required.
98711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 55 — Definition of (TPM_HANDLE) TPMI_RH_LOCKOUT Type <IN>
98721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
98731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
98751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_LOCKOUT
98771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
98781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the unmarshaling of this type fails
98801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.21 TPMI_RH_NV_INDEX
98821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is used to identify an NV location. This type is used in the NV commands.
98831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 56 — Definition of (TPM_HANDLE) TPMI_RH_NV_INDEX Type <IN/OUT>
98841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
98851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
98871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{NV_INDEX_FIRST:NV_INDEX_LAST}
98891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRange of NV Indexes
98911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
98931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror returned if the handle is out of range
98951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 76
98971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
98981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
98991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
99001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
99011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
99031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
99041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
99061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
99081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.22 TPMI_ALG_HASH
99101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPMI_ALG_HASH is an interface type of all the hash algorithms implemented on a specific TPM. Table
99111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn57 is a list of the hash algorithms that have an algorithm ID assigned by the TCG and does not indicate
99121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe algorithms that will be accepted by a TPM.
99131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
99141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn implementation would modify this table according to the implemented algorithms, changing the values
99161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthat are accepted as hash algorithms.
99171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 57 — Definition of (TPM_ALG_ID) TPMI_ALG_HASH Type
99191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
99201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
99221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA1
99241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
99261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA256
99281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
99301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM3_256
99321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
99341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA384
99361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
99381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA512
99401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
99421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
99441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_HASH
99451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.23 TPMI_ALG_ASYM (Asymmetric Algorithms)
99471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPMI_ALG_ASYM is an interface type of all the asymmetric algorithms implemented on a specific TPM.
99481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 58 lists each of the asymmetric algorithms that have an algorithm ID assigned by the TCG.
99491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 58 — Definition of (TPM_ALG_ID) TPMI_ALG_ASYM Type
99501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
99511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
99531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSA
99551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECC
99561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
99571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_ASYMMETRIC
99581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
99601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
99611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
99631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
99641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 77
99661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
99671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
99691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
99711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.24 TPMI_ALG_SYM (Symmetric Algorithms)
99731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPMI_ALG_SYM is an interface type of all the symmetric algorithms that have an algorithm ID assigned
99741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnby the TCG and are implemented on the TPM.
99751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe list in the table below is illustrative and will change according to the implementation. The validation
99761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode will only accept the subset of algorithms implemented on a TPM.
99771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
99781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe validation code produced by an example script will produce a CASE statement with a case for each of
99801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe values in the “Values” column. The case for a value is delimited by a #ifdef/#endif pair so that if the
99811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm is not implemented on the TPM, then the case for the algorithm is not generated, and use of the
99821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm will cause a TPM error (TPM_RC_SYMMETRIC).
99831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 59 — Definition of (TPM_ALG_ID) TPMI_ALG_SYM Type
99851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
99861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
99881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_AES
99901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
99921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM4
99941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
99961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_XOR
99981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
99991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
100001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
100021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired to be present in all versions of this table
100041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SYMMETRIC
100061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.25 TPMI_ALG_SYM_OBJECT
100081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPMI_ALG_SYM_OBJECT is an interface type of all the TCG-defined symmetric algorithms that may
100091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe used as companion symmetric encryption algorithm for an asymmetric object. All algorithms in this list
100101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be block ciphers usable in Cipher Feedback (CFB).
100111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 60 is illustrative. It would be modified to indicate the algorithms of the TPM.
100121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
100131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_XOR is not allowed in this list.
100151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 60 — Definition of (TPM_ALG_ID) TPMI_ALG_SYM_OBJECT Type
100171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
100181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
100201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_AES
100221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
100241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM4
100261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexample
100281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
100301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired to be present in all versions of this table
100321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SYMMETRIC
100341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 78
100361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
100371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
100391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
100401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
100421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
100431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
100451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
100471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.26 TPMI_ALG_SYM_MODE
100491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPMI_ALG_SYM_MODE is an interface type of all the TCG-defined block-cipher modes of operation.
100501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis version of the table is not expected to be the table checked by the validation code. Rather, the table
100511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwould be replaced by one containing the algorithms implemented on the TPM and that the values in that
100521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntable would be checked by the input validation code.
100531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 61 — Definition of (TPM_ALG_ID) TPMI_ALG_SYM_MODE Type
100541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
100551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
100571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_CTR
100591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIV will be determined by use.
100611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the outside provides the nonce and initial counter, then the caller can
100621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnknow what IV to provide for chaining.
100631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_OFB
100651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnXOR last cipher text block with last plaintext to create IV for next block
100671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_CBC
100691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIV will be determined by use.
100711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindefinite chaining using previous output block as IV for next block
100721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_CFB
100741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be implemented in all TPM compliant with this specification
100761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIV will be determined by use.
100771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindefinite chaining using previous cipher text as IV
100781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECB
100801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno IV or chaining value required
100821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
100841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_MODE
100851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.27 TPMI_ALG_KDF (Key and Mask Generation Functions)
100871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPMI_ALG_KDF is an interface type of all the key derivation functions implemented on a specific TPM.
100881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 62 is exemplary and would change based on the algorithms implemented in a TPM.
100891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 62 — Definition of (TPM_ALG_ID) TPMI_ALG_KDF Type
100901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
100911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
100931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
100941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_MGF1
100951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KDF1_SP800_108
100961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KDF1_SP800_56a
100971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KDF2
100981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
100991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_KDF
101001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
101021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
101031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
101051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
101061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 79
101081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
101091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
101111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
101131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.28 TPMI_ALG_SIG_SCHEME
101151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the definition of the interface type for a signature scheme. This table would change according to
101161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe algorithms implemented on the TPM.
101171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 63 — Definition of (TPM_ALG_ID) TPMI_ALG_SIG_SCHEME Type
101181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
101191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
101211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSASSA
101231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires that RSA be implemented
101251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAPSS
101271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires that RSA be implemented
101291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDSA
101311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires that ECC be implemented
101331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDAA
101351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires that ECC and ECDAA be implemented
101371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECSCHNORR
101391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM2
101401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires that ECC be implemented
101421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_HMAC
101441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpresent on all TPM
101461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
101481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SCHEME
101491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when a signature scheme is not correct
101511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.29 TPMI_ECC_KEY_EXCHANGE
101531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the definition of the interface type for an ECC key exchange scheme. This table would change
101541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaccording to the algorithms implemented on the TPM.
101551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 64 — Definition of (TPM_ALG_ID) TPMI_ECC_KEY_EXCHANGE Type
101561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
101571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
101591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDH
101611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused for single and two phase key exchange
101631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECMQV
101651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM2
101661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires that ECC be implemented
101681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
101701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SCHEME
101711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when a key exchange scheme is not correct
101731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9.30 TPMI_ST_COMMAND_TAG
101751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type is used for the command tags.
101761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe response code for a bad command tag has the same value as the TPM 1.2 response code
101771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_BAD_TAG). This value is used in case the software is not compatible with this specification and an
101781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunexpected response code might have unexpected side effects.
101791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 65 — Definition of (TPM_ST) TPMI_ST_COMMAND_TAG Type
101801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
101811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
101831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_NO_SESSIONS
101851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_SESSIONS
101861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_BAD_TAG
101871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 80
101891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
101901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
101921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
101931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
101951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
101961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
101981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
101991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
102001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10 Structure Definitions
102021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.1 TPMS_ALGORITHM_DESCRIPTION
102031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is a return value for a TPM2_GetCapability() that reads the installed algorithms.
102041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 66 — Definition of TPMS_ALGORITHM_DESCRIPTION Structure <OUT>
102051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
102061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
102081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
102101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalg
102121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ID
102141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan algorithm
102161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattributes
102181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_ALGORITHM
102201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe attributes of the algorithm
102221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.2 Hash/Digest Structures
102241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.2.1 TPMU_HA (Hash)
102251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPMU_HA is a union of all the hash algorithms implemented on a TPM. Table 67 is exemplary and
102261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwould change based on the algorithms implemented in a TPM.
102271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
102281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf processed by an automated tool, each entry of the table should be qualified (with #ifdef/#endif) so that if
102301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm is not implemented on the TPM, the parameter associated with that hash is not
102311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpresent. This will keep the union from being larger than the largest digest of a hash implemented on that
102321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM.
102331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 67 — Definition of TPMU_HA Union <IN/OUT, S>
102351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
102361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
102381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
102401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsha1 [SHA1_DIGEST_SIZE]
102421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
102441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA1
102461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsha256 [SHA256_DIGEST_SIZE]
102481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
102501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA256
102521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsm3_256 [SM3_256_DIGEST_SIZE]
102541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
102561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM3_256
102581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsha384 [SHA384_DIGEST_SIZE]
102601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
102621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA384
102641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsha512 [SHA512_DIGEST_SIZE]
102661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
102681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA512
102701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnull
102721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
102741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
102751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
102771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
102791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
102811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
102821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 81
102841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
102851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
102871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
102891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.2.2 TPMT_HA
102911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 68 shows the basic hash-agile structure used in this specification. To handle hash agility, this
102921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure uses the hashAlg parameter to indicate the algorithm used to compute the digest and, by
102931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplication, the size of the digest.
102941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen transmitted, only the number of octets indicated by hashAlg is sent.
102951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
102961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
102971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn the exemplary code, when a TPMT_HA is allocated, the digest field is large enough to support the
102981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlargest hash algorithm in the TPMU_HA union.
102991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 68 — Definition of TPMT_HA Structure <IN/OUT>
103011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
103021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
103041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
103061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
103081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_HASH
103101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselector of the hash contained in the digest that implies the
103121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the digest
103131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
103141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[hashAlg] digest
103161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_HA
103181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe leading “+” on the type indicates that this structure
103201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshould pass an indication to the unmarshaling function for
103211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH so that TPM_ALG_NULL will be
103221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed if a use of a TPMT_HA allows TPM_ALG_NULL.
103231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe digest data
103251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3 Sized Buffers
103271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.1 Introduction
103281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe “TPM2B_” prefix is used for a structure that has a size field followed by a data buffer with the
103291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicated number of octets. The size field is 16 bits.
103301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen the type of the second parameter in a TPM2B_ structure is BYTE, the TPM shall unmarshal the
103311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicated number of octets, which may be zero.
103321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen the type of the second parameter in the TPM2B_ structure is not BYTE, the value of the size field
103331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall either be zero indicating that no structure is to be unmarshaled; or it shall be identical to the number
103341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof octets unmarshaled for the second parameter.
103351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
103361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the TPM2B_ defines a structure and not an array of octets, then the structure is self-describing and the
103381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM will be able to determine how many octets are in the structure when it is unmarshaled. If that number
103391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof octets is not equal to the size parameter, then it is an error.
103401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
103421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe reason that a structure may be put into a TPM2B_ is that the parts of the structure may be handled
103441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnas separate opaque blocks by the application/system software. Rather than require that all of the
103451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructures in a command or response be marshaled or unmarshaled sequentially, the size field allows the
103461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure to be manipulated as an opaque block. Placing a structure in a TPM2B_ also makes it possible
103471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto use parameter encryption on the structure.
103481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf a TPM2B_ is encrypted, the TPM will encrypt/decrypt the data field of the TPM2B_ but not the size
103501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameter. The TPM will encrypt/decrypt the number of octets indicated by the size field.
103511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 3
103521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIn the reference implementation, a TPM2B type is defined that is a 16-bit size field followed by a single
103541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbyte of data. The TPM2B_ is then defined as a union that contains a TPM2B (union member ‘b’) and the
103551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure in the definition table (union member ‘t’). This union is used for internally generated structures
103561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnso that there is a way to define a structure of the correct size (forced by the ‘t’ member) while giving a way
103571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto pass the structure generically as a ‘b’. Most function calls use the 't' member so that the compiler will
103581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerate a warning if there is a type error (a TPM2B_ of the wrong type). Having the type checked helps
103591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnavoid many issues with buffer overflow caused by a too small buffer being passed to a function.
103601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 82
103621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
103631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
103651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
103661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
103681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
103691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
103711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
103731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.2 TPM2B_DIGEST
103751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used for a sized buffer that cannot be larger than the largest digest produced by any
103761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash algorithm implemented on the TPM.
103771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAs with all sized buffers, the size is checked to see if it is within the prescribed range. If not, the response
103781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncode is TPM_RC_SIZE.
103791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
103801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor any structure, like the one below, that contains an implied size check, it is implied that TPM_RC_SIZE
103821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis a possible response code and the response code will not be listed in the table.
103831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 69 — Definition of TPM2B_DIGEST Structure
103851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
103861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
103881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
103901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
103921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
103941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize in octets of the buffer field; may be 0
103961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size]{:sizeof(TPMU_HA)}
103981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
103991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
104001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe buffer area that can be no larger than a digest
104021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.3 TPM2B_DATA
104041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used for a data buffer that is required to be no larger than the size of the Name of an
104051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject. This size limit includes the algorithm ID of the hash and the hash data.
104061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 70 — Definition of TPM2B_DATA Structure
104071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
104081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
104101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
104121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
104141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
104161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize in octets of the buffer field; may be 0
104181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size]{:sizeof(TPMT_HA)}
104201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
104221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe buffer area that contains the algorithm ID and the
104241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest
104251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.4 TPM2B_NONCE
104271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 71 — Definition of Types for TPM2B_NONCE
104281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
104291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
104311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
104331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
104351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NONCE
104371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize limited to the same as the digest structure
104391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.5 TPM2B_AUTH
104411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used for an authorization value and limits an authValue to being no larger than the
104421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlargest digest produced by a TPM. In order to ensure consistency within an object, the authValue may be
104431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno larger than the size of the digest produced by the object’s nameAlg. This ensures that any TPM that
104441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncan load the object will be able to handle the authValue of the object.
104451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 72 — Definition of Types for TPM2B_AUTH
104461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
104471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
104491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
104511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
104531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_AUTH
104551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize limited to the same as the digest structure
104571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
104591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
104601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
104621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
104631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 83
104651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
104661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
104681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
104701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.6 TPM2B_OPERAND
104721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis type is a sized buffer that can hold an operand for a comparison with an NV Index location. The
104731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum size of the operand is implementation dependent but a TPM is required to support an operand
104741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize that is at least as big as the digest produced by any of the hash algorithms implemented on the TPM.
104751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 73 — Definition of Types for TPM2B_OPERAND
104761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
104771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
104791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
104811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
104831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_OPERAND
104851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize limited to the same as the digest structure
104871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.7 TPM2B_EVENT
104891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis type is a sized buffer that can hold event data.
104901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 74 — Definition of TPM2B_EVENT Structure
104911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
104921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
104941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
104961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
104981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
104991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
105001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the operand buffer
105021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer [size] {:1024}
105041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
105061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe operand
105081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.8 TPM2B_MAX_BUFFER
105101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis type is a sized buffer that can hold a maximally sized buffer for commands that use a large data
105111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer
105121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsuch
105131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnas
105141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_PCR_Event(),
105151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Hash(),
105161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_SequenceUpdate(),
105171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor
105181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_FieldUpgradeData().
105191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
105201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe above list is not comprehensive and other commands may use this buffer type.
105221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 75 — Definition of TPM2B_MAX_BUFFER Structure
105241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
105251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
105271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
105291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
105311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
105331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the buffer
105351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer [size] {:MAX_DIGEST_BUFFER}
105371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
105391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe operand
105411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
105421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_DIGEST_BUFFER
105431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis
105441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMdependent but is required to be at least 1,024.
105451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.9 TPM2B_MAX_NV_BUFFER
105471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis type is a sized buffer that can hold a maximally sized buffer for NV data commands such as
105481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_NV_Read(), TPM2_NV_Write(), and TPM2_NV_Certify().
105491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 76 — Definition of TPM2B_MAX_NV_BUFFER Structure
105501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
105511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
105531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
105551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
105571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
105591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the buffer
105611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer [size] {:MAX_NV_BUFFER_SIZE}
105631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
105651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe operand
105671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
105681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_NV_BUFFER_SIZE
105691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndependent
105701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 84
105721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
105731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
105751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
105761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis
105781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM-
105801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
105821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
105831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
105851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
105871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.10 TPM2B_TIMEOUT
105891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis TPM-dependent structure is used to provide the timeout value for an authorization.
105901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 77 — Definition of TPM2B_TIMEOUT Structure <IN/OUT>
105911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
105921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
105941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
105961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
105981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
105991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
106001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the timeout value
106021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is fixed for a TPM implementation.
106031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer [size] {:sizeof(UINT64)}
106051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
106071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe timeout value
106091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.3.11 TPM2B_IV
106111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used for passing an initial value for a symmetric block cipher to or from the TPM. The
106121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize is set to be the largest block size of any implemented symmetric cipher implemented on the TPM.
106131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 78 — Definition of TPM2B_IV Structure <IN/OUT>
106141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
106151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
106171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
106191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
106211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
106231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the timeout value
106251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is fixed for a TPM implementation.
106261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer [size] {:MAX_SYM_BLOCK_SIZE}
106281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
106301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe timeout value
106321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.4 Names
106341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.4.1 Introduction
106351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe Name of an entity is used in place of the handle in authorization computations. The substitution
106361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoccurs in cpHash and policyHash computations.
106371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor an entity that is defined by a public area (objects and NV Indexes), the Name is the hash of the public
106381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure that defines the entity. The hash is done using the nameAlg of the entity.
106391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
106401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor an object, a TPMT_PUBLIC defines the entity. For an NV Index, a TPMS_NV_PUBLIC defines the
106421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnentity.
106431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor entities not defined by a public area, the Name is the handle that is used to refer to the entity.
106451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.4.2 TPMU_NAME
106461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 79 — Definition of TPMU_NAME Union <>
106471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
106481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
106501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest
106521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_HA
106541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhen the Name is a digest
106561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle
106581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HANDLE
106601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhen the Name is a handle
106621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
106641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
106651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
106671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
106691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
106711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
106721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 85
106741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
106751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
106771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
106791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.4.3 TPM2B_NAME
106811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis buffer holds a Name for any entity type.
106821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe type of Name in the structure is determined by context and the size parameter. If size is four, then
106831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe Name is a handle. If size is zero, then no Name is present. Otherwise, the size shall be the size of a
106841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ID plus the size of the digest produced by the indicated hash algorithm.
106851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 80 — Definition of TPM2B_NAME Structure
106861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
106871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
106891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
106911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
106931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
106951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the Name structure
106971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
106981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnname[size]{:sizeof(TPMU_NAME)}
106991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
107011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe Name structure
107031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.5 PCR Structures
107051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.5.1 TPMS_PCR_SELECT
107061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure provides a standard method of specifying a list of PCR.
107071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR numbering starts at zero.
107081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPcrSelect is an array of octets. The octet containing the bit corresponding to a specific PCR is found by
107091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndividing the PCR number by 8.
107101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 1
107111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe bit in pcrSelect corresponding to PCR 19 is in pcrSelect [2] (19/8 = 2).
107131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe least significant bit in a octet is bit number 0. The bit in the octet associated with a PCR is the
107151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnremainder after division by 8.
107161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 2
107171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe bit in pcrSelect [2] corresponding to PCR 19 is bit 3 (19 mod 8). If sizeofSelect is 3, then the
107191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrSelect array that would specify PCR 19 and no other PCR is 00 00 08 16.
107201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEach bit in pcrSelect indicates whether the corresponding PCR is selected (1) or not (0). If the pcrSelect
107221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis all zero bits, then no PCR is selected.
107231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSizeofSelect indicates the number of octets in pcrSelect. The allowable values for sizeofSelect is
107241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndetermined by the number of PCR required by the applicable platform-specific specification and the
107251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of PCR implemented in the TPM. The minimum value for sizeofSelect is:
107261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_SELECT_MIN ≔ (PLATFORM_PCR + 7) / 8
107271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(1)
107291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhere
107311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPLATFORM_PCR
107321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of PCR required by the platform-specific specification
107341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe maximum value for sizeofSelect is:
107361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_SELECT_MAX ≔ (IMPLEMENTATION_PCR + 7) / 8
107371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(2)
107391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhere
107411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIMPLEMENTATION_PCR
107421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 86
107441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
107451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of PCR implemented on the TPM
107471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
107491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
107501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
107521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
107531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
107551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
107571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the TPM implements more PCR than there are bits in pcrSelect, the additional PCR are not selected.
107591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE 3
107601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the applicable platform-specific specification requires that the TPM have a minimum of 24 PCR but the
107621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM implements 32, then a PCR select of 3 octets would imply that PCR 24-31 are not selected.
107631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 81 — Definition of TPMS_PCR_SELECT Structure
107651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
107661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
107681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
107701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsizeofSelect {PCR_SELECT_MIN:}
107721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT8
107741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe size in octets of the pcrSelect array
107761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrSelect [sizeofSelect] {:PCR_SELECT_MAX}
107781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
107801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe bit map of selected PCR
107821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
107841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.5.2 TPMS_PCR_SELECTION
107861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 82 — Definition of TPMS_PCR_SELECTION Structure
107871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
107881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
107901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
107921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash
107941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
107961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
107971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm associated with the
107981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselection
107991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsizeofSelect {PCR_SELECT_MIN:}
108011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT8
108031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe size in octets of the pcrSelect array
108051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrSelect [sizeofSelect] {:PCR_SELECT_MAX}
108071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
108091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe bit map of selected PCR
108111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
108131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6 Tickets
108151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.1 Introduction
108161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTickets are evidence that the TPM has previously processed some information. A ticket is an HMAC over
108171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe data using a secret key known only to the TPM. A ticket is a way to expand the state memory of the
108181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM. A ticket is only usable by the TPM that produced it.
108191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe formulations for tickets shown in this clause are to be used by a TPM that is compliant with this
108201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification.
108211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe method of creating the ticket data is:
108221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontexAlg(proof, (ticketType || param { || param {…}))
108241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(3)
108261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhere
108281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontexAlg()
108301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan HMAC using the hash used for context integrity
108321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproof
108341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna TPM secret value (depends on hierarchy)
108361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnticketType
108381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value to differentiate the tickets
108401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparam
108421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnone or more values that were checked by the TPM
108441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
108461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
108471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
108491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
108501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 87
108521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
108531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
108551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
108571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe proof value used for each hierarchy is shown in Table 83.
108591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 83 — Values for proof Used in Tickets
108601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHierarchy
108611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproof
108631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
108651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNone
108671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEmpty Buffer
108691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPlatform
108711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnphProof
108731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value that changes with each change of the PPS
108751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOwner
108771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnshProof
108791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value that changes with each change of the SPS
108811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEndorsement
108831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnehProof
108851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value that changes with each change of either the EPS or SPS
108871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe format for a ticket is shown in Table 84. This is a template for the tickets shown in the remainder of
108891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis clause.
108901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 84 — General Format of a Ticket
108911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
108921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
108941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
108961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag
108981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
108991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST
109001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure tag indicating the type of the ticket
109021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhierarchy
109041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_HIERARCHY+
109061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hierarchy of the proof value
109081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest
109101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
109121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe HMAC over the ticket-specific data
109141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.2 A NULL Ticket
109161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a command requires a ticket and no ticket is available, the caller is required to provide a structure
109171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith a ticket tag that is correct for the context. The hierarchy shall be set to TPM_RH_NULL, and digest
109181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be the Empty Buffer (a buffer with a size field of zero). This construct is the NULL Ticket. When a
109191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse indicates that a ticket is returned, the TPM may return a NULL Ticket.
109201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
109211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBecause each use of a ticket requires that the structure tag for the ticket be appropriate for the use, t here
109231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis no single representation of a NULL Ticket that will work in all circumstances. Minimally, a NULL ticket
109241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwill have a structure type that is appropriate for the context.
109251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 88
109271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
109281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
109301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
109311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
109331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
109341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
109361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
109381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.3 TPMT_TK_CREATION
109401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis ticket is produced by TPM2_Create() or TPM2_CreatePrimary(). It is used to bind the creation data
109411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto the object to which it applies. The ticket is computed by
109421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontextAlg(proof, (TPM_ST_CREATION || name || HnameAlg(TPMS_CREATION_DATA)))
109441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(4)
109461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhere
109481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontextAlg()
109501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan HMAC using the context integrity hash algorithm
109521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproof
109541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna TPM secret value associated with the hierarchy associated with name
109561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_CREATION
109581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value used to ensure that the ticket is properly used
109601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnname
109621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe Name of the object to which the creation data is to be associated
109641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHnameAlg()
109661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash using the nameAlg of the created object
109681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CREATION_DATA the creation data structure associated with name
109701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 85 — Definition of TPMT_TK_CREATION Structure
109711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
109721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
109741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
109761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag {TPM_ST_CREATION}
109781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST
109801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnticket structure tag
109821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror returned when tag is not TPM_ST_CREATION
109831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_TAG
109851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhierarchy
109861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_HIERARCHY+
109881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hierarchy containing name
109901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest
109921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
109941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis shall be the HMAC produced using a proof value
109961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof hierarchy.
109971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
109981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
109991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA NULL Creation Ticket is the tuple <TPM_ST_CREATION, TPM_RH_NULL, 0x0000>.
110011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
110031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
110041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
110061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
110071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 89
110091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
110101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
110121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
110141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.4 TPMT_TK_VERIFIED
110161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis ticket is produced by TPM2_VerifySignature(). This formulation is used for multiple ticket uses. The
110171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnticket provides evidence that the TPM has validated that a digest was signed by a key with the Name of
110181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeyName. The ticket is computed by
110191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontextAlg(proof, (TPM_ST_VERIFIED || digest || keyName))
110211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(5)
110231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhere
110251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontextAlg()
110271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan HMAC using the context integrity hash
110291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproof
110311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna TPM secret value associated with the hierarchy associated with
110331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_VERIFIED
110351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value used to ensure that the ticket is properly used
110371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest
110391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe signed digest
110411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeyName
110431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName of the key that signed digest
110451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeyName
110471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 86 — Definition of TPMT_TK_VERIFIED Structure
110491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
110501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
110521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
110541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag {TPM_ST_VERIFIED}
110561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST
110581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnticket structure tag
110601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror returned when tag is not TPM_ST_VERIFIED
110611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_TAG
110631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhierarchy
110641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_HIERARCHY+
110661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hierarchy containing keyName
110681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest
110701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
110721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis shall be the HMAC produced using a proof value
110741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof hierarchy.
110751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
110771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA NULL Verified Ticket is the tuple <TPM_ST_VERIFIED, TPM_RH_NULL, 0x0000>.
110791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 90
110811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
110821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
110841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
110851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
110871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
110881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
110901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
110921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.5 TPMT_TK_AUTH
110941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis ticket is produced by TPM2_PolicySigned() and TPM2_PolicySecret() when the authorization has an
110951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexpiration time. The ticket is computed by
110961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontextAlg(proof, (TPM_ST_AUTH_xxx || timeout || cpHash || policyRef || keyName))
110981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
110991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(6)
111001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhere
111021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontextAlg()
111041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan HMAC using the context integrity hash
111061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproof
111081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna TPM secret value associated with the hierarchy of the key associated
111101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith keyName
111111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_AUTH_xxx
111131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahneither TPM_ST_AUTH_SIGNED or TPM_ST_AUTH_SECRET; used to
111151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnensure that the ticket is properly used
111161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntimeout
111181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementation-specific value indicating when the authorization expires
111201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncpHash
111221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoptional hash of the authorized command
111241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpolicyRef
111261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoptional reference to a policy value
111281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeyName
111301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName of the key that signed the authorization
111321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 87 — Definition of TPMT_TK_AUTH Structure
111331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
111351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
111371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
111391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag {TPM_ST_AUTH_SIGNED, TPM_ST_AUTH_SECRET} TPM_ST
111411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnticket structure tag
111431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_TAG
111451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror returned when tag is
111471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot TPM_ST_AUTH
111481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhierarchy
111501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_HIERARCHY+
111521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hierarchy of the object
111541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused to produce the ticket
111551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest
111571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
111591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis shall be the HMAC
111611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproduced using a proof
111621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue of hierarchy.
111631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
111651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA NULL Auth Ticket is the tuple <TPM_ST_AUTH_SIGNED, TPM_RH_NULL, 0x0000> or the tuple
111671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn<TPM_ST_AUTH_SIGNED, TPM_RH_NULL, 0x0000>
111681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
111701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
111711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
111731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
111741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 91
111761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
111771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
111791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
111811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.6.6 TPMT_TK_HASHCHECK
111831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis ticket is produced by TPM2_SequenceComplete() when the message that was digested did not start
111841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith TPM_GENERATED_VALUE. The ticket is computed by
111851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontexAlg(proof, (TPM_ST_HASHCHECK || digest))
111871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(7)
111891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhere
111911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMACcontexAlg ()
111931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan HMAC using the context integrity hash
111951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproof
111971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
111981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna TPM secret value associated with the hierarchy indicated by the
111991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand
112001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_HASHCHECK
112021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna value used to ensure that the ticket is properly used
112041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest
112061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe digest of the data
112081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 88 — Definition of TPMT_TK_HASHCHECK Structure
112091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
112111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
112131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
112151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag {TPM_ST_HASHCHECK}
112171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST
112191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnticket structure tag
112211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_TAG
112231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror returned when is not TPM_ST_HASHCHECK
112251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhierarchy
112271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_HIERARCHY+
112291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hierarchy
112311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest
112331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
112351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis shall be the HMAC produced using a proof value
112371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof hierarchy.
112381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.7 Property Structures
112401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.7.1 TPMS_ALG_PROPERTY
112411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used to report the properties of an algorithm identifier. It is returned in response to a
112421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetCapability() with capability = TPM_CAP_ALG.
112431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 89 — Definition of TPMS_ALG_PROPERTY Structure <OUT>
112441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
112451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
112471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
112491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalg
112511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ID
112531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan algorithm identifier
112551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnalgProperties
112571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_ALGORITHM
112591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe attributes of the algorithm
112611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.7.2 TPMS_TAGGED_PROPERTY
112631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used to report the properties that are UINT32 values. It is returned in response to a
112641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetCapability().
112651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 90 — Definition of TPMS_TAGGED_PROPERTY Structure <OUT>
112661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
112671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
112691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
112711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnproperty
112731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT
112751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna property identifier
112771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue
112791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
112811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe value of the property
112831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 92
112851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
112861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
112881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
112891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
112911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
112921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
112941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
112961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
112971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.7.3 TPMS_TAGGED_PCR_SELECT
112981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used in TPM2_GetCapability() to return the attributes of the PCR.
112991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 91 — Definition of TPMS_TAGGED_PCR_SELECT Structure <OUT>
113001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
113011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
113031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
113051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntag
113071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT
113091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe property identifier
113111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsizeofSelect {PCR_SELECT_MIN:}
113131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT8
113151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe size in octets of the pcrSelect array
113171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrSelect [sizeofSelect] {:PCR_SELECT_MAX}
113191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
113211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe bit map of PCR with the identified property
113231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8 Lists
113251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.1 TPML_CC
113261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA list of command codes may be input to the TPM or returned by the TPM depending on the command.
113271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 92 — Definition of TPML_CC Structure
113281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
113291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
113311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
113331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
113351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
113371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of commands in the commandCode list;
113391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be 0
113401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncommandCodes[count]{:MAX_CAP_CC}
113421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CC
113441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna list of command codes
113461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe maximum only applies to a command code
113471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlist in a command. The response size is limited
113481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnonly by the size of the parameter buffer.
113491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SIZE
113511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
113531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
113541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when count is greater than the
113561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum allowed list size
113571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
113591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
113601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 93
113621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
113631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
113651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
113671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.2 TPML_CCA
113691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is only used in TPM2_GetCapability(capability = TPM_CAP_COMMANDS).
113701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe values in the list are returned in commandIndex order with vendor-specific commands returned after
113711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnother commands. Because of the other attributes, the commands may not be returned in strict numerical
113721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnorder. They will be in commandIndex order.
113731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 93 — Definition of TPML_CCA Structure <OUT>
113741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
113751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
113771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
113791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
113811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
113831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of values in the commandAttributes list;
113851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay be 0
113861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncommandAttributes[count]{:MAX_CAP_CC}
113881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_CC
113901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna list of command codes attributes
113921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.3 TPML_ALG
113941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is returned by TPM2_IncrementalSelfTest().
113951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 94 — Definition of TPML_ALG Structure
113961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
113971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
113981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
113991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
114011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
114031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
114051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of algorithms in the algorithms list; may be 0
114071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithms[count]{:MAX_ALG_LIST_SIZE}
114091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ID a list of algorithm IDs
114111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe maximum only applies to an algorithm list in a
114121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand. The response size is limited only by the
114131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the parameter buffer.
114141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when count is greater than the
114151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum allowed list size
114161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SIZE
114181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.4 TPML_HANDLE
114201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used when the TPM returns a list of loaded handles when the capability in
114211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetCapability() is TPM_CAP_HANDLE.
114221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
114231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is not used as input to the TPM.
114251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 95 — Definition of TPML_HANDLE Structure <OUT>
114271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
114281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
114301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
114321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
114341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
114361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of handles in the list
114381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay have a value of 0
114391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle[count]{: MAX_CAP_HANDLES}
114411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HANDLE
114431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan array of handles
114451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SIZE
114471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 94
114491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
114501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when count is greater than the
114521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum allowed list size
114531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
114551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
114561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
114581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
114591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
114611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
114631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.5 TPML_DIGEST
114651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is used to convey a list of digest values. This type is used in TPM2_PolicyOR() and in
114661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_PCR_Read().
114671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 96 — Definition of TPML_DIGEST Structure
114681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
114691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
114711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
114731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount {2:}
114751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
114771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of digests in the list, minimum is two for
114791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_PolicyOR().
114801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigests[count]{:8}
114821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST a list of digests
114841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor TPM2_PolicyOR(), all digests will have been
114851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncomputed using the digest of the policy session. For
114861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_PCR_Read(), each digest will be the size of the
114871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest for the bank containing the PCR.
114881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SIZE
114901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when count is not at least two or is
114921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngreater than eight
114931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.6 TPML_DIGEST_VALUES
114951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is used to convey a list of digest values. This type is returned by TPM2_Event() and
114961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_SequenceComplete() and is an input for TPM2_PCR_Extend().
114971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
114981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
114991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis construct limits the number of hashes in the list to the number of digests implemented in the TPM
115001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrather than the number of PCR banks. This allows extra values to appear in a call t o
115011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_PCR_Extend().
115021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
115041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe digest for an unimplemented hash algorithm may not be in a list because the TPM may not recognize
115061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe algorithm as being a hash and it may not know the digest size.
115071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 97 — Definition of TPML_DIGEST_VALUES Structure
115091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
115101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
115121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
115141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
115161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
115181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of digests in the list
115201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigests[count]{:HASH_COUNT}
115221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_HA
115241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna list of tagged digests
115261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when count is greater than the possible
115271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of banks
115281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SIZE
115301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.7 TPM2B_DIGEST_VALUES
115321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDigest list in a sized buffer. This list is returned by TPM2_PCR_SequenceComplete().
115331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 98 — Definition of TPM2B_DIGEST_VALUES Structure
115341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
115351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
115371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
115391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
115411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
115431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the operand buffer
115451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer [size] {:sizeof(TPML_DIGEST_VALUES)}
115471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
115491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe operand
115511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
115531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
115541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
115561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
115571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 95
115591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
115601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
115621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
115641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.8 TPML_PCR_SELECTION
115661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is used to indicate the PCR that are included in a selection when more than one PCR value may
115671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe selected.
115681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is an input parameter to TPM2_PolicyPCR() to indicate the PCR that will be included in the
115691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest of PCR for the authorization. The structure is used in TPM2_PCR_Read() command to indicate the
115701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR values to be returned and in the response to indicate which PCR are included in the list of returned
115711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigests. The structure is an output parameter from TPM2_Create() and indicates the PCR used in the
115721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest of the PCR state when the object was created. The structure is also contained in the attestation
115731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure of TPM2_Quote().
115741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen this structure is used to select PCR to be included in a digest, the selected PCR are concatenated
115751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto create a “message” containing all of the PCR, and then the message is hashed using the contextspecific hash algorithm.
115761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 99 — Definition of TPML_PCR_SELECTION Structure
115771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
115781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
115801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
115821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
115841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
115861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of selection structures
115881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA value of zero is allowed.
115891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrSelections[count]{:HASH_COUNT}
115911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_PCR_SELECTION
115931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlist of selections
115951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when count is greater
115961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthan the possible number of banks
115971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
115981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SIZE
115991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.9 TPML_ALG_PROPERTY
116011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is used to report on a list of algorithm attributes. It is returned in a TPM2_GetCapability().
116021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 100 — Definition of TPML_ALG_PROPERTY Structure <OUT>
116031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
116041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
116061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
116081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
116101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
116121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of algorithm properties structures
116141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA value of zero is allowed.
116151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnalgProperties[count]{:MAX_CAP_ALGS}
116171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ALG_PROPERTY
116191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlist of properties
116211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.10 TPML_TAGGED_TPM_PROPERTY
116231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is used to report on a list of properties that are TPMS_TAGGED_PROPERTY values. It is
116241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreturned by a TPM2_GetCapability().
116251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 101 — Definition of TPML_TAGGED_TPM_PROPERTY Structure <OUT>
116261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
116271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
116291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
116311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
116331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
116351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of properties
116371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA value of zero is allowed.
116381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahntpmProperty[count]{:MAX_TPM_PROPERTIES} TPMS_TAGGED_PROPERTY
116401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 96
116421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
116431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
116451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
116461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan array of tagged properties
116481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
116501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
116511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
116531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
116551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.11 TPML_TAGGED_PCR_PROPERTY
116571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is used to report on a list of properties that are TPMS_PCR_SELECT values. It is returned by a
116581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetCapability().
116591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 102 — Definition of TPML_TAGGED_PCR_PROPERTY Structure <OUT>
116601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
116611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
116631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
116651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
116671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
116691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of properties
116711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA value of zero is allowed.
116721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrProperty[count]{:MAX_PCR_PROPERTIES}
116741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_TAGGED_PCR_SELECT a tagged PCR selection
116761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.8.12 TPML_ECC_CURVE
116781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis list is used to report the ECC curve ID values supported by the TPM. It is returned by a
116791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_GetCapability().
116801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 103 — Definition of {ECC} TPML_ECC_CURVE Structure <OUT>
116811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
116821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
116841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
116861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
116881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
116901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of curves
116921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA value of zero is allowed.
116931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahneccCurves[count]{:MAX_ECC_CURVES}
116951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_CURVE
116971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
116981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnarray of ECC curve identifiers
116991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.9 Capabilities Structures
117011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.9.1 TPMU_CAPABILITIES
117021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 104 — Definition of TPMU_CAPABILITIES Union <OUT>
117031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
117041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
117061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
117081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithms
117101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_ALG_PROPERTY
117121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_ALGS
117141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandles
117161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_HANDLE
117181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_HANDLES
117201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand
117221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_CCA
117241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_COMMANDS
117261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnppCommands
117281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_CC
117301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_PP_COMMANDS
117321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauditCommands
117341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_CC
117361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_AUDIT_COMMANDS
117381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnassignedPCR
117401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_PCR_SELECTION
117421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_PCRS
117441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahntpmProperties
117461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_TAGGED_TPM_PROPERTY
117481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_TPM_PROPERTIES
117501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrProperties
117521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_TAGGED_PCR_PROPERTY
117541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_PCR_PROPERTIES
117561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahneccCurves
117581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_ECC_CURVE
117601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP_ECC_CURVES
117621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
117641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
117651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
117671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
117681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
117701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECC
117721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 97
117741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
117751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
117771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
117791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.9.2 TPMS_CAPABILITY_DATA
117811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis data area is returned in response to a TPM2_GetCapability().
117821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 105 — Definition of TPMS_CAPABILITY_DATA Structure <OUT>
117831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
117841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
117861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
117881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncapability
117901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_CAP
117921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe capability
117941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[capability]data
117961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_CAPABILITIES
117981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
117991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe capability data
118001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10 Clock/Counter Structures
118021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.1 TPMS_CLOCK_INFO
118031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used in each of the attestation commands.
118041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 106 — Definition of TPMS_CLOCK_INFO Structure
118051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
118061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
118081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
118101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnclock
118121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT64
118141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntime in milliseconds during which the TPM has been powered
118161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure element is used to report on the TPM's Clock value.
118171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe value of Clock shall be recorded in non-volatile memory no
118181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn22
118191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnless often than once per 2 milliseconds (~69.9 minutes) of TPM
118201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoperation. The reference for the millisecond timer is the TPM
118211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoscillator.
118221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value is reset to zero when the Storage Primary Seed is
118231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchanged (TPM2_Clear()).
118241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value may be advanced by TPM2_AdvanceClock().
118251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnresetCount
118271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
118291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of occurrences of TPM Reset since the last TPM2_Clear()
118311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnrestartCount
118331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
118351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of times that TPM2_Shutdown() or _TPM_Hash_Start have
118371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoccurred since the last TPM Reset or TPM2_Clear().
118381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsafe
118401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_YES_NO
118421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno value of Clock greater than the current value of Clock has been
118441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpreviously reported by the TPM. Set to YES on TPM2_Clear().
118451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.2 Clock
118471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnClock is a monotonically increasing counter that advances whenever power is applied to the TPM. The
118481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue of Clock may be set forward with TPM2_ClockSet() if ownerAuth or platformAuth is provided. The
118491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue of Clock is incremented each millisecond.
118501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Clear() will set Clock to zero.
118511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnClock will be non-volatile but may have a volatile component that is updated every millisecond with the
118521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnon-volatile component updated at a lower rate. If the implementation uses a volatile component, the non22
118531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvolatile component shall be updated no less frequently than every 2 milliseconds (~69.9 minutes). The
118541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnupdate rate of the non-volatile portion of Clock shall be reported by a TPM2_GetCapability() with
118551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncapability = TPM_CAP_TPM_PROPERTIES and property = TPM_PT_CLOCK_UPDATE.
118561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.3 ResetCount
118571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis counter shall increment on each TPM Reset. This counter shall be reset to zero by TPM2_Clear().
118581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 98
118601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
118611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
118631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
118641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
118661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
118671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
118691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
118711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.4 RestartCount
118731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis counter shall increment by one for each TPM Restart or TPM Resume. The restartCount shall be
118741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreset to zero on a TPM Reset or TPM2_Clear().
118751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.5 Safe
118761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis parameter is set to YES when the value reported in Clock is guaranteed to be unique for the current
118771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOwner. It is set to NO when the value of Clock may have been reported in a previous attestation or
118781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaccess.
118791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis parameter will be YES if a TPM2_Startup() was preceded by TPM2_Shutdown() with no intervening
118801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommands. It will also be YES after an update of the non-volatile bits of Clock have been updated at the
118811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnend of an update interval.
118821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf a TPM implementation does not implement
118831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CLOCK_INFO.clock shall always be zero.
118841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnClock,
118861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSafe
118881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall
118901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalways
118921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe
118941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO
118961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand
118981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
118991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis parameter will be set to YES by TPM2_Clear().
119001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.10.6 TPMS_TIME_INFO
119011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used in the TPM2_TICK attestation.
119021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe Time value reported in this structure is reset whenever the TPM is reset. An implementation may
119031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreset the value of Time any time after _TPM_Init and before the TPM returns after TPM2_Start(). The
119041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue of Time shall increment continuously while power is applied to the TPM.
119051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 107 — Definition of TPMS_TIME_INFO Structure
119061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
119071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
119091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
119111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntime
119131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT64
119151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntime in milliseconds since the last _TPM_Init() or TPM2_Startup()
119171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure element is used to report on the TPM's Time value.
119181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnclockInfo
119201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CLOCK_INFO
119221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna structure containing the clock information
119241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
119261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
119271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
119291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
119301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 99
119321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
119331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
119351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
119371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11 TPM Attestation Structures
119391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.1 Introduction
119401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis clause describes the structures that are used when a TPM creates a structure to be signed. The
119411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsigning structures follow a standard format TPM2B_ATTEST with case-specific information embedded.
119421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.2 TPMS_TIME_ATTEST_INFO
119431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used when the TPM performs TPM2_GetClock.
119441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 108 — Definition of TPMS_TIME_ATTEST_INFO Structure <OUT>
119451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
119461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
119481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
119501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntime
119521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_TIME_INFO
119541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe Time, clock, resetCount, restartCount, and Safe indicator
119561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnfirmwareVersion
119581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT64
119601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna vendor-specific value indicating the version number of the
119621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfirmware
119631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.3 TPMS_CERTIFY_INFO
119651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the attested data for TPM2_Certify().
119661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 109 — Definition of TPMS_CERTIFY_INFO Structure <OUT>
119671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
119681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
119701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
119721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnname
119741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NAME
119761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName of the certified object
119781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnqualifiedName
119801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NAME
119821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnQualified Name of the certified object
119841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.1 TPMS_QUOTE_INFO
119861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the attested data for TPM2_Quote().
119871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 110 — Definition of TPMS_QUOTE_INFO Structure <OUT>
119881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
119891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
119911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
119931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrSelect
119951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_PCR_SELECTION
119971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
119981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninformation on algID, PCR selected and digest
119991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrDigest
120011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
120031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest of the selected PCR using the hash of the signing key
120051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 100
120071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
120081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
120101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
120111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
120131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
120141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
120161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
120181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.2 TPMS_COMMAND_AUDIT_INFO
120201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the attested data for TPM2_GetCommandAuditDigest().
120211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 111 — Definition of TPMS_COMMAND_AUDIT_INFO Structure <OUT>
120221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
120231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
120251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
120271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauditCounter
120291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT64
120311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe monotonic audit counter
120331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahndigestAlg
120351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ID
120371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash algorithm used for the command audit
120391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauditDigest
120411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
120431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe current value of the audit digest
120451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncommandDigest
120471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
120491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest of the command codes being audited using digestAlg
120511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.3 TPMS_SESSION_AUDIT_INFO
120531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the attested data for TPM2_GetSessionAuditDigest().
120541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 112 — Definition of TPMS_SESSION_AUDIT_INFO Structure <OUT>
120551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
120561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
120581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
120601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnexclusiveSession
120621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_YES_NO
120641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncurrent exclusive status of the session
120661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTRUE if all of the commands recorded in the sessionDigest were
120671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexecuted without any intervening TPM command that did not use
120681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis transport session
120691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsessionDigest
120711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
120731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe current value of the session audit digest
120751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.4 TPMS_CREATION_INFO
120771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the attested data for TPM2_CertifyCreation().
120781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 113 — Definition of TPMS_CREATION_INFO Structure <OUT>
120791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
120801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
120821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
120841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnobjectName
120861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NAME
120881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName of the object
120901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncreationHash
120921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
120941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncreationHash
120961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
120971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.5 TPMS_NV_CERTIFY_INFO
120981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure contains the Name and contents of the selected NV Index that is certified by
120991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_NV_Certify().
121001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 114 — Definition of TPMS_NV_CERTIFY_INFO Structure <OUT>
121011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
121021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
121041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
121061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnindexName
121081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NAME
121101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName of the NV Index
121121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoffset
121141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
121161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe offset parameter of TPM2_NV_Certify()
121181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnnvContents
121201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_MAX_NV_BUFFER
121221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontents of the NV Index
121241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
121261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
121271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
121291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
121301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 101
121321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
121331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
121351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
121371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.6 TPMI_ST_ATTEST
121391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 115 — Definition of (TPM_ST) TPMI_ST_ATTEST Type <OUT>
121401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
121411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
121431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_CERTIFY
121451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerated by TPM2_Certify()
121471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_QUOTE
121491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerated by TPM2_Quote()
121511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_SESSION_AUDIT
121531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerated by TPM2_GetSessionAuditDigest()
121551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_COMMAND_AUDIT
121571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerated by TPM2_GetCommandAuditDigest()
121591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_TIME
121611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerated by TPM2_GetTime()
121631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_CREATION
121651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerated by TPM2_CertifyCreation()
121671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_NV
121691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerated by TPM2_NV_Certify()
121711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.7 TPMU_ATTEST
121731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 116 — Definition of TPMU_ATTEST Union <OUT>
121741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
121751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
121771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
121791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncertify
121811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CERTIFY_INFO
121831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_CERTIFY
121851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncreation
121871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CREATION_INFO
121891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_CREATION
121911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnquote
121931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_QUOTE_INFO
121951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_QUOTE
121971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
121981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncommandAudit
121991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_COMMAND_AUDIT_INFO TPM_ST_ATTEST_COMMAND_AUDIT
122011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsessionAudit
122031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SESSION_AUDIT_INFO
122051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_SESSION_AUDIT
122071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntime
122091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_TIME_ATTEST_INFO
122111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_TIME
122131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnv
122151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_NV_CERTIFY_INFO
122171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ST_ATTEST_NV
122191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 102
122211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
122221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
122241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
122251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
122271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
122281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
122301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
122321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.8 TPMS_ATTEST
122341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used on each TPM-generated signed structure. The signature is over this structure.
122351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen the structure is signed by a key in the Storage hierarchy, the values of clockInfo.resetCount,
122361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnclockInfo.restartCount, and firmwareVersion are obfuscated with a per-key obfuscation value.
122371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 117 — Definition of TPMS_ATTEST Structure <OUT>
122381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
122391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
122411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
122431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmagic
122451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_GENERATED
122471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe indication that this structure was created by a TPM (always
122491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_GENERATED_VALUE)
122501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntype
122521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ST_ATTEST
122541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntype of the attestation structure
122561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnqualifiedSigner
122581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NAME
122601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnQualified Name of the signing key
122621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnextraData
122641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DATA
122661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexternal information supplied by caller
122681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
122691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPM2B_DATA structure provides room for a digest and a
122711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmethod indicator to indicate the components of the digest.
122721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe definition of this method indicator is outside the scope
122731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof this specification.
122741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnclockInfo
122761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CLOCK_INFO
122781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnClock, resetCount, restartCount, and Safe
122801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnfirmwareVersion
122821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT64
122841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM-vendor-specific field identifying the firmware on the TPM
122861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[type]attested
122881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_ATTEST
122901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe type-specific attestation information
122921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.11.9 TPM2B_ATTEST
122941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis sized buffer to contain the signed structure. The attestationData is the signed portion of the structure.
122951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe size parameter is not signed.
122961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 118 — Definition of TPM2B_ATTEST Structure <OUT>
122971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
122981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
122991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
123001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
123021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
123041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
123061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the attestationData structure
123081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnattestationData[size]{:sizeof(TPMS_ATTEST)}
123101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
123121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe signed structure
123141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
123161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
123171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
123191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
123201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 103
123221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
123231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
123251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
123271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.12 Authorization Structures
123291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe structures in this clause are used for all authorizations. One or more of these structures will be
123301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpresent in a command or response that has a tag of TPM_ST_SESSIONS.
123311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.12.1 TPMS_AUTH_COMMAND
123321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the format used for each of the authorizations in the session area of a command.
123331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 119 — Definition of TPMS_AUTH_COMMAND Structure <IN>
123341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
123351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
123371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
123391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsessionHandle
123411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_SH_AUTH_SESSION+
123431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe session handle
123451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnonce
123471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NONCE
123491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe session nonce, may be the Empty Buffer
123511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsessionAttributes
123531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_SESSION
123551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe session attributes
123571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhmac
123591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_AUTH
123611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahneither an HMAC, a password, or an EmptyAuth
123631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10.12.2 TPMS_AUTH_RESPONSE
123651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the format for each of the authorizations in the session area of the response. If the TPM returns
123661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RC_SUCCESS, then the session area of the response contains the same number of authorizations
123671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnas the command and the authorizations are in the same order.
123681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 120 — Definition of TPMS_AUTH_RESPONSE Structure <OUT>
123691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
123701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
123721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
123741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnonce
123761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NONCE
123781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe session nonce, may be the Empty Buffer
123801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsessionAttributes
123821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_SESSION
123841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe session attributes
123861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhmac
123881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_AUTH
123901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahneither an HMAC, a password, or an EmptyAuth
123921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 104
123941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
123951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
123971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
123981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
123991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
124001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
124011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
124031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
124051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11 Algorithm Parameters and Structures
124071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1 Symmetric
124081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.1 Introduction
124091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis clause defines the parameters and structures for describing symmetric algorithms.
124101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.2 TPMI_AES_KEY_BITS
124111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type defines the supported sizes for an AES key. This type is used to allow the
124121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunmarshaling routine to generate the proper validation code for the supported key sizes. An
124131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementation that supports different key sizes would have a different set of selections.
124141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen used in TPM2_StartAuthSession(), the mode parameter shall be TPM_ALG_CFB.
124151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
124161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnKey size is expressed in bits.
124181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
124201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe definition for AES_KEY_SIZES_BITS used in the reference implementation is found in Annex B
124221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 121 — Definition of {AES} (TPM_KEY_BITS) TPMI_AES_KEY_BITS Type
124241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
124251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
124271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn$AES_KEY_SIZES_BITS
124291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of bits in the key
124311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
124331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror when key size is not supported
124351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.3 TPMI_SM4_KEY_BITS
124371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis interface type defines the supported sizes for an SM4 key. This type is used to allow the
124381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunmarshaling routine to generate the proper validation code for the supported key sizes. An
124391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementation that supports different key sizes would have a different set of selections.
124401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
124411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM4 only supports a key size of 128 bits.
124431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 122 — Definition of {SM4} (TPM_KEY_BITS) TPMI_SM4_KEY_BITS Type
124451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
124461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
124481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn$SM4_KEY_SIZES_BITS
124501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of bits in the key
124521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
124541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
124561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
124571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
124591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
124601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 105
124621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
124631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
124651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
124671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.4 TPMU_SYM_KEY_BITS
124691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis union is used to collect the symmetric encryption key sizes.
124701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe xor entry is a hash algorithms selector and not a key size in bits. This overload is used in order to
124711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnavoid an additional level of indirection with another union and another set of selectors.
124721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe xor entry is only selected in a TPMT_SYM_DEF, which is used to select the parameter encryption
124731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue.
124741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 123 — Definition of TPMU_SYM_KEY_BITS Union
124751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
124761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
124781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
124801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaes
124821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_AES_KEY_BITS
124841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_AES
124861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM4
124881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_SM4_KEY_BITS
124901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM4
124921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsym
124941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_KEY_BITS
124961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnxor
124981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
124991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
125001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
125021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhen selector may be any of the
125041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric block ciphers
125051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_XOR
125061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoverload for using xor
125081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
125091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnull
125111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
125131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed
125141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis
125161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot
125181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
125201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.5 TPMU_SYM_MODE
125221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis union allows the mode value in a TPMT_SYM_DEF or TPMT_SYM_DEF_OBJECT to be empty.
125231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 124 — Definition of TPMU_SYM_MODE Union
125241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
125251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
125271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
125291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
125311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaes
125331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_SYM_MODE
125351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_AES
125371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
125391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
125411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed
125421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis
125441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot
125461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM4
125481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_SYM_MODE
125501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM4
125521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
125541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
125561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed
125571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis
125591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot
125611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsym
125631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_SYM_MODE
125651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhen selector may be any of the
125671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric block ciphers
125681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnxor
125701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_XOR
125721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno mode selector
125741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnull
125761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
125781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno mode selector
125801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 106
125821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
125831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
125851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
125861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
125881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
125891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
125911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
125931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.6 TPMU_SYM_DETAILS
125951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis union allows additional parameters to be added for a symmetric cipher. Currently, no additional
125961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameters are required for any of the symmetric algorithms.
125971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
125981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
125991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe “x” character in the table title will suppress generation of this type as the parser is not, at this time,
126001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnable to generate the proper values (a union of all empty data types). When an algorithm is added that
126011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires additional parameterization, the Type column will contain a value and the “x” may be removed.
126021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 125 — xDefinition of TPMU_SYM_DETAILS Union
126041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
126051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
126071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
126091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaes
126111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_AES
126131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM4
126151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
126171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM4
126191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsym
126211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhen selector may be any of the
126231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric block ciphers
126241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnxor
126261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_XOR
126281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnull
126301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
126321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.7 TPMT_SYM_DEF
126341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMT_SYM_DEF structure is used to select an algorithm to be used for parameter encryption in
126351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthose cases when different symmetric algorithms may be selected.
126361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 126 — Definition of TPMT_SYM_DEF Structure
126371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
126381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
126401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
126421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm
126441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_SYM
126461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates a symmetric algorithm
126481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[algorithm]keyBits
126501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SYM_KEY_BITS
126521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna supported key size
126541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[algorithm]mode
126561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SYM_MODE
126581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe mode for the key
126601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn//[algorithm]details
126621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SYM_DETAILS
126641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontains additional algorithm details
126661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
126671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is commented out at this time as the parser
126691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay not produce the proper code for a union if
126701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnone of the selectors produces any data.
126711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.8 TPMT_SYM_DEF_OBJECT
126731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used when different symmetric block cipher (not XOR) algorithms may be selected.
126741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 127 — Definition of TPMT_SYM_DEF_OBJECT Structure
126751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
126761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
126781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
126801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm
126821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_SYM_OBJECT
126841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselects a symmetric block cipher
126861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[algorithm]keyBits
126881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SYM_KEY_BITS
126901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe key size
126921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[algorithm]mode
126941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SYM_MODE
126961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefault mode
126981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
126991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn//[algorithm]details
127001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SYM_DETAILS
127021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontains the additional algorithm details, if any
127041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
127051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
127071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
127081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is commented out at this time as the parser
127101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay not produce the proper code for a union if
127111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnone of the selectors produces any data.
127121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
127141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
127151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 107
127171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
127181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
127201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
127221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.9 TPM2B_SYM_KEY
127241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used to hold a symmetric key in the sensitive area of an asymmetric object.
127251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe number of bits in the key is in keyBits in the public area. When keyBits is not an even multiple of 8
127261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbits, the unused bits of buffer will be the most significant bits of buffer[0] and size will be rounded up to
127271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of octets required to hold all bits of the key.
127281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 128 — Definition of TPM2B_SYM_KEY Structure
127291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
127301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
127321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
127341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
127361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
127381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize, in octets, of the buffer containing the key; may be
127401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnzero
127411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer [size] {:MAX_SYM_KEY_BYTES}
127431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
127451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe key
127471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.10 TPMS_SYMCIPHER_PARMS
127491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure contains the parameters for a symmetric block cipher object.
127501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 129 — Definition of TPMS_SYMCIPHER_PARMS Structure
127511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
127521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
127541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
127561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsym
127581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SYM_DEF_OBJECT
127601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna symmetric block cipher
127621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.11 TPM2B_SENSITIVE_DATA
127641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis buffer holds the secret data of a data object. It can hold as much as 128 octets of data.
127651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SYM_DATA shall be 128.
127661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
127671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA named value rather than a numeric is used to make coding clearer. A numeric value does not indicate
127691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe reason that it has the specific value that is has.
127701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 130 — Definition of TPM2B_SENSITIVE_DATA Structure
127721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
127731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
127751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
127771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
127791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size]{: MAX_SYM_DATA}
127811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
127831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 108
127851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
127861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
127881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe keyed hash private data structure
127901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
127921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
127931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
127951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
127961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
127981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
127991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
128001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.12 TPMS_SENSITIVE_CREATE
128021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure defines the values to be placed in the sensitive area of a created object. This structure is
128031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnonly used within a TPM2B_SENSITIVE_CREATE structure.
128041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
128051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen sent to the TPM or unsealed, data is usually encrypted using parameter encryption.
128071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf data.size is not zero, and the object is not a keyedHash, data.size must match the size indicated in the
128091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeySize of public.parameters. If the object is a keyedHash, data.size may be any value up to the
128101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum allowed in a TPM2B_SENSITIVE_DATA.
128111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor an asymmetric object, data shall be an Empty Buffer and sensitiveDataOrigin shall be SET.
128121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 131 — Definition of TPMS_SENSITIVE_CREATE Structure <IN>
128131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
128141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
128161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
128181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnuserAuth
128201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_AUTH
128221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe USER auth secret value
128241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndata
128261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_SENSITIVE_DATA
128281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndata to be sealed
128301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
128321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
128331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
128351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
128361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 109
128381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
128391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
128411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
128431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.13 TPM2B_SENSITIVE_CREATE
128451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure contains the sensitive creation data in a sized buffer. This structure is defined so that both
128461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe userAuth and data values of the TPMS_SENSITIVE_CREATE may be passed as a single parameter
128471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor parameter encryption purposes.
128481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 132 — Definition of TPM2B_SENSITIVE_CREATE Structure <IN, S>
128491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
128501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
128521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
128541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize=
128561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
128581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of sensitive in octets (may not be zero)
128601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
128611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsensitive
128631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SENSITIVE_CREATE
128651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe userAuth and data parameters in this buffer
128671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmay both be zero length but the minimum size of
128681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis parameter will be the sum of the size fields of
128691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
128701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntwo
128711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameters
128721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof
128731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
128741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SENSITIVE_CREATE.
128751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndata to be sealed or a symmetric key value.
128771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.14 TPMS_SCHEME_SIGHASH
128791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is the scheme data for schemes that only require a hash to complete the scheme definition.
128801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 133 — Definition of TPMS_SCHEME_SIGHASH Structure
128811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
128821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
128841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
128861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
128881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
128901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used to digest the message
128921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.15 TPMI_ALG_HASH_SCHEME
128941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the list of values that may appear in a keyedHash as the scheme parameter.
128951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 134 — Definition of (TPM_ALG_ID) TPMI_ALG_KEYEDHASH_SCHEME Type
128961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
128971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
128981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
128991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_HMAC
129011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe "signing" scheme
129031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_XOR
129051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe "obfuscation" scheme
129071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
129091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
129101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.16 HMAC_SIG_SCHEME
129121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 135 — Definition of Types for HMAC_SIG_SCHEME
129131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
129141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
129161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SIGHASH
129181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_HMAC
129201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 110
129221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
129231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
129251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
129271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
129281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
129301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
129311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
129331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
129351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.17 TPMS_SCHEME_XOR
129371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is for the XOR encryption scheme.
129381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 136 — Definition of TPMS_SCHEME_XOR Structure
129391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
129401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
129421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
129441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
129461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_HASH
129481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used to digest the message
129501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkdf
129521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_KDF
129541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe key derivation function
129561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.18 TPMU_SCHEME_HMAC
129581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 137 — Definition of TPMU_SCHEME_KEYEDHASH Union <IN/OUT, S>
129591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
129601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
129621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
129641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
129661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhmac
129681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_HMAC
129701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_HMAC
129721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe "signing" scheme
129741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnxor
129761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_XOR
129781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_XOR
129801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe "obfuscation" scheme
129821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnull
129841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
129861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.1.19 TPMT_KEYEDHASH_SCHEME
129881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used for a hash signing object.
129891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 138 — Definition of TPMT_KEYEDHASH_SCHEME Structure
129901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
129911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
129931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
129951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
129971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
129981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_KEYEDHASH_SCHEME
129991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselects the scheme
130011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[scheme]details
130031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SCHEME_KEYEDHASH
130051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe scheme parameters
130071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
130091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
130101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
130121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
130131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 111
130151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
130161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
130181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
130201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2 Asymmetric
130221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1 Signing Schemes
130231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.1
130241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
130261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese structures are used to define the method in which the signature is to be created. These schemes
130281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwould appear in an object’s public area and in commands where the signing scheme is variable.
130291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEvery scheme is required to indicate a hash that is used in digesting the message.
130301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.2
130311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA_SIG_SCHEMES
130331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese are the RSA schemes that only need a hash algorithm as a scheme parameter.
130351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor the TPM_ALG_RSAPSS signing scheme, the same hash algorithm is used for digesting TPMgenerated data (an attestation structure) and in the KDF used for the masking operation. The salt size is
130361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalways the largest salt value that will fit into the available space.
130371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 139 — Definition of {RSA} Types for RSA_SIG_SCHEMES
130381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
130391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
130411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
130431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SIGHASH TPMS_SCHEME_RSASSA
130451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SIGHASH TPMS_SCHEME_RSAPSS
130461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.3
130481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC_SIG_SCHEMES
130501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese are the ECC schemes that only need a hash algorithm as a controlling parameter.
130521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 140 — Definition of {ECC} Types for ECC_SIG_SCHEMES
130531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
130541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
130561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
130581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SIGHASH TPMS_SCHEME_ECDSA
130601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SIGHASH TPMS_SCHEME_SM2
130611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SIGHASH TPMS_SCHEME_ECSCHNORR
130621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.4 TPMS_SCHEME_ECDAA
130641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 141 — Definition of {ECC} TPMS_SCHEME_ECDAA Structure
130651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
130661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
130681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
130701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
130721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
130741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used to digest the message
130761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncount
130781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
130801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe counter value that is used between TPM2_Commit() and the sign
130821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoperation
130831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 112
130851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
130861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
130881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
130891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
130911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
130921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
130941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.5
130951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
130971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
130981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SIG_SCHEME
130991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 142 — Definition of TPMU_SIG_SCHEME Union <IN/OUT, S>
131001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
131021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
131041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
131061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
131081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsassa
131101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_RSASSA
131121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSASSA
131141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe PKCS#1v1.5 scheme
131161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsapss
131181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_RSAPSS
131201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAPSS
131221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe PKCS#1v2.1 PSS scheme
131241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecdsa
131261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_ECDSA
131281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDSA
131301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe ECDSA scheme
131321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsm2
131341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SM2
131361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM2
131381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECDSA from SM2
131401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecdaa
131421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_ECDAA
131441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDAA
131461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe ECDAA scheme
131481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnecSchnorr
131501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_ECSCHNORR
131521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECSCHNORR
131541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe EC Schnorr
131561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhmac
131581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_HMAC
131601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_HMAC
131621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe HMAC scheme
131641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnany
131661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SIGHASH
131681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnull
131701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.1.6
131721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselector that allows access to
131741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest for any signing scheme
131751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
131761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno scheme or default
131781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SIG_SCHEME
131801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 143 — Definition of TPMT_SIG_SCHEME Structure
131811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
131831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
131851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
131871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
131891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_SIG_SCHEME
131911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme selector
131931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[scheme]details
131951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SIG_SCHEME
131971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
131981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme parameters
131991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
132011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
132021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
132041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
132051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 113
132071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
132081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
132101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
132121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.2 Encryption Schemes
132141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.2.1
132151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
132171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese structures are used to indicate the hash algorithm used for the encrypting process. These
132191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnschemes would appear in an object’s public area.
132201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.2.2
132211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_OAEP
132231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 144 — Definition of {RSA} TPMS_SCHEME_OAEP Structure
132241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
132261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
132281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
132301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
132321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_HASH
132341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used to digest the message
132361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.2.3
132381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_ECDH
132401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor ECDH, KDFe is used for the key derivation function that only a hash algorithm is needed to complete
132421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe definition.
132431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 145 — Definition of {ECC} TPMS_SCHEME_ECDH Structure
132441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
132451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
132471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
132491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
132511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_HASH
132531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used in the KDF
132551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3 Key Derivation Schemes
132571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.1
132581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
132601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese structures are used to define the key derivation for symmetric secret sharing using asymmetric
132621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmethods. A secret shareing scheme is required in any asymmetric key with the decrypt attribute SET.
132631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese schemes would appear in an object’s public area and in commands where the secret sharing
132641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme is variable.
132651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEach scheme includes a symmetric algorithm and a KDF selection.
132661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.2
132671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_MGF1
132691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 146 — Definition of TPMS_SCHEME_MGF1 Structure
132701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
132721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
132741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
132761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
132781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
132801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used in the KDF
132821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.3
132841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_KDF1_SP800_56a
132861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 147 — Definition of {ECC} TPMS_SCHEME_KDF1_SP800_56a Structure
132871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
132891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
132911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
132931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
132951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
132971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
132981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used in the KDF
132991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 114
133011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
133021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
133041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
133051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
133071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
133081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
133101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.4
133111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
133131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_KDF2
133151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 148 — Definition of TPMS_SCHEME_KDF2 Structure
133161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
133181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
133201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
133221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
133241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
133261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used in the KDF
133281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.5
133301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_KDF1_SP800_108
133321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 149 — Definition of TPMS_SCHEME_KDF1_SP800_108 Structure
133331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
133351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
133371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
133391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnhashAlg
133411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
133431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used in the KDF
133451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.6
133471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_KDF_SCHEME
133491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 150 — Definition of TPMU_KDF_SCHEME Union <IN/OUT, S>
133501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
133521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
133541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
133561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmgf1
133581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_MGF1
133601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_MGF1
133621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkdf1_SP800_56a TPMS_SCHEME_KDF1_SP800_56a
133641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KDF1_SP800_56a
133661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkdf2
133681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_KDF2
133701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KDF2
133721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkdf1_sp800_108
133741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_KDF1_SP800_108
133761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
133781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KDF1_SP800_108
133801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnull
133821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.7
133841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
133861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_KDF_SCHEME
133881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 151 — Definition of TPMT_KDF_SCHEME Structure
133891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
133911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
133931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
133951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
133971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
133981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_KDF
133991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme selector
134011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[scheme]details
134031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_KDF_SCHEME
134051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme parameters
134071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
134091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
134101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
134121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
134131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 115
134151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
134161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
134181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.8
134191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
134211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_ASYM_SCHEME
134231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnList of all of the scheme types for any asymmetric algorithm. This is used to define the
134251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_ASYM_SCHEME.
134261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 152 — Definition of (TPM_ALG_ID) TPMI_ALG_ASYM_SCHEME Type <>
134271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
134281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
134301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSASSA
134321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlist of the allowed values
134341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAPSS
134361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAES
134371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_OAEP
134381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDSA
134391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM2
134401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDAA
134411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDH
134421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
134431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
134441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.9
134461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_ASYM_SCHEME
134481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis union of all asymmetric schemes is used in each of the asymmetric scheme structures. The actual
134501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme structure is defined by the interface type used for the selector.
134511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
134521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPMT_RSA_SCHEME structure uses the TPMU_ASYM_SCHEME union but the selector type is
134541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_RSA_SCHEME. This means that the only elements of the union that can be selected for th e
134551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_RSA_SCHEME are those that are in TPMI_RSA_SCHEME.
134561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 153 — Definition of TPMU_ASYM_SCHEME Union
134581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
134591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
134611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
134631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
134651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsassa
134671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_RSASSA
134691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSASSA
134711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe PKCS#1v1.5 scheme
134731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsapss
134751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_RSAPSS
134771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAPSS
134791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe PKCS#1v2.1 PSS scheme
134811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAES
134831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe PKCS#1v2.1 RSAES scheme
134851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsaes
134871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoaep
134881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_OAEP
134901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_OAEP
134921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe PKSC#1v2.1 OAEP scheme
134941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecdsa
134961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_ECDSA
134981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
134991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDSA
135001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan ECDSA scheme
135021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsm2
135041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SM2
135061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM2
135081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsign or key exchange from SM2
135101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecdaa
135121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_ECDAA
135141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDAA
135161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan ECDAA scheme
135181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnecSchnorr
135201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_ECSCHNORR
135221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECSCHNORR elliptic curve Schnorr signature
135241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecdh
135261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnanySig
135271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDH
135291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SIGHASH
135301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnull
135321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 116
135341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
135351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
135371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
135391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
135401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno scheme or default
135421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis selects the NULL Signature.
135431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
135451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
135461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
135481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
135501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.3.10 TPMT_ASYM_SCHEME
135521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is defined to allow overlay of all of the schemes for any asymmetric object. This structure is
135531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot sent on the interface.
135541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 154 — Definition of TPMT_ASYM_SCHEME Structure <>
135551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
135561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
135581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
135601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
135621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_ASYM_SCHEME
135641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme selector
135661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[scheme]details
135681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_ASYM_SCHEME
135701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme parameters
135721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4 RSA
135741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.1
135751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_RSA_SCHEME
135771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe list of values that may appear in the scheme parameter of a TPMS_RSA_PARMS structure.
135791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 155 — Definition of (TPM_ALG_ID) {RSA} TPMI_ALG_RSA_SCHEME Type
135801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
135811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
135831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSASSA
135851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlist of the allowed values
135871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAPSS
135891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAES
135901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_OAEP
135911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
135921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
135931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.2
135951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_RSA_SCHEME
135971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 156 — Definition of {RSA} TPMT_RSA_SCHEME Structure
135981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
135991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
136001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
136021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
136041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
136061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_RSA_SCHEME
136081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme selector
136101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[scheme]details
136121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_ASYM_SCHEME
136141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme parameters
136161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
136181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
136191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
136211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
136221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 117
136241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
136251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
136271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.3
136281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
136301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_RSA_DECRYPT
136321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe list of values that are allowed in a decryption scheme selection as used in TPM2_RSA_Encrypt() and
136341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_RSA_Decrypt().
136351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 157 — Definition of (TPM_ALG_ID) {RSA} TPMI_ALG_RSA_DECRYPT Type
136361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
136371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
136391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAES
136411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_OAEP
136421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
136431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
136441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.4
136461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_RSA_DECRYPT
136481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 158 — Definition of {RSA} TPMT_RSA_DECRYPT Structure
136491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
136511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
136531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
136551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
136571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_RSA_DECRYPT
136591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme selector
136611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[scheme]details
136631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_ASYM_SCHEME
136651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme parameters
136671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.5
136691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PUBLIC_KEY_RSA
136711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis sized buffer holds the largest RSA public key supported by the TPM.
136731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
136741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe reference implementation only supports key sizes of 1,024 and 2,048 bits.
136761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 159 — Definition of {RSA} TPM2B_PUBLIC_KEY_RSA Structure
136781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
136791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
136811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
136831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
136851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
136871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the buffer
136891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe value of zero is only valid for create.
136901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size] {: MAX_RSA_KEY_BYTES}
136921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
136941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
136961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.6
136981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
136991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RSA_KEY_BITS
137001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis holds the value that is the maximum size allowed for an RSA key.
137021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
137031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn implementation is allowed to provide limited support for smaller RSA key sizes. That is, a TPM may be
137051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnable to accept a smaller RSA key size in TPM2_LoadExternal() when only the public area is loaded but
137061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot accept that smaller key size in any command that loads both the public and private portions of an RSA
137071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey. This would allow the TPM to validate signatures using the smaller key but would prevent the TPM
137081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfrom using the smaller key size for any other purpose.
137091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
137111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe definition for RSA_KEY_SIZES_BITS used in the reference implementation is found in Annex B
137131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 118
137151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
137161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
137181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
137191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
137211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
137221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
137241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
137261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 160 — Definition of {RSA} (TPM_KEY_BITS) TPMI_RSA_KEY_BITS Type
137281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
137291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
137311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn$RSA_KEY_SIZES_BITS
137331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of bits in the supported key
137351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
137371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror when key size is not supported
137391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.4.7
137411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE_KEY_RSA
137431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis sized buffer holds the largest RSA prime number supported by the TPM.
137451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
137461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAll primes are required to have exactly half the number of significant bits as the public modulus , and the
137481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsquare of each prime is required to have the same number of significant bits as the public modulus.
137491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 161 — Definition of {RSA} TPM2B_PRIVATE_KEY_RSA Structure
137511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
137521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
137541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
137561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
137581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size]{:MAX_RSA_KEY_BYTES/2}
137601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
137621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
137641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
137651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
137671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
137691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
137701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 119
137721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
137731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
137751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
137771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5 ECC
137791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.1
137801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
137821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis sized buffer holds the largest ECC parameter (coordinate) supported by the TPM.
137841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 162 — Definition of {ECC} TPM2B_ECC_PARAMETER Structure
137851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
137861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
137881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
137901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
137921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
137941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of buffer
137961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size] {:MAX_ECC_KEY_BYTES}
137981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
137991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
138001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe parameter data
138021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.2
138041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ECC_POINT
138061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure holds two ECC coordinates that, together, make up an ECC point.
138081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 163 — Definition of {ECC} TPMS_ECC_POINT Structure
138091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
138101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
138121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
138141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnx
138161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
138181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnX coordinate
138201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahny
138221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
138241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY coordinate
138261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.3
138281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_POINT
138301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is defined to allow a point to be a single sized parameter so that it may be encrypted.
138321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
138331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the point is to be omitted, the X and Y coordinates need to be individual ly set to Empty Buffers. The
138351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnminimum value for size will be four. It is checked indirectly by unmarshaling of the TPMS_ECC_POINT. If
138361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe type of point were BYTE, then size could have been zero. However, this would complicate the process
138371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof marshaling the structure.
138381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 164 — Definition of {ECC} TPM2B_ECC_POINT Structure
138401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
138411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
138431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
138451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize=
138471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
138491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the remainder of this structure
138511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpoint
138531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ECC_POINT
138551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncoordinates
138571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror returned if the unmarshaled size of point is
138581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot exactly equal to size
138591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SIZE
138611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 120
138631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
138641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
138661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
138671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
138691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
138701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
138721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.4
138731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
138751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_ECC_SCHEME
138771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 165 — Definition of (TPM_ALG_ID) {ECC} TPMI_ALG_ECC_SCHEME Type
138781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
138801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
138821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDSA
138841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthese are the selections allowed for an ECC key
138861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM2
138881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDAA
138891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECSCHNORR
138901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDH
138911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPM_ALG_NULL
138921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SCHEME
138931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.5
138951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ECC_CURVE
138971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
138981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe ECC curves implemented by the TPM.
138991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
139001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe definition of ECC_CURVES used in the reference implementation is found in Annex B
139021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 166 — Definition of {ECC} (TPM_ECC_CURVE) TPMI_ECC_CURVE Type
139041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
139051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
139071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn$ECC_CURVES
139091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe list of implemented curves
139111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_CURVE
139131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror when curve is not supported
139151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.6
139171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_ECC_SCHEME
139191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 167 — Definition of (TPMT_SIG_SCHEME) {ECC} TPMT_ECC_SCHEME Structure
139211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
139221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
139241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
139261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
139281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_ECC_SCHEME
139301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme selector
139321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[scheme]details
139341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SIG_SCHEME
139361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme parameters
139381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
139401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
139411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
139431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
139441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 121
139461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
139471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
139491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.2.5.7
139501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
139521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ALGORITHM_DETAIL_ECC
139541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used to report on the curve parameters of an ECC curve. It is returned by
139561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_ECC_Parameters().
139571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 168 — Definition of {ECC} TPMS_ALGORITHM_DETAIL_ECC Structure <OUT>
139581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
139591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
139611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
139631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncurveID
139651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_CURVE
139671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnidentifier for the curve
139691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeySize
139711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
139731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSize in bits of the key
139751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkdf
139771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_KDF_SCHEME
139791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe default KDF and hash algorithm used in secret sharing
139811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoperations
139821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsign
139841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_ECC_SCHEME+
139861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf not TPM_ALG_NULL, this is the mandatory signature
139881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme that is required to be used with this curve.
139891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnp
139911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
139931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFp (the modulus)
139951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
139971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
139981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
139991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncoefficient of the linear term in the curve equation
140011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnb
140031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
140051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnconstant term for curve equation
140071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahngX
140091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
140111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnx coordinate of base point G
140131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahngY
140151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
140171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahny coordinate of base point G
140191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnn
140211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
140231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnorder of G
140251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnh
140271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
140291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncofactor (a size of zero indicates a cofactor of 1)
140311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3 Signatures
140331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.1 TPMS_SIGNATURE_RSASSA
140341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 169 — Definition of {RSA} TPMS_SIGNATURE_RSASSA Structure
140351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
140361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
140381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
140401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash
140421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
140441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used to digest the message
140461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL is not allowed.
140471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsig
140491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PUBLIC_KEY_RSA
140511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe signature is the size of a public key.
140531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.2 TPMS_SIGNATURE_RSAPSS
140551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen the TPM generates a PSS signature, the salt size is the largest size allowed by the key and hash
140561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncombination.
140571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEXAMPLE
140581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor a 2,048-bit public modulus key and SHA1 hash, the salt size is 256 – 20 – 2 = 234 octets.
140601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
140621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhile this is significantly larger than required from a securit y perspective, it avoids issues of whether a
140641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparticular size of salt value is sufficient.
140651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 122
140671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
140681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
140701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
140711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
140731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
140741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
140761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
140781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 170 — Definition of {RSA} TPMS_SIGNATURE_RSAPSS Structure
140801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
140811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
140831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
140851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash
140871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
140891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used in the signature process
140911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL is not allowed.
140921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsig
140941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PUBLIC_KEY_RSA
140961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe signature is the size of a public key.
140981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
140991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.3 TPMS_SIGNATURE_ECDSA
141001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 171 — Definition of {ECC} TPMS_SIGNATURE_ECDSA Structure
141011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
141021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
141041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
141061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash
141081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
141101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used in the signature process
141121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL is not allowed.
141131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsignatureR
141151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
141171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsignatureS
141191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
141211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.4 TPMU_SIGNATURE
141231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPMU_SIGNATURE_COMPOSITE is a union of the various signatures that is supported by a particular
141241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM implementation. The union allows substitution of any signature algorithm wherever a signature is
141251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired in a structure. Table 172 is an illustration of a TPMU_SIGNATURE for a TPM that implements
141261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnboth RSA and ECC signing.
141271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
141281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAll TPM are required to support a hash algorithm and the HMAC algorithm.
141301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen a symmetric algorithm is used for signing, the signing algorithm is assumed to be an HMAC based
141321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnon the indicated hash algorithm. The HMAC key will either be referenced as part of the usage or will be
141331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplied by context.
141341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
141351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe table below is illustrative. It would be modified to reflect the signatures produced by the TPM.
141371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 172 — Definition of TPMU_SIGNATURE Union <IN/OUT, S>
141391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
141401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
141421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
141441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
141461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsassa
141481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SIGNATURE_RSASSA
141501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSASSA
141521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna PKCS#1v1.5 signature
141541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsapss
141561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SIGNATURE_RSAPSS
141581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAPSS
141601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna PKCS#1v2.1PSS signature
141621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecdsa
141641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SIGNATURE_ECDSA
141661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDSA
141681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan ECDSA signature
141701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsm2
141721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SIGNATURE_ECDSA
141741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SM2
141761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsame format as ECDSA
141781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecdaa
141801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SIGNATURE_ECDSA
141821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECDAA
141841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsame format as ECDSA
141861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecschnorr
141881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SIGNATURE_ECDSA
141901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECSCHNORR
141921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsame format as ECDSA
141941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhmac
141961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_HA
141981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
141991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_HMAC
142001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC signature (required to
142021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe supported)
142031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnany
142051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SCHEME_SIGHASH
142071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnull
142091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
142111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
142121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused to access the hash
142141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
142151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
142171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
142181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe NULL signature
142201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 123
142221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
142231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
142251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
142271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.3.5 TPMT_SIGNATURE
142291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 173 shows the basic algorithm-agile structure when a symmetric or asymmetric signature is
142301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicated. The sigAlg parameter indicates the algorithm used for the signature. This structure is output
142311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfrom the attestation commands and is an input to TPM2_VerifySignature(), TPM2_PolicySigned(), and
142321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_FieldUpgradeStart().
142331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 173 — Definition of TPMT_SIGNATURE Structure
142341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
142351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
142371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
142391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsigAlg
142411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_SIG_SCHEME
142431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnselector of the algorithm used to construct the signature
142451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[sigAlg]signature
142471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SIGNATURE
142491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis shall be the actual signature information.
142511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.4 Key/Secret Exchange
142531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.4.1 Introduction
142541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe structures in this clause are used when a key or secret is being exchanged. The exchange may be in
142551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn142561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_StartAuthSession() where the secret is injected for salting the session,
142581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn142601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Duplicate(), TPM2_Import, or TPM2_Rewrap() where the secret is the symmetric encryption
142621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey for the outer wrapper of a duplication blob, or
142631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn142651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_ActivateIdentity() or TPM2_CreateIdentity() where the secret is the symmetric encryption key
142671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor the credential blob.
142681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParticulars are described in Part 1.
142701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.4.2 TPMU_ENCRYPTED_SECRET
142711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used to hold either an ephemeral public point for ECDH, an OAEP-encrypted block for
142721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA, or a symmetrically encrypted value. This structure is defined for the limited purpose of determining
142731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe size of a TPM2B_ENCRYPTED_SECRET.
142741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe symmetrically encrypted value may use either CFB or XOR encryption.
142751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
142761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 174 is illustrative. It would be modified depending on the algorithms supported in the TPM.
142781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 174 — Definition of TPMU_ENCRYPTED_SECRET Union <S>
142801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
142811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
142831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
142851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecc[sizeof(TPMS_ECC_POINT)]
142871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
142891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECC
142911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsa[MAX_RSA_KEY_BYTES]
142931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
142951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSA
142971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
142981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric[sizeof(TPM2B_DIGEST)]
142991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
143011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SYMCIPHER
143031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeyedHash[sizeof(TPM2B_DIGEST)]
143051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
143071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KEYEDHASH
143091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 124
143111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
143121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
143141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
143151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
143171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAny symmetrically encrypted
143191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsecret value will be limited to
143201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe no larger than a digest.
143211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
143231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
143241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
143261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
143281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11.4.3 TPM2B_ENCRYPTED_SECRET
143301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 175 — Definition of TPM2B_ENCRYPTED_SECRET Structure
143311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
143321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
143341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
143361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
143381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
143401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the secret value
143421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsecret[size] {:sizeof(TPMU_ENCRYPTED_SECRET)}
143441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
143461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsecret
143481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
143501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
143511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
143531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
143541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 125
143561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
143571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
143591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
143611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12 Key/Object Complex
143631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.1 Introduction
143641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn object description requires a TPM2B_PUBLIC structure and may require a TPMT_SENSITIVE
143651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure. When the structure is stored off the TPM, the TPMT_SENSITIVE structure is encrypted within a
143661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE structure.
143671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen the object requires two components for its description, those components are loaded as separate
143681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameters in the TPM2_Load() command. When the TPM creates an object that requires both
143691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncomponents, the TPM will return them as separate parameters from the TPM2_Create() operation.
143701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM may produce multiple different TPM2B_PRIVATE structures for a single TPM2B_PUBLIC
143711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructure. Creation of a modified TPM2B_PRIVATE structure requires that the full structure be loaded with
143721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM2_Load() command, modification of the TPMT_SENSITIVE data, and output of a new
143731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE structure.
143741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2 Public Area Structures
143751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.1 Description
143761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis clause defines the TPM2B_PUBLIC structure and the higher-level substructure that may be
143771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontained in a TPM2B_PUBLIC. The higher-level structures that are currently defined for inclusion in a
143781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PUBLIC are the
143791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn143801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructures for asymmetric keys,
143821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn143841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructures for symmetric keys, and
143861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn143881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstructures for sealed data.
143901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.2 TPMI_ALG_PUBLIC
143921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 176 — Definition of (TPM_ALG_ID) TPMI_ALG_PUBLIC Type
143931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues
143941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
143961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KEYEDHASH
143981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
143991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired of all TPM
144001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SYMCIPHER
144021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequired of all TPM
144041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSA
144061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAt least one asymmetric algorithm shall be implemented.
144081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECC
144101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAt least one asymmetric algorithm shall be implemented.
144121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_TYPE
144141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code when a public type is not supported
144161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3 Type-Specific Parameters
144181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.1
144191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
144211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe public area contains two fields (parameters and unique) that vary by object type. The parameters
144231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfield varies according to the type of the object but the contents may be the same across multiple
144241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninstances of a particular type. The unique field format also varies according to the type of the object and
144251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwill also be unique for each instance.
144261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 126
144281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
144291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
144311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
144321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
144341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
144351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
144371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
144391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor a symmetric key (type == TPM_ALG_SYMCIPHER), HMAC key (type == TPM_ALG_KEYEDHASH)
144411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor data object (also, type == TPM_ALG_KEYEDHASH), the contents of unique shall be computed from
144421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncomponents of the sensitive area of the object as follows:
144431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunique ≔ HnameAlg(seedValue || sensitive)
144451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(8)
144471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhere
144491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHnameAlg()
144511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hash algorithm used to compute the Name of the object
144531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnseedValue
144551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe digest-sized obfuscation value in the sensitive area of a symmetric
144571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey
144581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor
144591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric
144601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndata
144611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject
144621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfound
144631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin
144641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
144651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SENSITIVE.seedValue.buffer
144661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsensitive
144681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
144701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsecret
144711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey/data
144721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof
144731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SENSITIVE.sensitive.any.buffer
144741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.2
144761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
144781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject
144801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin
144821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
144841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_PUBLIC_ID
144861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 177 — Definition of TPMU_PUBLIC_ID Union <IN/OUT, S>
144871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
144891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
144911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
144931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeyedHash
144951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
144971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
144981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KEYEDHASH
144991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsym
145011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
145031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SYMCIPHER
145051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsa
145071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PUBLIC_KEY_RSA
145091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSA
145111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecc
145131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ECC_POINT
145151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECC
145171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.3
145191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
145211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_KEYEDHASH_PARMS
145231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure describes the parameters that would appear in the public area of a KEYEDHASH object.
145251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNote
145261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAlthough the names are the same, the types of the structures are not the same as for asymmetric
145281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameter lists.
145291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 178 — Definition of TPMS_KEYEDHASH_PARMS Structure
145311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
145321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
145341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
145361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
145381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_KEYEDHASH_SCHEME+
145401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndicates the signing method used for a keyedHash signing
145421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject. This field also determines the size of the data field for a
145431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndata object created with TPM2_Create(). This field shall not be set
145441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto TPM_ALG_NULL in a template if either sign or encrypt is SET.
145451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.4
145471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ASYM_PARMS
145491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure contains the common public area parameters for an asymmetric key. The first two
145511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameters of the parameter definition structures of an asymmetric key shall have the same two first
145521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncomponents.
145531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
145541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe sign parameter may have a different type in order to allow different schemes to be selected for each
145561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnasymmetric type but the first parameter of each scheme definition shall be a TPM_ALG_ID for a valid
145571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsigning scheme.
145581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
145601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
145611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
145631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
145641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 127
145661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
145671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
145691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
145711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 179 — Definition of TPMS_ASYM_PARMS Structure <>
145721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
145741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
145761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
145781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric
145801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SYM_DEF_OBJECT+
145821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe companion symmetric algorithm for a restricted
145841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecryption key and shall be set to a supported symmetric
145851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm
145861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis field is optional for keys that are not decryption keys
145871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand shall be set to TPM_ALG_NULL if not used.
145881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
145901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_ASYM_SCHEME+
145921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
145931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor a key with the sign attribute SET, a valid signing
145941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme for the key type
145951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor a key with the decrypt attribute SET, a valid key
145961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexchange protocol
145971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor a key with sign and decrypt attributes, shall be
145981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
145991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.5
146011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_RSA_PARMS
146031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPM compatible with this specification and supporting RSA shall support numPrimes of two and an
146051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexponent of zero. Support for other values is optional. Use of other exponents in duplicated keys is not
146061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrecommended because the resulting keys would not be interoperable with other TPMs.
146071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
146081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplementations are not required to check that exponent is the default exponent. They may fail to load the
146101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey if exponent is not zero. The reference implementation allows the values listed in the table.
146111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 180 — Definition of {RSA} TPMS_RSA_PARMS Structure
146131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
146141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
146161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
146181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric
146201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SYM_DEF_OBJECT+ for a restricted decryption key, shall be set to a
146221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsupported symmetric algorithm, key size, and mode.
146231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnif the key is not a restricted decryption key, this field
146241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be set to TPM_ALG_NULL.
146251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
146271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_RSA_SCHEME+
146291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor a signing key, shall be either TPM_ALG_RSAPSS
146311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSASSA or TPM_ALG_NULL
146321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor an unrestricted decryption key, shall be
146331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSAES,
146341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_OAEP,
146351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor
146361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL unless the object also has the sign
146371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattribute
146381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor a restricted decryption key, this field shall be
146391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL
146401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
146411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeyBits
146431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen both sign and decrypt are SET, restricted
146451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be CLEAR and scheme shall be
146461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL.
146471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RSA_KEY_BITS
146491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of bits in the public modulus
146511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT32
146531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe public exponent
146551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA prime number greater than 2.
146561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen zero, indicates that the exponent is the default
146571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn16
146581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof 2 + 1
146591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_KEY_SIZE
146611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexponent
146621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
146641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 128
146661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
146671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
146691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
146701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
146721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
146731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
146751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.6
146761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
146781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ECC_PARMS
146801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure contains the parameters for prime modulus ECC.
146821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 181 — Definition of {ECC} TPMS_ECC_PARMS Structure
146831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
146841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
146861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
146881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric
146901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SYM_DEF_OBJECT+
146921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor a restricted decryption key, shall be set to a supported
146941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsymmetric algorithm, key size. and mode.
146951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnif the key is not a restricted decryption key, this field shall be
146961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnset to TPM_ALG_NULL.
146971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
146981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme
146991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_ECC_SCHEME+
147011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the sign attribute of the key is SET, then this shall be a valid
147031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsigning scheme.
147041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
147051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the sign parameter in curveID indicates a mandatory
147071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnscheme, then this field shall have the same value.
147081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the decrypt attribute of the key is SET, then this shall be a
147101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalid key exchange scheme or TPM_ALG_NULL.
147111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the key is a Storage Key, then this field shall be
147121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL.
147131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncurveID
147141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ECC_CURVE
147161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC curve ID
147181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkdf
147201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_KDF_SCHEME+
147221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan optional key derivation scheme for generating a symmetric
147241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey from a Z value
147251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the kdf
147261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameter associated with curveID is not
147271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_NULL then this is required to be NULL.
147281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
147291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.7
147311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThere are currently no commands where this parameter
147331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhas effect and, in the reference code, this field needs to
147341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe set to TPM_ALG_NULL.
147351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_PUBLIC_PARMS
147371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 182 defines the possible parameter definition structures that may be contained in the public portion
147391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof a key.
147401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 182 — Definition of TPMU_PUBLIC_PARMS Union <IN/OUT, S>
147411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
147421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
147441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(1)
147461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
147481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
147501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnkeyedHashDetail TPMS_KEYEDHASH_PARMS
147521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KEYEDHASH
147541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsign | encrypt | neither
147561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsymDetail
147581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_SYMCIPHER_PARMS
147601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SYMCIPHER
147621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna symmetric block cipher
147641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnrsaDetail
147661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_RSA_PARMS
147681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSA
147701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecrypt + sign
147721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(2)
147741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahneccDetail
147761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ECC_PARMS
147781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECC
147801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndecrypt + sign
147821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(2)
147841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnasymDetail
147861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_ASYM_PARMS
147881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommon scheme structure
147901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor RSA and ECC keys
147911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTES
147931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1)
147941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription column indicates which of TPMA_OBJECT.decrypt or TPMA_OBJECT.sign may be set.
147961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2)
147981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
147991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn“+” indicates that both may be set but one shall be set. “|” indicates the optional settings.
148001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
148021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
148031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
148051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
148061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 129
148081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
148091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
148111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.3.8
148121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
148141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_PUBLIC_PARMS
148161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used in TPM2_TestParms() to validate that a set of algorithm parameters is supported by
148181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM.
148191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 183 — Definition of TPMT_PUBLIC_PARMS Structure
148201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
148211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
148231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
148251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntype
148271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_PUBLIC
148291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe algorithm to be tested
148311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[type]parameters
148331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_PUBLIC_PARMS the algorithm details
148351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.4 TPMT_PUBLIC
148371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 184 defines the public area structure. The Name of the object is nameAlg concatenated with the
148381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest of this structure using nameAlg.
148391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 184 — Definition of TPMT_PUBLIC Structure
148401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
148411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
148431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
148451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntype
148471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_PUBLIC
148491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn“algorithm” associated with this object
148511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnnameAlg
148531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMI_ALG_HASH
148551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm used for computing the Name of the object
148571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
148581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe "+" indicates that the instance of a TPMT_PUBLIC may have
148601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna "+" to indicate that the nameAlg may be TPM_ALG_NULL.
148611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnobjectAttributes
148631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_OBJECT
148651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattributes that, along with type, determine the manipulations of this
148671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject
148681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauthPolicy
148701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
148721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoptional policy for using this key
148741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe policy is computed using the nameAlg of the object.
148751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
148761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnShall be the Empty Buffer if no authorization policy is present.
148781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[type]parameters
148801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_PUBLIC_PARMS the algorithm or structure details
148821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[type]unique
148841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_PUBLIC_ID
148861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 130
148881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
148891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe unique identifier of the structure
148911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor an asymmetric key, this would be the public key.
148921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
148941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
148951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
148971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
148981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
148991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
149001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
149021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.2.5 TPM2B_PUBLIC
149041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis sized buffer is used to embed a TPMT_PUBLIC in a command.
149051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 185 — Definition of TPM2B_PUBLIC Structure
149061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
149071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
149091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
149111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize=
149131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
149151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of publicArea
149171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
149181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpublicArea
149201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn+TPMT_PUBLIC
149221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe “=” will force the TPM to try to unmarshal a
149241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_PUBLIC and check that the unmarshaled size
149251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmatches the value of size. If all the required fields of
149261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna TPMT_PUBLIC are not present, the TPM will return
149271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan error (generally TPM_RC_SIZE) when attempting
149281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto unmarshal the TPMT_PUBLIC.
149291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe public area
149311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
149321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe “+” indicates that the caller may specify that use
149341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof TPM_ALG_NULL is allowed for nameAlg.
149351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3 Private Area Structures
149371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.1 Introduction
149381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe structures in 12.3 define the contents and construction of the private portion of a TPM object. A
149391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE along with a TPM2B_PUBLIC are needed to describe a TPM object.
149401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPM2B_PRIVATE area may be encrypted by different symmetric algorithms or, in some cases, not
149411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnencrypted at all.
149421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2 Sensitive Data Structures
149431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2.1
149441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
149461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe structures in 12.3.2 define the presumptive internal representations of the sensitive areas of the
149481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvarious entities. A TPM may store the sensitive information in any desired format but when constructing a
149491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PRIVATE, the formats in this clause shall be used.
149501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2.2
149511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE_VENDOR_SPECIFIC
149531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is defined for coding purposes. For IO to the TPM, the sensitive portion of the key will be in
149551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna canonical form. For an RSA key, this will be one of the prime factors of the public modulus. After
149561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnloading, it is typical that other values will be computed so that computations using the private key will not
149571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnneed to start with just one prime factor. This structure allows the vendor-specific structure to use the
149581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspace of the
149591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe value for RSA_VENDOR_SPECIFIC is determined by the vendor.
149601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 186 — Definition of {RSA} TPM2B_PRIVATE_VENDOR_SPECIFIC Structure<>
149611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
149621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
149641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
149661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
149681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size]{:PRIVATE_VENDOR_SPECIFIC_BYTES}
149701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
149721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
149741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
149751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
149771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
149781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
149801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 131
149821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
149831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
149851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2.3
149861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
149881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SENSITIVE_COMPOSITE
149901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 187 — Definition of TPMU_SENSITIVE_COMPOSITE Union <IN/OUT, S>
149911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
149931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
149951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelector
149971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
149981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
149991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrsa
150011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE_KEY_RSA
150031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_RSA
150051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna prime factor of the public
150071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnkey
150081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnecc
150101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_ECC_PARAMETER
150121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ECC
150141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe integer private key
150161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbits
150181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_SENSITIVE_DATA
150201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_KEYEDHASH
150221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe private data
150241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsym
150261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_SYM_KEY
150281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SYMCIPHER
150301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe symmetric key
150321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnany
150341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_PRIVATE_VENDOR_SPECIFIC
150361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.2.4
150381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvendor-specific size for key
150401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnstorage
150411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SENSITIVE
150431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 188 — Definition of TPMT_SENSITIVE Structure
150441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
150461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
150481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
150501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsensitiveType
150521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_PUBLIC
150541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnidentifier for the sensitive area
150561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis shall be the same as the type parameter of the
150571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassociated public area.
150581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauthValue
150601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_AUTH
150621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuser authorization data
150641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe authValue may be a zero-length string.
150651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value shall not be larger than the size of the
150661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest produced by the nameAlg of the object.
150671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnseedValue
150691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
150711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor asymmetric key object, the optional protection
150731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnseed; for other objects, the obfuscation value
150741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value shall not be larger than the size of the
150751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest produced by nameAlg of the object.
150761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn[sensitiveType]sensitive
150781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMU_SENSITIVE_COMPOSITE
150801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe type-specific private data
150821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.3 TPM2B_SENSITIVE
150841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM2B_SENSITIVE structure is used as a parameter in TPM2_LoadExternal(). It is an unencrypted
150851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsensitive area but it may be encrypted using parameter encryption.
150861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
150871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen this structure is unmarshaled, the size of the sensitiveType determines what type of value is
150891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunmarshaled. Each value of sensitiveType is associated with a TPM2B. It is the maximum size for each of
150901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM2B values will determine if the unmarshal operation is successful . Since there is no selector for
150911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe any or vendor options for the union, the maximum input and output sizes for a TMP2B_SENSITIVE
150921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnare not affected by the sizes of those parameters.
150931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 189 — Definition of TPM2B_SENSITIVE Structure <IN/OUT>
150951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
150961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
150981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
150991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
151001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
151021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
151041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the private structure
151061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsensitiveArea
151081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SENSITIVE
151101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan unencrypted sensitive area
151121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 132
151141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
151151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
151171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
151181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
151201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
151211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
151231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
151251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.4 Encryption
151271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPMS_SENSITIVE is the input to the encryption process. All TPMS_ENCRYPT structures are CFBencrypted using a key and Initialization Vector (IV) that are derived from a seed value.
151281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe method of generating the key and IV is described in “Protected Storage” subclause “Symmetric
151291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncryption.” in Part 1.
151301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.5 Integrity
151311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe integrity computation is used to ensure that a protected object is modified when stored in memory
151321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoutside of the TPM.
151331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe method of protecting the integrity of the sensitive area is described in “Protected Storage” subclause
151341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn“Integrity” in Part 1.
151351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.6 _PRIVATE
151361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is defined to size the contents of a TPM2B_PRIVATE. This structure is not directly
151371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmarshaled or unmarshaled.
151381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor TPM2_Duplicate() and TPM2_Import(), the TPM2B_PRIVATE may contain multiply encrypted data
151391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand two integrity values. In some cases, the sensitive data is not encrypted and the integrity value is not
151401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpresent.
151411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor TPM2_Load() and TPM2_Create(), integrityInner is always present.
151421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf integrityInner is present, it and sensitive are encrypted as a single block.
151431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen an integrity value is not needed, it is not present and it is not represented by an Empty Buffer.
151441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 190 — Definition of _PRIVATE Structure <>
151451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
151461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
151481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
151501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnintegrityOuter
151521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
151541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnintegrityInner
151561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
151581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncould also be a TPM2B_IV
151601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsensitive
151621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMT_SENSITIVE
151641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe sensitive area
151661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.3.7 TPM2B_PRIVATE
151681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM2B_PRIVATE structure is used as a parameter in multiple commands that create, load, and
151691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmodify the sensitive area of an object.
151701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 191 — Definition of TPM2B_PRIVATE Structure <IN/OUT, S>
151711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
151721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
151741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
151761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
151781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
151801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the private structure
151821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size] {:sizeof(_PRIVATE)}
151841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
151861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan encrypted private area
151881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
151901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
151911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
151931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
151941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 133
151961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
151971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
151981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
151991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
152011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.4 Identity Object
152031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.4.1 Description
152041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAn identity object is used to convey credential protection value (CV) to a TPM that can load the object
152051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassociated with the object. The CV is encrypted to a storage key on the target TPM, and if the credential
152061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnintegrity checks and the proper object is loaded in the TPM, then the TPM will return the CV.
152071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.4.2 _ID_OBJECT
152081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used for sizing the TPM2_ID_OBJECT.
152091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 192 — Definition of _ID_OBJECT Structure <>
152101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
152111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
152131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
152151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnintegrityHMAC
152171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
152191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC using the nameAlg of the storage key on the target
152211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM
152221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnencIdentity
152241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
152261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncredential protector information returned if name matches the
152281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreferenced object
152291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAll of the encIdentity is encrypted, including the size field.
152301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
152311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM is not required to check that the size is not larger
152331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthan the digest of the nameAlg. However, if the size is
152341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlarger, the ID object may not be usable on a TPM that has
152351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnno digest larger than produced by nameAlg.
152361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12.4.3 TPM2B_ID_OBJECT
152381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is an output from TPM2_MakeCredential() and is an input to TPM2_ActivateCredential().
152391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 193 — Definition of TPM2B_ID_OBJECT Structure <IN/OUT>
152401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
152411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
152431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
152451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
152471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
152491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the credential structure
152511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncredential[size]{:sizeof(_ID_OBJECT)}
152531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBYTE
152551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan encrypted credential area
152571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 134
152591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
152601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
152621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
152631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
152651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
152661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
152681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
152701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13 NV Storage Structures
152721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13.1 TPM_NV_INDEX
152731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA TPM_NV_INDEX is used to reference a defined location in NV memory. The format of the Index is
152741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchanged from TPM 1.2 in order to include the Index in the reserved handle space. Handles in this range
152751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuse the digest of the public area of the Index as the Name of the entity in authorization computations
152761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe 32-bit TPM 1.2 NV Index format is shown in Figure 4. In order to allow the Index to fit into the 24 bits
152771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnavailable in the reserved handle space, the Index value format is changed as shown in Figure 5.
152781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3 3 2 2 2 2 2 2 2
152791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1 0 9 8 7 6 5 4 3
152801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1 1
152821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6 5
152831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnT P U D reserved
152851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
152871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
152881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPurview
152901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndex
152921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 4 — TPM 1.2 TPM_NV_INDEX
152941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
152951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
152961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
152971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2 2
152981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4 3
152991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
153011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
153021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_HT_NV_INDEX
153041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndex
153061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFigure 5 — TPM 2.0 TPM_NV_INDEX
153081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
153091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis TPM_NV_INDEX format does not retain the Purview field and the D bit is not a part of an Index
153111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle as in TPM 1.2. The TPMA_NV_PLATFORMCREATE attribute is a property of an Index that
153121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprovides functionality similar to the D bit.
153131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA valid Index handle will have an MSO of TPM_HT_NV_INDEX.
153151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
153161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is not used. It is defined here to indicate how the fields of the handle are assigned. The
153181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnexemplary unmarshaling code unmarshals a TPM_HANDLE and validates that it is in the range for a
153191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_NV_INDEX.
153201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 194 — Definition of (UINT32) TPM_NV_INDEX Bits <>
153221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
153231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
153251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDefinition
153271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn23:0
153291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindex
153311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe index of the NV location
153331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31:24
153351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRH_NV
153371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnconstant value of TPM_HT_NV_INDEX indicating the NV Index range
153391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_VALUE
153411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned if unmarshaling of this type fails because the handle
153431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue is incorrect
153441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
153461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
153471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
153491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
153501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 135
153521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
153531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
153551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
153571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 195 — Options for space Field of TPM_NV_INDEX
153581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSome prior versions of this specification contained a table here that assigned subsets of the index field to
153601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndifferent entities. Since this assignment was a convention and not an architectural element of the TPM,
153611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe table was removed and the information is now contained in a registry document that is maintained by
153621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TCG.
153631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13.2 TPMA_NV (NV Index Attributes)
153641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure allows the TPM to keep track of the data and permissions to manipulate an NV Index.
153651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe platform controls (TPMA_NV_PPWRITE and TPMA_NV_PPREAD) and owner controls
153661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPMA_NV_OWNERWRITE and TPMA_NV_OWNERREAD) give the platform and owner access to NV
153671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndexes using platformAuth or ownerAuth rather than the authValue or authPolicy of the Index.
153681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf access to an NV Index is to be restricted based on PCR, then an appropriate authPolicy shall be
153691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprovided.
153701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
153711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnplatformAuth or ownerAuth can be provided in any type of authorization session or as a password.
153731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf TPMA_NV_AUTHREAD is SET, then the Index may be read if the Index authValue is provided. If
153751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_POLICYREAD is SET, then the Index may be read if the Index authPolicy is satisfied.
153761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAt least one of TPMA_NV_PPREAD,
153771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_POLICYREAD shall be SET.
153781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_OWNERREAD,
153801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_AUTHREAD,
153821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor
153841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf TPMA_NV_AUTHWRITE is SET, then the Index may be written if the Index authValue is provided. If
153861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_POLICYWRITE is SET, then the Index may be written if the Index authPolicy is satisfied.
153871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAt least one of TPMA_NV_PPWRITE, TPMA_NV_OWNERWRITE TPMA_NV_AUTHWRITE, or
153881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_POLICYWRITE shall be SET.
153891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf TPMA_NV_WRITELOCKED is SET, then the Index may not be written. If TPMA_NV_WRITEDEFINE is
153901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET, TPMA_NV_WRITELOCKED may not be CLEAR except by deleting and redefining the Index. If
153911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_WRITEDEFINE is CLEAR, then TPMA_NV_WRITELOCK will be CLEAR on the next
153921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Startup(TPM_SU_CLEAR).
153931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf TPMA_NV_READLOCKED is SET, then the Index may not be read. TPMA_NV_READLOCK will be
153941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR on the next TPM2_Startup(TPM_SU_CLEAR).
153951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
153961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
153971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM is expected to maintain indicators to indicate that the Index is temporarily locked. The state of
153981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthese indicators is reported in the TPMA_NV_READLOCKED and TPMA_NV_WRITELOCKED attributes.
153991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf TPMA_NV_EXTEND is SET, then writes to the Index will cause an update of the Index using the extend
154011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoperation with the nameAlg used to create the digest.
154021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOnly one of TPMA_NV_EXTEND, TPMA_NV_COUNTER, or TPMA_NV_BITS may be set.
154031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen
154041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
154051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndex
154061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis
154071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncreated
154081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM2_NV_DefineSpace()),
154091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_WRITELOCKED,
154101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_READLOCKED, TPMA_NV_WRITTEN shall all be CLEAR in the parameter that defines the
154111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattributes of the created Index.
154121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 136
154141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
154151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
154171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
154181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
154201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
154211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
154231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
154251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 196 — Definition of (UINT32) TPMA_NV Bits
154271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
154281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
154301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
154321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
154341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_PPWRITE
154361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The Index data can be written if platformAuth is provided.
154381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Writing of the Index data cannot be authorized with
154391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnplatformAuth.
154401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
154421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_OWNERWRITE
154441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The Index data can be written if ownerAuth is provided.
154461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Writing of the Index data cannot be authorized with
154471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnownerAuth.
154481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
154501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_AUTHWRITE
154521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Authorizations to change the Index contents that require
154541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUSER role may be provided with an HMAC session or password.
154551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Authorizations to change the Index contents that require
154561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUSER role may not be provided with an HMAC session or password.
154571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
154591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_POLICYWRITE
154611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Authorizations to change the Index contents that require
154631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUSER role may be provided with a policy session.
154641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Authorizations to change the Index contents that require
154651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUSER role may not be provided with a policy session.
154661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
154671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_NV_ChangeAuth() always requires that authorization be
154691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprovided in a policy session.
154701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4
154721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_COUNTER
154741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Index contains an 8-octet value that is to be used as a
154761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncounter and can only be modified with TPM2_NV_Increment().
154771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The Index is not a counter.
154781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5
154801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_BITS
154821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Index contains an 8-octet value to be used as a bit field and
154841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncan only be modified with TPM2_NV_SetBits().
154851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): The Index is not a bit field.
154861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn6
154881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_EXTEND
154901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Index contains a digest-sized value used like a PCR. The
154921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndex may only be modified using TPM2_NV_Extend. The extend will
154931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnuse the nameAlg of the Index.
154941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Index is not a PCR.
154951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn9:7
154971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
154981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
154991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
155011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved for use in defining additional write controls
155021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn10
155041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_POLICY_DELETE
155061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Index may not be deleted unless the authPolicy is satisfied.
155081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Index may be deleted with proper platform or owner
155091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization.
155101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn11
155121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_WRITELOCKED
155141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Index cannot be written.
155161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Index can be written.
155171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12
155191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_WRITEALL
155211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): A partial write of the Index data is not allowed. The write
155231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize shall match the defined space size.
155241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Partial writes are allowed. This setting is required if
155251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_BITS is SET.
155261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13
155281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_WRITEDEFINE
155301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): TPM2_NV_WriteLock() may be used to prevent further
155321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwrites to this location.
155331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): TPM2_NV_WriteLock() does not block subsequent
155341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwrites.
155351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14
155371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_WRITE_STCLEAR
155391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): TPM2_NV_WriteLock() may be used to prevent further
155411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwrites to this location until the next TPM Reset or TPM Restart.
155421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): A write to this Index with a data size of zero does not
155431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchange the write access.
155441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
155461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
155471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
155491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
155501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 137
155521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
155531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
155551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
155571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
155591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
155611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
155631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15
155651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_GLOBALLOCK
155671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): If TPM2_NV_GlobalWriteLock() is successful, then further
155691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwrites to this location are not permitted until the next TPM Reset or
155701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM Restart.
155711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): TPM2_NV_GlobalWriteLock() has no effect on the
155721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwriting of the data at this Index.
155731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn16
155751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_PPREAD
155771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The Index data can be read if platformAuth is provided.
155791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Reading of the Index data cannot be authorized with
155801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnplatformAuth.
155811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn17
155831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_OWNERREAD
155851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The Index data can be read if ownerAuth is provided.
155871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Reading of the Index data cannot be authorized with
155881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnownerAuth.
155891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn18
155911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_AUTHREAD
155931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The Index data may be read if the authValue is provided.
155951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Reading of the Index data cannot be authorized with the
155961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndex authValue.
155971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
155981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn19
155991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_POLICYREAD
156011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): The Index data may be read if the authPolicy is satisfied.
156031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Reading of the Index data cannot be authorized with the
156041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndex authPolicy.
156051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReserved
156071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnshall be zero
156091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnreserved for use in defining additional read controls
156101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn25
156121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_NO_DA
156141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Authorization failures of the Index do not affect the DA logic
156161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand authorization of the Index is not blocked when the TPM is in
156171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLockout mode.
156181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Authorization failures of the Index will increment the
156191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnauthorization failure counter and authorizations of this Index are not
156201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnallowed when the TPM is in Lockout mode.
156211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn26
156231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_ORDERLY
156251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): NV Index state is only required to be saved when the TPM
156271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnperforms an orderly shutdown (TPM2_Shutdown()). Only an Index
156281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith TPMA_NV_COUNTER SET may have this setting.
156291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): NV Index state is required to be persistent after the
156301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand to update the Index completes successfully (that is, the NV
156311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnupdate is synchronous with the update command).
156321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn27
156341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_CLEAR_STCLEAR
156361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): TPMA_NV_WRITTEN for the Index is CLEAR by TPM
156381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReset or TPM Restart.
156391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): TPMA_NV_WRITTEN is not changed by TPM Restart.
156401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn24:20
156421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
156441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis attribute may only be SET if TPMA_NV_COUNTER is not
156461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET.
156471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
156491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the TPMA_NV_ORDERLY is SET, TPMA_NV_WRITTEN will
156511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe CLEAR by TPM Reset.
156521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn28
156541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_READLOCKED
156561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Reads of the Index are blocked until the next TPM Reset or
156581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM Restart.
156591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Reads of the Index are allowed if proper authorization is
156601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprovided.
156611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn29
156631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_WRITTEN
156651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): Index has been written.
156671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): Index has not been written.
156681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn30
156701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_PLATFORMCREATE
156721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): This Index may be undefined with platformAuth but not with
156741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnownerAuth.
156751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): This Index may be undefined using ownerAuth but not
156761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwith platformAuth.
156771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe TPM will validate that this attribute is SET when the Index is
156781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndefined using platformAuth and will validate that this attribute is
156791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR when the Index is defined using ownerAuth.
156801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 138
156821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
156831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
156851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
156861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
156881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
156891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
156911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
156931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBit
156951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
156971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
156981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
156991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn31
157011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_READ_STCLEAR
157031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET (1): TPM2_NV_ReadLock() may be used to SET
157051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV_READLOCKED for this Index.
157061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR (0): TPM2_NV_ReadLock() has no effect on this Index.
157071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13.3 TPMS_NV_PUBLIC
157091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure describes an NV Index.
157101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 197 — Definition of TPMS_NV_PUBLIC Structure
157111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
157121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
157141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
157161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnnvIndex
157181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_NV_INDEX
157201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe handle of the data area
157221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnnameAlg
157241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_ALG_HASH
157261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhash algorithm used to compute the name of the
157281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIndex and used for the authPolicy
157291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnattributes
157311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_NV
157331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe Index attributes
157351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnauthPolicy
157371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
157391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe access policy for the Index
157411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahndataSize{:MAX_NV_INDEX_SIZE}
157431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
157451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe size of the data area
157471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe
157481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum
157491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize is implementationdependent. The minimum maximum size is
157501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnplatform-specific.
157511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn#TPM_RC_SIZE
157531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse code returned when the requested size
157551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis too large for the implementation
157561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn13.4 TPM2B_NV_PUBLIC
157581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used when a TPMS_NV_PUBLIC is sent on the TPM interface.
157591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 198 — Definition of TPM2B_NV_PUBLIC Structure
157601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
157611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
157631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
157651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize=
157671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
157691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of nvPublic
157711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnnvPublic
157731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_NV_PUBLIC
157751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe public area
157771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
157791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
157801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
157821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
157831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 139
157851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
157861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
157881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
157901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14 Context Data
157921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.1 Introduction
157931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis clause defines the contents of the
157941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_ContextLoad() command parameters.
157951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_ContextSave()
157971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
157981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnresponse
157991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameters
158011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand
158031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the parameters provided by the caller in TPM2_ContextLoad() do not match the values returned by the
158051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM when the context was saved, the integrity check of the TPM2B_CONTEXT will fail and the object or
158061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession will not be loaded.
158071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.2 TPM2B_CONTEXT_SENSITIVE
158081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure holds the object or session context data. When saved, the full structure is encrypted.
158091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 199 — Definition of TPM2B_CONTEXT_SENSITIVE Structure <IN/OUT>
158101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
158111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
158131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
158151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
158171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
158191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size]{:MAX_CONTEXT_SIZE} BYTE
158211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe sensitive data
158231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.3 TPMS_CONTEXT_DATA
158251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure holds the integrity value and the encrypted data for a context.
158261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 200 — Definition of TPMS_CONTEXT_DATA Structure <IN/OUT, S>
158271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
158281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
158301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
158321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnintegrity
158341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
158361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe integrity value
158381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnencrypted
158401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_CONTEXT_SENSITIVE
158421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe sensitive area
158441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.4 TPM2B_CONTEXT_DATA
158461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used in a TPMS_CONTEXT.
158471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 201 — Definition of TPM2B_CONTEXT_DATA Structure <IN/OUT>
158481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
158491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
158511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize
158531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
158551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
158571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffer[size] {:sizeof(TPMS_CONTEXT_DATA)} BYTE
158591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 140
158611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
158621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
158641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
158651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
158671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
158681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
158701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
158721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.5 TPMS_CONTEXT
158741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is used in TPM2_ContextLoad() and TPM2_ContextSave(). If the values of the
158751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CONTEXT structure in TPM2_ContextLoad() are not the same as the values when the context
158761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwas saved (TPM2_ContextSave()), then the TPM shall not load the context.
158771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSaved object contexts shall not be loaded as long as the associated hierarchy is disabled.
158781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSaved object contexts are invalidated when the Primary Seed of their hierarchy changes. Objects in the
158791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEndorsement hierarchy are invalidated when either the EPS or SPS is changed.
158801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen an object has the stClear attribute, it shall not be possible to reload the context or any descendant
158811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject after a TPM Reset or TPM Restart.
158821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 1
158831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe reference implementation prevents reloads after TPM Restart by including the curre nt value of a
158851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnclearCount in the saved object context. When an object is loaded, this value is compared with the current
158861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue of the clearCount if the object has the stClear attribute. If the values are not the same, then the
158871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject cannot be loaded.
158881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA sequence value is contained within the integrity-protected part of the saved context. The sequence
158901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue is repeated in the sequence parameter of the TPMS_CONTEXT of the context. The sequence
158911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparameter, along with other values, is used in the generation the protection values of the context.
158921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the integrity value of the context is valid, but the sequence value of the decrypted context does not
158931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmatch the value in the sequence parameter, then TPM shall enter the failure mode because this is
158941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicative of a specific type of attack on the context values.
158951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE 2
158961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
158971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the integrity value is correct, but the decryption fails and produces the wrong value for sequence, this
158981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplies that either the TPM is faulty or an external entity is able to forge an integrity val ue for the context
158991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbut they have insufficient information to know what the encryption key of the context. Since the TPM
159001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahngenerated the valid context, then there is no reason for the sequence value in the context to be decrypted
159011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnincorrectly other than the TPM is faulty or the TPM is under attack. In either case, it is appropriate for the
159021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM to enter failure more.
159031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 202 — Definition of TPMS_CONTEXT Structure
159051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
159061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
159081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
159101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsequence
159121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT64
159141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe sequence number of the context
159161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
159171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTransient object contexts and
159191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontexts used different counters.
159201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsession
159221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnsavedHandle
159241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_DH_CONTEXT
159261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe handle of the session, object or sequence
159281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhierarchy
159301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMI_RH_HIERARCHY+
159321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe hierarchy of the context
159341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncontextBlob
159361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_CONTEXT_DATA
159381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe context data and integrity HMAC
159401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
159421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
159431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
159451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
159461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 141
159481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
159491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
159511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
159531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.6 Parameters of TPMS_CONTEXT
159551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.6.1 sequence
159561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe sequence parameter is used to differentiate the contexts and to allow the TPM to create a different
159571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnencryption key for each context. Objects and sessions use different sequence counters. The sequence
159581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncounter for objects (transient and sequence) is incremented when an object context is saved, and the
159591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsequence counter for sessions increments when a session is created or when it is loaded
159601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM2_ContextLoad()). The session sequence number is the contextID counter.
159611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor a session, the sequence number also allows the TRM to find the “older” contexts so that they may be
159621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrefreshed if the contextID are too widely separated.
159631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf an input value for sequence is larger than the value used in any saved context, the TPM shall return an
159641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror (TPM_RC_VALUE) and do no additional processing of the context.
159651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the context is a session context and the input value for sequence is less than the current value of
159661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncontextID minus the maximum range for sessions, the TPM shall return an error (TPM_RC_VALUE) and
159671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndo no additional processing of the context.
159681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.6.2 savedHandle
159691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFor a session, this is the handle that was assigned to the session when it was saved. For a transient
159701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobject, the handle will have one of the values shown in Table 203.
159711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf the handle type for savedHandle is TPM_HT_TRANSIENT, then the low order bits are used to
159721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndifferentiate static objects from sequence objects.
159731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf an input value for handle is outside of the range of values used by the TPM, the TPM shall return an
159741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnerror (TPM_RC_VALUE) and do no additional processing of the context.
159751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 203 — Context Handle Values
159761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
159771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
159791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x02xxxxxx
159811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan HMAC session context
159831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x03xxxxxx
159851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna policy session context
159871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x80000000
159891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan ordinary transient object
159911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x80000001
159931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna sequence object
159951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x80000002
159971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
159981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna transient object with the stClear attribute SET
159991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 142
160011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
160021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
160041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
160051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
160071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
160081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
160101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
160121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.6.3 hierarchy
160141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the hierarchy (TPMI_RH_HIERARCHY) for the saved context and determines the proof value used
160151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnin the construction of the encryption and integrity values for the context. For session and sequence
160161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontexts, the hierarchy is TPM_RC_NULL. The hierarchy for a transient object may be TPM_RH_NULL
160171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbut it is not required.
160181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.7 Context Protection
160191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.7.1 Context Integrity
160201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe integrity of the context blob is protected by an HMAC. The integrity value is constructed such that
160211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchanges to the component values will invalidate the context and prevent it from being loaded.
160221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPreviously saved contexts for objects in the Platform hierarchy shall not be loadable after the PPS is
160231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchanged.
160241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPreviously saved contexts for objects in the Storage hierarchy shall not be loadable after the SPS is
160251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchanged.
160261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPreviously saved contexts for objects in the Endorsement hierarchy shall not be loadable after either the
160271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEPS or SPS is changed.
160281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPreviously saved sessions shall not be loadable after the SPS changes.
160291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPreviously saved contexts for objects that have their stClear attribute SET shall not be loadable after a
160301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM Restart. If a Storage Key has its stClear attribute SET, the descendants of this key shall not be
160311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnloadable after TPM Restart.
160321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPreviously saved contexts for a session and objects shall not be loadable after a TPM Reset.
160331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA saved context shall not be loaded if its HMAC is not valid. The equation for computing the HMAC for a
160341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext is found in “Context Integrity Protection” in Part 1.
160351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn14.7.2 Context Confidentiality
160361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe context data of sessions and objects shall be protected by symmetric encryption using CFB. The
160371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmethod for computing the IV and encryption key is found in “Context Confidentiality Protection” in Part 1.
160381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
160401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
160411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
160431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
160441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 143
160461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
160471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
160491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
160511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15 Creation Data
160531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15.1 TPMS_CREATION_DATA
160541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure provides information relating to the creation environment for the object. The creation data
160551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnincludes the parent Name, parent Qualified Name, and the digest of selected PCR. These values
160561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrepresent the environment in which the object was created. Creation data allows a relying party to
160571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndetermine if an object was created when some appropriate protections were present.
160581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnWhen the object is created, the structure shown in Table 204 is generated and a ticket is computed over
160591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis data.
160601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf
160611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe
160621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnparent
160631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnis
160641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna
160651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpermanent
160661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandle
160671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(TPM_RH_OWNER,
160681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_PLATFORM,
160691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_RH_ENDORSEMENT, or TPM_RH_NULL), then parentName and parentQualifiedName will be set
160701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnto the parent handle value and parentNameAlg will be TPM_ALG_NULL.
160711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 204 — Definition of TPMS_CREATION_DATA Structure <OUT>
160721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
160731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
160751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
160771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrSelect
160791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPML_PCR_SELECTION
160811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlist indicating the PCR included in pcrDigest
160831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrDigest
160851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DIGEST
160871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahndigest of the selected PCR using nameAlg of the object for
160891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhich this structure is being created
160901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnpcrDigest.size shall be zero if the pcrSelect list is empty.
160911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlocality
160931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMA_LOCALITY
160951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe locality at which the object was created
160971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
160981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnparentNameAlg
160991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_ID
161011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnnameAlg of the parent
161031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnparentName
161051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NAME
161071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName of the parent at time of creation
161091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe size will match digest size associated with parentNameAlg
161101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnunless it is TPM_ALG_NULL, in which case the size will be 4
161111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand parentName will be the hierarchy handle.
161121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnparentQualifiedName
161141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_NAME
161161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnQualified Name of the parent at the time of creation
161181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSize is the same as parentName.
161191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnoutsideInfo
161211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2B_DATA
161231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnassociation with additional information added by the key
161251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncreator
161261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis will be the contents of the outsideInfo parameter in
161271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_Create() or TPM2_CreatePrimary().
161281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15.2 TPM2B_CREATION_DATA
161301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis structure is created by TPM2_Create() and TPM2_CreatePrimary(). It is never entered into the TPM
161311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnand never has a size of zero.
161321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 205 — Definition of TPM2B_CREATION_DATA Structure <OUT>
161331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnParameter
161341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnType
161361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
161381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize=
161401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
161421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the creation data
161441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahncreationData
161461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMS_CREATION_DATA
161481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 144
161501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
161511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
161531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
161541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
161561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
161571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
161591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
161611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAnnex A
161631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(informative)
161641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAlgorithm Constants
161651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.1
161661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
161681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis annex contains constants that are defined by algorithms.
161701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2
161721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.1
161731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAllowed Hash Algorithms
161751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA1
161761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 206 — Defines for SHA1 Hash Values
161771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
161791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
161811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA1_DIGEST_SIZE
161831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn20
161851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA1_BLOCK_SIZE
161871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn64
161891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA1_DER_SIZE
161911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
161931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn15
161951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA1_DER
161971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
161981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.2
161991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues are in octets.
162011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{0x30,0x21,0x30,0x09,0x06,0x05,0x2B,0x0E,
162031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x03,0x02,0x1A,0x05,0x00,0x04,0x14}
162041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA256
162061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 207 — Defines for SHA256 Hash Values
162071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
162091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
162111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA256_DIGEST_SIZE
162131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn32
162151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA256_BLOCK_SIZE
162171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn64
162191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA256_DER_SIZE
162211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
162231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn19
162251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA256_DER
162271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.3
162291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues are in octets.
162311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{0x30,0x31,0x30,0x0d,0x06,0x09,0x60,0x86,
162331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x48,0x01,0x65,0x03,0x04,0x02,0x01,0x05,
162341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00,0x04,0x20}
162351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA384
162371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 208 — Defines for SHA384 Hash Values
162381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
162401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
162421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA384_DIGEST_SIZE
162441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn48
162461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA384_BLOCK_SIZE
162481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn128
162501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA384_DER_SIZE
162521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
162541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn19
162561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA384_DER
162581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
162601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
162611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues are in octets.
162631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{0x30,0x41,0x30,0x0d,0x06,0x09,0x60,0x86,
162651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x48,0x01,0x65,0x03,0x04,0x02,0x02,0x05,
162661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00,0x04,0x30}
162671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
162691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
162701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 145
162721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
162731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
162751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.4
162761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
162781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA512
162801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 209 — Defines for SHA512 Hash Values
162811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
162831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
162851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA512_DIGEST_SIZE
162871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn64
162891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA512_BLOCK_SIZE
162911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn128
162931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA512_DER_SIZE
162951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
162971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
162981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn19
162991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA512_DER
163011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.2.5
163031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues are in octets.
163051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{0x30,0x51,0x30,0x0d,0x06,0x09,0x60,0x86,
163071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x48,0x01,0x65,0x03,0x04,0x02,0x03,0x05,
163081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00,0x04,0x40}
163091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM3_256
163111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 210 — Defines for SM3_256 Hash Values
163121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
163141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
163161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
163181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM3_256_DIGEST_SIZE
163201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn32
163221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValues are in octets.
163241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM3_256_BLOCK_SIZE
163261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn64
163281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn??
163301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM3_256_DER_SIZE
163321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn18
163341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM3_256_DER
163361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA.3
163381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{0x30,0x30,0x30,0x0c,0x06,0x08,0x2a,0x81,
163401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x1c,0x81,0x45,0x01,0x83,0x11,0x05,0x00,
163411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x04,0x20}
163421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnknown
163441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnArchitectural Limits
163461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 211 — Defines for Architectural Limits Values
163471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
163491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SESSION_NUMBER
163501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 146
163521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
163531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
163551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
163561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
163581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe maximum number of authorization sessions that may be in a
163591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncommand
163601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis value may be increased if new commands require more than
163611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntwo authorization handles.
163621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
163641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
163651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
163671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
163681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
163701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
163721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAnnex B
163741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(informative)
163751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplementation Definitions
163761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.1
163771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIntroduction
163791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis annex contains some of the tables that are used to define the desired implementation for the
163811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnautomated tools.
163821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
163831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.2
163851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe reference implementation assumes that stdint.h is used.
163871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLogic Values
163891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe values in this clause are used to see the generation of the subsequent tables. These values should
163911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnot be changed.
163921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 212 — Defines for Logic Values
163931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
163941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
163961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
163981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
163991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
164001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO
164021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
164041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTRUE
164061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
164081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFALSE
164101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
164121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSET
164141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
164161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCLEAR
164181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
164201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
164221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.3
164241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnProcessor Values
164261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThese values are used to control generation of octet-swapping routines. The canonical octet ordering for
164281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe TPM input/output buffer is “big endian” with the most significant octet of any datum at the lowest
164291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnaddress.
164301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
164311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe setting for the exemplar is for the x86 family of processor.
164331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 213 — Defines for Processor Values
164351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
164361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
164381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
164401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBIG_ENDIAN_TPM
164421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO
164441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnset to YES or NO according to the processor
164461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLITTLE_ENDIAN_TPM
164481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
164501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnset to YES or NO according to the processor
164521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
164531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO_AUTO_ALIGN
164551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO
164571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnset to YES if the processor does not allow unaligned accesses
164591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
164601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
164621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
164631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBIG_ENDIAN and LITTLE_ENDIAN shall be set to opposite values.
164651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIf LITTLE_ENDIAN is YES, then the setting of this value has no effect.
164671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
164691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
164701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 147
164721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
164731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
164751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.4
164771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
164791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplemented Algorithms
164811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 214 is used to indicate the algorithms that are implemented in a TPM. The selections in the Value
164831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncolumn may be changed to reflect the implementation. The values shown are illustrative.
164841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe "Implemented" column contains a "Y", "YES", or blank to indicate that the command is present in the
164851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementation, an "N" or "NO" to indicate that the command is not implemented.
164861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe leading and trailing “_” characters are to avoid name space collisions with some crypto libraries.
164871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNOTE
164891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 214 — Defines for Implemented Algorithms
164911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAlgorithm Name
164921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplemented
164941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA
164961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
164981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
164991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA1
165001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC
165041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAES
165081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMGF1
165121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnXOR
165161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnKEYEDHASH
165201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA256
165241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA384
165281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO
165301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA512
165321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO
165341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM3_256
165361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM4
165401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
165421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnREQUIRED, do not change this value
165461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnREQUIRED, do not change this value
165481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSASSA
165501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * RSA)
165521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires RSA
165541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSAES
165561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * RSA)
165581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires RSA
165601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSAPSS
165621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * RSA)
165641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires RSA
165661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOAEP
165681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * RSA)
165701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires RSA
165721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC
165741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
165761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECDH
165781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * ECC)
165801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires ECC
165821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECDSA
165841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * ECC)
165861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires ECC
165881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECDAA
165901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * ECC)
165921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires ECC
165941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM2
165961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * ECC)
165981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
165991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires ECC
166001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECSCHNORR
166021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * ECC)
166041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires ECC
166061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECMQV
166081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(NO * ECC)
166101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires ECC
166121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSYMCIPHER
166141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnKDF1_SP800_56a
166151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
166171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnREQUIRED, at least one symmetric algorithm shall be implemented
166191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(YES * ECC)
166211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnKDF2
166231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO
166251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnKDF1_SP800_108
166271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
166291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCTR
166311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
166331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOFB
166351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
166371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCBC
166391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
166411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCFB
166431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
166451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECB
166471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnrequires ECC
166491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
166511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.5
166531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnREQUIRED, do not change this value
166551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplemented Commands
166571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 148
166591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
166601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
166621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
166631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
166651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
166661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
166681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
166701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis table is used to indicate which of the commands are implemented. In the reference implementation,
166721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis table determines which commands can be called and drives the generation of various commanddependent switch statements.
166731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe "Implemented or Dependent" column contains a "Y", "YES", or blank to indicate that the command is
166741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpresent in the implementation; an "N" or "NO" to indicate that the command is not implemented; and an
166751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm value if implementation of the command is dependent on a setting in Table 214. Linkage to
166761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 214 is not required and is provide as a convenience.
166771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTo indicate that the command is implemented, only "Y", "N", blank, or a value from Table 214 is allowed.
166781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 215 — Defines for Implemented Commands
166791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
166801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnActivateCredential
166811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplemented
166831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor Dependent
166841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
166861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
166881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCertify
166901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
166921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCertifyCreation
166941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
166961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnChangeEPS
166981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
166991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnChangePPS
167021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnClear
167061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnClearControl
167101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnClockRateAdjust
167141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnClockSet
167181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCommit
167221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC
167241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContextLoad
167261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContext
167301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContextSave
167321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContext
167361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreate
167381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCreatePrimary
167421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDictionaryAttackLockReset
167461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDictionaryAttackParameters
167501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDuplicate
167541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC_Parameters
167581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC
167601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECDH_KeyGen
167621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC
167641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECDH_ZGen
167661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC
167681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEncryptDecrypt
167701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEventSequenceComplete
167741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEvictControl
167781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFieldUpgradeData
167821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnN
167841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFieldUpgradeStart
167861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnN
167881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFirmwareRead
167901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnN
167921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFlushContext
167941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
167961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnGetCapability
167981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
167991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnGetCommandAuditDigest
168021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnGetRandom
168061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnGetSessionAuditDigest
168101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
168141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
168151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnContext
168171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
168191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
168201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 149
168221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
168231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
168251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
168271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
168291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplemented
168301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor Dependent
168311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
168331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnGetTestResult
168351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnGetTime
168391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHash
168431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHashSequenceStart
168471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHierarchyChangeAuth
168511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHierarchyControl
168551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC
168591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHMAC_Start
168631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImport
168671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIncrementalSelfTest
168711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoad
168751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLoadExternal
168791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMakeCredential
168831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_Certify
168871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_ChangeAuth
168911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_DefineSpace
168951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
168971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
168981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_Extend
168991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_GlobalWriteLock
169031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_Increment
169071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_Read
169111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_ReadLock
169151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_ReadPublic
169191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_SetBits
169231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_UndefineSpace
169271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_UndefineSpaceSpecial
169311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_Write
169351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_WriteLock
169391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnObjectChangeAuth
169431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_Allocate
169471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_Event
169511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_Extend
169551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_Read
169591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR
169631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_Reset
169651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR
169691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_SetAuthPolicy
169711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_SetAuthValue
169751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyAuthorize
169791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
169831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyAuthValue
169851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
169891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyCommandCode
169911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
169951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyCounterTimer
169971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
169981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
169991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyCpHash
170031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 150
170091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
170101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV
170121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR
170141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
170161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
170171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
170191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
170201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
170221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
170241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplemented
170251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnor Dependent
170261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
170281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
170301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyDuplicationSelect
170321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyGetDigest
170381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyLocality
170441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyNameHash
170501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyNV
170561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyOR
170621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyPassword
170681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyPCR
170741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyPhysicalPresence
170801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyRestart
170861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicySecret
170901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
170941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicySigned
170961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
170981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
170991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
171001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyTicket
171021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicy
171061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPP_Commands
171081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnQuote
171121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReadClock
171161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnReadPublic
171201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRewrap
171241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA_Decrypt
171281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA
171301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA_Encrypt
171321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA
171341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSelfTest
171361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSequenceComplete
171401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSequenceUpdate
171441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSetAlgorithmSet
171481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSetCommandCodeAuditStatus
171521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSetPrimaryPolicy
171561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnShutdown
171601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSign
171641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStartAuthSession
171681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStartup
171721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnStirRandom
171761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTestParms
171801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUnseal
171841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnVerifySignature
171881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnZGen_2Phase
171921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnEC_Ephemeral
171961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
171981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
171991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPolicyNvWritten
172001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnY
172021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6
172041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAlgorithm Constants
172061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
172081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
172091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
172111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
172121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 151
172141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
172151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
172171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.1
172181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
172201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA
172221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 216 — Defines for RSA Algorithm Constants
172231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
172251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
172271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
172291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA_KEY_SIZES_BITS
172311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{1024, 2048}
172331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbraces because this is a
172351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlist value
172361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_RSA_KEY_BITS
172381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2048
172401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_RSA_KEY_BYTES
172421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn((MAX_RSA_KEY_BITS + 7) / 8)
172441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.2
172461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC
172481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 217 — Defines for ECC Algorithm Constants
172491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
172511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
172531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC_CURVES
172551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{TPM_ECC_NIST_P256, TPM_ECC_BN_P256,
172571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ECC_SM2_P256}
172581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnECC_KEY_SIZES_BITS
172601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{256}
172621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_ECC_KEY_BITS
172641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn256
172661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_ECC_KEY_BYTES
172681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn((MAX_ECC_KEY_BITS + 7) / 8)
172701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.3
172721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
172741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis is a list value with
172761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlength of one
172771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAES
172791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 218 — Defines for AES Algorithm Constants
172801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
172821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
172841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnAES_KEY_SIZES_BITS
172861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{128}
172881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_AES_KEY_BITS
172901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn128
172921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_AES_BLOCK_SIZE_BYTES
172941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn16
172961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_AES_KEY_BYTES
172981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
172991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn((MAX_AES_KEY_BITS + 7) / 8)
173001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.4
173021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
173041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM4
173061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 219 — Defines for SM4 Algorithm Constants
173071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
173091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
173111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSM4_KEY_SIZES_BITS
173131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn{128}
173151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SM4_KEY_BITS
173171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn128
173191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SM4_BLOCK_SIZE_BYTES
173211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn16
173231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SM4_KEY_BYTES
173251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn((MAX_SM4_KEY_BITS + 7) / 8)
173271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 152
173291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
173301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
173321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
173341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
173351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
173371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
173381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
173401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.6.5
173411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
173431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSymmetric
173451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe definitions in this table are derived from the implemented symmetric algorithms.
173471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 220 — Defines for Symmetric Algorithm Constants
173481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
173491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
173511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SYM_KEY_BITS
173531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_AES_KEY_BITS
173551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SYM_KEY_BYTES
173571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_AES_KEY_BYTES
173591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SYM_BLOCK_SIZE
173611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_AES_BLOCK_SIZE_BYTES
173631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
173651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
173661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnComments
173681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
173701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
173711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 153
173731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
173741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
173761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnB.7
173781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
173801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnImplementation Specific Values
173821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThe values listed in Table 221 are defined for a specific TPM implementation. The numbers in the Value
173841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncolumn may be changed to reflect the implementation. The values shown are illustrative.
173851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTable 221 — Defines for Implementation Values
173861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
173871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
173891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
173911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFIELD_UPGRADE_IMPLEMENTED
173931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNO
173951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahntemporary define
173971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
173981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBSIZE
173991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
174011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize used for internal storage of
174031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe size field of a TPM2B
174041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is the definition used for
174051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe reference design.
174061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCompilation with this value
174071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnchanged may cause warnings
174081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnabout conversions.
174091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnBUFFER_ALIGNMENT
174111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4
174131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsets the size granularity for the
174151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbuffers in a TPM2B structure
174161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMxB buffers will be assigned
174171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahna space that is a multiple of this
174181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue. This does not set the size
174191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnlimits for IO. Those are set by
174201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe canonical form of the
174211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPMxB
174221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnIMPLEMENTATION_PCR
174241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn24
174261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of PCR in the TPM
174281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPLATFORM_PCR
174301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn24
174321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of PCR required by
174341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe relevant platform
174351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnspecification
174361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDRTM_PCR
174381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn17
174401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe DRTM PCR
174421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnHCRTM_PCR
174441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0
174461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe PCR that will receive the HCRTM value at TPM2_Startup
174481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUM_LOCALITIES
174501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn5
174521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of localities
174541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsupported by the TPM
174551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis is expected to be either 5
174561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnfor a PC, or 1 for just about
174571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahneverything else.
174581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_HANDLE_NUM
174601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
174621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe maximum number of
174641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhandles in the handle area
174651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis should be produced by the
174661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 3 parser but is here for
174671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnow.
174681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_ACTIVE_SESSIONS
174701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn64
174721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of simultaneously
174741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnactive sessions that are
174751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsupported by the TPM
174761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnimplementation
174771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCONTEXT_SLOT
174791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT16
174811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe type of an entry in the array
174831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnof saved contexts
174841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCONTEXT_COUNTER
174861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnUINT64
174881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe type of the saved session
174901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncounter
174911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_LOADED_SESSIONS
174931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
174951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of sessions that the
174971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM may have in memory
174981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
174991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SESSION_NUM
175001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
175021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis is the current maximum
175041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue
175051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 154
175071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
175081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
175101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
175111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
175131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
175141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
175161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
175181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
175201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
175221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
175241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_LOADED_OBJECTS
175261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn3
175281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe number of simultaneously
175301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnloaded objects that are
175311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsupported by the TPM; this
175321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber does not include the
175331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobjects that may be placed in
175341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV memory by
175351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM2_EvictControl().
175361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMIN_EVICT_OBJECTS
175381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2
175401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe minimum number of evict
175421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnobjects supported by the TPM
175431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_SELECT_MIN
175451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn((PLATFORM_PCR+7)/8)
175471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPCR_SELECT_MAX
175491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn((IMPLEMENTATION_PCR+7)/8)
175511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUM_POLICY_PCR_GROUP
175531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
175551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of PCR groups that
175571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhave individual policies
175581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUM_AUTHVALUE_PCR_GROUP
175601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
175621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of PCR groups that
175641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnhave individual authorization
175651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalues
175661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_CONTEXT_SIZE
175681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4000
175701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis may be larger than
175721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnecessary
175731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_DIGEST_BUFFER
175751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1024
175771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_NV_INDEX_SIZE
175791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn2048
175811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum data size allowed in
175831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnan NV Index
175841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_NV_BUFFER_SIZE
175861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1024
175881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum data size in one NV
175901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnread or write command
175911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_CAP_BUFFER
175931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1024
175951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_MEMORY_SIZE
175971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
175981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn16384
175991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUM_STATIC_PCR
176011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn16
176031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_ALG_LIST_SIZE
176051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn64
176071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of algorithms that can
176091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbe in a list
176101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTIMER_PRESCALE
176121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn100000
176141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnominal value for the pre-scale
176161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnvalue of Clock (the number of
176171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncycles of the TPM's oscillator for
176181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahneach increment of Clock)
176191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPRIMARY_SEED_SIZE
176211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn32
176231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of the Primary Seed in
176251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoctets
176261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCONTEXT_ENCRYPT_ALG
176281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_AES
176301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext encryption algorithm
176321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCONTEXT_ENCRYPT_KEY_BITS
176341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SYM_KEY_BITS
176361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext encryption key size in
176381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnbits
176391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCONTEXT_ENCRYPT_KEY_BYTES
176411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn((CONTEXT_ENCRYPT_KEY_BITS+7
176431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn)/8)
176441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCONTEXT_INTEGRITY_HASH_ALG
176461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_SHA256
176481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncontext integrity hash algorithm
176501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCONTEXT_INTEGRITY_HASH_SIZE
176521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnSHA256_DIGEST_SIZE
176541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of byes in the context
176561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnintegrity digest
176571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPROOF_SIZE
176591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCONTEXT_INTEGRITY_HASH_SIZE
176611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of proof value in octets
176631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis size of the proof should be
176641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnconsistent with the digest size
176651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused for context integrity.
176661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNV_CLOCK_UPDATE_INTERVAL
176681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn12
176701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthe update interval expressed
176721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnas a power of 2 seconds
176731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnsize of NV memory in octets
176751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnA value of 12 is 4,096 seconds
176771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn(~68 minutes).
176781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
176801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
176811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
176831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
176841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 155
176861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
176871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPart 2: Structures
176891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTrusted Platform Module Library
176911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnName
176931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnValue
176951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnDescription
176971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
176981605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNUM_POLICY_PCR
176991605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177001605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn1
177011605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177021605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber of PCR that allow
177031605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnpolicy/auth
177041605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177051605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_COMMAND_SIZE
177061605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177071605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4096
177081605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177091605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum size of a command
177101605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177111605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_RESPONSE_SIZE
177121605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177131605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn4096
177141605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177151605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum size of a response
177161605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177171605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnORDERLY_BITS
177181605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177191605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn8
177201605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177211605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnnumber between 1 and 32
177221605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahninclusive
177231605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177241605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_ORDERLY_COUNT
177251605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177261605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn((1 << ORDERLY_BITS) - 1)
177271605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177281605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnmaximum count of orderly
177291605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahncounter before NV is updated
177301605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnThis must be of the form 2N – 1
177311605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnwhere 1 ≤ N ≤ 32.
177321605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177331605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnALG_ID_FIRST
177341605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177351605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_FIRST
177361605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177371605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused by GetCapability()
177381605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprocessing to bound the
177391605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm search
177401605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177411605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnALG_ID_LAST
177421605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177431605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_ALG_LAST
177441605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177451605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnused by GetCapability()
177461605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnprocessing to bound the
177471605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnalgorithm search
177481605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177491605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_SYM_DATA
177501605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177511605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn128
177521605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177531605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnthis is the maximum number of
177541605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnoctets that may be in a sealed
177551605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnblob.
177561605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177571605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnMAX_RNG_ENTROPY_SIZE
177581605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177591605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn64
177601605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177611605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRAM_INDEX_SPACE
177621605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177631605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn512
177641605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177651605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnRSA_DEFAULT_PUBLIC_EXPONENT
177661605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177671605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn0x00010001
177681605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177691605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn216 + 1
177701605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177711605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnENABLE_PCR_NO_INCREMENT
177721605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177731605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
177741605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177751605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahnindicates if the
177761605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnTPM_PT_PCR_NO_INCREME
177771605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnNT group is implemented
177781605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177791605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCRT_FORMAT_RSA
177801605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177811605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnYES
177821605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177831605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPRIVATE_VENDOR_SPECIFIC_BYTES
177841605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177851605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn((MAX_RSA_KEY_BYTES/2) * (3 +
177861605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCRT_FORMAT_RSA * 2))
177871605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177881605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPage 156
177891605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnOctober 31, 2013
177901605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177911605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnPublished
177921605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnCopyright © TCG 2006-2013
177931605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177941605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnFamily “2.0”
177951605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren KrahnLevel 00 Revision 00.99
177961605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
177971605b3f527bd5d16d68c3d182f4c2035e79f6dfDarren Krahn
17798