1Tspi_TPM_DAA_Sign(3)       Library Functions Manual       Tspi_TPM_DAA_Sign(3)
2
3
4
5                   TCG Software Stack Developer's Reference
6

NAME

8       Tspi_TPM_DAA_Sign  -  creates  a DAA Signature that proofs ownership of
9       the DAA Credential
10

SYNOPSIS

12       #include <tss/tss_typedef.h>
13       #include <tss/tss_structs.h>
14       #include <tss/tspi.h>
15
16       TSS_RESULT Tspi_TPM_DAA_Sign(
17           TSS_HDAA                    hDAA,
18           TSS_HTPM                    hTPM,
19           TSS_HKEY                    hDaaCredential,
20           TSS_DAA_SELECTED_ATTRIB     revealAttributes,
21           UINT32                      verifierBaseNameLength,
22           BYTE*                       verifierBaseName,
23           UINT32                      verifierNonceLength,
24           BYTE*                       verifierNonce,
25           TSS_DAA_SIGN_DATA           signData,
26           TSS_DAA_SIGNATURE*          daaSignature
27       );
28
29
30

DESCRIPTION

32       Tspi_TPM_DAA_Sign creates a DAA Signature that proofs ownership of  the
33       DAA  Credential  and  includes  a signature on either a public AIK or a
34       message. If anonymity revocation is enabled, the value Nv is  not  pro‐
35       vided  in  the  clear  anymore  but  encrypted  under the public key of
36       anonymity revocation authority, a trusted third party (TTP).  Thus  the
37       DAA  Verifier  cannot check for revocation or link a transaction/signa‐
38       ture to prior ones. Depending on how is chosen, the protocol either al‐
39       lows  implementing  anonymity  revocation (i.e., using the DAA Issuer's
40       long-term base name  as the DAA Verifier's base name ), or  having  the
41       TTP doing the linking of different signatures for the same DAA Verifier
42       (i.e., using the DAA Verifier's base name ).
43

PARAMETERS

45   hDAA
46       The hDAA parameter is used to specify the handle of the DAA object.
47
48   hTPM
49       The hTPM parameter is the handle to the TPM object.
50
51   hDaaCredential
52       The hDaaCredential parameter is the Handle of the DAA Credential.
53
54   revealAttributes
55       The revealAttributes parameter is the attributes which  the  credential
56       owner wants to reveal to the DAA Verifier.
57
58   verifierBaseNameLength
59       The verifierBaseNameLength parameter is the Length of verifierBaseName.
60
61   verifierBaseName
62       The verifierBaseName parameter is the base name chosen by the DAA Veri‐
63       fier. If it equals to null, the platform chooses a random base name.
64
65   verifierNonceLength
66       The verifierNonceLength parameter is the  length  of  verifierNonceName
67       (20 bytes).
68
69   verifierNonce
70       The verifierNonce parameter is the nonce created by the DAA Verifier.
71
72   signData
73       The signData parameter is the handle of the received DAA Credential.
74
75   daaSignature
76       The daaSignature parameter is the DAA signature containing the proof of
77       ownership of the DAA Credential, as well as a signature  on  either  an
78       AIK or a message.
79
80

RETURN CODES

82       Tspi_TPM_DAA_Sign  returns TSS_SUCCESS on success, otherwise one of the
83       following values is returned:
84
85       TSS_E_INVALID_HANDLE
86              Either the DAA or the TPM handler is not valid.
87
88       TSS_E_BAD_PARAMETER
89
90       TSS_E_INTERNAL_ERROR
91              An internal SW error has been detected.
92
93

CONFORMING TO

95       Tspi_TPM_DAA_Sign conforms to  the  Trusted  Computing  Group  Software
96       Specification version 1.2
97
98

SEE ALSO

100TSS 1.2                           2006-09-04              Tspi_TPM_DAA_Sign(3)
Impressum