author yamt <>
Tue, 17 Apr 2012 00:01:34 +0000
changeset 280360 e98874280705
permissions -rw-r--r--
sync with head

.\" Copyright (C) 2006 International Business Machines Corporation
.\" Written by Anthony Bussani based on the Trusted Computing Group Software Stack Specification Version 1.2
.de Sh \" Subsection
.if t .Sp
.ne 5
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
.de Ip \" List item
.ie \\n(.$>=3 .ne \\$3
.el .ne 3
.IP "\\$1" \\$2
.TH "Tspi_DAA_IssueCredential" 3 "2006-09-04" "TSS 1.2"
.ce 1
TCG Software Stack Developer's Reference
Tspi_DAA_IssueCredential \- issue a DAA credential for a TCG platform
.ad l
.hy 0
.B #include <tss/tss_typedef.h>
.B #include <tss/tss_structs.h>
.B #include <tss/tspi.h>
.BI "TSPICALL Tspi_DAA_IssueCredential("
.BI "    TSS_HDAA                    " hDAA ","
.BI "    UINT32                      " attributesIssuerLength ","
.BI "    BYTE**                      " attributesIssuer ","
.BI "    TSS_DAA_CREDENTIAL_REQUEST  " credentialRequest ","
.BI "    TSS_DAA_JOIN_ISSUER_SESSION " joinSession ","
.BI "    TSS_DAA_CRED_ISSUER*        " credIssuer
.BI ");"

is part of the DAA Issuer component. It's the last function out of 2 in order to issue a DAA
Credential for a TCG Platform. It detects rogue TPM according to published rogue TPM DAA keys.
This is an optional function and does not require a TPM or a TCS.

The \fIhDAA\fR parameter is used to specify the handle of the DAA object.
.SS attributesIssuerLength
The \fIattributesIssuerLength\fR parameter is the length of the attributesIssuer array, which is
determined by the DAA Issuer public key (li). The length of a single attribute is if/8.
.SS attributesIssuer
The \fIattributesIssuer\fR parameter is the array of attributes to be encoded into the DAA Credential
visible to the DAA Issuer .
.SS credentialRequest
The \fIcredentialRequest\fR parameter is the credential request of the Platform, 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.
.SS joinSession
The \fIjoinSession\fR parameter is the structure containing the DAA Join session information.
.SS credIssuer
The \fIcredIssuer\fR parameter is the structure containing the DAA Credential issued by the DAA
Issuer, the proof of correctness of the credential and the attributes chosen by the DAA Issuer.

\fBTspi_DAA_IssueCredential\fR returns TSS_SUCCESS on success, otherwise one of the
following values is returned:
An internal SW error has been detected.
The authentication proof of the TPM is incorrect.
The TPM is rogue.
The proof of the credential request is incorrect.

\fBTspi_DAA_IssueCredential\fR conforms to the Trusted Computing Group
Software Specification version 1.2