Introduction to Library Functions Tspi_TPM_DAA_Sign(3)
TCG Software Stack Developer's ReferenceNAME
Tspi_TPM_DAA_Sign - creates a DAA Signature that proofs own-
ership of the DAA CredentialSYNOPSIS
#include
#include
#include
TSS_RESULT Tspi_TPM_DAA_Sign(
TSS_HDAA hDAA,
TSS_HTPM hTPM,
TSS_HKEY hDaaCredential,
TSS_DAA_SELECTED_ATTRIB revealAttributes,
UINT32 verifierBaseNameLength, BYTE* verifierBaseName, UINT32 verifierNonceLength, BYTE* verifierNonce,TSS_DAA_SIGN_DATA signData,
TSS_DAA_SIGNATURE* daaSignature
);DESCRIPTION
Tspi_TPM_DAA_Sign creates a DAA Signature that proofs owner-
ship of the DAA Credential and includes a signature on ei-
ther a public AIK or a message. If anonymity revocation is enabled, the value Nv is not provided in the clear anymore but encrypted under the public key of anonymity revocationauthority, a trusted third party (TTP). Thus the DAA Verif-
ier cannot check for revocation or link a transaction/signature to prior ones. Depending on how is chosen, the protocol either allows implementing anonymityrevocation (i.e., using the DAA Issuer's long-term base name
as the DAA Verifier's base name ), or having the TTP doingthe linking of different signatures for the same DAA Verif-
ier (i.e., using the DAA Verifier's base name ).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. hDaaCredential The hDaaCredential parameter is the Handle of the DAA Credential.TSS 1.2 Last change: 2006-09-04 1
Introduction to Library Functions Tspi_TPM_DAA_Sign(3)
revealAttributes The revealAttributes parameter is the attributes which the credential owner wants to reveal to the DAA Verifier. verifierBaseNameLengthThe verifierBaseNameLength parameter is the Length of veri-
fierBaseName. verifierBaseName The verifierBaseName parameter is the base name chosen by the DAA Verifier. If it equals to null, the platform chooses a random base name. verifierNonceLengthThe verifierNonceLength parameter is the length of verifier-
NonceName (20 bytes). verifierNonce The verifierNonce parameter is the nonce created by the DAA Verifier. signData The signData parameter is the handle of the received DAA Credential. daaSignature The daaSignature parameter is the DAA signature containing the proof of ownership of the DAA Credential, as well as a signature on either an AIK or a message. RETURN CODESTspi_TPM_DAA_Sign 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. CONFORMING TOTspi_TPM_DAA_Sign conforms to the Trusted Computing Group
Software Specification version 1.2SEE ALSO
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
TSS 1.2 Last change: 2006-09-04 2
Introduction to Library Functions Tspi_TPM_DAA_Sign(3)
butes:__________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|____________________|_____________________________|_
| Availability | library/security/trousers ||____________________|_____________________________|_
| Interface Stability| Uncommitted ||____________________|____________________________|
NOTES Source for trousers is available at http://opensolaris.organd at http://sourceforge.net/projects/trousers. Documenta-
tion is available at file:///usr/share/man, and http://sourceforge.net/projects/trousers.TSS 1.2 Last change: 2006-09-04 3