Tspi_TPM_GetPubEndorsementKey - create a TSS key object from the TPM's public endorsement key
#include <tss/platform.h> #include <tss/tcpa_defines.h> #include <tss/tcpa_typedef.h> #include <tss/tcpa_struct.h> #include <tss/tss_typedef.h> #include <tss/tss_structs.h> #include <tss/tspi.h> TSS_RESULT Tspi_TPM_GetPubEndorsementKey(TSS_HTPM hTPM, TSS_BOOL fOwnerAuthorized, TSS_VALIDATION* pValidationData, TSS_HKEY* phEndorsementPubKey);
Library Functions Manual Tspi_TPM_GetPubEndorsementKey(3) TCG Software Stack Developer's Reference NAME Tspi_TPM_GetPubEndorsementKey - create a TSS key object from the TPM's public endorsement key SYNOPSIS #include <tss/platform.h> #include <tss/tcpa_defines.h> #include <tss/tcpa_typedef.h> #include <tss/tcpa_struct.h> #include <tss/tss_typedef.h> #include <tss/tss_structs.h> #include <tss/tspi.h> TSS_RESULT Tspi_TPM_GetPubEndorsementKey(TSS_HTPM hTPM, TSS_BOOL fOwnerAuthorized, TSS_VALIDATION* pValidationData, TSS_HKEY* phEndorsementPubKey); DESCRIPTION Tspi_TPM_GetPubEndorsementKey This function retrieves the public en- dorsement key (PubEK) from the TPM and creates a TSS key object for it, whose handle is returned in phEndorsementPubKey. Due to the fact that different TPM chips validate the PubEK in different ways, application verification of the PubEK (using a non-NULL pValidationData is broken. Tspi_TPM_GetPubEndorsementKey should be called with a NULL pValidation- Data parameter to allow the TSS to verify the PubEK itself. PARAMETERS hTPM The hTPM parameter is used to specify the handle of the TPM object. fOwnerAuthorized If TRUE, the TPM owner secret must be provided to get the public en- dorsement key. If FALSE, no TPM owner secret must be provided to get the public endorsement key. pValidationData If non-NULL, the application should set the pValidationData->rgbExter- nalData parameter to 20 bytes of random data before calling Tspi_TPM_GetPubEndorsementKey. On successful completion of the command, the structure will provide buffers containing the validation data and the buffer the validation data was computed from. phEndorsementPubKey Receives a handle to a key object representing the TPM's public en- dorsement key. RETURN CODES Tspi_TPM_GetPubEndorsementKey returns TSS_SUCCESS on success, otherwise one of the following values is returned: TSS_E_INVALID_HANDLE hTPM is not a valid handle. TSS_E_INTERNAL_ERROR An internal SW error has been detected. TSS_E_BAD_PARAMETER One or more parameters is bad. TPM_E_DISABLED_CMD Reading of PubEK from TPM has been disabled. CONFORMING TO Tspi_TPM_GetPubEndorsementKey conforms to the Trusted Computing Group Software Specification version 1.1 Golden ATTRIBUTES See attributes(7) for descriptions of the following attributes: +---------------+---------------------------+ |ATTRIBUTE TYPE | ATTRIBUTE VALUE | +---------------+---------------------------+ |Availability | library/security/trousers | +---------------+---------------------------+ |Stability | Uncommitted | +---------------+---------------------------+ SEE ALSO Tspi_Key_GetPubKey(3). NOTES Source code for open source software components in Oracle Solaris can be found at https://www.oracle.com/downloads/opensource/solaris-source- code-downloads.html. This software was built from source available at https://github.com/or- acle/solaris-userland. The original community source was downloaded from https://source- forge.net/projects/trousers/files/trousers/0.3.15/trousers-0.3.15.tar.gz. Further information about this software can be found on the open source community website at http://trousers.sourceforge.net/. TSS 1.1 2004-05-25 Tspi_TPM_GetPubEndorsementKey(3)