<?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-skokan-oauth-additional-hashes-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="Additional Hashes for OAuth PoP and PKCE">Additional Hash Algorithms for OAuth 2.0 PKCE and Proof-of-Possession</title>
    <seriesInfo name="Internet-Draft" value="draft-skokan-oauth-additional-hashes-01"/>
    <author fullname="Filip Skokan">
      <organization>Okta</organization>
      <address>
        <email>panva.ip@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="February" day="26"/>
    <area>Security</area>
    <workgroup>Web Authorization Protocol</workgroup>
    <keyword>oauth</keyword>
    <keyword>pkce</keyword>
    <keyword>dpop</keyword>
    <keyword>mtls</keyword>
    <abstract>
      <?line 57?>

<t>This document defines SHA-512 as an additional hash algorithm for
OAuth 2.0 Proof Key for Code Exchange (PKCE), mutual-TLS
certificate-bound access tokens, and Demonstrating Proof of
Possession (DPoP), for use in deployments operating under security
policies that prohibit the use of SHA-256, which is otherwise
mandated or the only option in these mechanisms.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-skokan-oauth-additional-hashes/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/panva/draft-oauth-additional-hashes"/>.</t>
    </note>
  </front>
  <middle>
    <?line 67?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Several OAuth 2.0 mechanisms exclusively mandate the use of SHA-256:
Proof Key for Code Exchange (PKCE) <xref target="RFC7636"/>, mutual-TLS
certificate-bound access tokens <xref target="RFC8705"/>, and Demonstrating Proof
of Possession (DPoP) <xref target="RFC9449"/>.</t>
      <t>Security policies, such as the US Commercial National Security
Algorithm (CNSA 2.0) Suite <xref target="cnsafaq"/>, prohibit the use of SHA-256 and
require SHA-384 or SHA-512. This prevents the deployment of these
OAuth 2.0 mechanisms in such environments.</t>
      <t>This document addresses this gap by defining SHA-512 alternatives
for each of these mechanisms, for use in deployments operating
under such constrained policies. For PKCE, a new <tt>S512</tt> code challenge
method is defined. For mutual-TLS certificate-bound access tokens,
a new <tt>x5t#S512</tt> confirmation method is defined. For DPoP, this
document defines SHA-512 alternatives for the JWK Thumbprint
confirmation method (<tt>jkt#S512</tt>) and the access token hash claim
(<tt>ath#S512</tt>), as well as an extensible framework for
authorization code binding and access token hash algorithm
negotiation.</t>
      <t>[[TODO: The hash algorithm chosen by this document is
currently SHA-512. The working group should determine whether to
define SHA-384 or SHA-512.]]</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<t>All references to "CNSA 2.0" in this document refer to CNSA 2.0
<xref target="cnsafaq"/>, unless stated otherwise.</t>
    </section>
    <section anchor="purpose-and-scope">
      <name>Purpose and Scope</name>
      <t>The sole purpose of this document is to enable deployments operating
under security policies that prohibit SHA-256 to use PKCE,
mutual-TLS certificate-bound access tokens, and DPoP. In such
constrained
deployments, the SHA-512 alternatives defined herein are used in
place of their SHA-256 counterparts, since those deployments cannot
use SHA-256 at all.</t>
      <t>This document does not deprecate the SHA-256 based methods defined
in existing specifications. The SHA-256 based methods remain the
widely deployed, interoperable and recommended defaults for all
mechanisms addressed by this document. Deployments that are not
subject to such security policies <bcp14>SHOULD NOT</bcp14> offer or use the
SHA-512 based methods defined herein.</t>
      <t>The negotiation mechanisms defined herein may however facilitate a
broader transition away from SHA-256 in the future, should that
become necessary.</t>
    </section>
    <section anchor="pkce">
      <name>PKCE</name>
      <t>Proof Key for Code Exchange (PKCE) <xref target="RFC7636"/> defines <tt>plain</tt> and
<tt>S256</tt> as code challenge methods, with <tt>S256</tt> being the only method
that applies a
cryptographic hash to the code verifier. The specification
establishes the "PKCE Code Challenge Methods" registry, which this
document uses to register the <tt>S512</tt> code challenge method.</t>
      <section anchor="S512">
        <name><tt>S512</tt> Code Challenge Method</name>
        <t>This document defines a new code challenge method for use with
PKCE <xref target="RFC7636"/>. The client creates a code challenge derived from
the code verifier by using the following transformation on the code
verifier:</t>
        <dl>
          <dt>S512:</dt>
          <dd>
            <t>code_challenge = BASE64URL(SHA-512(ASCII(code_verifier)))</t>
          </dd>
        </dl>
        <t>The server-side verification of the code verifier follows
<xref section="4.6" sectionFormat="of" target="RFC7636"/>, using SHA-512 as the hash algorithm.</t>
      </section>
      <section anchor="as-metadata">
        <name>Authorization Server Metadata</name>
        <t>An Authorization Server that supports the <tt>S512</tt> code challenge
method <bcp14>MUST</bcp14> advertise its support by including <tt>S512</tt> in the
<tt>code_challenge_methods_supported</tt> metadata parameter value, as
defined in OAuth 2.0 Authorization Server Metadata <xref target="RFC8414"/> or
OpenID Connect Discovery 1.0 <xref target="OpenID.Discovery"/>.</t>
        <t>A Client intending to use the <tt>S512</tt> code challenge method <bcp14>MUST</bcp14>
first confirm that the Authorization Server supports it by checking
the <tt>code_challenge_methods_supported</tt> metadata value. A Client <bcp14>MUST
NOT</bcp14> use the <tt>S512</tt> code challenge method if the Authorization Server
does not advertise support for it.</t>
      </section>
    </section>
    <section anchor="mtls">
      <name>Mutual-TLS</name>
      <t>OAuth 2.0 Mutual-TLS Client Authentication and Certificate-Bound
Access Tokens <xref target="RFC8705"/> exclusively uses SHA-256 for
certificate-bound access tokens via the <tt>x5t#S256</tt> confirmation
method. No alternative hash algorithms or extension points for hash
algorithm negotiation are defined. This document defines the
<tt>x5t#S512</tt> confirmation method and a Resource Server metadata
parameter for negotiating the confirmation method.</t>
      <section anchor="x5t-S512">
        <name><tt>x5t#S512</tt> Confirmation Method</name>
        <t>RFC 8705 <xref target="RFC8705"/> defines the <tt>x5t#S256</tt> confirmation method
member for binding access tokens to a client certificate using a
SHA-256 hash of the DER-encoded X.509 certificate.</t>
        <t>This document defines an analogous confirmation method member
<tt>x5t#S512</tt> that uses SHA-512 as the hash algorithm:</t>
        <dl>
          <dt>x5t#S512:</dt>
          <dd>
            <t>The value is a base64url-encoded SHA-512 hash of the
DER encoding of the X.509 certificate.</t>
          </dd>
        </dl>
        <t>When using <tt>x5t#S512</tt>, the Authorization Server computes the
SHA-512 hash of the client certificate presented during mutual-TLS
and includes the result as the <tt>x5t#S512</tt> member of the <tt>cnf</tt>
claim in the access token (for JWT access tokens) or associates
it with the token for later retrieval via token introspection
<xref target="RFC7662"/>.</t>
        <t>The Resource Server <bcp14>MUST</bcp14> compute the SHA-512 hash of the client
certificate presented during mutual-TLS and compare it with the
<tt>x5t#S512</tt> value in the <tt>cnf</tt> claim. If the values do not match,
the Resource Server <bcp14>MUST</bcp14> reject the request.</t>
        <t>The choice of <tt>x5t#S512</tt> over <tt>x5t#S256</tt> is a deployment decision.
It can be configured out of band or by the Authorization Server
using the Resource Server's metadata (<xref target="mtls-rs-metadata"/>).</t>
        <t>[[TODO: <xref section="3.1" sectionFormat="of" target="RFC7800"/> does not preclude
the presence of both <tt>x5t#S256</tt> and <tt>x5t#S512</tt> in the same <tt>cnf</tt>
claim. Including both would not represent confirmations for two
different keys but rather two different hash confirmations of the
same certificate. This may actually be useful during a transition
period in possible future non-constrained deployment scenarios.
The working group should determine whether to prohibit or allow
this.]]</t>
      </section>
      <section anchor="mtls-rs-metadata">
        <name>Resource Server Metadata</name>
        <t>This document defines the <tt>mtls_confirmation_methods_supported</tt>
Resource Server metadata parameter <xref target="RFC9728"/>. Its value is a JSON
array containing the mutual-TLS confirmation method names that the
Resource Server supports. Defined values are <tt>x5t#S256</tt> and
<tt>x5t#S512</tt>. If omitted, the default is <tt>["x5t#S256"]</tt>.</t>
      </section>
    </section>
    <section anchor="dpop">
      <name>DPoP</name>
      <t>OAuth 2.0 Demonstrating Proof of Possession (DPoP) <xref target="RFC9449"/>
exclusively uses SHA-256 for all of its hash
operations: the <tt>jkt</tt> confirmation method, the <tt>ath</tt> access token
hash claim, and the <tt>dpop_jkt</tt> authorization code binding parameter.
No alternative hash algorithms or extension points for hash
algorithm negotiation are defined.</t>
      <t><xref section="11.10" sectionFormat="of" target="RFC9449"/> anticipated the need for hash algorithm
agility and foresaw that a future specification would define a new
confirmation method, JWT claim, and authorization request parameter
for use as alternatives to their SHA-256 counterparts. This document
defines those DPoP mechanisms: the <tt>dpop_jkt_method</tt> authorization
request parameter, the <tt>jkt#S512</tt> confirmation method, and the
<tt>ath#S512</tt> JWT claim. In constrained deployments where SHA-256 is
prohibited, these are used in place of their SHA-256 counterparts
rather than alongside them.</t>
      <section anchor="authorization-code-binding-methods">
        <name>Authorization Code Binding Methods</name>
        <section anchor="dpop-jkt-method">
          <name><tt>dpop_jkt_method</tt> Authorization Request Parameter</name>
          <t>RFC 9449 <xref target="RFC9449"/> defines the <tt>dpop_jkt</tt> authorization request
parameter as the JWK Thumbprint <xref target="RFC7638"/> of the DPoP public key
using SHA-256. This document changes the definition of <tt>dpop_jkt</tt>
to allow alternative hash algorithms indicated by the
<tt>dpop_jkt_method</tt> parameter.</t>
          <t>This document defines the <tt>dpop_jkt_method</tt> authorization request
parameter, sent alongside <tt>dpop_jkt</tt>, to indicate the hash algorithm
used to compute the JWK Thumbprint. The following method values are
defined:</t>
          <dl>
            <dt>S256:</dt>
            <dd>
              <t>JWK Thumbprint <xref target="RFC7638"/> using SHA-256, as originally
defined in <xref section="10" sectionFormat="of" target="RFC9449"/>.</t>
            </dd>
            <dt>S512:</dt>
            <dd>
              <t>JWK Thumbprint <xref target="RFC7638"/> using SHA-512.</t>
            </dd>
          </dl>
          <t>For backwards compatibility, when <tt>dpop_jkt_method</tt> is absent from
the authorization request, the Authorization Server <bcp14>MUST</bcp14> assume the
value <tt>S256</tt>.</t>
          <t>The value of <tt>dpop_jkt</tt> <bcp14>MUST</bcp14> be computed using the hash algorithm
indicated by <tt>dpop_jkt_method</tt>.</t>
        </section>
        <section anchor="dpop-as-metadata">
          <name>Authorization Server Metadata</name>
          <t>This document defines the <tt>dpop_jkt_methods_supported</tt> Authorization
Server metadata parameter. Its value is a JSON array containing the
<tt>dpop_jkt_method</tt> values that the Authorization Server supports.</t>
          <t>An Authorization Server that supports <tt>dpop_jkt_method</tt> values
beyond <tt>S256</tt> <bcp14>MUST</bcp14> advertise its support by including the supported
values in the <tt>dpop_jkt_methods_supported</tt> metadata parameter.</t>
          <t>A Client intending to use a <tt>dpop_jkt_method</tt> value other than
<tt>S256</tt> <bcp14>MUST</bcp14> first confirm that the Authorization Server supports it
by checking the <tt>dpop_jkt_methods_supported</tt> metadata value. A
Client <bcp14>MUST NOT</bcp14> use a <tt>dpop_jkt_method</tt> value that the Authorization
Server does not advertise support for.</t>
        </section>
      </section>
      <section anchor="sha-512-hash-algorithms">
        <name>SHA-512 Hash Algorithms</name>
        <section anchor="jkt-S512">
          <name><tt>jkt#S512</tt> Confirmation Method</name>
          <t>RFC 9449 <xref target="RFC9449"/> defines the <tt>jkt</tt> confirmation method member
for binding access tokens to a DPoP public key using a SHA-256
JWK Thumbprint <xref target="RFC7638"/>.</t>
          <t>This document defines an analogous confirmation method member
<tt>jkt#S512</tt> that uses SHA-512 as the hash algorithm:</t>
          <dl>
            <dt>jkt#S512:</dt>
            <dd>
              <t>The value is the base64url encoding of the JWK
Thumbprint <xref target="RFC7638"/> computed using SHA-512 of the DPoP
public key (in JWK format) to which the access token is bound.</t>
            </dd>
          </dl>
          <t>When using <tt>jkt#S512</tt>, the Authorization Server computes the
SHA-512 JWK Thumbprint of the DPoP public key and includes the
result as the <tt>jkt#S512</tt> member of the <tt>cnf</tt> claim in the access
token (for JWT access tokens) or associates it with the token
for later retrieval via token introspection <xref target="RFC7662"/>.</t>
          <t>The Resource Server <bcp14>MUST</bcp14> compute the SHA-512 JWK Thumbprint of
the DPoP public key and compare it with the <tt>jkt#S512</tt> value in
the <tt>cnf</tt> claim. If the values do not match, the Resource Server
<bcp14>MUST</bcp14> reject the request.</t>
          <t>The choice of <tt>jkt#S512</tt> over <tt>jkt</tt> is a deployment decision. It
can be configured out of band or by the Authorization Server using
the Resource Server's metadata (<xref target="dpop-rs-metadata"/>).</t>
          <t>[[TODO: <xref section="3.1" sectionFormat="of" target="RFC7800"/> does not preclude
the presence of both <tt>jkt</tt> and <tt>jkt#S512</tt> in the same <tt>cnf</tt> claim.
Including both would not represent confirmations for two different
keys but rather two different hash confirmations of the same key.
This may actually be useful during a transition period in possible
future non-constrained deployment scenarios. The working group
should determine whether to prohibit or allow this.]]</t>
        </section>
        <section anchor="dpop-ath">
          <name><tt>ath#S512</tt> Access Token Hash</name>
          <t>RFC 9449 <xref target="RFC9449"/> defines the <tt>ath</tt> claim in the DPoP proof JWT
as the base64url-encoded SHA-256 hash of the ASCII encoding of the
access token value.</t>
          <t>This document defines an analogous claim <tt>ath#S512</tt> that uses
SHA-512 as the hash algorithm:</t>
          <dl>
            <dt>ath#S512:</dt>
            <dd>
              <t>The value is the base64url encoding of the SHA-512 hash of
the ASCII encoding of the associated access token's value.</t>
            </dd>
          </dl>
          <t>When used, <tt>ath#S512</tt> is included in the DPoP proof JWT in place
of <tt>ath</tt>.</t>
          <t>[[TODO: Including both <tt>ath</tt> and <tt>ath#S512</tt> in the same DPoP proof
JWT would not represent hashes of two different access tokens but
rather two different hash confirmations of the same access token.
This may actually be useful during a transition period in possible
future non-constrained deployment scenarios. The working group
should determine whether to prohibit or allow this.]]</t>
          <t>The Resource Server <bcp14>MUST</bcp14> compute the SHA-512 hash of the ASCII
encoding of the access token value and compare it with the
<tt>ath#S512</tt> value in the DPoP proof JWT. If the values do not
match, the Resource Server <bcp14>MUST</bcp14> reject the request.</t>
          <t>A Resource Server <bcp14>MAY</bcp14> signal the required access token hash method
by including the <tt>ath_method</tt> parameter in the <tt>WWW-Authenticate:
DPoP</tt> challenge. The value of <tt>ath_method</tt> is the name of the claim
the Client <bcp14>MUST</bcp14> use: <tt>ath</tt> for SHA-256 or <tt>ath#S512</tt> for SHA-512.
When <tt>ath_method</tt> is absent, the Client <bcp14>MUST</bcp14> use <tt>ath</tt>.
Additionally, Resource Server metadata for the supported access
token hash methods is defined in <xref target="dpop-rs-metadata"/>.</t>
          <t>The following is a non-normative example of an HTTP response
signalling the client to use <tt>ath#S512</tt>:</t>
          <sourcecode type="http-message"><![CDATA[
HTTP/1.1 401 Unauthorized
WWW-Authenticate: DPoP algs="Ed25519", ath_method="ath#S512"
]]></sourcecode>
        </section>
        <section anchor="dpop-rs-metadata">
          <name>Resource Server Metadata</name>
          <t>This document defines the following Resource Server metadata
parameters <xref target="RFC9728"/>:</t>
          <dl>
            <dt>dpop_confirmation_methods_supported:</dt>
            <dd>
              <t>JSON array containing the DPoP confirmation method names
that the Resource Server supports. Defined values are <tt>jkt</tt>
and <tt>jkt#S512</tt>. If omitted, the default is <tt>["jkt"]</tt>.</t>
            </dd>
            <dt>dpop_access_token_hash_methods_supported:</dt>
            <dd>
              <t>JSON array containing the access token hash claim names
that the Resource Server supports. Defined values are <tt>ath</tt>
and <tt>ath#S512</tt>. If omitted, the default is <tt>["ath"]</tt>.</t>
            </dd>
          </dl>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The <tt>S512</tt> code challenge method provides the same structural
security properties as <tt>S256</tt>. It is a one-way transformation of
the code verifier that prevents an attacker who intercepts the
authorization code from computing the code verifier needed to exchange
it for tokens.</t>
      <t>The <tt>x5t#S512</tt> confirmation method provides the same structural
security properties as <tt>x5t#S256</tt> defined in <xref target="RFC8705"/>.</t>
      <t>The <tt>jkt#S512</tt> confirmation method, <tt>dpop_jkt</tt> combined with
<tt>dpop_jkt_method</tt> parameter, and <tt>ath#S512</tt> claim provide the same
structural security properties as their SHA-256 counterparts
defined in DPoP <xref target="RFC9449"/>.</t>
      <t>SHA-512 provides a 256-bit collision resistance and 512-bit preimage
resistance, exceeding the 128-bit and 256-bit levels provided by
SHA-256. The use of SHA-512 is suitable for deployments with elevated
security requirements.</t>
      <t>Deployments that do not have restrictions on use of SHA-256
do not need to migrate away from the established SHA-256 based
mechanisms.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="pkce-code-challenge-method-registration">
        <name>PKCE Code Challenge Method Registration</name>
        <t>This document requests registration of the following value in the
"PKCE Code Challenge Methods" registry established by <xref section="6.2" sectionFormat="of" target="RFC7636"/>:</t>
        <dl>
          <dt>Code Challenge Method Parameter Name:</dt>
          <dd>
            <t><tt>S512</tt></t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="S512"/> of this document</t>
          </dd>
        </dl>
      </section>
      <section anchor="dpop-binding-registry">
        <name>DPoP Authorization Code Binding Methods Registry</name>
        <t>This document establishes the "DPoP Authorization Code Binding
Methods" registry for <tt>dpop_jkt_method</tt> values.</t>
        <t>New entries are registered using the Specification Required policy
<xref target="RFC5226"/>.</t>
        <t>The initial contents of the registry are:</t>
        <dl>
          <dt>Method Name:</dt>
          <dd>
            <t><tt>S256</tt></t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref section="10" sectionFormat="of" target="RFC9449"/></t>
          </dd>
          <dt>Method Name:</dt>
          <dd>
            <t><tt>S512</tt></t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="dpop-jkt-method"/> of this document</t>
          </dd>
        </dl>
      </section>
      <section anchor="oauth-parameters-registrations">
        <name>OAuth Parameters Registrations</name>
        <t>This document requests registration of the following value in the
"OAuth Parameters" registry established by <xref target="RFC6749"/>:</t>
        <dl>
          <dt>Parameter Name:</dt>
          <dd>
            <t><tt>dpop_jkt_method</tt></t>
          </dd>
          <dt>Parameter Usage Location:</dt>
          <dd>
            <t>authorization request</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="dpop-jkt-method"/> of this document</t>
          </dd>
        </dl>
      </section>
      <section anchor="oauth-authorization-server-metadata-registration">
        <name>OAuth Authorization Server Metadata Registration</name>
        <t>This document requests registration of the following value in the
"OAuth Authorization Server Metadata" registry established by
<xref target="RFC8414"/>:</t>
        <dl>
          <dt>Metadata Name:</dt>
          <dd>
            <t><tt>dpop_jkt_methods_supported</tt></t>
          </dd>
          <dt>Metadata Description:</dt>
          <dd>
            <t>JSON array containing a list of the <tt>dpop_jkt_method</tt>
values supported by the Authorization Server</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="dpop-as-metadata"/> of this document</t>
          </dd>
        </dl>
      </section>
      <section anchor="jwt-claims-registration">
        <name>JWT Claims Registration</name>
        <t>This document requests registration of the following value in the
"JSON Web Token Claims" registry established by <xref target="RFC7519"/>:</t>
        <dl>
          <dt>Claim Name:</dt>
          <dd>
            <t><tt>ath#S512</tt></t>
          </dd>
          <dt>Claim Description:</dt>
          <dd>
            <t>The base64url-encoded SHA-512 hash of the ASCII encoding
of the associated access token's value</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="dpop-ath"/> of this document</t>
          </dd>
        </dl>
      </section>
      <section anchor="oauth-protected-resource-metadata-registrations">
        <name>OAuth Protected Resource Metadata Registrations</name>
        <t>This document requests registration of the following values in the
"OAuth Protected Resource Metadata" registry established by
<xref target="RFC9728"/>:</t>
        <dl>
          <dt>Metadata Name:</dt>
          <dd>
            <t><tt>dpop_confirmation_methods_supported</tt></t>
          </dd>
          <dt>Metadata Description:</dt>
          <dd>
            <t>JSON array containing a list of the DPoP confirmation
method names supported by the Resource Server</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="dpop-rs-metadata"/> of this document</t>
          </dd>
          <dt>Metadata Name:</dt>
          <dd>
            <t><tt>dpop_access_token_hash_methods_supported</tt></t>
          </dd>
          <dt>Metadata Description:</dt>
          <dd>
            <t>JSON array containing a list of the access token hash
claim names supported by the Resource Server</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="dpop-rs-metadata"/> of this document</t>
          </dd>
          <dt>Metadata Name:</dt>
          <dd>
            <t><tt>mtls_confirmation_methods_supported</tt></t>
          </dd>
          <dt>Metadata Description:</dt>
          <dd>
            <t>JSON array containing a list of the mutual-TLS
confirmation method names supported by the Resource Server</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="mtls-rs-metadata"/> of this document</t>
          </dd>
        </dl>
      </section>
      <section anchor="jwt-confirmation-methods-registrations">
        <name>JWT Confirmation Methods Registrations</name>
        <t>This document requests registration of the following values in the
"JWT Confirmation Methods" registry established by <xref target="RFC7800"/>:</t>
        <dl>
          <dt>Confirmation Method Value:</dt>
          <dd>
            <t><tt>x5t#S512</tt></t>
          </dd>
          <dt>Confirmation Method Description:</dt>
          <dd>
            <t>X.509 Certificate SHA-512 Thumbprint</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="x5t-S512"/> of this document</t>
          </dd>
          <dt>Confirmation Method Value:</dt>
          <dd>
            <t><tt>jkt#S512</tt></t>
          </dd>
          <dt>Confirmation Method Description:</dt>
          <dd>
            <t>JWK SHA-512 Thumbprint</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Specification Document(s):</dt>
          <dd>
            <t><xref target="jkt-S512"/> of this document</t>
          </dd>
        </dl>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC7636">
          <front>
            <title>Proof Key for Code Exchange by OAuth Public Clients</title>
            <author fullname="N. Sakimura" initials="N." role="editor" surname="Sakimura"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Agarwal" initials="N." surname="Agarwal"/>
            <date month="September" year="2015"/>
            <abstract>
              <t>OAuth 2.0 public clients utilizing the Authorization Code Grant are susceptible to the authorization code interception attack. This specification describes the attack as well as a technique to mitigate against the threat through the use of Proof Key for Code Exchange (PKCE, pronounced "pixy").</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7636"/>
          <seriesInfo name="DOI" value="10.17487/RFC7636"/>
        </reference>
        <reference anchor="RFC7638">
          <front>
            <title>JSON Web Key (JWK) Thumbprint</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="September" year="2015"/>
            <abstract>
              <t>This specification defines a method for computing a hash value over a JSON Web Key (JWK). It defines which fields in a JWK are used in the hash computation, the method of creating a canonical form for those fields, and how to convert the resulting Unicode string into a byte sequence to be hashed. The resulting hash value can be used for identifying or selecting the key represented by the JWK that is the subject of the thumbprint.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7638"/>
          <seriesInfo name="DOI" value="10.17487/RFC7638"/>
        </reference>
        <reference anchor="RFC8414">
          <front>
            <title>OAuth 2.0 Authorization Server Metadata</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <date month="June" year="2018"/>
            <abstract>
              <t>This specification defines a metadata format that an OAuth 2.0 client can use to obtain the information needed to interact with an OAuth 2.0 authorization server, including its endpoint locations and authorization server capabilities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8414"/>
          <seriesInfo name="DOI" value="10.17487/RFC8414"/>
        </reference>
        <reference anchor="RFC8705">
          <front>
            <title>OAuth 2.0 Mutual-TLS Client Authentication and Certificate-Bound Access Tokens</title>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <author fullname="T. Lodderstedt" initials="T." surname="Lodderstedt"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>This document describes OAuth client authentication and certificate-bound access and refresh tokens using mutual Transport Layer Security (TLS) authentication with X.509 certificates. OAuth clients are provided a mechanism for authentication to the authorization server using mutual TLS, based on either self-signed certificates or public key infrastructure (PKI). OAuth authorization servers are provided a mechanism for binding access tokens to a client's mutual-TLS certificate, and OAuth protected resources are provided a method for ensuring that such an access token presented to it was issued to the client presenting the token.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8705"/>
          <seriesInfo name="DOI" value="10.17487/RFC8705"/>
        </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="RFC9728">
          <front>
            <title>OAuth 2.0 Protected Resource Metadata</title>
            <author fullname="M.B. Jones" initials="M.B." surname="Jones"/>
            <author fullname="P. Hunt" initials="P." surname="Hunt"/>
            <author fullname="A. Parecki" initials="A." surname="Parecki"/>
            <date month="April" year="2025"/>
            <abstract>
              <t>This specification defines a metadata format that an OAuth 2.0 client or authorization server can use to obtain the information needed to interact with an OAuth 2.0 protected resource.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9728"/>
          <seriesInfo name="DOI" value="10.17487/RFC9728"/>
        </reference>
        <reference anchor="OpenID.Discovery" target="https://openid.net/specs/openid-connect-discovery-1_0-errata2.html">
          <front>
            <title>OpenID Connect Discovery 1.0 incorporating errata set 2</title>
            <author initials="N." surname="Sakimura">
              <organization/>
            </author>
            <author initials="J." surname="Bradley">
              <organization/>
            </author>
            <author initials="M." surname="Jones">
              <organization/>
            </author>
            <author initials="E." surname="Jay">
              <organization/>
            </author>
            <date year="2023" month="December"/>
          </front>
        </reference>
        <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="RFC5226">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <author fullname="H. Alvestrand" initials="H." surname="Alvestrand"/>
            <date month="May" year="2008"/>
            <abstract>
              <t>Many protocols make use of identifiers consisting of constants and other well-known values. Even after a protocol has been defined and deployment has begun, new values may need to be assigned (e.g., for a new option type in DHCP, or a new encryption or authentication transform for IPsec). To ensure that such quantities have consistent values and interpretations across all implementations, their assignment must be administered by a central authority. For IETF protocols, that role is provided by the Internet Assigned Numbers Authority (IANA).</t>
              <t>In order for IANA to manage a given namespace prudently, it needs guidelines describing the conditions under which new values can be assigned or when modifications to existing values can be made. If IANA is expected to play a role in the management of a namespace, IANA must be given clear and concise instructions describing that role. This document discusses issues that should be considered in formulating a policy for assigning values to a namespace and provides guidelines for authors on the specific text that must be included in documents that place demands on IANA.</t>
              <t>This document obsoletes RFC 2434. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5226"/>
          <seriesInfo name="DOI" value="10.17487/RFC5226"/>
        </reference>
        <reference anchor="RFC6749">
          <front>
            <title>The OAuth 2.0 Authorization Framework</title>
            <author fullname="D. Hardt" initials="D." role="editor" surname="Hardt"/>
            <date month="October" year="2012"/>
            <abstract>
              <t>The OAuth 2.0 authorization framework enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowing the third-party application to obtain access on its own behalf. This specification replaces and obsoletes the OAuth 1.0 protocol described in RFC 5849. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6749"/>
          <seriesInfo name="DOI" value="10.17487/RFC6749"/>
        </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC7662">
          <front>
            <title>OAuth 2.0 Token Introspection</title>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <date month="October" year="2015"/>
            <abstract>
              <t>This specification defines a method for a protected resource to query an OAuth 2.0 authorization server to determine the active state of an OAuth 2.0 token and to determine meta-information about this token. OAuth 2.0 deployments can use this method to convey information about the authorization context of the token from the authorization server to the protected resource.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7662"/>
          <seriesInfo name="DOI" value="10.17487/RFC7662"/>
        </reference>
        <reference anchor="cnsafaq" target="https://media.defense.gov/2022/Sep/07/2003071836/-1/-1/0/CSI_CNSA_2.0_FAQ_.PDF">
          <front>
            <title>The Commercial National Security Algorithm Suite 2.0 and Quantum Computing FAQ</title>
            <author>
              <organization>National Security Agency</organization>
            </author>
            <date year="2024" month="December"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 604?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
/wCGY40Ie00AAA==

-->

</rfc>
