Tspi_TPM_DAA_JoinCreateDaaPubKey(3)Tspi_TPM_DAA_JoinCreateDaaPubKey(3)
TCG Software Stack Developer's Reference
NAMETspi_TPM_DAA_JoinCreateDaaPubKey - computes the credential request for
the DAA Issuer
SYNOPSIS
#include <tss/tss_typedef.h>
#include <tss/tss_structs.h>
#include <tss/tspi.h>
TSS_RESULT Tspi_TPM_DAA_JoinCreateDaaPubKey(
TSS_HDAA hDAA,
TSS_HTPM hTPM,
UINT32 authenticationChallengeLength,
BYTE* authenticationChallenge,
UINT32 nonceIssuerLength,
BYTE* nonceIssuer,
UINT32 attributesPlatformLength,
BYTE** attributesPlatform,
TSS_DAA_JOIN_SESSION* joinSession,
TSS_DAA_CREDENTIAL_REQUEST* credentialRequest
);
DESCRIPTIONTspi_TPM_DAA_JoinCreateDaaPubKey is the second (between
Tspi_TPM_DAA_JoinInit() and Tspi_TPM_DAA_JoinStoreCredential())
out of 3 functions to execute in order to receive a DAA Credential.
It computes the credential request for the DAA Issuer, which also in‐
cludes the Platforms's DAA public key and the attributes that were cho‐
sen by the Platform, and which are not visible to the DAA Issuer. The
Platform can commit to the attribute values it has chosen.
PARAMETERS
hDAA
The hDAA parameter is used to specify the handle of the DAA object.
hTPM
The hTPM parameter is the handle to the TPM object.
authenticationChallengeLength
The authenticationChallengeLength parameter is length of authentica‐
tionChallenge (256 bytes - DAA_SIZE_NE1).
authenticationChallenge
The authenticationChallenge parameter is the second nonce of the DAA
Issuer that is encrypted by the endorsement public key. It is used as
a challenge to authenticate the underlying TPM.
nonceIssuerLength
The nonceIssuerLength parameter is the length of nonceIssuer (20
bytes).
nonceIssuer
The nonceIssuer parameter is the nonce of the DAA Issuer.
attributesPlatformLength
The attributesPlatformLength parameter is length of attributesPlatform
array, which is determined by the DAA Issuer public key (). The length
of a single attribute is ln/8. ln is defined as the size of the RSA
modulus (2048).
attributesPlatform
The attributesPlatform parameter is an array of attributes to be encod‐
ed into the DAA Credential not visible to the DAA Issuer.
joinSession
The joinSession parameter is a structure containing the DAA Join ses‐
sion information.
credentialRequest
The credentialRequest parameter is the credential request of the Plat‐
form, it contains the blinded DAA public key of the platform on which
the DAA Issuer will issue the credential the blinded attributes chosen
by the Platform.
RETURN CODESTspi_TPM_DAA_JoinCreateDaaPubKey returns TSS_SUCCESS on success, other‐
wise one of the following values is returned:
TSS_E_INVALID_HANDLE
Either the DAA is not valid.
TSS_E_BAD_PARAMETER
TSS_E_INTERNAL_ERROR
An internal SW error has been detected.
CONFORMING TOTspi_TPM_DAA_JoinCreateDaaPubKey conforms to the Trusted Computing
Group Software Specification version 1.2
SEE ALSOTspi_TPM_DAA_JoinInit(3)Tspi_TPM_DAA_JoinStoreCredential(3)TSS 1.22006-09-0Tspi_TPM_DAA_JoinCreateDaaPubKey(3)