pub fn tdx_qv_verify_quote(
    quote: &[u8],
    quote_collateral: Option<&tdx_ql_qve_collateral_t>,
    expiration_check_date: i64,
    qve_report_info: Option<&mut sgx_ql_qe_report_info_t>,
    supplemental_data_size: u32,
    supplemental_data: Option<&mut sgx_ql_qv_supplemental_t>
) -> Result<(u32, sgx_ql_qv_result_t), quote3_error_t>
Expand description

Perform TDX ECDSA quote verification.

Param

  • quote
    TDX Quote, presented as u8 vector.
  • quote_collateral
    Quote Certification Collateral provided by the caller.
  • expiration_check_date
    This is the date that the QvE will use to determine if any of the inputted collateral have expired.
  • qve_report_info
    This parameter can be used in 2 ways.
    • If qve_report_info is NOT None, the API will use Intel QvE to perform quote verification, and QvE will generate a report using the target_info in sgx_ql_qe_report_info_t structure.
    • if qve_report_info is None, the API will use QVL library to perform quote verification, not that the results can not be cryptographically authenticated in this mode.
  • supplemental_data_size
    Size of the supplemental data (in bytes).
  • supplemental_data
    The parameter is optional. If it is None, supplemental_data_size must be 0.

Return

Result type of (collateral_expiration_status, verification_result)

Status code of the operation, one of:

  • SGX_QL_ERROR_INVALID_PARAMETER
  • SGX_QL_QUOTE_FORMAT_UNSUPPORTED
  • SGX_QL_QUOTE_CERTIFICATION_DATA_UNSUPPORTED
  • SGX_QL_UNABLE_TO_GENERATE_REPORT
  • SGX_QL_CRL_UNSUPPORTED_FORMAT
  • SGX_QL_ERROR_UNEXPECTED