Skip to content

Is my SGX quote verification really working ? #441

@aghia98

Description

@aghia98

Hi,
I am executing the SampleCode/QuoteVerificationSample code to verify a quote on an Azure VM (Standard DC2s_v2).
The thing is, the provided code is not working (compilation errors) as it is and needs some slight modifications:

  • Comment the line #include "sgx_default_quote_provider.h" (because it does not recognize the file),
  • Replace success codes such as TEE_SUCCESS by SGX_SUCCESS (as suggested by the compiler),
  • Replace verification result codes such as TEE_XX by SGX_QL_XX (XX being any verification result).

After the former modification and the execution of ./app -quote quote.dat, I have the following result:

[APP] Info: ECDSA quote path: quote.dat
[APP] Trusted quote verification:
[APP] Info: get target info successfully returned.
[APP] Info: sgx_qv_set_enclave_load_policy successfully returned.
[APP] Info: tee_get_quote_supplemental_data_version_and_size successfully returned.
[APP] Info: latest supplemental data major version: 3, minor version: 3, size: 536
Azure Quote Provider: libdcap_quoteprov.so [ERROR]: Could not retrieve environment variable for 'AZDCAP_DEBUG_LOG_LEVEL'
[APP] Info: App: tee_verify_quote successfully returned.
[APP] Info: Ecall: Verify QvE report and identity successfully returned.
[APP] Warning: App: Verification completed with Non-terminal result: a007
[APP] Info: Supplemental data Major Version: 3
[APP] Info: Supplemental data Minor Version: 3

===========================================

[APP] Untrusted quote verification:
[APP] Info: tee_get_quote_supplemental_data_version_and_size successfully returned.
[APP] Info: latest supplemental data major version: 3, minor version: 3, size: 536
[APP] Info: App: tee_verify_quote successfully returned.
[APP] Warning: App: Verification completed with Non-terminal result: a007
[APP] Info: Supplemental data Major Version: 3
[APP] Info: Supplemental data Minor Version: 3

I do not know how to interpret these results. The tee_verify_quote successfully returned suggests me that the verification works correctly. However, the amount of undocumented modifications I have introduced in the code as well as the non-terminal returned result (a007) give me doubts.

Can you help me to clarify the situation ?

Thank you

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions