<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.30 (Ruby 3.4.8) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-usama-seat-intra-vs-post-03" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="Intra-vs-post">Pre-, Intra- and Post-handshake Attestation</title>
    <seriesInfo name="Internet-Draft" value="draft-usama-seat-intra-vs-post-03"/>
    <author fullname="Muhammad Usama Sardar">
      <organization>TU Dresden</organization>
      <address>
        <email>muhammad_usama.sardar@tu-dresden.de</email>
      </address>
    </author>
    <date year="2026" month="January" day="22"/>
    <area>Security</area>
    <workgroup>Secure Evidence and Attestation Transport</workgroup>
    <keyword>remote attestation</keyword>
    <keyword>TLS 1.3</keyword>
    <keyword>attested TLS</keyword>
    <abstract>
      <?line 174?>

<t>This document presents a taxonomy of extending TLS protocol with remote attestation,
referred to as attested TLS. It also presents high-level analysis of benefits and limitations of each
category, namely pre-handshake attestation, intra-handshake attestation and post-handshake attestation.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://muhammad-usama-sardar.github.io/seat-intra-vs-post/draft-usama-seat-intra-vs-post.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-usama-seat-intra-vs-post/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Secure Evidence and Attestation Transport Working Group mailing list (<eref target="mailto:seat@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/seat"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/seat/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/muhammad-usama-sardar/seat-intra-vs-post"/>.</t>
    </note>
  </front>
  <middle>
    <?line 181?>

<section anchor="introduction">
      <name>Introduction</name>
      <!-- Formatting https://raw.githubusercontent.com/cabo/kramdown-rfc/master/examples/draft-rfcxml-general-template-standard-00.xml-edited.md
and https://github.com/cabo/kramdown-rfc
https://authors.ietf.org/en/templates-and-schemas -->
<t>Based on our extensive analysis of attested TLS <xref target="Tech-Concepts"/>,
we classify attested TLS into three main categories:</t>
      <ul spacing="normal">
        <li>
          <t>pre-handshake attestation,</t>
        </li>
        <li>
          <t>intra-handshake attestation, and</t>
        </li>
        <li>
          <t>post-handshake attestation.</t>
        </li>
      </ul>
      <t>In pre-handshake attestation, the signing of Claims <xref target="Tech-Concepts"/> precedes the
TLS handshake, while post-handshake attestation applies the reverse.
Intra-handshake attestation requires the signing of Claims to
be done within the TLS handshake protocol.</t>
      <section anchor="scope">
        <name>Scope</name>
        <t>In this version, we analyze the three categories (without combinations) with a focus on the last two, i.e., intra-handshake attestation and post-handshake attestation.</t>
        <t>The current scope of this draft is existing specifications and real-world implementations pointed in the
given references. Any theoretical solutions are currently out of scope until some specification or
implementation emerges.</t>
        <t>For simplicity, we consider simple Attester with only one Attesting Environment and only one Target
Environment <xref target="RFC9334"/>. That is, complicated scenarios such as Composite Device
<xref target="RFC9334"/> etc. are out of scope in this version.</t>
        <t>From RATS perspective, we consider Background Check Model <xref target="RFC9334"/>. Future versions will add
Passport Model <xref target="RFC9334"/>.</t>
        <t>From TLS perspective, the scope is limited to TLS 1.3 as per <xref target="SEAT-Charter"/>.
That is, older versions of TLS are explicitly out of scope.</t>
      </section>
      <section anchor="note">
        <name>Note</name>
        <t>Regarding remote attestation, we note that:</t>
        <blockquote>
          <t>Remote attestation provides guarantees about the state of
Attester <strong>only</strong> at the time at which signing of Claims
is done to generate Evidence <xref target="Tech-Concepts"/>.</t>
        </blockquote>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<t>We use terminology from <xref target="RFC9334"/> and <xref target="I-D.ietf-tls-rfc8446bis"/> slightly loosely (intentionally)
for readability. Future versions will tighten it.</t>
      <t>In addition, we define three temporal terms:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Evidence Generation Time</strong>: Time when Evidence is generated (more specifically when Claims are signed)</t>
        </li>
        <li>
          <t><strong>Connection Establishment Time</strong>: Time at which TLS handshake is performed</t>
        </li>
        <li>
          <t><strong>Lifetime of Connection</strong>: Time period starting from Connection Establishment Time until the connection exists.</t>
        </li>
      </ul>
    </section>
    <section anchor="pre-handshake-attestation">
      <name>Pre-handshake Attestation</name>
      <section anchor="benefits">
        <name>Benefits</name>
        <t>In certain deployments, there may be benefits for pre-handshake attestation.
As Yaroslav Rosomakho (as individual contributor) observes <xref target="Yaroslav-22Jan"/>:</t>
        <blockquote>
          <t>no modification of TLS, no changes to application protocols, and
potential caching/scalability.</t>
        </blockquote>
        <t>He (as individual contributor) further explains <xref target="Yaroslav-22Jan"/>:</t>
        <blockquote>
          <t>Many signed artifacts carry issuance time and validity constraints
(e.g., JWT iat/exp <xref target="RFC7519"/>, HTTP Message Signatures created/expires <xref target="RFC9421"/>,
SAML conditions <xref target="SAML"/>). A timestamp alone is not the same as freshness,
but a short validity window plus a trustworthy time source can be an
acceptable assurance mechanism in some deployments. Likewise, some
schemes can provide stronger freshness via verifier-chosen challenges
or monotonic counters.</t>
        </blockquote>
      </section>
      <section anchor="limitations">
        <name>Limitations</name>
        <t>There are also security concerns on pre-handshake attestation for
use cases such as confidential computing <xref target="sec-sec-cons"/>.
Since the Evidence Generation Time could be at any
arbitrary point of time in the past compared to the Connection
Establishment Time in the case of untrusted clocks as in confidential computing,
pre-handshake attestation provides no guarantees about the state of Attester
at the Connection Establishment Time and during the Lifetime of Connection.</t>
      </section>
    </section>
    <section anchor="intra-handshake-attestation">
      <name>Intra-handshake Attestation</name>
      <t>In general, intra-handshake attestation improves the situation where Evidence Generation Time
is the same as Connection Establishment Time, assuming freshness mechanisms,
such as unpredictable, single-use challenge and clear replay handling, are in place.</t>
      <t>In following subsections, we present the benefits and limitations of intra-handshake attestation.</t>
      <!--  (If RA appraisal succeeds, client and server agree on
current transcript hash. We do not have all guarantees about
authentication and security of the connection at the point
at which the Evidence is conveyed.)  -->

<section anchor="benefits-1">
        <name>Benefits</name>
        <section anchor="sec-intra-app-changes">
          <name>No Additional Application-Level Protocol</name>
          <t>Intra-handshake attestation does not require a new application-layer protocol or message exchange.
Evidence and related metadata are conveyed within handshake via TLS extensions.
TLS is responsible for conveyance of the Evidence; it does not perform appraisal of Evidence or authorization.
Appraisal of Evidence, policy evaluation, and trust decisions are performed by application-level components that
consume the attestation properties exposed by the TLS stack. As a result, while no new application-layer protocol
is required, applications do incorporate additional trust logic to interpret attested connection properties
and make security-relevant decisions.</t>
          <t>Related to this, Markus Rudy shares his practical experience <xref target="Markus-16Jan"/>:</t>
          <blockquote>
            <t>Conveying the evidence is not enough, it needs to be verified as well
in order to end up with a trustworthy channel. We decided to integrate
verification into the handshake, too, but that has massive drawbacks:
Verification can take orders of magnitude longer than normal TLS handshakes,
and usually involves remote calls, affecting all sorts of timeouts.
However, doing the verification at the application level would require
forwarding information from the handshake (e.g. nonce), at which point
the application needs to be fully aware of the handshake protocol in
order to verify it, breaking the intended layering.</t>
          </blockquote>
        </section>
        <section anchor="avoid-extra-round-trips-for-one-time-attestation">
          <name>Avoid Extra Round Trips for One-time Attestation</name>
          <t>It is claimed that intra-handshake attestation avoids extra round trips
for use cases which require remote attestation only once
during Connection Establishment Time.</t>
          <t>However, this may only be valid in cases when the Connection Establishment
Time without remote attestation is significantly higher than the time
for generation and appraisal of Evidence, such as cross-continent.
For instance, Markus Rudy shares his practical experience <xref target="Markus-16Jan"/>:</t>
          <blockquote>
            <t>I don't think saving extra roundtrips is an appropriate design
goal when attestation is required. Generating evidence alone takes
much longer than normal network roundtrip times, not even speaking
of verification.</t>
          </blockquote>
          <t>On request, he kindly conducted an experiment and shared his
preliminary results of experiment based on
attested TLS implementation in Edgeless Systems Contrast where
Coordinator is one of the components <xref target="Markus-19Jan"/>:</t>
          <blockquote>
            <t>I did a quick experiment in our testing lab, running on the
same machine as the Coordinator:</t>
          </blockquote>
          <blockquote>
            <ul spacing="normal">
              <li>
                <t>TCP connections are local, and thus the TCP connection establishment
unsurprisingly takes only 0.5ms. But even to neighbouring nodes
in the same cluster, the TCP handshake takes below 2ms.</t>
              </li>
            </ul>
          </blockquote>
          <blockquote>
            <ul spacing="normal">
              <li>
                <t>I measured generation of evidence including the TLS session
establishment, but with these numbers I don't think it makes a lot
of difference:</t>
              </li>
            </ul>
          </blockquote>
          <blockquote>
            <ul empty="true">
              <li>
                <ul spacing="normal">
                  <li>
                    <t>SNP: Median time of 140ms from TCP SYN to TLS channel established
and evidence sent to the client.</t>
                  </li>
                </ul>
              </li>
            </ul>
          </blockquote>
          <blockquote>
            <ul empty="true">
              <li>
                <ul spacing="normal">
                  <li>
                    <t>TDX: Median time of 1020ms, same procedure. I don't know why
it is that slow, it should only be making machine-local remote
calls, if any.</t>
                  </li>
                </ul>
              </li>
            </ul>
          </blockquote>
          <blockquote>
            <ul spacing="normal">
              <li>
                <t>So far, I only managed to measure TDX verification, which adds
another 340ms. This is bound by remote HTTP requests, afaiu, and could
be optimized with locally cached collateral, CRL, etc. I'd expect SNP
to exhibit similar timing, because verification does similar remote calls.</t>
              </li>
            </ul>
          </blockquote>
          <blockquote>
            <t>AMD is probably quicker because they're trading off with the appraisal time: the AMD report is not self-contained and can be generated with only the VM and the SP, but for verification you need to fetch the VCEK from somewhere, whereas the Intel quote includes the PCK cert and possibly other things that need to be fetched from a host service, if not the internet.</t>
          </blockquote>
          <t>We summarize that in the following table:</t>
          <table>
            <name>Preliminary analysis by Markus Rudy (Median time in ms)</name>
            <thead>
              <tr>
                <th align="left">Property</th>
                <th align="left">Intel TDX</th>
                <th align="left">AMD SEV-SNP</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Generation of Evidence + TLS</td>
                <td align="left">1020</td>
                <td align="left">140</td>
              </tr>
              <tr>
                <td align="left">Appraisal of Evidence</td>
                <td align="left">340</td>
                <td align="left">not available (expected ca. 340)</td>
              </tr>
            </tbody>
          </table>
          <t>However, Yaroslav Rosomakho (as individual contributor) raises a concern <xref target="Yaroslav-22Jan"/>:</t>
          <blockquote>
            <t>The argument that avoiding an extra RTT is not a relevant goal may depend
heavily on deployment topology (LAN vs same-region vs cross-continent).</t>
          </blockquote>
          <section anchor="request-for-contributions">
            <name>Request for Contributions</name>
            <t>We invite the WG to submit their analysis results for cases such as:</t>
            <ul spacing="normal">
              <li>
                <t>within continent</t>
              </li>
              <li>
                <t>across continent</t>
              </li>
            </ul>
            <!--  Our experiments also support his practical experience. In our experience,
the generation of Evidence for Infineon Optiga SLB 9670,
a discrete hardware TPM (dTPM) implementing TPM 2.0, takes around 210 ms.
In our experience, the generation of Evidence for AMD SEV-SNP takes around
6 ms. -->

</section>
        </section>
      </section>
      <section anchor="limitations-1">
        <name>Limitations</name>
        <section anchor="limited-claims-availability">
          <name>Limited Claims Availability</name>
          <t>Since limited Claims are available at the Evidence Generation Time, it does not provide
complete security posture of the Attester, such as runtime integrity of Attester.
Examples include dynamic Claims, such as weights of trained model and contextual data
in the case of AI agents/agentic AI <xref target="I-D.jiang-seat-dynamic-attestation"/>, <xref target="Edward-20Jan"/>, <xref target="I-D.aylward-aiga-1"/>. These dynamic Claims are neither available for pre-handshake
attestation nor for intra-handshake attestation.</t>
        </section>
        <section anchor="invasive-changes-in-tls-and-security-concerns">
          <name>Invasive Changes in TLS and Security Concerns</name>
          <t>To be made secure for confidential computing, it requires invasive changes in TLS
protocol, as deep as key
schedule and adding or modifying existing handshake messages <xref target="ID-Crisis"/>, which
are explicitly out of scope of <xref target="SEAT-Charter"/>:</t>
          <blockquote>
            <t>The attested (D)TLS protocol extension will not modify the (D)TLS
protocol itself. It may define (D)TLS extensions to support its goals
but will not modify, add, or remove any existing protocol messages
or modify the key schedule.</t>
          </blockquote>
          <t>A detailed analysis of different binding mechanisms for intra-handshake attestation
has been shared with the WG <xref target="RelayAttacks"/>.</t>
        </section>
        <section anchor="state-after-connection-establishment-not-covered">
          <name>State After Connection Establishment Not Covered</name>
          <t>It provides no guarantees about the state of Attester during the Lifetime
of Connection. This is a security concern in long-lived connections where
state of Attester (at workload or platform level) may change after
Connection Establishment Time. Examples include AI agents/agentic AI
<xref target="I-D.jiang-seat-dynamic-attestation"/>, <xref target="Edward-20Jan"/>, <xref target="I-D.aylward-aiga-1"/>.
Note that session resumption is a new connection <xref target="I-D.ietf-tls-rfc8446bis"/>.</t>
        </section>
        <section anchor="high-handshake-latency">
          <name>High Handshake Latency</name>
          <t>Because of signature in Evidence generation and verification of signatures during appraisal,
this leads to high handshake latency. This may not be desirable for some applications.</t>
          <t>Markus Rudy shares his practical experience <xref target="Markus-16Jan"/>:</t>
          <blockquote>
            <t>Conveying the evidence is not enough, it needs to be verified as well
in order to end up with a trustworthy channel. We decided to integrate
verification into the handshake, too, but that has massive drawbacks:
Verification can take orders of magnitude longer than normal TLS handshakes,
and usually involves remote calls, affecting all sorts of timeouts.
However, doing the verification at the application level would require
forwarding information from the handshake (e.g. nonce), at which point
the application needs to be fully aware of the handshake protocol in
order to verify it, breaking the intended layering.</t>
          </blockquote>
          <t>As Yaroslav Rosomakho (as individual contributor) observes <xref target="Yaroslav-22Jan"/>,
note that Post-Quantum (PQ) transition may change the baseline. We argue that
while PQ is unavoidable within TLS handshake, remote attestation is avoidable
(see <xref target="sec-post-HS-need"/>).</t>
        </section>
        <section anchor="maturity-of-tees">
          <name>Maturity of TEEs</name>
          <t>With several attacks (see <xref target="sec-sec-cons"/>), attestation in
TEEs may not yet be mature enough to be integrated <em>within</em> TLS handshake.</t>
          <t>Ayoub Benaissa remarks <xref target="Ayoub-16Jan"/>:</t>
          <blockquote>
            <t>TLS might not be well suited to include this in its protocol. Not sure
TEEs are even as mature for the people to see that it should be included
right now. The plan to make it a post-handshake protocol makes more sense
right now. A future where it's incorporated into TLS might exist, but I
don't think there is enough motivation right now.</t>
          </blockquote>
        </section>
        <section anchor="amount-of-effort">
          <name>Amount of Effort</name>
          <t>Markus Rudy shares his practical experience <xref target="Markus-16Jan"/>:</t>
          <blockquote>
            <t>"Keeping attestation out of the application logic" is not as straightforward
as it sounds. In the background-check model, the attester needs to collect
evidence in response to the relying party's challenge (nonce). We were
lucky that the Golang TLS stack can be supplied with arbitrary closures
that are called during the handshake, but in my experience this is a rare
design choice and may also be difficult to implement in other languages.</t>
          </blockquote>
          <t>Ayoub Benaissa remarks <xref target="Ayoub-16Jan"/>:</t>
          <blockquote>
            <t>An intra-handshake requires much more work compared to a post-handshake.
People need to agree on how to add this as optional in TLS (we can't force
everyone to use it of course), the standard needs to be implemented by
major libraries, and then it will be available in major client/server
applications. If any of the prior steps doesn't go through, it means you
have to patch your components to make it work, which is not convenient /
less secure.</t>
          </blockquote>
        </section>
        <section anchor="difficulty-of-debugging-attestation">
          <name>Difficulty of Debugging Attestation</name>
          <t>Markus Rudy shares his practical experience <xref target="Markus-16Jan"/>:</t>
          <blockquote>
            <t>There's only so much information in a TLS alert message, and it's
definitely not enough to understand remote verification failures.
While I understand this to be a deliberate design choice by TLS,
I found this to be a hindrance for operating and debugging a large
number of services in practice.</t>
          </blockquote>
        </section>
      </section>
    </section>
    <section anchor="sec-post-HS">
      <name>Post-handshake Attestation</name>
      <t>Post-handshake attestation improves the situation further by signing the Claims
during Lifetime of Connection, i.e., at the time when it is actually required.
Hence, together with use cases requiring one-time attestation, it covers the use cases of
long-lived connections requiring re-attestation.
For post-handshake attestation, first round of remote attestation <bcp14>MUST</bcp14> be done
immediately after Connection Establishment Time, and Relying Party (RP)
<xref target="RFC9334"/> <bcp14>MUST</bcp14> not send any secure data until Evidence is successfully appraised.</t>
      <t>As Yaroslav Rosomakho (as individual contributor) proposes <xref target="Yaroslav-22Jan"/>:</t>
      <blockquote>
        <t>an explicit shim or gating layer that performs attestation after
the TLS handshake completes but before any application data is exchanged.
This is operationally distinct from both intra-handshake attestation and
fully application-integrated post-handshake attestation. Such an approach
could preserve standard TLS handshake behaviour and latency characteristics,
avoid invasive TLS changes, and still prevent application data from
flowing until attestation succeeds. It may also mitigate some of the
application-layer complexity by localizing attestation handling to a
well-defined enforcement point (e.g., a sidecar or connection gate)
rather than requiring per-protocol integration.</t>
      </blockquote>
      <t>So a promising idea is to have an attested TLS library as a layer in between
TLS implementation and application layer.</t>
      <artwork><![CDATA[
TLS (any implmentation) -> Attested TLS library -> Application Layer
]]></artwork>
      <t>In following subsections, we present the benefits and limitations of post-handshake attestation.</t>
      <section anchor="benefits-2">
        <name>Benefits</name>
        <t>In general, it allows re-authentication and re-attestation without tearing down the connection.</t>
        <section anchor="full-claims-availability">
          <name>Full Claims Availability</name>
          <t>Since all Claims are available at the time of post-handshake attestation (during
Lifetime of Connection), it provides complete security posture of the Attester.</t>
        </section>
        <section anchor="no-change-in-tls">
          <name>No Change in TLS</name>
          <t>It does not require any change in TLS protocol.</t>
        </section>
        <section anchor="state-after-connection-establishment-is-covered">
          <name>State After Connection Establishment Is Covered</name>
          <t>It provides guarantees about the state of Attester during the Lifetime of Connection.
This is particularly helpful in long-lived connections where
state of Attester may change after Connection Establishment Time.</t>
        </section>
        <section anchor="standard-handshake-latency">
          <name>Standard Handshake Latency</name>
          <t>Since the signature in Evidence generation and verification of signatures during appraisal
happen after Connection Establishment Time, there is no additional latency.</t>
          <t>Yaroslav Rosomakho (as individual contributor) shares his concern <xref target="Yaroslav-22Jan"/>:</t>
          <blockquote>
            <t>I don't think that moving latency related to attestation into after handshake
is always a good thing. In some real-time and streaming applications, a spike
after the session is established may be much more disruptive than paying a cost
during the handshake.</t>
          </blockquote>
          <t>We believe this concern can be resolved by the layering described in <xref target="sec-post-HS"/>.</t>
        </section>
        <section anchor="avoid-extra-round-trips">
          <name>Avoid Extra Round Trips</name>
          <t>Except for first round of remote attestation, post-handshake attestation outperforms the
intra-handshake attestation (one round trip), which requires re-establishing the connection
(1.5 round trip).</t>
        </section>
        <section anchor="ease-of-implementation">
          <name>Ease of Implementation</name>
          <t>Ayoub Benaissa remarks <xref target="Ayoub-16Jan"/>:</t>
          <blockquote>
            <t>We already implemented a post-handshake protocol and have a full demo
working. We were able to do this in a matter of weeks. That's because you
don't need to modify any TLS implementation, but only add a few
verification steps after the usual TLS handshake. This is almost the same
on the client and server side.</t>
          </blockquote>
          <t>Production-grade deployments, including Google STET <xref target="Keith-STET-CCC"/> and
SCONE <xref target="SoK-Attestation"/>, exist.</t>
        </section>
        <section anchor="ease-of-verification-and-audit">
          <name>Ease of Verification and Audit</name>
          <t>Post-handshake attestation has relatively easier formal analysis and
verification. The same may apply to audit.</t>
          <t>Markus Rudy remarks <xref target="Markus-16Jan"/>:</t>
          <blockquote>
            <t>(Formal) verification of a protocol and audit of its implementations
might be much easier if it ran on top of TLS. Existing proofs and
certifications would not need to be reevaluated.</t>
          </blockquote>
        </section>
        <section anchor="general-solution-for-other-protocols">
          <name>General Solution for Other Protocols</name>
          <t>In post-handshake attestation, design, verification and audit effort
will be one-time and any protocol
(e.g., Noise) which has support for exporters can then use it without
changing each and every protocol.</t>
          <t>Markus Rudy shares this requirement <xref target="Markus-16Jan"/>:</t>
          <blockquote>
            <t>It should be possible to port the general shape of a post-handshake
attested TLS protocol to other protocols that provide secure channels
and session binding (Noise comes to mind).</t>
          </blockquote>
        </section>
      </section>
      <section anchor="limitations-2">
        <name>Limitations</name>
        <section anchor="sec-post-app-changes">
          <name>Impact on Application Layer</name>
          <t>Post-handshake attestation may require changes at the application layer. However, changes at
the application layer do not necessarily imply modifications to application business logic
or data exchange protocols. Attestation-related functionality may be realized via application-level
signalling (Exported Authenticators <xref target="RFC9261"/>) and trust logic, which may be implemented in
intermediary components (e.g., proxies, sidecars, or middleware) on both client and server sides.
These components are responsible for exchanging and appraising attestation evidence and enforcing
trust or authorization decisions before application data is processed. This is analogous to common
production deployments in which TLS termination and certificate handling are performed by a
fronting proxy, while the application itself remains unchanged and resides behind it.</t>
        </section>
      </section>
    </section>
    <section anchor="sec-post-HS-need">
      <name>Need for Post-handshake Attestation</name>
      <t>We argue that post-handshake attestation is unavoidable (e.g., re-attestation to
track changes after Connection Establishment Time for long-lived connections).
Use cases where pre-handshake attestation and intra-handshake attestation are
insufficient include AI agents/agentic AI <xref target="I-D.jiang-seat-dynamic-attestation"/>.</t>
      <t>Intra-handshake attestation only adds unnecessary complexity which is avoidable.
All identified use cases <xref target="I-D.mihalcea-seat-use-cases"/> where intra-handshake
attestation seems suitable can be covered by post-handshake
attestation (by doing attestation round immediately after Connection Establishment Time)
but not the other way around.</t>
      <section anchor="iot-constraints">
        <name>IoT Constraints</name>
        <t><xref target="SEAT-Charter"/> includes TLS client as RATS Attester. Client could be a low-power IoT device.
There are use cases where periodic
or on-demand attestation is required, such as periodic
attestation for long-lived, low-power IoT devices or in IoT
swarms that need to synchronize software versions before
coordinated operations or after configuration updates.</t>
        <t>Moreover, we note some observations from LAKE WG:</t>
        <t>Michael Richardson shares his insight <xref target="MCR-LAKE"/>:</t>
        <blockquote>
          <t>I have a half-written document on putting EAT into the full BRSKI protocol.
A reason that I stopped is that I realized that doing security posture
evaluation at onboarding time (only) wasn't enough.  It has to be done
regularly.  So having a protocol used at onboarding time and another one
during normal operation meant that the onboarding one would have bugs that
never get fixed, since the code only runs once.</t>
        </blockquote>
        <t>He further shares <xref target="MCR-LAKE2"/>:</t>
        <blockquote>
          <t>My contention, which I think the group agreed with, is that one probably
wants to do continuous assurance, that is, to repeat the remote attestation.</t>
        </blockquote>
        <blockquote>
          <t>Do you want to have two protocols and two code paths? (redundant code in a
constrained device?).  I suggested that <em>maybe</em> the remote attestation should
use it's own /.well-known Path, and that it would just occur after
onboarding, and regularly onwards.  Maybe it's weird to onboard a device only
to kick it out again immediately because it failed remote attestation, but
given continuous assurance, this could happen at any time.</t>
        </blockquote>
        <t>Göran Selander observes <xref target="Goran-LAKE"/>:</t>
        <blockquote>
          <t>Indeed, if the authentication procedure is repeated at a later stage, for
whatever reason, e.g. key rotation, it should be possible to repeat the attestation procedure.</t>
        </blockquote>
      </section>
    </section>
    <section anchor="existing-implementations">
      <name>Existing Implementations</name>
      <section anchor="intra-handshake-attestation-1">
        <name>Intra-handshake Attestation</name>
        <t>Prominent implementations of intra-handshake attestation are all vulnerable to
relay attacks <xref target="RelayAttacks"/>. Some of them are abusing the extensions of TLS, such as
SNI and ALPN, for conveyance of attestation nonce <xref target="RelayAttacks"/>.</t>
      </section>
      <section anchor="post-handshake-attestation">
        <name>Post-handshake Attestation</name>
        <t>Google <xref target="Keith-STET-CCC"/>, Microsoft <xref target="Stunes-vTPM-CCC"/>, and SCONE <xref target="SoK-Attestation"/>
are all using post-handshake attestation.</t>
      </section>
    </section>
    <section anchor="sec-sec-cons">
      <name>Security Considerations</name>
      <t>Most of the document is about security considerations. Also,
Security Considerations of <xref target="RFC9334"/> and <xref target="I-D.ietf-tls-rfc8446bis"/> apply. In addition:</t>
      <ul spacing="normal">
        <li>
          <t>Pre-handshake attestation is vulnerable to <strong>replay</strong> <xref target="RA-TLS"/> and <strong>diversion</strong>
            <xref target="ID-Crisis"/> attacks. Moreover, pre-handshake attestation leads to a single point of
failure.</t>
        </li>
        <li>
          <t>Without significant changes to the TLS protocol: Intra-handshake attestation is
vulnerable to <strong>diversion</strong> attacks <xref target="ID-Crisis"/>. We reported these attacks to TLS WG in
February 2025 <xref target="Usama-TLS-26Feb25"/>. A formal proof is available
<xref target="ID-Crisis-Repo"/> for further research and
development. Since reporting to TLS WG, these attacks have been practically
exploited in <eref target="https://tee.fail/">TEE.fail</eref>, <eref target="https://wiretap.fail/">Wiretap.fail</eref>, and <eref target="https://badram.eu/">BadRAM</eref>.
More recently, we found that intra-handshake attestation also does not bind the Evidence
to the application traffic secrets, resulting in <strong>relay</strong> attacks <xref target="RelayAttacks"/>.
A detailed analysis of binding mechanisms is available at <xref target="RelayAttacks"/>.</t>
        </li>
        <li>
          <t>No attacks on post-handshake attestation are currently known. Post-handshake attestation
avoids replay attacks by using fresh attestation nonce. Moreover, it avoids diversion and relay attacks
by binding the Evidence to the underlying TLS connection, such as using Exported Keying Material (EKM)
<xref target="I-D.ietf-tls-rfc8446bis"/>, as proposed in Section 9.2 of <xref target="ID-Crisis"/>.
<xref target="RFC9261"/> and <xref target="RFC9266"/> provide mechanisms for such bindings. Efforts for a formal proof
of security of post-handshake attestation are ongoing.</t>
        </li>
      </ul>
      <section anchor="exploit-of-sensitive-hardware-level-information">
        <name>Exploit of Sensitive Hardware-level Information</name>
        <t>From the view of the TLS server, post-handshake attestation offers better security
than intra-handshake attestation when the server acts as the Attester. In intra-handshake
attestation, due to the inherent asymmetry of the TLS protocol, a malicious TLS client
could potentially retrieve sensitive hardware-level information from the Evidence <strong>without
the client's trustworthiness (i.e., authentication) first being established by the server</strong>.
This information (e.g., vulnerable firmware version) can be exploited for attacks.
In post-handshake attestation, the server can ask for client authentication and only
send the Evidence after successful client authentication.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC9334">
          <front>
            <title>Remote ATtestation procedureS (RATS) Architecture</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="D. Thaler" initials="D." surname="Thaler"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="N. Smith" initials="N." surname="Smith"/>
            <author fullname="W. Pan" initials="W." surname="Pan"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>In network protocol exchanges, it is often useful for one end of a communication to know whether the other end is in an intended operating state. This document provides an architectural overview of the entities involved that make such tests possible through the process of generating, conveying, and evaluating evidentiary Claims. It provides a model that is neutral toward processor architectures, the content of Claims, and protocols.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9334"/>
          <seriesInfo name="DOI" value="10.17487/RFC9334"/>
        </reference>
        <reference anchor="RFC9261">
          <front>
            <title>Exported Authenticators in TLS</title>
            <author fullname="N. Sullivan" initials="N." surname="Sullivan"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>This document describes a mechanism that builds on Transport Layer Security (TLS) or Datagram Transport Layer Security (DTLS) and enables peers to provide proof of ownership of an identity, such as an X.509 certificate. This proof can be exported by one peer, transmitted out of band to the other peer, and verified by the receiving peer.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9261"/>
          <seriesInfo name="DOI" value="10.17487/RFC9261"/>
        </reference>
        <reference anchor="RFC9266">
          <front>
            <title>Channel Bindings for TLS 1.3</title>
            <author fullname="S. Whited" initials="S." surname="Whited"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>This document defines a channel binding type, tls-exporter, that is compatible with TLS 1.3 in accordance with RFC 5056, "On the Use of Channel Bindings to Secure Channels". Furthermore, it updates the default channel binding to the new binding for versions of TLS greater than 1.2. This document updates RFCs 5801, 5802, 5929, and 7677.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9266"/>
          <seriesInfo name="DOI" value="10.17487/RFC9266"/>
        </reference>
        <reference anchor="Tech-Concepts" target="https://www.researchgate.net/publication/396199290_Perspicuity_of_Attestation_Mechanisms_in_Confidential_Computing_Technical_Concepts">
          <front>
            <title>Perspicuity of Attestation Mechanisms in Confidential Computing: Technical Concepts</title>
            <author initials="M. U." surname="Sardar">
              <organization/>
            </author>
            <date year="2025" month="October"/>
          </front>
        </reference>
        <reference anchor="I-D.ietf-tls-rfc8446bis">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
              <organization>Independent</organization>
            </author>
            <date day="13" month="September" year="2025"/>
            <abstract>
              <t>   This document specifies version 1.3 of the Transport Layer Security
   (TLS) protocol.  TLS allows client/server applications to communicate
   over the Internet in a way that is designed to prevent eavesdropping,
   tampering, and message forgery.

   This document updates RFCs 5705, 6066, 7627, and 8422 and obsoletes
   RFCs 5077, 5246, 6961, 8422, and 8446.  This document also specifies
   new requirements for TLS 1.2 implementations.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-rfc8446bis-14"/>
        </reference>
        <reference anchor="ID-Crisis" target="https://www.researchgate.net/publication/398839141_Identity_Crisis_in_Confidential_Computing_Formal_Analysis_of_Attested_TLS">
          <front>
            <title>Identity Crisis in Confidential Computing: Formal Analysis of Attested TLS</title>
            <author initials="M. U." surname="Sardar">
              <organization/>
            </author>
            <author initials="M." surname="Moustafa">
              <organization/>
            </author>
            <author initials="T." surname="Aura">
              <organization/>
            </author>
            <date year="2025" month="November"/>
          </front>
        </reference>
        <reference anchor="RA-TLS" target="https://www.researchgate.net/publication/385384309_Towards_Validation_of_TLS_13_Formal_Model_and_Vulnerabilities_in_Intel's_RA-TLS_Protocol">
          <front>
            <title>Towards Validation of TLS 1.3 Formal Model and Vulnerabilities in Intel's RA-TLS Protocol</title>
            <author initials="M. U." surname="Sardar">
              <organization/>
            </author>
            <author initials="A." surname="Niemi">
              <organization/>
            </author>
            <author initials="H." surname="Tschofenig">
              <organization/>
            </author>
            <author initials="T." surname="Fossati">
              <organization/>
            </author>
            <date year="2024" month="November"/>
          </front>
        </reference>
        <reference anchor="RelayAttacks" target="https://mailarchive.ietf.org/arch/msg/seat/x3eQxFjQFJLceae6l4_NgXnmsDY/">
          <front>
            <title>Relay Attacks in Intra-handshake Attestation for Confidential Agentic AI Systems</title>
            <author initials="M. U." surname="Sardar">
              <organization/>
            </author>
            <date year="2026" month="January"/>
          </front>
        </reference>
        <reference anchor="I-D.jiang-seat-dynamic-attestation">
          <front>
            <title>Dynamic Attestation for AI Agent Communication</title>
            <author fullname="Yuning Jiang" initials="Y." surname="Jiang">
         </author>
            <author fullname="Wangdonghui" initials="" surname="Wangdonghui">
         </author>
            <date day="13" month="November" year="2025"/>
            <abstract>
              <t>   This document describes a use case for conveying remote attestation
   information in association with Transport Layer Security (TLS)
   sessions in the context of AI agent communication.  It focuses on
   long-lived secure channel sessions where an AI agent runtime posture,
   covering the platform Trusted Computing Base (TCB), agent manifest
   (models, tools and policies) and committed runtime context, can
   change frequently and unpredictably.  The document highlights
   requirements for dynamic attestation so that relying parties can base
   authorization decisions on the current runtime posture of the
   communicating agent.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-jiang-seat-dynamic-attestation-00"/>
        </reference>
        <reference anchor="SEAT-Charter" target="https://datatracker.ietf.org/wg/seat/about/">
          <front>
            <title>Secure Evidence and Attestation Transport (SEAT): Charter for Working Group</title>
            <author initials="" surname="IETF">
              <organization/>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="MCR-LAKE" target="https://mailarchive.ietf.org/arch/msg/lake/RseQknOug41sTzW7xBJ60oRdvq0/">
          <front>
            <title>Re: Comments for remote attestation over EDHOC</title>
            <author initials="" surname="Michael Richardson">
              <organization/>
            </author>
            <date year="2024" month="May"/>
          </front>
        </reference>
        <reference anchor="MCR-LAKE2" target="https://mailarchive.ietf.org/arch/msg/lake/o2oujiDacHm2m9a5y7W50oUsY7o/">
          <front>
            <title>Evaluation of attestation results by EDHOC clients</title>
            <author initials="" surname="Michael Richardson">
              <organization/>
            </author>
            <date year="2024" month="June"/>
          </front>
        </reference>
        <reference anchor="Goran-LAKE" target="https://mailarchive.ietf.org/arch/msg/lake/Bb3eTcQxDA-F1AYJ0hZZy3p9wpQ/">
          <front>
            <title>Re: Comments for remote attestation over EDHOC</title>
            <author initials="" surname="Göran Selander">
              <organization/>
            </author>
            <date year="2024" month="May"/>
          </front>
        </reference>
        <reference anchor="Keith-STET-CCC" target="https://github.com/CCC-Attestation/meetings/blob/main/materials/KeithMoyer_STET.pdf">
          <front>
            <title>Split-Trust Encryption Tool Attested Session Handling</title>
            <author initials="" surname="Keith Moyer">
              <organization/>
            </author>
            <date year="2022" month="March"/>
          </front>
        </reference>
        <reference anchor="Stunes-vTPM-CCC" target="https://www.youtube.com/watch?v=J7SibeZmQsE">
          <front>
            <title>Azure vTPM Attestation and Binding</title>
            <author initials="" surname="Mike Stunes">
              <organization/>
            </author>
            <date year="2025" month="July"/>
          </front>
        </reference>
        <reference anchor="SoK-Attestation" target="https://www.researchgate.net/publication/367284929_SoK_Attestation_in_Confidential_Computing">
          <front>
            <title>SoK: Attestation in Confidential Computing</title>
            <author initials="M. U." surname="Sardar">
              <organization/>
            </author>
            <author initials="T." surname="Fossati">
              <organization/>
            </author>
            <author initials="S." surname="Frost">
              <organization/>
            </author>
            <date year="2023" month="January"/>
          </front>
        </reference>
        <reference anchor="Ayoub-16Jan" target="https://mailarchive.ietf.org/arch/msg/seat/8eynK9ky5F-TcnL_UPbSRDKuK1E/">
          <front>
            <title>Re: New Version Notification for draft-usama-seat-intra-vs-post-00.txt</title>
            <author initials="" surname="Ayoub Benaissa">
              <organization/>
            </author>
            <date year="2026" month="January"/>
          </front>
        </reference>
        <reference anchor="Markus-16Jan" target="https://mailarchive.ietf.org/arch/msg/seat/Pxr_12v6MIQIzGFTUdx04aVZYpM/">
          <front>
            <title>Re: New Version Notification for draft-usama-seat-intra-vs-post-00.txt</title>
            <author initials="" surname="Markus Rudy">
              <organization/>
            </author>
            <date year="2026" month="January"/>
          </front>
        </reference>
        <reference anchor="Usama-TLS-26Feb25" target="https://mailarchive.ietf.org/arch/msg/tls/Jx_yPoYWMIKaqXmPsytKZBDq23o/">
          <front>
            <title>Impersonation attacks on protocol in draft-fossati-tls-attestation (Identity crisis in Attested TLS) for Confidential Computing</title>
            <author initials="" surname="Muhammad Usama Sardar">
              <organization/>
            </author>
            <date year="2025" month="February"/>
          </front>
        </reference>
        <reference anchor="ID-Crisis-Repo" target="https://github.com/CCC-Attestation/formal-spec-id-crisis">
          <front>
            <title>Identity Crisis in Confidential Computing: Formal analysis of attested TLS protocols</title>
            <author initials="" surname="Muhammad Usama Sardar">
              <organization/>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="I-D.mihalcea-seat-use-cases">
          <front>
            <title>Use Cases and Properties for Integrating Remote Attestation with Secure Channel Protocols</title>
            <author fullname="Ionuț Mihalcea" initials="I." surname="Mihalcea">
              <organization>Arm</organization>
            </author>
            <author fullname="Muhammad Usama Sardar" initials="M. U." surname="Sardar">
              <organization>TU Dresden</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <author fullname="Tirumaleswar Reddy.K" initials="T." surname="Reddy.K">
              <organization>Nokia</organization>
            </author>
            <author fullname="Yuning Jiang" initials="Y." surname="Jiang">
         </author>
            <author fullname="Meiling Chen" initials="M." surname="Chen">
              <organization>China Mobile</organization>
            </author>
            <date day="19" month="January" year="2026"/>
            <abstract>
              <t>   This document outlines use cases and desirable properties for
   integrating remote attestation (RA) capabilities with secure channel
   establishment protocols, with an initial focus on Transport Layer
   Security (TLS) v1.3 Handshake.  Traditional peer authentication in
   TLS establishes trust in a peer's network identifiers but provides no
   assurance regarding the integrity of its underlying software and
   hardware stack.  Remote attestation addresses this gap by enabling a
   peer to provide verifiable evidence about its current state,
   including the state of its trusted computing base (TCB).  This
   document explores specific use cases, such as confidential data
   collaboration and secure secrets provisioning, to motivate the need
   for this integration.  From these use cases, it specifies a set of
   essential properties the protocol solution must have, including
   cryptographic binding to the TLS connection, evidence freshness, and
   flexibility to support different attestation models.  This document
   is intended to serve as an input to the design of protocol solutions
   within the SEAT working group.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-mihalcea-seat-use-cases-01"/>
        </reference>
        <reference anchor="Markus-19Jan" target="https://mailarchive.ietf.org/arch/msg/seat/iAeCQLna8FdfoQGV3P-mEHUobn4/">
          <front>
            <title>Re: New Version Notification for draft-usama-seat-intra-vs-post-00.txt</title>
            <author initials="" surname="Markus Rudy">
              <organization/>
            </author>
            <date year="2026" month="January"/>
          </front>
        </reference>
        <reference anchor="Mike-19Jan" target="https://lists.confidentialcomputing.io/g/attestation/message/276">
          <front>
            <title>Re: Requesting review of IETF draft on categories for attested TLS</title>
            <author initials="" surname="Mike Bursell">
              <organization/>
            </author>
            <date year="2026" month="January"/>
          </front>
        </reference>
        <reference anchor="Yaroslav-22Jan" target="https://mailarchive.ietf.org/arch/msg/seat/gQTdMo0OexLffcB1x39M4J57Ug4/">
          <front>
            <title>Re: New Version Notification for draft-usama-seat-intra-vs-post-02.txt</title>
            <author initials="" surname="Yaroslav Rosomakho">
              <organization/>
            </author>
            <date year="2026" month="January"/>
          </front>
        </reference>
        <reference anchor="Edward-20Jan" target="https://mailarchive.ietf.org/arch/msg/rats/TFzusdvG5d0PSl5m0dY3nAeeUyQ/">
          <front>
            <title>[Use Case] RATS for Hardware-Enforced State Management in Autonomous Agents (AIGA)</title>
            <author initials="" surname="Edward Aylward">
              <organization/>
            </author>
            <date year="2026" month="January"/>
          </front>
        </reference>
        <reference anchor="I-D.aylward-aiga-1">
          <front>
            <title>AI Governance and Accountability Protocol (AIGA)</title>
            <author fullname="Edward Richard Aylward Jr" initials="E. R." surname="Aylward">
         </author>
            <date day="2" month="November" year="2025"/>
            <abstract>
              <t>   This document specifies the AI Governance and Accountability (AIGA)
   Protocol version 1.0, a practical, economically viable, and
   technically enforceable framework for governing autonomous AI
   agents.  AIGA 1.0 is designed to address real-world deployment
   constraints, adversarial agent scenarios, and economic incentive
   alignment.

   The protocol is founded on a Tiered Risk-Based Governance model,
   applying proportional oversight to agents based on their
   capabilities.  All agents are governed by an Immutable Kernel
   Architecture which provides a non-modifiable Trusted Computing Base
   (TCB) for enforcing policy.  This is combined with Action-Based
   Authorization, where critical operations require real-time approval.

   To solve the single-point-of-failure problem, the protocol uses a
   Federated Authority Network of regional, cross-validating hubs and
   provides a Network-Level Quarantine Protocol for enforcement.  The
   entire framework is designed around Economic Incentive Alignment,
   making compliance the most economically rational choice for
   operators.

   For high-assurance (T3-T4) scenarios, AIGA 1.0 specifies advanced,
   redundant mechanisms including Multi-Vendor TEE Attestation
   (M-TACE), AI "Warden Triumvirate" Triage, Human Review Board (HRB)
   Multi-Signature, Peer Consensus Failsafe &amp; Identity Rotation, and
   Double Ratchet Cryptography.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-aylward-aiga-1-00"/>
        </reference>
        <reference anchor="RFC7519">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7519"/>
          <seriesInfo name="DOI" value="10.17487/RFC7519"/>
        </reference>
        <reference anchor="RFC9421">
          <front>
            <title>HTTP Message Signatures</title>
            <author fullname="A. Backman" initials="A." role="editor" surname="Backman"/>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <author fullname="M. Sporny" initials="M." surname="Sporny"/>
            <date month="February" year="2024"/>
            <abstract>
              <t>This document describes a mechanism for creating, encoding, and verifying digital signatures or message authentication codes over components of an HTTP message. This mechanism supports use cases where the full HTTP message may not be known to the signer and where the message may be transformed (e.g., by intermediaries) before reaching the verifier. This document also describes a means for requesting that a signature be applied to a subsequent HTTP message in an ongoing HTTP exchange.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9421"/>
          <seriesInfo name="DOI" value="10.17487/RFC9421"/>
        </reference>
        <reference anchor="SAML" target="https://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf">
          <front>
            <title>Assertions and Protocols for the OASIS Security Assertion Markup Language (SAML) V2.0</title>
            <author initials="" surname="Cantor et al">
              <organization/>
            </author>
            <date year="2005" month="March"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 743?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>We gratefully thank the following:</t>
      <ul spacing="normal">
        <li>
          <t>Peg Jones for review of early draft before submission of -00</t>
        </li>
        <li>
          <t>Paul Wouters for review of section 4 of -00</t>
        </li>
        <li>
          <t>Ayoub Benaissa for review of -00 and sharing his practical experiences</t>
        </li>
        <li>
          <t>Markus Rudy for review of -00 and sharing his practical experiences and
for conducting experiments with TDX and SNP on our request</t>
        </li>
        <li>
          <t>Mike Bursell (Executive Director, Confidential Computing Consortium) for review of -01 <xref target="Mike-19Jan"/></t>
        </li>
        <li>
          <t>Yaroslav Rosomakho (as individual contributor) for detailed review of -02 <xref target="Yaroslav-22Jan"/></t>
        </li>
      </ul>
    </section>
    <section numbered="false" anchor="contributors">
      <name>Contributors</name>
      <t>Pavel Nikonorov (GENXT / IIAP NAS RA) contributed text in <xref target="sec-intra-app-changes"/> and <xref target="sec-post-app-changes"/>.</t>
    </section>
    <section numbered="false" anchor="history">
      <name>History</name>
      <t>-01</t>
      <ul spacing="normal">
        <li>
          <t>Added scope section to address comments of Paul Wouters</t>
        </li>
        <li>
          <t>Added comments of Ayoub Benaissa as quotes</t>
        </li>
        <li>
          <t>Added some subsections to incorporate practical experiences of Markus Rudy</t>
        </li>
        <li>
          <t>Extended security considerations</t>
        </li>
      </ul>
      <t>-02</t>
      <ul spacing="normal">
        <li>
          <t>Added experiments by Markus Rudy</t>
        </li>
        <li>
          <t>Removed our experiments</t>
        </li>
        <li>
          <t>Added reference to use cases document to address comment of Mike Bursell</t>
        </li>
      </ul>
      <t>-03</t>
      <ul spacing="normal">
        <li>
          <t>Added advantages of pre-handshake attestation</t>
        </li>
        <li>
          <t>Added references for limited Claims for intra-handshake attestation</t>
        </li>
        <li>
          <t>Added Yaroslav's proposal in post-handshake attestation</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+196XLbSLbmfzxFXtePkjQktdkuW9NdfWlJtlmWZFmSy11d
0aEAgSSJEhYWFlEst+dZ5inmAWZebM53TmYC4GaXr2cibsStiG5TIJDIPHmW
72zJbrfrlVEZ6yP16DLX3Y4apGXud5WfhuoyK8ruhD4VE/9Oq35Z6qL0yyhL
H3n+cJjre3pK7r8vulO6+5EX+KUeZ/n8SEXpKPO8MAtSP6Hhw9wfld2q8BO/
W2i/7EbNB7t7h15RDZOoKGj4cj6lJwanNy+V+k75cZHRi6I01FNN/5eWjzrq
kQ6jMssjP8Yfg/4L+ifL6dPVzctHXlolQ50feSHN5sgLsrTQaVEVR6rMK+3R
tA89P9c+jXqtgyqPyvkjb5bld+M8q6b2qlan9xG9LtBMjcby1U3up8U0y2nB
d3pOT4ZHnuqqXCdZSXfXd+Lqzdm12u8d4qN8o0Nc8+51WtHslPqKtyolNHr0
gWYdpWP1CmPgeuJHMV0Hif890uWol+VjXPfzYELXJ2U5LY52d3EbLkX3umdv
28WF3WGezQq9iwHw3DgqJ9WQnkyqiZ8kfmj30M9DP99d3ko8FPuYdfN1qx7u
ydi9KFsxzO5mhulNyiR+5Hl+VU6yHNSn1yo1quJY+O3RuXmleo8h1DW/8hHf
RWv10+gPpuqRunmvTnJdEM35S20oaKd8y1PoyZT/vay6odzcCzW9P83yhMa5
p430wPHuL6WuXh4/Pzx8fKTyUYAP5tLB0325RB/cpaf20lO6dKODSfc4IxaY
lsURT0o5IdV5MY2CilhWZaMWe5zTY7SsIilI9hQ9PwIflSQi9EcyrUrikyMe
PI0CvihvEJoolhX1NigzEh11sHfwpGNe7edjTZtp93I2m/WIBBrcMqaHeqku
d6fVMKZRMZHdw+dP958/P3i+d9uY7W02um3M9rae7W2U3jZne+tme+sme2sn
K1Nyu87/dWm9JNvnPfW+Z/aZvhl0T5izu2VcdIm4zx4/fjqMmJ6Dk+5xHhWR
Ia6l7YAnQISVLzdR8SU2Olb91I/nuNVthci2kFQoepHd66RN0q+g6LNnh8/3
H+/f2jneyhw30E6meGunWNNfh7dQP19Kx/Y351lFOzjy21/c9FS/ynHxqt+l
wdt0vclmNFihfvbjKBReJXoZtWhJeZ6FOmaV93MVpzr3h1EclZHmbSAjo+Pv
CzO6usyzMguyuEnm/cMWpR9/LaWfPTl89vhw7/mtmfVtPWuQkF5/u39oicuT
vqVJ3y5MGvtiJn0rk761k/4awvd76iLSSdS++rqnbopgko10Go2XNuRlVhQ0
beyJjv057b0f3C2qE/5Kme8MpUnJrjT6irRbWyD6Y3wIVH+grufEWElbl+zv
q5/8tPLzOXbk6Rp1st4SJcWYDcPuw6F+9/Dyt3cvfzoLtK+fxo9vL8Z/T5Pi
5JfdFQphvT74LfLTsViTcE52Igq6DWONx69P+zfd44mflzpfoNUXm2e1hVG2
j5QZhwm3ZKgdmTaoWrrBp/0I7nRe02ZmqOIPs6pctX5LAAAounJ+fNU96785
Xdr6I2i0hLaw4BkuoxdFApWr05PXb4/bM36izv15Q8z+5KbGxFm7V4V+d5e+
rcaP94ubPz788PDip6d72VV4//vepkWdR2Q3SFNc4V+ST2Ast8SDhTWe3vtx
5TROc2WkBKqYFj6cy/pUEEegRGudT9RPVar/g+vMDrLqt+jED14nB8lz/8n8
hw9P9rL3xS8/ZH96na8y4rFvvZnPvsFmvhge6pvg3cNJv/tyv//LT3uTf/xj
fjh9Ppu+27TIV//nf9GC1DVpIQL2kNI3mjBh9/rmlKTw+HhRAqekXbs3OZkg
dZoG+XwqgpdlcW1+rzX7EOo1DRmTxLVVEjiXZo7lHqxZrkGlQZbs0hS6DRHf
TbSGbS12h3E2BF3oEo0LN6TY5amfZ3Od32L+vWk42rB0vlvx7VA7JTFa0b2/
uTxfse7+H1A8+LKlcKCAXpBbtLjIg+fEt/H8cxhuTuqjGmpe6Mwvg8nf7v/6
0w/X0VD/I3lXnG7kTbIMMmXMPXvTJFLb9tOXR61JrwVVTWPeMBuHX2vIn/5w
8OwxodBbmkILea6FTF9jmVuGtnH9mq7n5KfQ1T4Retjdf0qLWiG1F3qmfiaY
DNpcZGU0MgtgKf6c07zXKx/KNoM//UY295mep2+e382fvOzeBOnZ7fvL4fXV
yZvqzf7pJonmxaoXOvXJlQcgJHG7q4r/dMu/fMhv9w/un54P3g3+ePXy5n34
sPfY//kfv0zPN2ptXq26qsI5fcGeJ8Bf9+DpSz08eLJAgEEypaVnqRFng8Lo
49RgRUiLEGEkTMbOTFOpbzmnJXBOS9MT2V5GbQsSZ5XGU0VTzC3p1imOzaSj
2e3+9HA7v8x++XA+eOP//vfkspiXb/7x4uT3g8PN9m6Vu9701bpXepotEvBP
e2x+w2NrRmMcyYsvxWYbzASHAeJuMdVBNwq7sjNfs3aCrEk08WNCvSIAVaG7
gV9oxvFWtJ7//xGt599ItKK+Pn53lvrPXoaj7N2rnw8vu8np6/fZMH385aIF
E7R25Vf694o2A3A71/cR0YF2m8OJvGxImIlTwr8EOfwl5/1PrTqOirIgVqhZ
L7Cch+gWUaAFIkiUx3r34Ienn7OxL6q80DFcxl98siaxf989OPh/sNsHS7t9
cPCNdnv87iY8z/be6oez0Sh4sf9w+Pz88U9Pfng/3rjbdr3qKiuyxL+bZPT9
aQiXvHuwt0yCX98XWh2TZPxTXfVvrnnVr+lmekB3TxGYC4ANaQs0cVJK9AdW
Zm1ZlVmaJRnxFvuzhdrqD171t785OXK/LHZvXv5RFeH9qyfh3uV1/CTZC385
TPtav59vBMqycrKuMf41qsGXv7p+NPa7+ybk+MOT/ec2+vj4gK9e98/PFhFl
Uegc7FFIpN8qP6ZbOdHqbf96cK1sdFy5+0UMp+qMHOmKqEi+Lo2+rX4+6O2t
Q9p7a93bLCh6mQ/lnk11yuQqzCt3iVnj3Xsalj91g4w2kv7qZsVnkPWxn5a0
Cl0qP+55Xq9H/9ftdpU/LOBLl553MyEDQC+vmAemwJHYd58m+ABe4NCqfig1
Y+uWeVAzwPZl76rj5Xqk85yYrMyUX7Q0Sk8NSk5j1O+aRONJN9b3um2ShjrV
o6iUXYmjJJLR+TvtBxOXX+kohLkJ5NOIjXBNc0YqWojl+Au+w7Sd32l8TRRj
kiVRGMba877juFAWVgEnNby//Bt9yRa1ZC1rNzT3ZyaoT4YqJ31IJCzZRAb+
MNu9y/0kzGYpwrEkLESefFc/+Mk01oWJ99M3D7TbJIg6JxNaavqSltyliaUh
mJ0sE25A+keHvST0sJIVNnnphZ69SZimqCVUp7v2PQSu0rBbBBNN01Pd7o/e
C9IpISxGVuXCEwWJ93oc8fFjK3z/6VPHm2kVxD55paN5+17aoIykLdcaaZum
UTryvJ0NW0tfbtjcDnYXz2/a30G6iXWgAoponGJzaYXHsR8lxfLaMATpVTKi
9ICHJbnxOmo2iWK9YRLKn5I/L8/CTpPx0j1vMQDZDtr8XkW5eWJ5emXmDTXJ
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
+ou0IcJyJGOhwekk41ahmS+9bJKfnmUN8MzIapYJQaZ+OSn+prZIvEk9+axN
Qo7b+Z473AilECy+f9sGJ5AaGI8FqPMsdwiUDfXOmvkZt8ATrwT55Vmqdnuc
aEBfXKoufdBJcr1S6CN7+xsDoiCojGB7NQd0DGAwHEjE5R906uEgp/nQvGim
o5y1inmO88dYBrMBWszu0A8KJxRHI41xrlZT29uYBd0wkkLmVXEkUvfmSM11
G8nRL2FWCWPyUT8sC7R5C7+T0qyEq38SZlmt0L3g78gU8LQj/q4FUdT3lA+Y
4vdyABLVDZy5x/lGM6I5S43olo7ikkIUcxPH1Dne1c5dgzMXjrwwLZBAcM47
Hyw4+WwLNxzic4mUUMpwZuFI081n05jznmJ1b365iyfr5fyDWLbibqlenJSY
S6YlMgR7SqZgti6nt6eZGWvoXV8MJERzdnnRWXGmSbuhQioxVtSqbwK4JsC0
HFvq4MeE8gy2EsGl9k/N4Gvuv1gXe/IsoWSdmw+N/q7Vx8EnmJp9tPDbVi6i
6OEcgTaTk3HWLrI5kGYFfGMkcjjjIut4a14k3RV/4ixEDmdxoNxmArgl7HIt
zsYJrk2eUTs7ctDSzg42jX/tzbx3ZyeMDDLZ2fFajSKWx/CTehZxrMf2rmzc
N2c+uaO/PFMYg/Mw1QeTsmucptA8TM8m7K2eP1qSrPY6vcV1NlbTkJHGqjjy
K62urPnhENsbTTnkh1fwxlu/NUJjLP1UCsbq29Akh+zETTC5wyYx+ZdBiKIc
1DeG2v42EIf5QsQXsinYiySYrb3M0aS0ZVqdhfkKbEAniauUIouAkoksMkcl
/3pzetrDBvxzy54uXmrNV3a3O+rXDwSJS3+6cMuscRW3gVN+feGHV/3z+qah
H+Z+0tPVLjmBYBGFo7ZxOgYjU1vB9LnTQ1AJ4HKZiHS1+ug8wxRN95sGg4cI
8aNpFh3TOimF5szrwuprdeS6rp4VvTzNHYXpWaHzdpCe9Rs/jbPhPPHWQdSM
G3qLCrPZKWSOVjGnpNl3kJsnmo5PYltWzE2BjUp7PouTDHcSlhvRoxHt2ltN
jIb4XMcm9UTsyTXKtNyxbzwhFxR7Iz0a5+anx9TW6ZvzbW+DkuOGN1MZxIx7
bXzT570DUZhNGfaaUTajP82Fp3zmu8RUF3qyeK5mnaTVpELZ/LpKS449rpqr
j2L7zI6St5hJxwBSHyJ9eOxac00/yaj7nQ/pkxjU5YjmiGvusTA/A1OfQZGL
zt2Q4kMXGjxKTlfZKXuc39wkdO5AHHugHY4JNb32tWM+WBrEa2HGsHIcEqUT
aYfzizlhzzKfN1fS6GpUROQoiIAu66CALWWyx6VyYV+Zc9q1cESctIm4sqfE
ce7Ojk0c1KkxAtN1e4/EjrdMmWELeG6bxOtQc76hkVQ2aV6h2s6OLWZozMQE
3RpmicZKmgGAbRvUqfW0+X0fNrafy8o0dg3j+MWdYDUTXVmumWEvgav8WgSS
IENd1rd6BEFMg/5FfxEtLfxECbzqNJM7fQkN2p/oQFE9RukHUHikc8ccsCW8
JTWqOvzroxGZAY2zBD7A+yStIWVyYOS79kkLAn30WP1Erqj9JUkrOprdKPml
ARNorn+zHTd09/bwuE/r/UDMAeFpj2CKndTj+u6FbHX7frrFnSrE3bdrypYL
GqiZn/rKUaSEULA5B8G587fu9eeqV5w3wYD54tL+LIg56QSTaPxqE7IYpDNY
uk7I5AdlRvpm9e+T8f4DkFTJ9tLs9xFvcL93RYh8588WhfJvQFmb3Bz6YEWd
ijmm3j69hpUufaiJi+guSzMyCGrr1enF32/UrhoM+pfqon+trvrb9SyABsk9
qgs2ls69dKZmVerMnJ7/mpzELJ+vnhERCtzbD0P+xQZ0Wlt+kzaEXPOBDuZX
Umn9TU51TzZvWGBOojB71/XN8tMWdRWfaW9yhyquZjMauflrZjuoU5H+uDU+
DxZ3UC+uyZPtQ0Tolituyw4bBzuIQrAPux/1sE0WEut1umaZVjzf5s+R0WwO
69n4Ic4A4VZ4WPN1PszyBEQ7LJz78Ln2bjuK5drvLbCRrpL1yt37vzz9TF/s
ggAA

-->

</rfc>
