[Rats] Re: Foundational document about TEE capabilities

Mohamad Khalil Yossif <mohamad@yuthent.com> Mon, 03 August 2026 08:34 UTC

Return-Path: <mohamad@yuthent.com>
X-Original-To: rats@mail2.ietf.org
Delivered-To: rats@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id E1AAD122932C9 for <rats@mail2.ietf.org>; Mon, 3 Aug 2026 01:34:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1785746042; bh=foVWtbzLbZh5VTmFQnd7bA/+aV6FpIV5afrXaci7BQI=; h=From:Subject:Date:To; b=U7au+v/mNd1vIfjBTKVV/dQTFY46TBxzuF7exQpR6Ex8p/WFTetdDbYjPbZ4kxEA7 8uNfXxxpxVXYjTHTR6NdVkCWYeJBREAupqo/2KWK5XyREG/t36bu16C3uTDJFWy6OC OitaRazfod0tu9qaHS94w34XUTWLb2E5iw+5x8Kw=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=yuthent.com
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qvAzcLzAdX6H for <rats@mail2.ietf.org>; Mon, 3 Aug 2026 01:34:01 -0700 (PDT)
Received: from out-07.pe-bsn.jellyfish.systems (out-07.pe-bsn.jellyfish.systems [66.29.159.85]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 9F480122932BF for <rats@ietf.org>; Mon, 3 Aug 2026 01:34:01 -0700 (PDT)
Received: from MTA-14.privateemail.com (unknown [10.50.14.30]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by BSN-02.privateemail.com (Postfix) with ESMTPS id 4hD91s2jFYz3hhTG for <rats@ietf.org>; Mon, 3 Aug 2026 04:33:53 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=yuthent.com; s=default; t=1785746033; bh=foVWtbzLbZh5VTmFQnd7bA/+aV6FpIV5afrXaci7BQI=; h=From:Subject:Date:To:From; b=VYQ0mpTPk4fUZzB9Ai73DFjWSokyCwa605ucXqvPvtf7nYbeNkHz+lBEENJFsk4WW C0uzSwC+7M1w8NwR0pIuuE1emk1V0XbZTHIiaagDb+eOhzxVwrxnh6mjWAiE20U2ud rXci8uNN2gHyNI1Iq4pzLIbsvRlTQg56b5CzPiuaxKdgpXwDnkLJHhOyeqEoSVWko8 uyaZW3n8uuaR6SMTKN7vRLZWABduJ8/ZmamR1rad93Kau9u/EGxeKAgwYZfCyqbEId qmQopVHgflUwqhJHCUBzWi63zdyD7TUU6ZSsdYuti22GyXzR3vvQlqdC9wrcQ2AfMV DZ1C2pSQYzlOg==
Received: from mail.privateemail.com (K8S-PROD-WORKER-04 [79.177.153.50]) by mta-14.privateemail.com (Postfix) with ESMTPA id 4hD91r5vKPz3hhTH for <rats@ietf.org>; Mon, 3 Aug 2026 04:33:52 -0400 (EDT)
From: Mohamad Khalil Yossif <mohamad@yuthent.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_6E243AA9-6A31-4BD4-81BB-F5BC9ADDE3E2"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3864.600.51.1.1\))
Message-Id: <19D62AFC-F069-4E2C-A68A-0087C16F2C14@yuthent.com>
Date: Mon, 03 Aug 2026 11:33:40 +0300
To: rats@ietf.org
X-Mailer: Apple Mail (2.3864.600.51.1.1)
Message-ID-Hash: TVA7RNKFLCKAG6OVPMH3POHDEZXOTUWE
X-Message-ID-Hash: TVA7RNKFLCKAG6OVPMH3POHDEZXOTUWE
X-MailFrom: mohamad@yuthent.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-rats.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Rats] Re: Foundational document about TEE capabilities
List-Id: Remote ATtestation procedureS <rats.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/rats/aT6r6PucB2z_xmF1FqZUTJyyCGI>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rats>
List-Help: <mailto:rats-request@ietf.org?subject=help>
List-Owner: <mailto:rats-owner@ietf.org>
List-Post: <mailto:rats@ietf.org>
List-Subscribe: <mailto:rats-join@ietf.org>
List-Unsubscribe: <mailto:rats-leave@ietf.org>

> Markus, all,
> 
> Your worked example is the question I had to answer normatively, and I
> can offer what happened when I tried rather than an opinion about
> whether the document should exist.
> 
>   "I verify the report and software: can I now assume that this key is
>   only known by the TEE?"
> 
> I write a profile whose entire claim rests on a related assumption: a
> signature was produced by a key whose signing operation was gated by a
> contemporaneous user-verification event. Not confidentiality of the
> key, but a property of the environment holding it — the same shape of
> question, and it fails in the same place.
> 
> What I found is that the answer is not yes or no. It is two answers,
> and which one applies depends on something outside the protocol:
> 
> Where the platform attestation conveys the property, a Verifier can
> cross-check the claim against the attestation and reject on
> contradiction. The property is attested.
> 
> Where the attestation surface does not convey it, the claim is signed
> and tamper-evident but rests on a documented trust assumption about
> the authenticator. It is asserted.
> 
> Both pass signature verification. Both look identical on the wire. The
> profile has to say, normatively, that a Verifier MUST NOT accept the
> second as though it were the first where the cross-check was
> available, and MUST NOT treat presence as attested where the surface
> cannot convey it.
> 
> Two things that cost me something to learn, offered because they bear
> on what such a document would need to contain.
> 
> First, "the attestation conveys the property" is not a yes/no fact
> about a TEE class. It is a fact about a specific attestation format
> and what fields it carries, on a specific platform, at a specific
> version. Two devices with the same silicon can differ. A document
> written at the level of SEV-SNP or TDX would not have let me write the
> rule I needed; what I needed was per-attestation-surface, and I ended
> up stating the conditional rather than the fact.
> 
> Second, and this is where Ned's point bites: the fallback for the
> unattested branch is a documented trust assumption, which is another
> way of saying reputation. I could not do better and I do not think a
> profile can. But a Verifier that cannot tell which branch it is on has
> no way to know it is relying on reputation rather than on
> verification, and that is the failure mode worth a document — not the
> guarantees themselves, but a way for a relying party to determine
> which guarantees it actually got.
> 
> So my answer to the framing question is narrower than either
> orthodoxy. A foundational document that enumerates TEE guarantees
> would not have helped me. One that gave protocol authors a vocabulary
> for "attested versus asserted, and how a Verifier determines which"
> would have — and Michael's point about public norms is, I think, the
> same point: the value is in making the difference legible, not in
> asserting that the guarantee holds.
> 
> For whatever it is worth as a worked instance rather than a proposal:
> 
>   https://datatracker.ietf.org/doc/draft-yossif-psea/
> 
> Section 3.7.1 is the two-branch rule. I would rather it were read as
> one attempt that a better document could improve on than as a model.
> 
> Mohamad Khalil-Yossif
> 
>   draft-yossif-psea
>   https://datatracker.ietf.org/doc/draft-yossif-psea/
>   draft-yossif-agent-mandate-problem
>   https://datatracker.ietf.org/doc/draft-yossif-agent-mandate-problem/
>   draft-yossif-enrollment-problem
>   https://datatracker.ietf.org/doc/draft-yossif-enrollment-problem/