1Tspi_TPM_DAA_Sign(3) Library Functions Manual Tspi_TPM_DAA_Sign(3)
2
3
4
5 TCG Software Stack Developer's Reference
6
8 Tspi_TPM_DAA_Sign - creates a DAA Signature that proofs ownership of
9 the DAA Credential
10
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
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
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
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
95 Tspi_TPM_DAA_Sign conforms to the Trusted Computing Group Software
96 Specification version 1.2
97
98
100TSS 1.2 2006-09-04 Tspi_TPM_DAA_Sign(3)