Skip to content

feat(verify): TDX and Opaque attestation verification stubs - #215

Merged
imran-siddique merged 1 commit into
mainfrom
feat/tdx-opaque-verify-stubs
Jun 6, 2026
Merged

feat(verify): TDX and Opaque attestation verification stubs#215
imran-siddique merged 1 commit into
mainfrom
feat/tdx-opaque-verify-stubs

Conversation

@imran-siddique

Copy link
Copy Markdown
Member

Summary

  • Adds verify_tdx_measurement() in src/cmcp_verify/tdx.py: checks sha384 measurement format, verifies MRTD field in TDREPORT at offset 0x90, probes Intel DCAP service availability; returns PARTIALLY_VERIFIED when DCAP is unreachable
  • Adds verify_opaque_measurement() in src/cmcp_verify/opaque.py: POSTs raw_evidence to configurable Opaque endpoint (env CMCP_OPAQUE_ATTESTATION_ENDPOINT or explicit param); returns PARTIALLY_VERIFIED if endpoint not configured or network error
  • Wires both into verify_trace_claim() dispatch in verify.py for intel-tdx and opaque/opaque-managed platforms

Test plan

  • 12 unit tests in tests/unit/test_tdx_opaque_verify.py, all passing locally
  • CI green on all 6 matrix jobs

Closes #70

🤖 Generated with Claude Code

Add verify_tdx_measurement() (MRTD field check + DCAP service probe)
and verify_opaque_measurement() (POST to configurable endpoint).
Both return PARTIALLY_VERIFIED with descriptive unverified_fields when
full verification is unavailable. Wire both into verify_trace_claim()
dispatch. 12 unit tests, all passing.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@imran-siddique
imran-siddique merged commit 9f60b96 into main Jun 6, 2026
0 of 7 checks passed
@imran-siddique
imran-siddique deleted the feat/tdx-opaque-verify-stubs branch July 29, 2026 23:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[verify] TDX and Opaque stubs in cmcp-verify

1 participant