1 2 /* 3 * Licensed Materials - Property of IBM 4 * 5 * trousers - An open source TCG Software Stack 6 * 7 * (C) Copyright International Business Machines Corp. 2006 8 * 9 */ 10 11 #ifndef PLATFORM_H_ 12 #define PLATFORM_H_ 13 14 #include "bi.h" 15 #include "daa_structs.h" 16 17 #if 0 18 // for RSA key 19 #include <openssl/rsa.h> 20 21 TSPICALL 22 Tspi_TPM_DAA_Sign_internal(TSS_HDAA hDAA, // in 23 TSS_HTPM hTPM, // in 24 TSS_HKEY hDaaCredential, // in 25 TSS_DAA_SELECTED_ATTRIB revealAttributes, // in 26 UINT32 verifierBaseNameLength, // in 27 BYTE* verifierBaseName, // in 28 UINT32 verifierNonceLength, // in 29 BYTE* verifierNonce, // in 30 TSS_DAA_SIGN_DATA signData, // in 31 TSS_DAA_SIGNATURE* daaSignature // out 32 ); 33 34 TSS_RESULT 35 Tspi_TPM_DAA_JoinInit_internal(TSS_HDAA hDAA, 36 TSS_HTPM hTPM, 37 int daa_counter, 38 TSS_DAA_PK *issuer_pk, 39 int issuer_authentication_PKLengh, 40 RSA **issuer_authentication_PK, 41 int issuer_authentication_PK_signaturesLength, 42 BYTE **issuer_authentication_PK_signatures, 43 int *capital_UprimeLength, 44 BYTE **capital_Uprime, 45 TSS_DAA_IDENTITY_PROOF *identity_proof, 46 TSS_DAA_JOIN_SESSION *joinSession 47 ); 48 49 TSPICALL Tspi_TPM_DAA_JoinCreateDaaPubKey_internal 50 ( 51 TSS_HDAA hDAA, // in 52 TSS_HTPM hTPM, // in 53 UINT32 authenticationChallengeLength, // in 54 BYTE* authenticationChallenge, // in 55 UINT32 nonceIssuerLength, // in 56 BYTE* nonceIssuer, // in 57 UINT32 attributesPlatformLength, // in 58 BYTE** attributesPlatform, // in 59 TSS_DAA_JOIN_SESSION* joinSession, // in, out 60 TSS_DAA_CREDENTIAL_REQUEST* credentialRequest // out 61 ); 62 63 // allocation: endorsementKey as BYTE * 64 TSS_RESULT get_public_EK( 65 TSS_HDAA hDAA, 66 UINT32 *endorsementKeyLength, 67 BYTE **endorsementKey 68 ); 69 70 #endif 71 72 TSS_RESULT 73 compute_join_challenge_host(TSS_HDAA_CREDENTIAL,//TSS_HDAA hDAA, 74 TSS_DAA_PK_internal *pk_internal, 75 bi_ptr capitalU, 76 bi_ptr capital_Uprime, 77 bi_ptr capital_utilde, 78 bi_ptr capital_utilde_prime, 79 bi_ptr capital_ni, 80 bi_ptr capital_ni_tilde, 81 UINT32 commitments_proofLength, 82 TSS_DAA_ATTRIB_COMMIT_internal * 83 commitments_proof, 84 UINT32 nonceIssuerLength, 85 BYTE* nonceIssuer, 86 UINT32 *resultLength, 87 BYTE **result 88 ); 89 90 #if 0 91 92 TSPICALL 93 Tspi_TPM_DAA_JoinStoreCredential_internal(TSS_HDAA hDAA, // in 94 TSS_HTPM hTPM, // in 95 TSS_DAA_CRED_ISSUER credIssuer, // in 96 TSS_DAA_JOIN_SESSION joinSession, // in 97 TSS_HKEY* hDaaCredential // out 98 ); 99 100 TSPICALL 101 Tspi_TPM_DAA_Sign_internal(TSS_HDAA hDAA, // in 102 TSS_HTPM hTPM, // in 103 TSS_HKEY hDaaCredential, // in 104 TSS_DAA_SELECTED_ATTRIB revealAttributes, // in 105 UINT32 verifierBaseNameLength, // in 106 BYTE* verifierBaseName, // in 107 UINT32 verifierNonceLength, // in 108 BYTE* verifierNonce, // in 109 TSS_DAA_SIGN_DATA signData, // in 110 TSS_DAA_SIGNATURE* daaSignature // out 111 ); 112 113 #endif 114 115 #endif 116