Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

Tspi_TPM_CollateIdentityRequest (3)

Name

Tspi_TPM_CollateIdentityRequest - Gets all the informatin necessary to send to a trusted third party (TTP), repartory to asking the TTP to create a certificate for identity.

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_CollateIdentityRequest(TSS_HTPM hTPM,                     TSS_HKEY         hKeySRK,
TSS_HKEY hCAPPubKey,
UINT32   ulIdentityLabelData,      BYTE*            rgbIdentityLabelData,
TSS_HKEY hIdentityKey,             TSS_ALGORITHM_ID algid,
UINT32*  pulTCPAIdentityReqLength, BYTE**           prgbTCPAIdentityReq);

Description

TCG Software Stack Developer's Reference
                                            Tspi_TPM_CollateIdentityRequest(3)



NAME
       Tspi_TPM_CollateIdentityRequest  - Gets all the informatin necessary to
       send to a trusted third party (TTP), repartory to  asking  the  TTP  to
       create a certificate for identity.

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_CollateIdentityRequest(TSS_HTPM hTPM,                     TSS_HKEY         hKeySRK,
                                                  TSS_HKEY hCAPPubKey,
                                                  UINT32   ulIdentityLabelData,      BYTE*            rgbIdentityLabelData,
                                                  TSS_HKEY hIdentityKey,             TSS_ALGORITHM_ID algid,
                                                  UINT32*  pulTCPAIdentityReqLength, BYTE**           prgbTCPAIdentityReq);



DESCRIPTION
       TSS_TPM_CollateIdentityRequest creates an identity key, binds it to the
       label and returns a certificate request package. The  privacty  CA  re-
       quires this certificate request to attest the identity key.

       Only  the Owner of the TPM has the privledge of creating a TPM identity
       key.

       The symmetric session key is required to provide confidentiality of the
       "TCPA_IDENTITY_REQ" data structure, which should be sent to the Privacy
       CA chosen by the owner.

PARAMETERS
   hTPM
       Handle of the TPM object.

   hKeySRK
       Handle to the key object representing the Storage Root Key

   hCAPubKey
       Handle to the key object representing the public key of  the  CA  which
       signs the certificate of the created identity key.

   ulIdentityLabelLength
       Supplies the length (in bytes) of the rgbIdentityLabelData parameter

   rgbLabelData
       Pointer  to  a memory block containing the identity label, which should
       be a UNICODE string

   hIdentityKey
       Handle to the identity key object

   algid
       The type of symmetric algorithm touse as requred by the Enhanced CA.

   pulTCPAIdentityReqLength
       Recieves the length (in bytes) of the prgbTCPAIdentityReq parameter

   prgbTCPAIdentyReq
       Pointer to the memory block containing the certicficate request  struc-
       ture.

RETURN CODES
       Tspi_TPM_CollateIdentityRequest  returns TSS_SUCCESS on success, other-
       wise one of the following values are returned:

       TSS_E_INVALID_HANDLE
              Either hTPM or hKeySRK or hCAPubKey is not a valid handle.

       TSS_E_BAD_PARAMETER


       TSS_E_INTERNAL_ERROR
              An error occurred internal to the TSS.

CONFORMING TO
       Tspi_TPM_CollateIdentityRequest 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_Context_LoadKeyByUUID(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-26
                                            Tspi_TPM_CollateIdentityRequest(3)