Attestation Verification
How attestation is verified and how it feeds into trust decisions.
Evidence Collected
For TEE-enabled notarization, the prover receives the normal TLSN attestation and secrets plus an extra TeeAttestation payload. The TDX payload mirrors Intel Trust Authority evidence and includes report data that should bind to the Notary public key.
The server may also expose an initialization quote from /info when notary-server is built with --features tee_quote.
Verification Procedure
- Create the Notary session with
teeAttestation: true. - Complete the normal
/notarizeWebSocket flow. - Verify the TLSN attestation and secrets using the normal TLSNotary policy.
- Verify the TDX evidence chain against Intel Trust Authority trust anchors.
- Check the expected measurement or deployment policy.
- Extract report data from the quote.
- Compare the report data against the Notary public key returned by
/info. - Accept the TEE claim only if both TLSN verification and TDX verification pass.
Inputs Required By The Verifier
- Trust Authority trust anchors and policy.
- Expected Notary public key or a trusted way to fetch
/info. - Freshness policy for quote or evidence age.
- Application policy for what to do if TDX evidence is absent.
What Gets Bound To What
- TEE measurement to Notary runtime: checked through Trust Authority evidence.
- Notary runtime to public key: checked by comparing quote report data with the Notary public key.
- Public key to notarization: checked through the normal TLSN attestation verification path.
Operational Guidance
Surface TDX failures separately from TLSN verification failures. A TLSN artifact may be structurally valid while the TEE claim is missing, stale, or mismatched.
Avoid logging full secrets or transcript material. It is usually safe to log high-level attestation status, quote verification result, Notary public key fingerprint, and non-sensitive error messages.