?? tspi.h
字號:
TSPICALL Tspi_Key_WrapKey
(
TSS_HKEY hKey, // in
TSS_HKEY hWrappingKey, // in
TSS_HPCRS hPcrComposite // in, may be NULL
);
TSPICALL Tspi_Key_CreateMigrationBlob
(
TSS_HKEY hKeyToMigrate, // in
TSS_HKEY hParentKey, // in
UINT32 ulMigTicketLength, // in
BYTE* rgbMigTicket, // in
UINT32* pulRandomLength, // out
BYTE** prgbRandom, // out
UINT32* pulMigrationBlobLength, // out
BYTE** prgbMigrationBlob // out
);
TSPICALL Tspi_Key_ConvertMigrationBlob
(
TSS_HKEY hKeyToMigrate, // in
TSS_HKEY hParentKey, // in
UINT32 ulRandomLength, // in
BYTE* rgbRandom, // in
UINT32 ulMigrationBlobLength, // in
BYTE* rgbMigrationBlob // in
);
TSPICALL Tspi_Key_MigrateKey
(
TSS_HKEY hMaKey, // in
TSS_HKEY hPublicKey, // in
TSS_HKEY hMigData // in
);
TSPICALL Tspi_Key_CMKCreateBlob
(
TSS_HKEY hKeyToMigrate, // in
TSS_HKEY hParentKey, // in
TSS_HMIGDATA hMigrationData, // in
UINT32* pulRandomLength, // out
BYTE** prgbRandom // out
);
TSPICALL Tspi_Key_CMKConvertMigration
(
TSS_HKEY hKeyToMigrate, // in
TSS_HKEY hParentKey, // in
TSS_HMIGDATA hMigrationData, // in
UINT32 ulRandomLength, // in
BYTE* rgbRandom // in
);
// Hash Class Definition
TSPICALL Tspi_Hash_Sign
(
TSS_HHASH hHash, // in
TSS_HKEY hKey, // in
UINT32* pulSignatureLength, // out
BYTE** prgbSignature // out
);
TSPICALL Tspi_Hash_VerifySignature
(
TSS_HHASH hHash, // in
TSS_HKEY hKey, // in
UINT32 ulSignatureLength, // in
BYTE* rgbSignature // in
);
TSPICALL Tspi_Hash_SetHashValue
(
TSS_HHASH hHash, // in
UINT32 ulHashValueLength, // in
BYTE* rgbHashValue // in
);
TSPICALL Tspi_Hash_GetHashValue
(
TSS_HHASH hHash, // in
UINT32* pulHashValueLength, // out
BYTE** prgbHashValue // out
);
TSPICALL Tspi_Hash_UpdateHashValue
(
TSS_HHASH hHash, // in
UINT32 ulDataLength, // in
BYTE* rgbData // in
);
TSPICALL Tspi_Hash_TickStampBlob
(
TSS_HHASH hHash, // in
TSS_HKEY hIdentKey, // in
TSS_VALIDATION* pValidationData // in
);
// EncData Class Definition
TSPICALL Tspi_Data_Bind
(
TSS_HENCDATA hEncData, // in
TSS_HKEY hEncKey, // in
UINT32 ulDataLength, // in
BYTE* rgbDataToBind // in
);
TSPICALL Tspi_Data_Unbind
(
TSS_HENCDATA hEncData, // in
TSS_HKEY hKey, // in
UINT32* pulUnboundDataLength, // out
BYTE** prgbUnboundData // out
);
TSPICALL Tspi_Data_Seal
(
TSS_HENCDATA hEncData, // in
TSS_HKEY hEncKey, // in
UINT32 ulDataLength, // in
BYTE* rgbDataToSeal, // in
TSS_HPCRS hPcrComposite // in
);
TSPICALL Tspi_Data_Unseal
(
TSS_HENCDATA hEncData, // in
TSS_HKEY hKey, // in
UINT32* pulUnsealedDataLength, // out
BYTE** prgbUnsealedData // out
);
// NV Class Definition
TSPICALL Tspi_NV_DefineSpace
(
TSS_HNVSTORE hNVStore, // in
TSS_HPCRS hReadPcrComposite, // in, may be NULL
TSS_HPCRS hWritePcrComposite // in, may be NULL
);
TSPICALL Tspi_NV_ReleaseSpace
(
TSS_HNVSTORE hNVStore // in
);
TSPICALL Tspi_NV_WriteValue
(
TSS_HNVSTORE hNVStore, // in
UINT32 offset, // in
UINT32 ulDataLength, // in
BYTE* rgbDataToWrite // in
);
TSPICALL Tspi_NV_ReadValue
(
TSS_HNVSTORE hNVStore, // in
UINT32 offset, // in
UINT32* ulDataLength, // in, out
BYTE** rgbDataRead // out
);
// DAA Utility functions (optional, do not require a TPM or TCS)
TSPICALL Tspi_DAA_IssuerKeyVerify
(
TSS_HDAA_CREDENTIAL hDAACredential, // in
TSS_HDAA_ISSUER_KEY hIssuerKey, // in
TSS_BOOL* isCorrect // out
);
TSPICALL Tspi_DAA_Issuer_GenerateKey
(
TSS_HDAA_ISSUER_KEY hIssuerKey, // in
UINT32 issuerBaseNameLength, // in
BYTE* issuerBaseName // in
);
TSPICALL Tspi_DAA_Issuer_InitCredential
(
TSS_HDAA_ISSUER_KEY hIssuerKey, // in
TSS_HKEY issuerAuthPK, // in
TSS_DAA_IDENTITY_PROOF* identityProof, // in
UINT32 capitalUprimeLength, // in
BYTE* capitalUprime, // in
UINT32 daaCounter, // in
UINT32* nonceIssuerLength, // out
BYTE** nonceIssuer, // out
UINT32* authenticationChallengeLength, // out
BYTE** authenticationChallenge, // out
UINT32* joinSessionLength, // out
BYTE** joinSession // out
);
TSPICALL Tspi_DAA_Issuer_IssueCredential
(
TSS_HDAA_ISSUER_KEY hIssuerKey, // in
TSS_DAA_CREDENTIAL_REQUEST* credentialRequest, // in
UINT32 issuerJoinSessionLength, // in
BYTE* issuerJoinSession, // in
TSS_DAA_CRED_ISSUER** credIssuer // out
);
TSPICALL Tspi_DAA_Verifier_Init
(
TSS_HDAA_CREDENTIAL hDAACredential, // in
UINT32* nonceVerifierLength, // out
BYTE** nonceVerifier, // out
UINT32* baseNameLength, // out
BYTE** baseName // out
);
TSPICALL Tspi_DAA_VerifySignature
(
TSS_HDAA_CREDENTIAL hDAACredential, // in
TSS_HDAA_ISSUER_KEY hIssuerKey, // in
TSS_HDAA_ARA_KEY hARAKey, // in
TSS_HHASH hARACondition, // in
UINT32 attributesLength, // in
UINT32 attributesLength2, // in
BYTE** attributes, // in
UINT32 verifierNonceLength, // in
BYTE* verifierNonce, // in
UINT32 verifierBaseNameLength, // in
BYTE* verifierBaseName, // in
TSS_HOBJECT signData, // in
TSS_DAA_SIGNATURE* daaSignature, // in
TSS_BOOL* isCorrect // out
);
TSPICALL Tspi_DAA_ARA_GenerateKey
(
TSS_HDAA_ISSUER_KEY hIssuerKey, // in
TSS_HDAA_ARA_KEY hARAKey // in
);
TSPICALL Tspi_DAA_ARA_RevokeAnonymity
(
TSS_HDAA_ARA_KEY hARAKey, // in
TSS_HHASH hARACondition, // in
TSS_HDAA_ISSUER_KEY hIssuerKey, // in
TSS_DAA_PSEUDONYM_ENCRYPTED* encryptedPseudonym, // in
TSS_DAA_PSEUDONYM_PLAIN** pseudonym // out
);
// Callback typedefs
typedef TSS_RESULT (*Tspicb_CallbackHMACAuth)
(
PVOID lpAppData, // in
TSS_HOBJECT hAuthorizedObject, // in
TSS_BOOL ReturnOrVerify, // in
UINT32 ulPendingFunction, // in
TSS_BOOL ContinueUse, // in
UINT32 ulSizeNonces, // in
BYTE* rgbNonceEven, // in
BYTE* rgbNonceOdd, // in
BYTE* rgbNonceEvenOSAP, // in
BYTE* rgbNonceOddOSAP, // in
UINT32 ulSizeDigestHmac, // in
BYTE* rgbParamDigest, // in
BYTE* rgbHmacData // in, out
);
typedef TSS_RESULT (*Tspicb_CallbackXorEnc)
(
PVOID lpAppData, // in
TSS_HOBJECT hOSAPObject, // in
TSS_HOBJECT hObject, // in
TSS_FLAG PurposeSecret, // in
UINT32 ulSizeNonces, // in
BYTE* rgbNonceEven, // in
BYTE* rgbNonceOdd, // in
BYTE* rgbNonceEvenOSAP, // in
BYTE* rgbNonceOddOSAP, // in
UINT32 ulSizeEncAuth, // in
BYTE* rgbEncAuthUsage, // out
BYTE* rgbEncAuthMigration // out
);
typedef TSS_RESULT (*Tspicb_CallbackTakeOwnership)
(
PVOID lpAppData, // in
TSS_HOBJECT hObject, // in
TSS_HKEY hObjectPubKey, // in
UINT32 ulSizeEncAuth, // in
BYTE* rgbEncAuth // out
);
typedef TSS_RESULT (*Tspicb_CallbackSealxMask)
(
PVOID lpAppData, // in
TSS_HKEY hKey, // in
TSS_HENCDATA hEncData, // in
TSS_ALGORITHM_ID algID, // in
UINT32 ulSizeNonces, // in
BYTE* rgbNonceEven, // in
BYTE* rgbNonceOdd, // in
BYTE* rgbNonceEvenOSAP, // in
BYTE* rgbNonceOddOSAP, // in
UINT32 ulDataLength, // in
BYTE* rgbDataToMask, // in
BYTE* rgbMaskedData // out
);
typedef TSS_RESULT (*Tspicb_CallbackChangeAuthAsym)
(
PVOID lpAppData, // in
TSS_HOBJECT hObject, // in
TSS_HKEY hObjectPubKey, // in
UINT32 ulSizeEncAuth, // in
UINT32 ulSizeAuthLink, // in
BYTE* rgbEncAuth, // out
BYTE* rgbAuthLink // out
);
typedef TSS_RESULT (*Tspicb_CollateIdentity)
(
PVOID lpAppData, // in
UINT32 ulTCPAPlainIdentityProofLength, // in
BYTE* rgbTCPAPlainIdentityProof, // in
TSS_ALGORITHM_ID algID, // in
UINT32 ulSessionKeyLength, // out
BYTE* rgbSessionKey, // out
UINT32* pulTCPAIdentityProofLength, // out
BYTE* rgbTCPAIdentityProof // out
);
typedef TSS_RESULT (*Tspicb_ActivateIdentity)
(
PVOID lpAppData, // in
UINT32 ulSessionKeyLength, // in
BYTE* rgbSessionKey, // in
UINT32 ulSymCAAttestationBlobLength, // in
BYTE* rgbSymCAAttestationBlob, // in
UINT32* pulCredentialLength, // out
BYTE* rgbCredential // out
);
typedef TSS_RESULT (*Tspicb_DAA_Sign)
(
PVOID lpAppData, // in
TSS_HDAA_ISSUER_KEY daaPublicKey, // in
UINT32 gammasLength, // in
BYTE** gammas, // in
UINT32 attributesLength, // in
BYTE** attributes, // in
UINT32 randomAttributesLength, // in
BYTE** randomAttributes, // in
UINT32 attributeCommitmentsLength,// in
TSS_DAA_ATTRIB_COMMIT* attributeCommitments, // in
TSS_DAA_ATTRIB_COMMIT* attributeCommitmentsProof, // in
TSS_DAA_PSEUDONYM_PLAIN* pseudonym, // in
TSS_DAA_PSEUDONYM_PLAIN* pseudonymTilde, // in
TSS_DAA_PSEUDONYM_ENCRYPTED* pseudonymEncrypted, // in
TSS_DAA_PSEUDONYM_ENCRYPTED* pseudonymEncProof, // in
TSS_DAA_SIGN_CALLBACK** additionalProof // out
);
typedef TSS_RESULT (*Tspicb_DAA_VerifySignature)
(
PVOID lpAppData, // in
UINT32 challengeLength, // in
BYTE* challenge, // in
TSS_DAA_SIGN_CALLBACK* additionalProof, // in
TSS_HDAA_ISSUER_KEY daaPublicKey, // in
UINT32 gammasLength, // in
BYTE** gammas, // in
UINT32 sAttributesLength, // in
BYTE** sAttributes, // in
UINT32 attributeCommitmentsLength,// in
TSS_DAA_ATTRIB_COMMIT* attributeCommitments, // in
TSS_DAA_ATTRIB_COMMIT* attributeCommitmentsProof, // in
UINT32 zetaLength, // in
BYTE* zeta, // in
UINT32 sFLength, // in
BYTE* sF, // in
TSS_DAA_PSEUDONYM* pseudonym, // in
TSS_DAA_PSEUDONYM* pseudonymProof, // in
TSS_BOOL* isCorrect // out
);
#if defined ( __cplusplus )
}
#endif /* __cplusplus */
#endif /* _TSPI_H_ */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -