<?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.39 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-reddy-wimse-workload-attestation-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="WIMSE Attestation">WIMSE Workload Attestation</title>
    <seriesInfo name="Internet-Draft" value="draft-reddy-wimse-workload-attestation-00"/>
    <author fullname="Tirumaleswar Reddy">
      <organization>Nokia</organization>
      <address>
        <postal>
          <city>Bangalore</city>
          <region>Karnataka</region>
          <country>India</country>
        </postal>
        <email>kondtir@gmail.com</email>
      </address>
    </author>
    <author fullname="Nathanael Ritz">
      <organization>Independent</organization>
      <address>
        <email>ietf@nritz.com</email>
      </address>
    </author>
    <date year="2026" month="June" day="07"/>
    <area>Security</area>
    <workgroup>WIMSE</workgroup>
    <keyword>attestation</keyword>
    <keyword>workload identity</keyword>
    <keyword>proxy</keyword>
    <keyword>TEE</keyword>
    <keyword>RATS</keyword>
    <abstract>
      <?line 46?>

<t>This document extends the WIMSE workload-to-workload authentication
architecture with a mechanism for conveying attestation across
TLS-terminating proxies, a deployment topology where TLS-layer
attestation mechanisms lose their end-to-end security properties.</t>
    </abstract>
  </front>
  <middle>
    <?line 53?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Workloads communicate with each other over HTTPS. Securing these
workload-to-workload calls requires answering two questions: who is the
caller, and can the caller be trusted?</t>
      <t>The first question is addressed by the WIMSE architecture
<xref target="I-D.ietf-wimse-arch"/>. The Workload Identity Token (WIT)
<xref target="I-D.ietf-wimse-workload-creds"/> carries the workload's identity,
issued and signed by an Identity Server <xref target="I-D.ietf-wimse-arch"/>. The
WIT embeds the workload's public key, the Identity Server's assertion
that this key belongs to this workload. The WIT alone, however, does
not prove that the presenter holds the corresponding private key; any
party that intercepts the WIT could replay it. The Workload Proof Token
(WPT) <xref target="I-D.ietf-wimse-wpt"/> closes this gap: it is a short-lived
token signed by the workload's private key, bound to a specific HTTPS
request and target URL, proving possession of the private key
corresponding to the public key in the WIT. Together, the WIT and WPT
establish both who the caller is and that the caller is the legitimate
holder of that identity. Both travel as HTTP header fields and survive
TLS termination at proxies.</t>
      <t>The second question, whether the caller's platform and key state can
be trusted is not addressed by the WIT/WPT mechanism. A workload may
have a valid identity and prove possession of its key, yet be running
in a compromised environment, with a key that is not hardware-protected,
or on a platform whose firmware or software does not meet the relying
party's security policy.</t>
      <t>The SEAT Working Group is developing protocols that add attestation to
TLS. <xref target="I-D.fossati-seat-early-attestation"/> introduces new TLS
extensions that carry attestation Evidence or Attestation Results
intra-handshake. <xref target="I-D.fossati-seat-expat"/> provides
post-handshake attestation using TLS Exported Authenticators. Both
mechanisms are designed so that Evidence is cryptographically tied to
a specific TLS connection.</t>
      <t>However, this same property is their limitation when TLS does not
extend end-to-end to the backend workload, as described in
<xref target="I-D.ietf-wimse-arch"/>. The attestation binding does not reach the
backend, and the backend workload receives no cryptographic evidence of
the original caller's platform and key state.</t>
      <t>Since the WIT and WPT already travel end-to-end as HTTP headers through
TLS-terminating proxies, attestation information can travel alongside
them in the same way. This document supports both the background check
model and the passport model <xref target="RFC9334"/>. In both cases, the workload's
public key is the binding element across the WIT, WPT, and the
attestation information. This requires no changes to TLS,
no changes to proxy infrastructure, and no modifications to the WIT
or WPT specifications.</t>
      <t>For the key binding verification to be cryptographically meaningful,
the Evidence needs to contain a public-key confirmation claim
corresponding to the workload's public key, and claims describing the
protection properties of the associated private key. <xref target="RFC9711"/>
illustrates how a key and key store may be represented in Evidence in
Appendix A.1.4, but uses private-use claim labels and does not define
standardised key-protection claims. One way to satisfy these
requirements is the profile defined in
<xref target="I-D.reddy-rats-key-binding"/>.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" 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>
      </section>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>This document uses terms defined in the WIMSE Architecture
<xref target="I-D.ietf-wimse-arch"/> and the RATS Architecture <xref target="RFC9334"/>.</t>
      <dl>
        <dt>Workload Identity Token (WIT):</dt>
        <dd>
          <t>A JWT that represents the identity of a workload and binds a public
key to that identity, as defined in <xref target="I-D.ietf-wimse-workload-creds"/>.</t>
        </dd>
        <dt>Workload Proof Token (WPT):</dt>
        <dd>
          <t>A JWT that provides proof of possession of the private key associated
with a WIT, as defined in <xref target="I-D.ietf-wimse-wpt"/>.</t>
        </dd>
        <dt>TLS-terminating proxy:</dt>
        <dd>
          <t>An intermediary that terminates the caller's TLS connection and
establishes a new, independent TLS connection to the backend workload.</t>
        </dd>
        <dt>Workload Evidence (WE):</dt>
        <dd>
          <t>Attestation Evidence generated by the workload's TEE, signed by the
Attestation Key, and carried in the <tt>Workload-Evidence</tt> HTTP header
field as defined in this document. Evidence freshness is provided by
using the WPT <tt>jti</tt> claim <xref target="I-D.ietf-wimse-wpt"/> as the nonce during
Evidence collection.</t>
        </dd>
        <dt>Workload EAR (WEAR):</dt>
        <dd>
          <t>An EAT Attestation Result (EAR) <xref target="I-D.ietf-rats-ear"/> generated by a
Verifier following appraisal of the workload's Evidence, and carried in
the <tt>Workload-Attestation-Result</tt> HTTP header field as defined in this
document. Request binding is provided by using the WPT <tt>jti</tt> claim
<xref target="I-D.ietf-wimse-wpt"/> as the nonce during Evidence collection, which
the Verifier echoes in the <tt>eat_nonce</tt> claim of the EAR.</t>
        </dd>
      </dl>
    </section>
    <section anchor="scope">
      <name>Scope</name>
      <t>This document specifies mechanisms for conveying workload attestation
information alongside WIMSE workload-to-workload HTTP requests,
supporting both the background check model and the passport model
<xref target="RFC9334"/>.</t>
    </section>
    <section anchor="the-workload-evidence-header-field">
      <name>The Workload-Evidence Header Field</name>
      <t>The <tt>Workload-Evidence</tt> header field carries Evidence
generated by the workload's TEE. The Evidence MUST be encapsulated in
a CMW (Conceptual Message Wrapper) <xref target="I-D.ietf-rats-msg-wrap"/>. The CMW
<tt>type</tt> field identifies the attestation technology and serialization
format, providing interoperability at the envelope level without
out-of-band negotiation.</t>
      <t>The Evidence MUST contain:</t>
      <ul spacing="normal">
        <li>
          <t>a public-key confirmation claim corresponding to the workload's
public key, and</t>
        </li>
        <li>
          <t>claims describing the protection properties of the associated
private key.</t>
        </li>
      </ul>
      <t>One way to satisfy these requirements is the profile defined in
<xref target="I-D.reddy-rats-key-binding"/>.</t>
      <t>The three header fields form a coherent set, each independently signed
by a different authority:</t>
      <artwork><![CDATA[
+----------------------------+------------------+---------------------------+
| Header field               | Signer           | Binds to                  |
+----------------------------+------------------+---------------------------+
| Workload-Identity-Token    | Identity Server  | Workload identity         |
| Workload-Proof-Token       | Workload         | Private key + Target URI  |
| Workload-Evidence          | TEE (AK)         | Platform + key            |
+----------------------------+------------------+---------------------------+
]]></artwork>
      <t>The workload's public key is the binding across all three: it is
asserted by the Identity Server in the WIT, proven in possession by
the WPT, and attested as hardware-protected by the Evidence.</t>
    </section>
    <section anchor="the-workload-attestation-result-header-field">
      <name>The Workload-Attestation-Result Header Field</name>
      <t>When the passport model is used, the Workload-Attestation-Result
header field carries the EAT Attestation Result (EAR) generated by
the Verifier <xref target="I-D.ietf-rats-ear"/>.</t>
      <t>The EAR MUST contain the <tt>ear_verified_attester_key</tt> claim. This claim
provides the Relying Party with the verified public key of the attester.
Because the <tt>ear_verified_attester_key</tt> claim is represented as a
PEM-encoded SPKI or certificate, and the WIT carries the workload's
public key as a JWK <xref target="I-D.ietf-wimse-workload-creds"/>, implementations
MUST convert between the two formats to perform the required cryptographic
comparison.</t>
      <t>The EAR MUST also contain the <tt>eat_nonce</tt> claim, set to the nonce value
extracted from the appraised Evidence. Because the workload uses the WPT
<tt>jti</tt> claim as the Evidence nonce, this value enables the Relying
Party to verify that the EAR was produced from Evidence collected for
this specific request.</t>
      <artwork><![CDATA[
+-----------------------------+------------------+---------------------------+
| Header field                | Signer           | Binds to                  |
+-----------------------------+------------------+---------------------------+
| Workload-Identity-Token     | Identity Server  | Workload identity         |
| Workload-Proof-Token        | Workload         | Private key + Target URI  |
| Workload-Attestation-Result | Verifier         | Appraised platform + key  |
+-----------------------------+------------------+---------------------------+
]]></artwork>
      <t>Similar to the background check model, the workload's public key acts as
the binding element: it is asserted by the Identity Server in the WIT,
proven in possession by the WPT, and verified by the Verifier in the EAR.</t>
    </section>
    <section anchor="protocol-flows">
      <name>Protocol Flows</name>
      <section anchor="background-check-model-protocol-flow">
        <name>Background Check Model Protocol Flow</name>
        <artwork><![CDATA[
Caller (TEE Workload)                    Backend Workload
        |                                       |
        | [Startup]                             |
        | Generate key pair inside TEE          |
        | Obtain WIT from Identity Server       |
        |                                       |
        | [Per-request]                         |
        | Construct WPT, generate jti           |
        | Collect Evidence using jti as nonce   |
        | Sign WPT with private key             |
        |                                       |
        |------ HTTPS Request ----------------->|
        | Workload-Identity-Token: <WIT>        |
        | Workload-Proof-Token: <WPT>           |
        | Workload-Evidence: <CMW>              |
        |                                       |
        |                    Verify WIT         |
        |                    Verify WPT         |
        |                    Submit Evidence    |
        |                      + jti + WIT key  |
        |                      to Verifier      |
        |                    Evaluate policy    |
        |                                       |
        |<------ Response ----------------------|
]]></artwork>
      </section>
      <section anchor="passport-model-protocol-flow">
        <name>Passport Model Protocol Flow</name>
        <t>In the passport model, the caller obtains the Attestation Result from a
Verifier before initiating the request to the backend workload. The caller
uses the WPT <tt>jti</tt> claim as the challenge when requesting the EAR.</t>
        <artwork><![CDATA[
Caller (TEE Workload)                  Verifier          Backend Workload
        |                                 |                     |
        | [Startup]                       |                     |
        | Generate key pair inside TEE    |                     |
        | Obtain WIT from Identity Server |                     |
        |                                 |                     |
        | [Per-request]                   |                     |
        | Construct WPT, generate jti     |                     |
        | Collect Evidence (jti as nonce) |                     |
        | Submit Evidence to Verifier --->|                     |
        |                                 | Verify Evidence     |
        |<----- Return EAR (w/ key) ------|                     |
        | Sign WPT with private key       |                     |
        |                                 |                     |
        |------ HTTPS Request --------------------------------->|
        | Workload-Identity-Token: <WIT>                        |
        | Workload-Proof-Token: <WPT>                           |
        | Workload-Attestation-Result: <EAR>                    |
        |                                                       |
        |                                     Verify WIT        |
        |                                     Verify WPT        |
        |                                     Verify EAR sig    |
        |                                     Verify key in     |
        |                                       EAR matches WIT |
        |                                     Evaluate policy   |
        |                                                       |
        |<------ Response --------------------------------------|
]]></artwork>
      </section>
    </section>
    <section anchor="applicability">
      <name>Applicability</name>
      <t>The <tt>Workload-Evidence</tt> and <tt>Workload-Attestation-Result</tt> header fields
defined in this document are applicable to both WIMSE application-level
protection mechanisms: WPT <xref target="I-D.ietf-wimse-wpt"/> and HTTP Signatures
<xref target="I-D.ietf-wimse-http-signature"/>.</t>
    </section>
    <section anchor="proxy-behaviour">
      <name>Proxy Behaviour</name>
      <t>A TLS-terminating proxy MUST forward the <tt>Workload-Evidence</tt> and
<tt>Workload-Attestation-Result</tt> header fields unchanged toward the backend
workload. A proxy MUST NOT strip or modify the <tt>Workload-Evidence</tt> or
<tt>Workload-Attestation-Result</tt> header fields.</t>
    </section>
    <section anchor="verification-algorithms">
      <name>Verification Algorithms</name>
      <t>The backend workload acts as the Relying Party as defined in <xref target="RFC9334"/>
and submits Evidence to a Verifier for appraisal.</t>
      <t>The backend workload MUST first verify the WIT and WPT as defined in
<xref target="I-D.ietf-wimse-wpt"/>. Following this, it MUST perform the steps for
either the Background Check Model or the Passport Model, depending on
which header is presented.</t>
      <t>For both models, the request MUST NOT be processed further until all
steps have completed successfully. If a backend workload requires
attestation by policy, it MUST reject any request that does not include
either a valid <tt>Workload-Evidence</tt> or <tt>Workload-Attestation-Result</tt> header
field with a 403 Forbidden status code.</t>
      <t>If a request contains both <tt>Workload-Evidence</tt> and
<tt>Workload-Attestation-Result</tt> header fields, the backend MUST reject
the request with 400 Bad Request.</t>
      <section anchor="background-check-model-workload-evidence">
        <name>Background Check Model (Workload-Evidence)</name>
        <ol spacing="normal" type="1"><li>
            <t>Extract the <tt>Workload-Evidence</tt> header field value.</t>
          </li>
          <li>
            <t>Decode the CMW wrapper to determine the Evidence format from the
CMW <tt>type</tt> field.</t>
          </li>
          <li>
            <t>Convert the WIT public key to the format indicated by the CMW
<tt>type</tt> field.</t>
          </li>
          <li>
            <t>Submit the Evidence, the WPT <tt>jti</tt>, and the converted WIT public
key to a Verifier.</t>
          </li>
          <li>
            <t>The Verifier MUST verify that the nonce carried in the Evidence
matches the submitted <tt>jti</tt>.</t>
          </li>
          <li>
            <t>The Verifier MUST verify that the public key in the Evidence
matches the submitted WIT public key.</t>
          </li>
          <li>
            <t>Evaluate the returned Attestation Result against local policy.</t>
          </li>
        </ol>
      </section>
      <section anchor="passport-model-workload-attestation-result">
        <name>Passport Model (Workload-Attestation-Result)</name>
        <ol spacing="normal" type="1"><li>
            <t>Extract the <tt>Workload-Attestation-Result</tt> header field value.</t>
          </li>
          <li>
            <t>Verify the digital signature of the EAR using the Verifier's
public key or trust anchor.</t>
          </li>
          <li>
            <t>Verify that the <tt>ear_verified_attester_key</tt> claim is present in
the EAR Appraisal record.</t>
          </li>
          <li>
            <t>Convert the PEM-encoded SPKI or certificate from the
<tt>ear_verified_attester_key</tt> claim and the JWK from the WIT into
a common format.</t>
          </li>
          <li>
            <t>Verify that the converted public key from the EAR matches
the public key in the WIT.</t>
          </li>
          <li>
            <t>Verify that the <tt>eat_nonce</tt> claim in the EAR matches the <tt>jti</tt>
claim from the WPT.</t>
          </li>
          <li>
            <t>Evaluate the EAR against local policy.</t>
          </li>
        </ol>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="key-binding">
        <name>Key Binding</name>
        <t>The security of this mechanism depends on verifying that the public key
in the Evidence matches the public key in the WIT. This ensures the
Evidence is about the same key that the WPT proves possession of.</t>
        <t>One way to satisfy the key binding requirements is the profile defined
in <xref target="I-D.reddy-rats-key-binding"/>.</t>
      </section>
      <section anchor="stripping-attack">
        <name>Stripping Attack</name>
        <t>A malicious proxy may strip the <tt>Workload-Evidence</tt> or
<tt>Workload-Attestation-Result</tt> header fields. Backend workloads that
require attestation by policy MUST reject requests lacking the required
valid <tt>Workload-Evidence</tt> or <tt>Workload-Attestation-Result</tt> header field
with a 403 Forbidden status code.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document requests registration of the following HTTP header fields
in the "HTTP Field Names" registry:</t>
      <dl>
        <dt>Field Name:</dt>
        <dd>
          <t><tt>Workload-Evidence</tt></t>
        </dd>
        <dt>Status:</dt>
        <dd>
          <t>permanent</t>
        </dd>
        <dt>Specification Document:</dt>
        <dd>
          <t>This document</t>
        </dd>
        <dt>Field Name:</dt>
        <dd>
          <t><tt>Workload-Attestation-Result</tt></t>
        </dd>
        <dt>Status:</dt>
        <dd>
          <t>permanent</t>
        </dd>
        <dt>Specification Document:</dt>
        <dd>
          <t>This document</t>
        </dd>
      </dl>
    </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>
        <reference anchor="RFC8747">
          <front>
            <title>Proof-of-Possession Key Semantics for CBOR Web Tokens (CWTs)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="L. Seitz" initials="L." surname="Seitz"/>
            <author fullname="G. Selander" initials="G." surname="Selander"/>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="March" year="2020"/>
            <abstract>
              <t>This specification describes how to declare in a CBOR Web Token (CWT) (which is defined by RFC 8392) that the presenter of the CWT possesses a particular proof-of-possession key. Being able to prove possession of a key is also sometimes described as being the holder-of-key. This specification provides equivalent functionality to "Proof-of-Possession Key Semantics for JSON Web Tokens (JWTs)" (RFC 7800) but using Concise Binary Object Representation (CBOR) and CWTs rather than JavaScript Object Notation (JSON) and JSON Web Tokens (JWTs).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8747"/>
          <seriesInfo name="DOI" value="10.17487/RFC8747"/>
        </reference>
        <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="RFC9711">
          <front>
            <title>The Entity Attestation Token (EAT)</title>
            <author fullname="L. Lundblade" initials="L." surname="Lundblade"/>
            <author fullname="G. Mandyam" initials="G." surname="Mandyam"/>
            <author fullname="J. O'Donoghue" initials="J." surname="O'Donoghue"/>
            <author fullname="C. Wallace" initials="C." surname="Wallace"/>
            <date month="April" year="2025"/>
            <abstract>
              <t>An Entity Attestation Token (EAT) provides an attested claims set that describes the state and characteristics of an entity, a device such as a smartphone, an Internet of Things (IoT) device, network equipment, or such. This claims set is used by a relying party, server, or service to determine the type and degree of trust placed in the entity.</t>
              <t>An EAT is either a CBOR Web Token (CWT) or a JSON Web Token (JWT) with attestation-oriented claims.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9711"/>
          <seriesInfo name="DOI" value="10.17487/RFC9711"/>
        </reference>
        <reference anchor="I-D.ietf-wimse-arch">
          <front>
            <title>Workload Identity in a Multi System Environment (WIMSE) Architecture</title>
            <author fullname="Joseph A. Salowey" initials="J. A." surname="Salowey">
              <organization>CyberArk</organization>
            </author>
            <author fullname="Yaroslav Rosomakho" initials="Y." surname="Rosomakho">
              <organization>Zscaler</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of Applied Sciences Bonn-Rhein-Sieg</organization>
            </author>
            <date day="2" month="March" year="2026"/>
            <abstract>
              <t>   The increasing prevalence of cloud computing and micro service
   architectures has led to the rise of complex software functions being
   built and deployed as workloads, where a workload is defined as
   software executing for a specific purpose, potentially comprising one
   or more running instances.  This document discusses an architecture
   for designing and standardizing protocols and payloads for conveying
   workload identity and security context information.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-wimse-arch-07"/>
        </reference>
        <reference anchor="I-D.ietf-wimse-workload-creds">
          <front>
            <title>WIMSE Workload Credentials</title>
            <author fullname="Brian Campbell" initials="B." surname="Campbell">
              <organization>Ping Identity</organization>
            </author>
            <author fullname="Joseph A. Salowey" initials="J. A." surname="Salowey">
              <organization>CyberArk</organization>
            </author>
            <author fullname="Arndt Schwenkschuster" initials="A." surname="Schwenkschuster">
              <organization>Defakto Security</organization>
            </author>
            <author fullname="Yaron Sheffer" initials="Y." surname="Sheffer">
              <organization>Intuit</organization>
            </author>
            <author fullname="Yaroslav Rosomakho" initials="Y." surname="Rosomakho">
              <organization>Zscaler</organization>
            </author>
            <date day="5" month="May" year="2026"/>
            <abstract>
              <t>   The WIMSE architecture defines authentication and authorization for
   software workloads in a variety of runtime environments, from the
   most basic ones up to complex multi-service, multi-cloud, multi-
   tenant deployments.

   This document defines the credentials that workloads use to represent
   their identity.  They can be used in various protocols to
   authenticate workloads to each other.  To use these credentials,
   workloads must provide proof of possession of the associated private
   key material, which is covered in other documents.  This document
   focuses on the credentials alone, independent of the proof-of-
   possession mechanism.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-wimse-workload-creds-01"/>
        </reference>
        <reference anchor="I-D.ietf-wimse-wpt">
          <front>
            <title>WIMSE Workload Proof Token</title>
            <author fullname="Brian Campbell" initials="B." surname="Campbell">
              <organization>Ping Identity</organization>
            </author>
            <author fullname="Arndt Schwenkschuster" initials="A." surname="Schwenkschuster">
              <organization>Defakto Security</organization>
            </author>
            <date day="2" month="March" year="2026"/>
            <abstract>
              <t>   The WIMSE architecture defines authentication and authorization for
   software workloads in a variety of runtime environments, from basic
   deployments to complex multi-service, multi-cloud, multi-tenant
   systems.  This document specifies the Workload Proof Token (WPT), a
   mechanism for workloads to prove possession of the private key
   associated with a Workload Identity Token (WIT).  The WPT is a signed
   JWT that binds the workload's authentication to a specific HTTP
   request, providing application-level proof of possession for
   workload-to-workload communication.  This specification is designed
   to work alongside the WIT credential format defined in draft-ietf-
   wimse-workload-creds and can be combined with other WIMSE protocols
   in multi-hop call chains.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-wimse-wpt-01"/>
        </reference>
        <reference anchor="I-D.ietf-rats-msg-wrap">
          <front>
            <title>RATS Conceptual Messages Wrapper (CMW)</title>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer SIT</organization>
            </author>
            <author fullname="Ned Smith" initials="N." surname="Smith">
              <organization>Independent</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of Applied Sciences Bonn-Rhein-Sieg</organization>
            </author>
            <author fullname="Dionna Glaze" initials="D." surname="Glaze">
              <organization>Google LLC</organization>
            </author>
            <date day="11" month="December" year="2025"/>
            <abstract>
              <t>   The Conceptual Messages introduced by the RATS architecture (RFC
   9334) are protocol-agnostic data units that are conveyed between RATS
   roles during remote attestation procedures.  Conceptual Messages
   describe the meaning and function of such data units within RATS data
   flows without specifying a wire format, encoding, transport
   mechanism, or processing details.  The initial set of Conceptual
   Messages is defined in Section 8 of RFC 9334 and includes Evidence,
   Attestation Results, Endorsements, Reference Values, and Appraisal
   Policies.

   This document introduces the Conceptual Message Wrapper (CMW) that
   provides a common structure to encapsulate these messages.  It
   defines a dedicated CBOR tag, corresponding JSON Web Token (JWT) and
   CBOR Web Token (CWT) claims, and an X.509 extension.

   This allows CMWs to be used in CBOR-based protocols, web APIs using
   JWTs and CWTs, and PKIX artifacts like X.509 certificates.
   Additionally, the draft defines a media type and a CoAP content
   format to transport CMWs over protocols like HTTP, MIME, and CoAP.

   The goal is to improve the interoperability and flexibility of remote
   attestation protocols.  Introducing a shared message format such as
   CMW enables consistent support for different attestation message
   types, evolving message serialization formats without breaking
   compatibility, and avoiding the need to redefine how messages are
   handled within each protocol.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rats-msg-wrap-23"/>
        </reference>
        <reference anchor="I-D.reddy-rats-key-binding">
          <front>
            <title>Key Attestation for Entity Attestation Tokens (EAT)</title>
            <author fullname="Tirumaleswar Reddy.K" initials="T." surname="Reddy.K">
              <organization>Nokia</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of the Bundeswehr Munich</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <author fullname="Ionuț Mihalcea" initials="I." surname="Mihalcea">
              <organization>Arm Limited</organization>
            </author>
            <date day="7" month="June" year="2026"/>
            <abstract>
              <t>   This document defines an Entity Attestation Token (EAT) profile and a
   new EAT claim that convey the subject public key and its protection
   properties within attestation evidence.  Combined with protocol-level
   proof of possession from the surrounding protocol, this establishes a
   cryptographic binding between a private key and an attested execution
   environment.

   The subject public key is conveyed using the EAT cnf claim defined in
   [RFC8747] and [RFC7800], and freshness uses the EAT eat_nonce claim
   defined in [RFC9711].  The proof of possession of the subject key is
   obtained from the surrounding protocol, such as TLS certificate-based
   authentication or CSR signature verification.  Because the EAT is
   signed by a hardware-backed Attestation Key (AK), successful
   verification of the EAT signature together with protocol-level proof
   of possession establishes a cryptographic binding between the private
   key and the attested platform state.  This mechanism addresses key
   substitution attacks that arise when attestation evidence and the
   certificate private keys are validated independently.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-reddy-rats-key-binding-01"/>
        </reference>
        <reference anchor="I-D.ietf-rats-ear">
          <front>
            <title>EAT Attestation Results</title>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <author fullname="Eric Voit" initials="E." surname="Voit">
              <organization>Cisco</organization>
            </author>
            <author fullname="Sergei Trofimov" initials="S." surname="Trofimov">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer SIT</organization>
            </author>
            <date day="26" month="May" year="2026"/>
            <abstract>
              <t>   This document defines the EAT Attestation Result (EAR) message
   format.

   EAR is used by a verifier to encode the result of the appraisal over
   an attester's evidence.  It embeds an AR4SI's "trustworthiness
   vector" to present a normalized view of the evaluation results, thus
   easing the task of defining and computing authorization policies by
   relying parties.  Alongside the trustworthiness vector, EAR provides
   contextual information bound to the appraisal process.  This allows a
   relying party (or an auditor) to reconstruct the frame of reference
   in which the trustworthiness vector was originally computed.  EAR
   supports simple devices with one attester as well as composite
   devices that are made of multiple attesters, allowing the state of
   each attester to be separately examined.  EAR can also accommodate
   registered and unregistered extensions.  It can be serialized and
   protected using either CWT or JWT.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rats-ear-04"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.fossati-seat-early-attestation">
          <front>
            <title>Using Attestation in Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
            <author fullname="Yaron Sheffer" initials="Y." surname="Sheffer">
              <organization>Intuit</organization>
            </author>
            <author fullname="Ionuț Mihalcea" initials="I." surname="Mihalcea">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Yogesh Deshpande" initials="Y." surname="Deshpande">
              <organization>Arm Limited</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>
            <date day="27" month="May" year="2026"/>
            <abstract>
              <t>   The TLS handshake protocol allows authentication of one or both peers
   using static, long-term credentials.  In some cases, it is also
   desirable to ensure that the peer runtime environment is in a secure
   state.  Such an assurance can be achieved using remote attestation
   which is a process by which an entity produces Evidence about itself
   that another party can use to appraise whether that entity is found
   in a secure state.  This document describes a series of TLS
   extensions that enable the binding of the TLS authentication key to a
   remote attestation session.  This enables an entity capable of
   producing attestation Evidence, such as a confidential workload
   running in a Trusted Execution Environment (TEE), or an IoT device
   that is trying to authenticate itself to a network access point, to
   present a more comprehensive set of security metrics to its peer.
   These extensions have been designed to allow the peers to use any
   attestation technology, in any remote attestation topology, and to
   use them mutually.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-fossati-seat-early-attestation-04"/>
        </reference>
        <reference anchor="I-D.fossati-seat-expat">
          <front>
            <title>Remote Attestation with Exported Authenticators</title>
            <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="Yaron Sheffer" initials="Y." surname="Sheffer">
              <organization>Intuit</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of Applied Sciences Bonn-Rhein-Sieg</organization>
            </author>
            <author fullname="Ionuț Mihalcea" initials="I." surname="Mihalcea">
              <organization>Arm Limited</organization>
            </author>
            <date day="26" month="February" year="2026"/>
            <abstract>
              <t>   This specification defines a method for two parties in a
   communication interaction to exchange Evidence and Attestation
   Results using exported authenticators, as defined in [RFC9261].
   Additionally, it introduces the cmw_attestation extension, which
   allows attestation credentials to be included directly in the
   Certificate message sent during the Exported Authenticator-based
   post-handshake authentication.  The approach supports both the
   passport and background check models from the RATS architecture while
   ensuring that attestation remains bound to the underlying
   communication channel.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-fossati-seat-expat-02"/>
        </reference>
        <reference anchor="I-D.ietf-wimse-http-signature">
          <front>
            <title>WIMSE Workload-to-Workload Authentication with HTTP Signatures</title>
            <author fullname="Joseph A. Salowey" initials="J. A." surname="Salowey">
              <organization>CyberArk</organization>
            </author>
            <author fullname="Yaron Sheffer" initials="Y." surname="Sheffer">
              <organization>Intuit</organization>
            </author>
            <date day="7" month="April" year="2026"/>
            <abstract>
              <t>   The WIMSE architecture defines authentication and authorization for
   software workloads in a variety of runtime environments, from the
   most basic ones to complex multi-service, multi-cloud, multi-tenant
   deployments.  This document defines one of the mechanisms to provide
   workload authentication, using HTTP Signatures.  While only
   applicable to HTTP traffic, the protocol provides end-to-end
   protection of requests (and optionally, responses), even when service
   traffic is not end-to-end encrypted, that is, when TLS proxies and
   load balancers are used.  Authentication is based on the Workload
   Identity Token (WIT).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-wimse-http-signature-03"/>
        </reference>
      </references>
    </references>
    <?line 418?>

<section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors would like to thank Thomas Fossati and Ionut Mihalcea for
the review and comments, and the SEAT Working Group participants for
discussions that motivated this work.</t>
    </section>
    <section anchor="document-history">
      <name>Document History</name>
      <section anchor="version-00">
        <name>Version -00</name>
        <ul spacing="normal">
          <li>
            <t>Initial version</t>
          </li>
        </ul>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
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
QxOZU7XE64q8TsLR5ZnoYk+QJV1EaB2VGffWCJhCstKGbPHDjqiPOjHzwdbd
Yao5GNd3oAx4jnGWGdv6gXO1luMc5iPYM56s1YdPqHWVlxpJ0Gspa9Cq8yYy
593tNs4QyammFgHZsNH+V5PQjHskuXPVqemht2yWPAHpu1HNXiazrtni5D3m
ibenwlsvWMiDhxh/jIim+wZYPnfHCPVbSG4wWZGKLlf5VGvxhRzni862Ou7I
dtyxta99b3HhUjK3iDJJ2/GLI2KuK7cIvTpQvzcUYhkdYtj2VdG912Fa1+OP
uBjD6vuj99+vniJ6pNeFwI8hFSHoXUNuTgABWw818c65Q5kPhC3rFloAGu4F
onBvnPeijRbSCPfaeAaU4i4iHhaz7wYXjlF2BLjAN3LH78YdI21f+qvZxVfZ
6Yp/dDO4uXnZfRcvGOUJ/UTXKfg7sCZ7Ekjh9aPmOd4M7dk3Y1PiGn+GvL8W
Ob7Vzqbxuxj8pecWB7XY379AjwS/dyl63XlOlgjVaXKb600m06Uzdufs7uYV
vuqK75dm6lb66975LVDTa0D6r9wbZBRYL3UOfnilViJLpPAn42gtd0pu3D1W
iK1IvgEWPS/X4dt44BaFQKdDIqmySWWj99/WuqTWWMrrN3HpHmjYLX+t8CWO
LTkehFjy+eGTJ3hN75Ia4hmGKHzM/heU9bhei0IAAA==

-->

</rfc>
