<?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-02" 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-02"/>
    <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="20"/>
    <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 153?>

<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 160?>

<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>
      <t>Since the Evidence Generation Time could be at any
arbitrary point of time in the past compared to the Connection
Establishment Time, 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 anchor="intra-handshake-attestation">
      <name>Intra-handshake Attestation</name>
      <t>Intra-handshake attestation improves the situation where Evidence Generation Time
is the same as Connection Establishment Time.</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">
        <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.
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>
          <ul empty="true">
            <li>
              <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>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <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>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <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>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <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>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <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>
            </li>
          </ul>
          <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>
          <!--  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 anchor="limitations">
        <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.</t>
        </section>
        <section anchor="invasive-changes-in-tls">
          <name>Invasive Changes in TLS</name>
          <t>To be made secure, 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>
        </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 may change after Connection Establishment Time. 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>
        </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="post-handshake-attestation">
      <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>In following subsections, we present the benefits and limitations of post-handshake attestation.</t>
      <section anchor="benefits-1">
        <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>
        </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>
        </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-1">
        <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="need-for-post-handshake-attestation">
      <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>
        <ul empty="true">
          <li>
            <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>
          </li>
        </ul>
        <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-1">
        <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"/>.</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>
      </references>
    </references>
    <?line 627?>

<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>
      </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>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+196XIbR5bu/3qKHPqHSQ4AiqRES7zd9kAkJcESKYqkrLYd
E4xCVQIos6oSroUgLOtd5inmAWZe7J7vnMxasMlW+96IiZiO6BZYS1bmWb+z
ZHa32/WKqIj1sdq6zHS3owZpkfld5aehujR50Z3Qr3zi32nVLwqdF34RmXTL
84fDTN/TW/L8fd6d0tNbXuAXemyy+bGK0pHxvNAEqZ/Q8GHmj4pumfuJ3821
X3Sj5ovdRwdeXg6TKM9p+GI+pTcGZzcvlPpK+XFu6ENRGuqppv9Ji62O2tJh
VJgs8mP8Meg/p39MRr+ubl5seWmZDHV27IU0m2MvMGmu07zMj1WRldqjaR96
fqZ9GvVaB2UWFfMtb2ayu3Fmyqm7qtXZfUSfCzRTo7F8dZP5aT41GS34Ts/p
zfDYU12V6cQU9HT9JK7evLlW+71D/JQ7OsQ1716nJc1OqS/4qlJCo60PNOso
HauXGAPXEz+K6TpI/G+RLkY9k41x3c+CCV2fFMU0P97bw2O4FN3rnntsDxf2
hpmZ5XoPA+C9cVRMyiG9mZQTP0n80PHQz0I/21tmJV6Kfcy6+blVL/dk7F5k
Vgyzt1lgepMiibc8zy+LiclAffqsUqMyjkXets7tJ9V7DKGu+ZNb/BSt1U+j
35iqx+rmvTrNdE4055vaUtBN+Zan0JMp/1tRdkN5uBdq+n5qsoTGuSdGepD4
6i+lrl6cPDs8fHysslGAH/bSwdG+XKIf1aUjd+mILt3oYNI9MSQC0yI/5kmp
Skl1lk+joCSRVWbUEo9zeo2WlSc56Z6i90eQo4JUhP5IpmVBcnLMg6dRwBfl
C0ITxbqi3gaFIdVRB48OnnTsp/1srImZjpez2axHJNCQljG91Et1sTcthzGN
ionsHT472n/27ODZo9vGbG/N6LYx29t6trdRetuc7W0129tqsrdusjKliuv8
ny6tl3T7vKfe9yyf6c6ge8qS3S3ivEvEffr48dEwYnoOTrsnWZRHlriOtgOe
ABFWbm6i4gswOlb91I/neLRihei2kFQoemHuddIm6RdQ9OnTw2f7j/dv3Rxv
ZY4baCdTvHVTrOmvw1uYnz9Kx/adc1MSB0d++8ZNT/XLDBev+l0avE3XGzOj
wXL1gx9Hocgq0cuaRUfKcxPqmE3eD2Wc6swfRnFURJrZQE5Gx1/ndnR1mZnC
BCZuknn/sEXpx19K6adPDp8+Pnz07NbO+raeNUhIn7/dP3TE5Unf0qRvFyYN
vthJ38qkb92kv4Tw/Z66iHQSta++6qmbPJiYkU6j8RJDXpg8p2mDJzr258R7
P7hbNCd8S9l7ltJkZFc6fUXWra0Q/TF+BKo/UNdzEqykbUv299X3flr62Rwc
OVpjTtZ7oiQfs2PYezjU7x5e/PLuxfdvAu3ro/jx7cX4H2mSn/64t8IgrLcH
v0R+OhZvEs7JT0RBt+Gs8fr1Wf+mezLxs0JnC7T6w+5ZbWOUnWNlx2HCLTnq
ikwbTC094BM/gjud1bSZWar4Q1MWq9bvCAAARVfOT666b/qvz5ZYfwyLlhAL
c57hMnpRpFCZOjt99fakPeMn6tyfN9TsTzI1Jsnau8r1u7v0bTl+vJ/f/Pbh
m4fn3x89Mlfh/a+PNi3qPCK/QZbiCv+SfgJjVUs8WFjj2b0fl5XFaa6MjEAZ
08KHc1mfCuIIlGit84n6vkz1P7lOc2DKX6JTP3iVHCTP/Cfzbz48eWTe5z9+
Y/70Ol8akrG/mplP/wJmPh8e6pvg3cNpv/tiv//j948mP/00P5w+m03fbVrk
y//+T1qQuiYrRMAeWvpaEybsXt+ckRaenCxq4JSsa/cmIxekztIgm09F8YyJ
a/d7rTmGUK9oyJg0rm2SILk0cyz3YM1yLSoNTLJHU+g2VHwv0Rq+Nd8bxmYI
utAlGhdhSL7HUz83c53dYv69aTjasHR+WvHjMDsFCVrevb+5PF+x7v5vMDy4
2TI4MEDPKSxaXOTBM5LbeP45DDcn81EONS905hfB5Lv7v3//zXU01D8l7/Kz
jbJJnkGmjLmb100itX0/3TxuTXotqGo684bbOPxSR370zcHTx4RCb2kKLeS5
FjJ9iWduOdrG9Wu6nlGcQlf7ROhhd/+IFrVCay/0TP1AMBm0uTBFNLILYC3+
XND8qFc8FG0BP/qLfO5TPU9fP7ubP3nRvQnSN7fvL4fXV6evy9f7Z5s0mher
nuvUp1AegJDU7a7M/8ct//Ihu90/uD86H7wb/Pbyxc378OHRY/+Hn36cnm+0
2rxadVWGc7rBkSfAX/fg6IUeHjxZIMAgmdLSTWrV2aIw+jm1WBHaIkQYiZBx
MNM06ttV0BJUQUszEtlZRm0LGueMxpGiKWaOdOsMx2bS0ez2vn+4nV+aHz+c
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

-->

</rfc>
