NAME
Tspi_TPM_DAA_JoinInit - start the DAA Join process
SYNOPSIS
#include <tss/tss_typedef.h>
#include <tss/tss_structs.h>
#include <tss/tspi.h>
TSPICALL Tspi_TPM_DAA_JoinInit(
TSS_HDAA hDAA,
TSS_HTPM hTPM,
TSS_HKEY issuer_pk,
UINT32 issuer_authentication_PKLength,
TSS_HKEY* issuer_authentication_PK,
UINT32 issuer_authentication_PK_signaturesLength,
BYTE** issuer_authentication_PK_signatures,
UINT32* capital_UprimeLength,
BYTE** capital_Uprime,
TSS_DAA_IDENTITY_PROOF* identity_proof,
TSS_DAA_JOIN_SESSION* join_session
);
DESCRIPTION
Tspi_TPM_DAA_JoinInit is the first out of 3 functions to execute in
order to receive a DAA Credential. It verifies the keys of the DAA
Issuer and computes the TPM DAA public key.
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.
issuer_pk
The issuer_pk parameter is the of the DAA Issuer public key.
issuer_authentication_PKLength
The issuer_authentication_PKLength parameter is the length of the array
of issuerAuthPKs.
issuer_authentication_PK
The issuer_authentication_PK parameter is an array of RSA public keys
(key chain) of
the DAA Issuer used to authenticate the DAA Issuer public key. The
size of the modulus must
be TPM_DAA_SIZE_issuerModulus (256).
issuer_authentication_PK_signaturesLength
The issuer_authentication_PK_signaturesLength parameter is the length
of the array of
issuerAuthPKSignatures. It is equal to issuerAuthPKsLength. The length
of an element of the
array is TPM_DAA_SIZE_issuerModulus (256).
issuer_authentication_PK_signatures
The issuer_authentication_PK_signatures parameter is the array of byte
arrays representing
signatures on the modulus of the above key chain (issuerAuthPKs) in
more details, the array has
the following content (S(K[1],K[0]),S(K[2],N[1]),..S(K[ k ],K[n-1]),
S(TPM_DAA_ISSUER,K[ k ])),
where S(msg,privateKey) denotes the signature function with msg being
signed by the privateKey.
capital_UprimeLength
The capital_UprimeLength parameter is the length of capitalUprime which
is ln/8. ln is defined as the size of the RSA modulus (2048).
capital_Uprime
The capital_Uprime parameter is U’.
identityProof
The identityProof parameter is a structure containing the endorsement,
platform and conformance
credential.
joinSession
The joinSession parameter is a structure containing DAA Join session
information.
RETURN CODES
Tspi_TPM_DAA_JoinInit returns TSS_SUCCESS on success, otherwise one of
the following values is returned:
TSS_E_INVALID_HANDLE
Either the DAA or the TPM handler is not valid.
TSS_E_BAD_PARAMETER
TSS_E_INTERNAL_ERROR
An internal SW error has been detected.
TSS_E_DAA_ISSUER_KEY_ERROR
CONFORMING TO
Tspi_TPM_DAA_JoinInit conforms to the Trusted Computing Group Software
Specification version 1.2
SEE ALSO
Tspi_TPM_DAA_JoinCreateDaaPubKey(3) Tspi_TPM_DAA_JoinStoreCredential(3)