Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

Tspi_TPM_GetPubEndorsementKey (3)

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

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)