<?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-ietf-wimse-wpt-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="WIMSE Workload-Proof-Token">WIMSE Workload Proof Token</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-wimse-wpt-01"/>
    <author fullname="Brian Campbell">
      <organization>Ping Identity</organization>
      <address>
        <email>bcampbell@pingidentity.com</email>
      </address>
    </author>
    <author fullname="Arndt Schwenkschuster">
      <organization>Defakto Security</organization>
      <address>
        <email>arndts.ietf@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="March" day="02"/>
    <area>Applications and Real-Time</area>
    <workgroup>Workload Identity in Multi System Environments</workgroup>
    <keyword>workload</keyword>
    <keyword>identity</keyword>
    <abstract>
      <?line 54?>

<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>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://ietf-wg-wimse.github.io/draft-ietf-wimse-s2s-protocol/draft-ietf-wimse-wpt.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-wimse-wpt/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Workload Identity in Multi System Environments Working Group mailing list (<eref target="mailto:wimse@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/wimse/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/wimse/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-wg-wimse/draft-ietf-wimse-s2s-protocol"/>.</t>
    </note>
  </front>
  <middle>
    <?line 58?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document defines the Workload Proof Token (WPT), a simple, protocol-independent mechanism for proving possession of the private key associated with a Workload Identity Token (WIT). The WIT, defined in <xref target="I-D.ietf-wimse-workload-creds"/>, is a credential that binds a public key to a workload identity and is designed to require proof of possession - it must not be used as a bearer token. The WPT provides that proof of possession.
The WPT's primary design goal is simplicity: it is a signed JWT that demonstrates control of the private key corresponding to the public key in the WIT. By requiring this cryptographic proof, the WPT significantly reduces the risk of credential theft and replay attacks compared to bearer token approaches.
The WPT is protocol-agnostic by design. While this specification provides detailed guidance for HTTP-based usage (including the Workload-Proof-Token HTTP header field), the core WPT format is fundamentally a signed JWT that can be adapted to other protocols including asynchronous messaging systems, event-driven architectures, and future transport mechanisms. The JWT-based structure allows for protocol-specific extensions through additional claims while maintaining core interoperability.</t>
      <t>Key characteristics of the WPT include:</t>
      <t>Proof of Possession: Demonstrates control of the WIT's associated private key through a digital signature.
Context Binding: Binds the proof to specific message context through claims such as audience (aud) and WIT hash (wth). Other tokens in the message can also be bound (e.g., OAuth access tokens, transaction tokens) to provide unified proof across different authorization contexts.
Short-Lived: Typically valid for minutes or seconds, limiting replay attack windows.
Protocol Independent: Core format is not tied to any specific transport protocol.</t>
      <t>This specification is part of the WIMSE protocol suite, which includes credential formats defined in <xref target="I-D.ietf-wimse-workload-creds"/> and follows the architectural principles in <xref target="I-D.ietf-wimse-arch"/>. The WPT provides application-level proof of possession particularly suited for environments where transport-level solutions are insufficient or where communication patterns span multiple protocols.
This document defines the WPT JWT format, its HTTP usage, validation requirements, and security considerations. Out of scope are the WIT credential format itself (covered in <xref target="I-D.ietf-wimse-workload-creds"/>), policy enforcement and authorization, credential issuance and lifecycle management, detailed bindings for non-HTTP protocols (to be addressed in future specifications), and alternative proof-of-possession mechanisms such as HTTP Message Signatures.</t>
    </section>
    <section anchor="wpt">
      <name>Workload Proof Token</name>
      <t>The Workload Proof Token (WPT) is a JWT that provides proof of possession of the private key associated with a Workload Identity Token (WIT). The Workload Identity Token is sent in the request as described in <xref target="I-D.ietf-wimse-workload-creds"/>. The WPT is sent in the <tt>Workload-Proof-Token</tt> header field of the request.
The ABNF <xref target="RFC5234"/> syntax of the <tt>Workload-Proof-Token</tt> header field is shown in <xref target="wpt-header-abnf"/> below.</t>
      <figure anchor="wpt-header-abnf">
        <name>Workload-Proof-Token Header Field ABNF</name>
        <sourcecode type="abnf"><![CDATA[
ALPHA = %x41-5A / %x61-7A ; A-Z / a-z
DIGIT = %x30-39 ; 0-9
base64url = 1*(ALPHA / DIGIT / "-" / "_")
JWT =  base64url "." base64url "." base64url
WIT =  JWT
]]></sourcecode>
      </figure>
      <t>A WPT MUST contain the following:</t>
      <ul spacing="normal">
        <li>
          <t>in the JOSE header:
          </t>
          <ul spacing="normal">
            <li>
              <t><tt>alg</tt>: An identifier for an appropriate JWS asymmetric digital signature algorithm corresponding to
   the confirmation key in the associated WIT. The value MUST match the <tt>alg</tt> value of the <tt>jwk</tt> in the <tt>cnf</tt> claim of the WIT. See <xref target="I-D.ietf-wimse-workload-creds"/> for valid values and restrictions.</t>
            </li>
            <li>
              <t><tt>typ</tt>: the WPT is explicitly typed, as recommended in <xref section="3.11" sectionFormat="of" target="RFC8725"/>,
   using the <tt>application/wpt+jwt</tt> media type.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>in the JWT claims:
          </t>
          <ul spacing="normal">
            <li>
              <t><tt>aud</tt>: The audience SHOULD contain the HTTP target URI (<xref section="7.1" sectionFormat="of" target="RFC9110"/>) of the request
   to which the WPT is attached, without query or fragment parts. However, there may be some normalization,
  rewriting or other process that requires the audience to be set to a deployment-specific value.</t>
            </li>
            <li>
              <t><tt>exp</tt>: The expiration time of the WPT (as defined in <xref section="4.1.4" sectionFormat="of" target="RFC7519"/>). WPT lifetimes MUST be short,
   e.g., on the order of minutes or seconds.</t>
            </li>
            <li>
              <t><tt>jti</tt>: A unique identifier for the WPT. The value MUST be assigned such that there is a negligible probability that the same value will be assigned to any other WPT. Such uniqueness can be accomplished by encoding (base64url or any other suitable encoding) 128 bits of pseudorandom data.</t>
            </li>
            <li>
              <t><tt>wth</tt>: Hash of the Workload Identity Token, defined in <xref target="I-D.ietf-wimse-workload-creds"/>. The value is the base64url encoding of the
   SHA-256 hash of the ASCII encoding of the WIT's value.</t>
            </li>
            <li>
              <t><tt>ath</tt>: Hash of the OAuth access token, if present in the request, which might convey end-user identity and/or
   authorization context of the request. The value, as per <xref section="4.1" sectionFormat="of" target="RFC9449"/>,
   is the base64url encoding of the SHA-256 hash of the ASCII encoding of the access token's value.</t>
            </li>
            <li>
              <t><tt>tth</tt>: Hash of the Txn-Token <xref target="I-D.ietf-oauth-transaction-tokens"/>, if present in the request,
   which might convey end-user identity and/or authorization context of the request. The value MUST be the result of
   a base64url encoding (as defined in <xref section="2" sectionFormat="of" target="RFC7515"/>) of the SHA-256 hash of
   the ASCII encoding of the associated token's value.</t>
            </li>
            <li>
              <t><tt>oth</tt>: Hash(es) of other token(s) in the request that convey end-user identity and/or authorization context of the
   request. The value is a JSON object with a key-value pair for each such token. For each, in the absence of an
   application profile specifying details, the key corresponds to the header field name containing the token,
   and the value is the base64url encoding of the SHA-256 hash of the ASCII bytes of the header field value with any
   leading or trailing spaces removed. The header field name MUST be normalized by converting
   it to all lower case.
   Header fields occurring multiple times in the request are not supported by default.
   An application profile may specify different behavior for a key, such as
   using a different hash algorithm or means of locating the token in the request.</t>
            </li>
          </ul>
        </li>
      </ul>
      <t>To clarify: the <tt>ath</tt>, <tt>tth</tt> and <tt>oth</tt> claims are each mandatory if the respective tokens are included in the request.</t>
      <t>The rules for using non-standard claims in WPTs are documented in <xref target="add-claims"/>.</t>
      <t>An example WPT might look like the following:</t>
      <figure anchor="example-wpt">
        <name>Example Workload Proof Token (WPT)</name>
        <sourcecode type="jwt"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

eyJhbGciOiJFZERTQSIsInR5cCI6IndwdCtqd3QifQ.eyJhdGgiOiJDTDR3amZwUm1OZ\
i1iZFlJYllMblY5ZDVyTUFSR3dLWUUxMHdVd3pDMGpJIiwiYXVkIjoiaHR0cHM6Ly93b\
3JrbG9hZC5leGFtcGxlLmNvbS9wYXRoIiwiZXhwIjoxNzQ1NTEwMDE2LCJqdGkiOiJfX\
2J3YzRFU0MzYWNjMkxUQzEtX3giLCJ3dGgiOiJBYVlVZkMzNEQxZGkyRnhRTHBpSUpKN\
1NnOFZaNm84T0Nkd1NmOUlUb0xnIn0.PI7d9AcYhLoEgPgbJvcM132lkBKnM1NXU-5hZ\
UzVTIyj2dRJaTLFs6e5NYv5gg6AqcV7NvkYCwfgMgWasWQzCA
]]></sourcecode>
      </figure>
      <t>The decoded JOSE header of the WPT from the example above is shown here:</t>
      <figure>
        <name>Example WPT JOSE Header</name>
        <sourcecode type="json"><![CDATA[
{
  "alg": "EdDSA",
  "typ": "wpt+jwt"
}
]]></sourcecode>
      </figure>
      <t>The decoded JWT claims of the WPT from the example above are shown here:</t>
      <figure>
        <name>Example WPT Claims</name>
        <sourcecode type="json"><![CDATA[
{
  "ath": "CL4wjfpRmNf-bdYIbYLnV9d5rMARGwKYE10wUwzC0jI",
  "aud": "https://workload.example.com/path",
  "exp": 1745510016,
  "jti": "__bwc4ESC3acc2LTC1-_x",
  "wth": "AaYUfC34D1di2FxQLpiIJJ7Sg8VZ6o8OCdwSf9IToLg"
}
]]></sourcecode>
      </figure>
      <t>An example of an HTTP request with both the WIT and WPT from prior examples is shown below:</t>
      <figure>
        <name>Example HTTP Request with WIT and WPT</name>
        <sourcecode type="http"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

POST /path HTTP/1.1
Host: workload.example.com
Content-Type: application/json
Authorization: Bearer 16_mAd0GiwaZokU26_0902100
Workload-Identity-Token: eyJhbGciOiJFUzI1NiIsImtpZCI6Ikp1bmUgNSIsInR\
5cCI6IndpdCtqd3QifQ.eyJjbmYiOnsiandrIjp7ImFsZyI6IkVkRFNBIiwiY3J2Ijoi\
RWQyNTUxOSIsImt0eSI6Ik9LUCIsIngiOiIxQ1hYdmZsTl9MVlZzSXNZWHNVdkIwM0pt\
bEdXZUNIcVFWdW91Q0Y5MmJnIn19LCJleHAiOjE3NDU1MTI1MTAsImlhdCI6MTc0NTUw\
ODkxMCwianRpIjoieC1fMUNUTDJjY2EzQ1NFNGN3Yl9sIiwic3ViIjoid2ltc2U6Ly9l\
eGFtcGxlLmNvbS9zcGVjaWZpYy13b3JrbG9hZCJ9.6KraSQUxWdl9dxFQ3Fj6dPY0Vi8\
8OkwFwZpAIOhLeq6AbXAnLLQgOp8U9UDGcBuYF3KiNv6oKQD1ZWAzrMZOJw
Workload-Proof-Token: eyJhbGciOiJFZERTQSIsInR5cCI6IndwdCtqd3QifQ.eyJ\
hdGgiOiJDTDR3amZwUm1OZi1iZFlJYllMblY5ZDVyTUFSR3dLWUUxMHdVd3pDMGpJIiw\
iYXVkIjoiaHR0cHM6Ly93b3JrbG9hZC5leGFtcGxlLmNvbS9wYXRoIiwiZXhwIjoxNzQ\
1NTEwMDE2LCJqdGkiOiJfX2J3YzRFU0MzYWNjMkxUQzEtX3giLCJ3dGgiOiJBYVlVZkM\
zNEQxZGkyRnhRTHBpSUpKN1NnOFZaNm84T0Nkd1NmOUlUb0xnIn0.PI7d9AcYhLoEgPg\
bJvcM132lkBKnM1NXU-5hZUzVTIyj2dRJaTLFs6e5NYv5gg6AqcV7NvkYCwfgMgWasWQ\
zCA

{"do stuff":"please"}
]]></sourcecode>
      </figure>
      <t>To validate the WPT in the request, the recipient MUST ensure the following:</t>
      <ul spacing="normal">
        <li>
          <t>There is exactly one <tt>Workload-Proof-Token</tt> header field in the request.</t>
        </li>
        <li>
          <t>The <tt>Workload-Proof-Token</tt> header field value is a single and well-formed JWT.</t>
        </li>
        <li>
          <t>The signature algorithm in the <tt>alg</tt> JOSE header string-equal matches the <tt>alg</tt> attribute of the <tt>jwk</tt> in the <tt>cnf</tt> claim of the WIT.</t>
        </li>
        <li>
          <t>The WPT signature is valid using the public key from the confirmation claim of the WIT.</t>
        </li>
        <li>
          <t>The <tt>typ</tt> JOSE header parameter of the WPT conveys a media type of <tt>wpt+jwt</tt>.</t>
        </li>
        <li>
          <t>The <tt>aud</tt> claim of the WPT matches the target URI, or an acceptable alias or normalization thereof, of the HTTP request
 in which the WPT was received, ignoring any query and fragment parts.</t>
        </li>
        <li>
          <t>The <tt>exp</tt> claim is present and conveys a time that has not passed. WPTs with an expiration time unreasonably
 far in the future SHOULD be rejected.</t>
        </li>
        <li>
          <t>The <tt>wth</tt> claim is present and matches the hash of the token value conveyed in the <tt>Workload-Identity-Token</tt> header.</t>
        </li>
        <li>
          <t>It is RECOMMENDED to check that the value of the <tt>jti</tt> claim has not been used before in the time window in which the
 respective WPT would be considered valid.</t>
        </li>
        <li>
          <t>If presented in conjunction with an OAuth access token, the value of the <tt>ath</tt> claim matches the hash of that token's value.</t>
        </li>
        <li>
          <t>If presented in conjunction with a Txn-Token, the value of the <tt>tth</tt> claim matches the hash of that token's value.</t>
        </li>
        <li>
          <t>If presented in conjunction with a token conveying end-user identity or authorization context, the value of
 the <tt>oth</tt> claim matches the hash of that token's value.</t>
        </li>
        <li>
          <t>If the <tt>oth</tt> claim is present, verify the hashes of all tokens listed in the <tt>oth</tt> claim per the default behavior
 defined in <xref target="wpt"/> or as specified by an application specific profile. If the <tt>oth</tt> claim contains entries
 that are not understood by the recipient, the WPT MUST be rejected. Conversely, additional tokens not covered by
 the <tt>oth</tt> claim MUST NOT be used by the recipient to make authorization decisions.</t>
        </li>
      </ul>
      <section anchor="error-conditions">
        <name>Error Conditions</name>
        <t>Errors may occur during the processing of the WPT. If the signature verification fails for any reason,
such as an invalid signature, an expired validity time window, or a malformed data structure, an error is returned. Typically,
this will be in response to an API call, so an HTTP status code such as 400 (Bad Request) is appropriate. This response could
include more details as per <xref target="RFC9457"/>, such as an indicator that the wrong key material or algorithm was used. The use of HTTP
status code 401 is NOT RECOMMENDED for this purpose because it requires a WWW-Authenticate with acceptable http auth mechanisms in
the error response and an associated Authorization header in the subsequent request. The use of these headers for the WIT or WPT is not compatible with this specification.</t>
      </section>
      <section anchor="coexist">
        <name>Coexistence with JWT Bearer Tokens</name>
        <t>The WIT and WPT define new HTTP headers. They can therefore be presented along with existing headers used for JWT bearer tokens. This
property allows for transition from mechanisms using identity tokens based on bearer JWTs to proof of possession based WITs.
A workload may implement a policy that accepts both bearer tokens and WITs during a transition period. This policy may be configurable
per-caller to allow the workload to reject bearer tokens from callers that support WITs. Once a deployment fully supports WITs, then the use of
bearer tokens for identity can be disabled through policy.  Implementations should be careful when implementing such a transition strategy,
since the decision which token to prefer is made when the caller's identity has still not been authenticated, and needs to be revalidated following the authentication step.</t>
        <t>The WIT can also coexist with tokens used to establish security context, such as transaction tokens <xref target="I-D.ietf-oauth-transaction-tokens"/>. In this case a workload's
authorization policy may take into account both the sending workload's identity and the information in the context token. For example, the
identity in the WIT may be used to establish which API calls can be made and information in the context token may be used to determine
which specific resources can be accessed.</t>
      </section>
      <section anchor="add-claims">
        <name>Including Additional Claims</name>
        <t>The WPT contains JSON structures and therefore can be trivially extended by adding more claims beyond those defined in the current specification.
This, however, could result in interoperability issues, which the following rules are addressing.</t>
        <ul spacing="normal">
          <li>
            <t>To ensure interoperability in WIMSE environments, the use of Private claim names (Sec. 4.3 of <xref target="RFC7519"/>) is NOT RECOMMENDED.</t>
          </li>
          <li>
            <t>In closed environments, deployers MAY freely add claims to the WPT. Such claims SHOULD be collision-resistant, such as <tt>example.com/myclaim</tt>.</t>
          </li>
          <li>
            <t>A recipient that does not understand such claims MUST ignore them, as per Sec. 4 of <xref target="RFC7519"/>.</t>
          </li>
          <li>
            <t>Outside of closed environments, new claims MUST be registered with IANA <xref target="IANA.JWT.CLAIMS"/> before they can be used.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="workload-identity-token-and-proof-of-possession">
        <name>Workload Identity Token and Proof of Possession</name>
        <t>The Workload Identity Token (WIT) is bound to a secret cryptographic key and is always presented with a proof of possession as described in <xref target="I-D.ietf-wimse-workload-creds"/>. The WIT is a general purpose token that can be presented in multiple contexts. The WIT and WPT are only used in the application-level options, and both are not used in MTLS. The WIT MUST NOT be used as a bearer token. While this helps reduce the sensitivity of the token it is still possible that a token and its proof of possession may be captured and replayed within the PoP's lifetime. The following are some mitigations for the capture and reuse of the proof of possession (PoP):</t>
        <ul spacing="normal">
          <li>
            <t>Preventing Eavesdropping and Interception with TLS</t>
          </li>
        </ul>
        <t>An attacker observing or intercepting the communication channel can view the token and its proof of possession and attempt to replay it to gain an advantage. In order to prevent this the
token and proof of possession MUST be sent over a secure, server authenticated TLS connection unless a secure channel is provided by some other mechanisms. Host name validation MUST be performed by the client.</t>
        <ul spacing="normal">
          <li>
            <t>Limiting Proof of Possession Lifespan</t>
          </li>
        </ul>
        <t>The proof of possession MUST be time limited. A PoP should only be valid over the time necessary for it to be successfully used for the purpose it is needed. This will typically be on the order of minutes.  PoPs received outside their validity time MUST be rejected.</t>
        <ul spacing="normal">
          <li>
            <t>Limiting Proof of Possession Scope</t>
          </li>
        </ul>
        <t>In order to reduce the risk of theft and replay the PoP should have a limited scope. For example, a PoP may be targeted for use with a specific workload and even a specific transaction to reduce the impact of a stolen PoP. In some cases a workload may wish to reuse a PoP for a period of time or have it accepted by multiple target workloads. A careful analysis is warranted to understand the impacts to the system if a PoP is disclosed allowing it to be presented by an attacker along with a captured WIT.</t>
        <ul spacing="normal">
          <li>
            <t>Replay Protection</t>
          </li>
        </ul>
        <t>A proof of possession includes the <tt>jti</tt> claim that uniquely identifies it.
This claim SHOULD be used by the receiver to perform basic replay protection, within the scope of a particular sender, against tokens it has already seen.
Depending upon the design of the system it may be difficult to synchronize the replay cache across all token validators.
If an attacker can somehow influence the identity of the validator (e.g. which cluster member receives the message) then
replay protection would not be effective.</t>
        <ul spacing="normal">
          <li>
            <t>Binding to TLS Endpoint</t>
          </li>
        </ul>
        <t>The POP MAY be bound to a transport layer sender such as the client identity of a TLS session or TLS channel binding parameters. The mechanisms for binding are outside the scope of this specification.</t>
        <ul spacing="normal">
          <li>
            <t>Audience validation</t>
          </li>
        </ul>
        <t>Validators MUST check that the audience field of the WPT is a URI or other value that is for their consumption.  In some cases when a URI is used as the audience some information, such as the authority portion, may be generated by an external requester who sees a different host name for the service than is used internally.  Validators MUST NOT use untrusted information obtained from the request to determine if the hostname belongs to an authorized authority.  Doing so could allow attackers to trick validators into accepting a WPT generated for a different receiver by sending a fabricated request. The validator MUST get the information about allowed URL authorities from a trusted source such as out-of-band configuration. The Host of the request or an "X-Forwarded-Host" header is an example of untrusted data and cannot be trusted and MUST NOT be used.</t>
      </section>
      <section anchor="workload-identity-key-management">
        <name>Workload Identity Key Management</name>
        <t>The Workload Identity Token is signed by a private key in possession of the workload. This private key:</t>
        <ul spacing="normal">
          <li>
            <t>MUST be kept private</t>
          </li>
          <li>
            <t>MUST be individual for each Workload Identifier (see <xref target="I-D.ietf-wimse-arch"/>)</t>
          </li>
          <li>
            <t>MUST NOT be used once the Workload Identity Token is expired</t>
          </li>
          <li>
            <t>SHOULD be individual for each Workload Identity Token issued</t>
          </li>
          <li>
            <t>SHOULD not be reused for other purposes</t>
          </li>
        </ul>
      </section>
      <section anchor="middleboxes">
        <name>Middle Boxes</name>
        <t>In some deployments the Workload Identity Token and Workload Proof Token may pass through multiple systems. The communication between the systems is over TLS, but the WIT and WPT are available in the clear at each intermediary.  While the intermediary cannot modify the token or the information within the PoP they can attempt to capture and replay the token or modify the data not protected by the PoP.</t>
        <t>It is important to note that the WPT does not protect major portions of the request and response and therefore does not provide protection from an actively malicious middle box.
Deployments should perform analysis on their situation to determine if it is appropriate to trust and allow traffic to pass through a middle box.</t>
      </section>
      <section anchor="privacy-considerations">
        <name>Privacy Considerations</name>
        <t>The Workload Proof Token may contain private information such as user names or other identities. Care should be taken to prevent the disclosure of this information. The use of TLS helps protect the privacy of WITs and proofs of possession.</t>
        <t>The workload identifier present in the WPT is typically associated with a workload and not a specific user, however in some deployments the workload or the HTTP Target URI may be associated directly to a user. While these are exceptional cases a deployment should evaluate if the disclosure of a WPT can be used to track a user.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="json-web-token-claims">
        <name>JSON Web Token Claims</name>
        <t>IANA is requested to add the following entries to the "JSON Web Token Claims" registry <xref target="IANA.JWT.CLAIMS"/>:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Claim Name</th>
              <th align="left">Claim Description</th>
              <th align="left">Change Controller</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">tth</td>
              <td align="left">Transaction Token hash</td>
              <td align="left">IETF</td>
              <td align="left">RFC XXX, <xref target="wpt"/></td>
            </tr>
            <tr>
              <td align="left">wth</td>
              <td align="left">Workload Identity Token hash</td>
              <td align="left">IETF</td>
              <td align="left">RFC XXX, <xref target="wpt"/></td>
            </tr>
            <tr>
              <td align="left">oth</td>
              <td align="left">Other Tokens hashes</td>
              <td align="left">IETF</td>
              <td align="left">RFC XXX, <xref target="wpt"/></td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="media-type-registration">
        <name>Media Type Registration</name>
        <t>IANA is requested to register the following entries to the "Media Types" registry <xref target="IANA.MEDIA.TYPES"/>:</t>
        <ul spacing="normal">
          <li>
            <t>application/wpt+jwt, per <xref target="iana-wpt"/>.</t>
          </li>
        </ul>
        <section anchor="iana-wpt">
          <name>application/wpt+jwt</name>
          <t>Type name: application</t>
          <t>Subtype name: wpt+jwt</t>
          <t>Required parameters: N/A</t>
          <t>Optional parameters: N/A</t>
          <t>Encoding considerations: Encoding considerations are identical to those specified for the "application/jwt" media type. See <xref target="RFC7519"/>.</t>
          <t>Security considerations: See the Security Considerations section of RFC XXX.</t>
          <t>Interoperability considerations: N/A</t>
          <t>Published specification: RFC XXX, <xref target="wpt"/>.</t>
          <t>Applications that use this media type: Workloads that use these tokens to integrity-protect messages in the WIMSE workload-to-workload protocol.</t>
          <t>Fragment identifier considerations: N/A</t>
          <t>Additional information:</t>
          <t>Deprecated alias names for this type: N/A</t>
          <t>Magic number(s): N/A</t>
          <t>File extension(s): None</t>
          <t>Macintosh file type code(s): N/A</t>
          <t>Person &amp; email address to contact for further information:</t>
          <t>See the Authors' Addresses section of RFC XXX.</t>
          <t>Intended usage: COMMON</t>
          <t>Restrictions on usage: N/A</t>
          <t>Author: See the Authors' Addresses section of RFC XXX.</t>
          <t>Change controller: Internet Engineering Task Force (iesg@ietf.org).</t>
        </section>
      </section>
      <section anchor="hypertext-transfer-protocol-http-field-name-registration">
        <name>Hypertext Transfer Protocol (HTTP) Field Name Registration</name>
        <t>IANA is requested to register the following entries to the "Hypertext Transfer Protocol (HTTP) Field Name Registry" <xref target="IANA.HTTP.FIELDS"/>:</t>
        <ul spacing="normal">
          <li>
            <t><tt>Workload-Proof-Token</tt>, per <xref target="iana-wpt-field"/>.</t>
          </li>
        </ul>
        <section anchor="iana-wpt-field">
          <name>Workload-Proof-Token</name>
          <ul spacing="normal">
            <li>
              <t>Field Name: Workload-Proof-Token</t>
            </li>
            <li>
              <t>Status: permanent</t>
            </li>
            <li>
              <t>Structured Type: N/A</t>
            </li>
            <li>
              <t>Specification Document: RFC XXX, <xref target="wpt"/></t>
            </li>
            <li>
              <t>Comments: see reference above for an ABNF syntax of this field</t>
            </li>
          </ul>
        </section>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC5234">
          <front>
            <title>Augmented BNF for Syntax Specifications: ABNF</title>
            <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
            <author fullname="P. Overell" initials="P." surname="Overell"/>
            <date month="January" year="2008"/>
            <abstract>
              <t>Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="68"/>
          <seriesInfo name="RFC" value="5234"/>
          <seriesInfo name="DOI" value="10.17487/RFC5234"/>
        </reference>
        <reference anchor="RFC7515">
          <front>
            <title>JSON Web Signature (JWS)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and an IANA registry defined by that specification. Related encryption capabilities are described in the separate JSON Web Encryption (JWE) specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7515"/>
          <seriesInfo name="DOI" value="10.17487/RFC7515"/>
        </reference>
        <reference anchor="RFC7517">
          <front>
            <title>JSON Web Key (JWK)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>A JSON Web Key (JWK) is a JavaScript Object Notation (JSON) data structure that represents a cryptographic key. This specification also defines a JWK Set JSON data structure that represents a set of JWKs. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and IANA registries established by that specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7517"/>
          <seriesInfo name="DOI" value="10.17487/RFC7517"/>
        </reference>
        <reference anchor="RFC7518">
          <front>
            <title>JSON Web Algorithms (JWA)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>This specification registers cryptographic algorithms and identifiers to be used with the JSON Web Signature (JWS), JSON Web Encryption (JWE), and JSON Web Key (JWK) specifications. It defines several IANA registries for these identifiers.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7518"/>
          <seriesInfo name="DOI" value="10.17487/RFC7518"/>
        </reference>
        <reference anchor="RFC7519">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7519"/>
          <seriesInfo name="DOI" value="10.17487/RFC7519"/>
        </reference>
        <reference anchor="RFC7800">
          <front>
            <title>Proof-of-Possession Key Semantics for JSON Web Tokens (JWTs)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="April" year="2016"/>
            <abstract>
              <t>This specification describes how to declare in a JSON Web Token (JWT) that the presenter of the JWT possesses a particular proof-of- possession key and how the recipient can cryptographically confirm proof of possession of the key by the presenter. Being able to prove possession of a key is also sometimes described as the presenter being a holder-of-key.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7800"/>
          <seriesInfo name="DOI" value="10.17487/RFC7800"/>
        </reference>
        <reference anchor="RFC8725">
          <front>
            <title>JSON Web Token Best Current Practices</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="D. Hardt" initials="D." surname="Hardt"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>JSON Web Tokens, also known as JWTs, are URL-safe JSON-based security tokens that contain a set of claims that can be signed and/or encrypted. JWTs are being widely used and deployed as a simple security token format in numerous protocols and applications, both in the area of digital identity and in other application areas. This Best Current Practices document updates RFC 7519 to provide actionable guidance leading to secure implementation and deployment of JWTs.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="225"/>
          <seriesInfo name="RFC" value="8725"/>
          <seriesInfo name="DOI" value="10.17487/RFC8725"/>
        </reference>
        <reference anchor="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="RFC9449">
          <front>
            <title>OAuth 2.0 Demonstrating Proof of Possession (DPoP)</title>
            <author fullname="D. Fett" initials="D." surname="Fett"/>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="T. Lodderstedt" initials="T." surname="Lodderstedt"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="D. Waite" initials="D." surname="Waite"/>
            <date month="September" year="2023"/>
            <abstract>
              <t>This document describes a mechanism for sender-constraining OAuth 2.0 tokens via a proof-of-possession mechanism on the application level. This mechanism allows for the detection of replay attacks with access and refresh tokens.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9449"/>
          <seriesInfo name="DOI" value="10.17487/RFC9449"/>
        </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="3" month="November" year="2025"/>
            <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-00"/>
        </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="IANA.HTTP.FIELDS" target="https://www.iana.org/assignments/http-fields">
          <front>
            <title>Hypertext Transfer Protocol (HTTP) Field Name Registry</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="IANA.JOSE.ALGS" target="https://www.iana.org/assignments/jose">
          <front>
            <title>JSON Web Signature and Encryption Algorithms</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="IANA.JWT.CLAIMS" target="https://www.iana.org/assignments/jwt">
          <front>
            <title>JSON Web Token Claims</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="IANA.MEDIA.TYPES" target="https://www.iana.org/assignments/media-types">
          <front>
            <title>Media Types</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="IANA.URI.SCHEMES" target="https://www.iana.org/assignments/uri-schemes">
          <front>
            <title>Uniform Resource Identifier (URI) Schemes</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="RFC9457">
          <front>
            <title>Problem Details for HTTP APIs</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <author fullname="E. Wilde" initials="E." surname="Wilde"/>
            <author fullname="S. Dalal" initials="S." surname="Dalal"/>
            <date month="July" year="2023"/>
            <abstract>
              <t>This document defines a "problem detail" to carry machine-readable details of errors in HTTP response content to avoid the need to define new error response formats for HTTP APIs.</t>
              <t>This document obsoletes RFC 7807.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9457"/>
          <seriesInfo name="DOI" value="10.17487/RFC9457"/>
        </reference>
        <reference anchor="I-D.ietf-oauth-transaction-tokens">
          <front>
            <title>Transaction Tokens</title>
            <author fullname="Atul Tulshibagwale" initials="A." surname="Tulshibagwale">
              <organization>CrowdStrike</organization>
            </author>
            <author fullname="George Fletcher" initials="G." surname="Fletcher">
              <organization>Practical Identity LLC</organization>
            </author>
            <author fullname="Pieter Kasselman" initials="P." surname="Kasselman">
              <organization>Defakto Security</organization>
            </author>
            <date day="2" month="March" year="2026"/>
            <abstract>
              <t>   Transaction Tokens (Txn-Tokens) are designed to maintain and
   propagate user identity, workload identity and authorization context
   throughout the Call Chain within a trusted domain during the
   processing of external requests (e.g. such as API calls) or requests
   initiated internally within the trust domain.  Txn-Tokens ensure that
   this context is preserved throughout the Call Chain thereby enhancing
   security and consistency in complex, multi-service architectures.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-transaction-tokens-08"/>
        </reference>
      </references>
    </references>
    <?line 384?>

<section anchor="document-history">
      <name>Document History</name>
      <t><cref>RFC Editor: please remove before publication.</cref></t>
      <section anchor="draft-ietf-wimse-wpt-01">
        <name>draft-ietf-wimse-wpt-01</name>
        <ul spacing="normal">
          <li>
            <t>Clairify treatment of "jti" claim</t>
          </li>
          <li>
            <t>Fix Example WPT Claims to match the example WPT</t>
          </li>
          <li>
            <t>Inline the ABNF for the Workload-Proof-Token Header Field in <xref target="wpt-header-abnf"/></t>
          </li>
          <li>
            <t>Add audience security considerations</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-wimse-wpt-00">
        <name>draft-ietf-wimse-wpt-00</name>
        <ul spacing="normal">
          <li>
            <t>Focus on Workload Proof Token (WPT) only.
            </t>
            <ul spacing="normal">
              <li>
                <t>Remove credential formats (WIT and WIC)</t>
              </li>
              <li>
                <t>Remove HTTP-Message-Signature profile</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-wimse-s2s-protocol-07">
        <name>draft-ietf-wimse-s2s-protocol-07</name>
        <ul spacing="normal">
          <li>
            <t>Rework the WPT's <tt>oth</tt> claim.</t>
          </li>
          <li>
            <t>update the media types.</t>
          </li>
          <li>
            <t>Discuss extensibility of WIT and WPT.</t>
          </li>
          <li>
            <t>Clarify error handling, specifically why not HTTP 401.</t>
          </li>
          <li>
            <t>Correct the code examples.</t>
          </li>
          <li>
            <t>Add registration request content for a <tt>wimse</tt> URI scheme.</t>
          </li>
          <li>
            <t>New section on key management.</t>
          </li>
          <li>
            <t>Use of the <tt>Accept-Signature</tt> header.</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-wimse-s2s-protocol-06">
        <name>draft-ietf-wimse-s2s-protocol-06</name>
        <ul spacing="normal">
          <li>
            <t>Explicit definition of the Workload Identity Certificate.</t>
          </li>
          <li>
            <t>Definition of the validation of workload identifiers as part of workload authentication. Still work in progress.</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-wimse-s2s-protocol-05">
        <name>draft-ietf-wimse-s2s-protocol-05</name>
        <ul spacing="normal">
          <li>
            <t>Removed the entire Workload Identity section which is now covered in the Architecture document.</t>
          </li>
          <li>
            <t>Content-Digest is mandatory with HTTP-Sig.</t>
          </li>
          <li>
            <t>Some wording on extending the protocol beyond HTTP.</t>
          </li>
          <li>
            <t>IANA considerations.</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-wimse-s2s-protocol-04">
        <name>draft-ietf-wimse-s2s-protocol-04</name>
        <ul spacing="normal">
          <li>
            <t>Require <tt>cnf.jwk.alg</tt> in WIT which restricts signature algorithm of WPT or HTTP-Sig.</t>
          </li>
          <li>
            <t>Replay protection as a SHOULD for both WPT and HTTP-Sig.</t>
          </li>
          <li>
            <t>Consolidate terminology with the Architecture draft.</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-wimse-s2s-protocol-03">
        <name>draft-ietf-wimse-s2s-protocol-03</name>
        <ul spacing="normal">
          <li>
            <t>Consistently use "workload".</t>
          </li>
          <li>
            <t>Implement comments from the SPIFFE community.</t>
          </li>
          <li>
            <t>Make <tt>iss</tt> claim in WIT optional and add wording about its relation to key distribution.</t>
          </li>
          <li>
            <t>Remove <tt>iss</tt> claim from WPT.</t>
          </li>
          <li>
            <t>Make <tt>jti</tt> claim in WIT optional.</t>
          </li>
          <li>
            <t>Error handling for the application level methods.</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-wimse-s2s-protocol-02">
        <name>draft-ietf-wimse-s2s-protocol-02</name>
        <ul spacing="normal">
          <li>
            <t>Coexistence with bearer tokens.</t>
          </li>
          <li>
            <t>Improve the architecture diagram.</t>
          </li>
          <li>
            <t>Some more ABNF.</t>
          </li>
          <li>
            <t>Clarified identifiers and URIs.</t>
          </li>
          <li>
            <t>Moved an author to acknowledgments.</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-wimse-s2s-protocol-01">
        <name>draft-ietf-wimse-s2s-protocol-01</name>
        <ul spacing="normal">
          <li>
            <t>Addressed multiple comments from Pieter.</t>
          </li>
          <li>
            <t>Clarified WIMSE identity concepts, specifically "trust domain"
and "workload identifier".</t>
          </li>
          <li>
            <t>Much more detail around mTLS, including some normative language.</t>
          </li>
          <li>
            <t>WIT (the identity token) is now included in the WPT proof of possession.</t>
          </li>
          <li>
            <t>Added a section comparing the DPoP-inspired app-level security option to
the Message Signature-based alternative.</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-wimse-s2s-protocol-00">
        <name>draft-ietf-wimse-s2s-protocol-00</name>
        <ul spacing="normal">
          <li>
            <t>Initial WG draft, an exact copy of draft-sheffer-wimse-s2s-protocol-00</t>
          </li>
          <li>
            <t>Added this document history section</t>
          </li>
        </ul>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank Pieter Kasselman for his detailed comments.</t>
      <t>We thank Daniel Feldman for his contributions to earlier versions of this document.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
b6KzZwAA

-->

</rfc>
