tpm2-tss  master
TPM Software stack 2.0 TCG spec compliant implementation
Fapi_VerifyQuote

Functions

TSS2_RC Fapi_VerifyQuote (FAPI_CONTEXT *context, char const *publicKeyPath, uint8_t const *qualifyingData, size_t qualifyingDataSize, char const *quoteInfo, uint8_t const *signature, size_t signatureSize, char const *pcrLog)
 
TSS2_RC Fapi_VerifyQuote_Async (FAPI_CONTEXT *context, char const *publicKeyPath, uint8_t const *qualifyingData, size_t qualifyingDataSize, char const *quoteInfo, uint8_t const *signature, size_t signatureSize, char const *pcrLog)
 
TSS2_RC Fapi_VerifyQuote_Finish (FAPI_CONTEXT *context)
 

Detailed Description

FAPI functions to invoke VerifyQuote either as one-call or in an asynchronous manner.

Function Documentation

◆ Fapi_VerifyQuote()

TSS2_RC Fapi_VerifyQuote ( FAPI_CONTEXT context,
char const *  publicKeyPath,
uint8_t const *  qualifyingData,
size_t  qualifyingDataSize,
char const *  quoteInfo,
uint8_t const *  signature,
size_t  signatureSize,
char const *  pcrLog 
)

One-Call function for Fapi_VerifyQuote

Verifies that the data returned by a quote is valid.

Parameters
[in,out]contextThe FAPI_CONTEXT
[in]publicKeyPathThe path to the signing key
[in]qualifyingDataThe qualifying data nonce. May be NULL
[in]qualifyingDataSizeThe size of qualifyingData in bytes. Must be 0 if qualifyingData is NULL
[in]quoteInfoThe quote information
[in]signatureThe quote's signature
[in]signatureSizeThe size of signature in bytes
[in]pcrLogThe PCR's log. May be NULL
Return values
TSS2_RC_SUCCESSif the function call was a success.
TSS2_FAPI_RC_BAD_REFERENCEif context, publicKeyPath, quoteInfo, or signature is NULL.
TSS2_FAPI_RC_BAD_CONTEXTif context corruption is detected.
TSS2_FAPI_RC_KEY_NOT_FOUNDif path does not map to a FAPI entity.
TSS2_FAPI_RC_BAD_KEYif the entity at path is not a key, or is a key that is unsuitable for the requested operation.
TSS2_FAPI_RC_BAD_VALUEif quoteInfo, pcrEventLog, qualifyingData, or signature is invalid.
TSS2_FAPI_RC_BAD_SEQUENCEif the context has an asynchronous operation already pending.
TSS2_FAPI_RC_IO_ERRORif the data cannot be saved.
TSS2_FAPI_RC_MEMORYif the FAPI cannot allocate enough memory for internal operations or return parameters.
TSS2_FAPI_RC_PATH_NOT_FOUNDif a FAPI object path was not found during authorization.
TSS2_FAPI_RC_TRY_AGAINif an I/O operation is not finished yet and this function needs to be called again.
TSS2_FAPI_RC_GENERAL_FAILUREif an internal error occurred.
TSS2_FAPI_RC_SIGNATURE_VERIFICATION_FAILEDif the signature could not be verified
TSS2_FAPI_RC_NOT_PROVISIONEDFAPI was not provisioned.
TSS2_FAPI_RC_BAD_PATHif the path is used in inappropriate context or contains illegal characters.

◆ Fapi_VerifyQuote_Async()

TSS2_RC Fapi_VerifyQuote_Async ( FAPI_CONTEXT context,
char const *  publicKeyPath,
uint8_t const *  qualifyingData,
size_t  qualifyingDataSize,
char const *  quoteInfo,
uint8_t const *  signature,
size_t  signatureSize,
char const *  pcrLog 
)

Asynchronous function for Fapi_VerifyQuote

Verifies that the data returned by a quote is valid. Call Fapi_VerifyQuote_Finish to finish the execution of this command.

Parameters
[in,out]contextThe FAPI_CONTEXT
[in]publicKeyPathThe path to the signing key
[in]qualifyingDataThe qualifying data nonce. May be NULL
[in]qualifyingDataSizeThe size of qualifyingData in bytes. Must be 0 if qualifyingData is NULL
[in]quoteInfoThe quote information
[in]signatureThe quote's signature
[in]signatureSizeThe size of signature in bytes
[in]pcrLogThe PCR's log. May be NULL
Return values
TSS2_RC_SUCCESSif the function call was a success.
TSS2_FAPI_RC_BAD_REFERENCEif context, publicKeyPath, quoteInfo, or signature is NULL.
TSS2_FAPI_RC_BAD_CONTEXTif context corruption is detected.
TSS2_FAPI_RC_KEY_NOT_FOUNDif path does not map to a FAPI entity.
TSS2_FAPI_RC_BAD_KEYif the entity at path is not a key, or is a key that is unsuitable for the requested operation.
TSS2_FAPI_RC_BAD_VALUEif quoteInfo, pcrEventLog, qualifyingData, or signature is invalid.
TSS2_FAPI_RC_BAD_SEQUENCEif the context has an asynchronous operation already pending.
TSS2_FAPI_RC_IO_ERRORif the data cannot be saved.
TSS2_FAPI_RC_MEMORYif the FAPI cannot allocate enough memory for internal operations or return parameters.
TSS2_FAPI_RC_PATH_NOT_FOUNDif a FAPI object path was not found during authorization.
TSS2_FAPI_RC_NOT_PROVISIONEDFAPI was not provisioned.
TSS2_FAPI_RC_BAD_PATHif the path is used in inappropriate context or contains illegal characters.

◆ Fapi_VerifyQuote_Finish()

TSS2_RC Fapi_VerifyQuote_Finish ( FAPI_CONTEXT context)

Asynchronous finish function for Fapi_VerifyQuote

This function should be called after a previous Fapi_VerifyQuote_Async.

Parameters
[in,out]contextThe FAPI_CONTEXT
Return values
TSS2_RC_SUCCESSif the function call was a success.
TSS2_FAPI_RC_BAD_REFERENCEif context is NULL.
TSS2_FAPI_RC_BAD_CONTEXTif context corruption is detected.
TSS2_FAPI_RC_BAD_SEQUENCEif the context has an asynchronous operation already pending.
TSS2_FAPI_RC_IO_ERRORif the data cannot be saved.
TSS2_FAPI_RC_MEMORYif the FAPI cannot allocate enough memory for internal operations or return parameters.
TSS2_FAPI_RC_TRY_AGAINif the asynchronous operation is not yet complete. Call this function again later.
TSS2_FAPI_RC_BAD_VALUEif an invalid value was passed into the function.
TSS2_FAPI_RC_GENERAL_FAILUREif an internal error occurred.
TSS2_FAPI_RC_SIGNATURE_VERIFICATION_FAILEDif the signature could not be verified