<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.2.3) -->
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc docmapping="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-reddy-rats-key-binding-02" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="EAT Key Attestation">Key Attestation for Entity Attestation Tokens (EAT)</title>
    <seriesInfo name="Internet-Draft" value="draft-reddy-rats-key-binding-02"/>
    <author fullname="Tirumaleswar Reddy">
      <organization>Nokia</organization>
      <address>
        <postal>
          <city>Bangalore</city>
          <region>Karnataka</region>
          <country>India</country>
        </postal>
        <email>k.tirumaleswar_reddy@nokia.com</email>
      </address>
    </author>
    <author fullname="Hannes Tschofenig">
      <organization abbrev="UniBw M.">University of the Bundeswehr Munich</organization>
      <address>
        <postal>
          <city>Neubiberg</city>
          <region>Bavaria</region>
          <country>Germany</country>
        </postal>
        <email>hannes.tschofenig@gmx.net</email>
      </address>
    </author>
    <author initials="T." surname="Fossati" fullname="Thomas Fossati">
      <organization>Linaro</organization>
      <address>
        <email>thomas.fossati@linaro.org</email>
      </address>
    </author>
    <author initials="I." surname="Mihalcea" fullname="Ionut Mihalcea">
      <organization>Arm Limited</organization>
      <address>
        <email>Ionut.Mihalcea@arm.com</email>
      </address>
    </author>
    <author initials="H." surname="Birkholz" fullname="Henk Birkholz">
      <organization>Fraunhofer SIT</organization>
      <address>
        <email>henk.birkholz@ietf.contact</email>
      </address>
    </author>
    <date year="2026" month="August" day="15"/>
    <area>Security</area>
    <workgroup>Remote ATtestation ProcedureS</workgroup>
    <keyword>PQC</keyword>
    <keyword>COSE</keyword>
    <keyword>Hybrid</keyword>
    <keyword>HPKE</keyword>
    <keyword>Post-Quantum</keyword>
    <abstract>
      <?line 74?>

<t>This document defines an Entity Attestation Token (EAT) profile and a new EAT claim that convey the subject public key and its protection properties within attestation evidence. Combined with protocol-level proof of possession from the surrounding protocol, this establishes a cryptographic binding between a private key and an attested execution environment.</t>
      <t>The subject public key is conveyed using the EAT <tt>cnf</tt> claim defined in <xref target="RFC8747"/> and <xref target="RFC7800"/>, and freshness uses the EAT <tt>eat_nonce</tt> claim defined in <xref target="RFC9711"/>. The proof of possession of the subject key is obtained from the surrounding protocol, such as TLS certificate-based authentication or CSR signature verification. Because the EAT is signed by a hardware-backed Attestation Key (AK), successful verification of the EAT signature together with protocol-level proof of possession establishes a cryptographic binding between the private key and the attested platform state. This mechanism addresses key substitution attacks that arise when attestation evidence and the certificate private keys are validated independently.</t>
    </abstract>
    <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-reddy-rats-key-binding/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Remote ATtestation ProcedureS Working Group mailing list (<eref target="mailto:rats@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/rats/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/rats/"/>.
      </t>
    </note>
  </front>
  <middle>
    <?line 81?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Remote attestation enables an entity to produce attestation evidence that a verifier can use to assess whether the entity's platform state satisfies a required policy. In certificate enrollment and authentication protocols (e.g., TLS), a common security policy requirement is that a private key used by an endpoint must be generated, stored, and protected within a trusted execution environment (TEE) or comparable hardware root of trust.</t>
      <t>In certificate enrollment workflows, a Certification Authority (CA) may require attestation evidence demonstrating that the private key corresponding to the public key in a certificate signing request (CSR) is protected by a hardware-backed environment. The LAMPS CSR Attestation specification <xref target="I-D.ietf-lamps-csr-attestation"/> defines mechanisms for including attestation evidence alongside a CSR. In this model, the CA verifies the CSR signature using the public key contained in the request and independently verifies the attestation evidence according to the RATS architecture, using applicable endorsements and trust anchors.
However, attestation evidence does not inherently provide a cryptographic proof that the private key used to sign the CSR is the same key that is generated, stored, or protected within the attested environment. The CSR signature demonstrates possession of a private key, and the attestation demonstrates properties of a platform state, but there is no standardized mechanism that cryptographically binds these two validations together. An endpoint could present valid attestation evidence from a protected environment while submitting a certificate signing request (CSR) that is signed with a private key not generated or stored within that environment. In this case, the Certification Authority has no intrinsic cryptographic assurance that the private key corresponding to the CSR public key benefits from the protections described in the attestation evidence.</t>
      <t>A similar problem exists in TLS-based scenarios. The TLS Exported Attestation specification <xref target="I-D.fossati-tls-exported-attestation"/> and the TLS Early Attestation specification <xref target="I-D.fossati-seat-early-attestation"/> define mechanisms for conveying attestation evidence within a TLS connection. While the attestation evidence is bound to the TLS connection in these approaches, it does not intrinsically bind the attested environment to the private key corresponding to the end-entity certificate used for TLS authentication. An endpoint could therefore obtain valid attestation evidence from a protected environment while performing certificate-based TLS authentication using a private key that is not confined to that environment. For example, the TLS private key may reside outside the trusted execution environment and lack the protections claimed by the attestation evidence.</t>
      <t>This separation between validation of attestation evidence and validation of certificate private key creates a class of key substitution attacks. In such an attack:</t>
      <ul spacing="normal">
        <li>
          <t>A valid attestation produced by a genuine hardware-protected environment is presented to the verifier; and</t>
        </li>
        <li>
          <t>A private key that is not generated or protected within that environment is used in the CSR or TLS authentication flow.</t>
        </li>
      </ul>
      <t>Because the attestation evidence and the certificate private key are validated independently, the verifier has no intrinsic cryptographic assurance that the operational private key benefits from the protections described in the attestation evidence. This undermines security policy objectives that require the certificate private key to be generated and constrained within the attested environment.</t>
      <t>Addressing this problem requires a mechanism that provides both proof of possession of the private key and a cryptographic binding between that key and the attested platform state.</t>
      <t>A relying party will also require additional claims describing key protection properties, such as non-exportability or hardware-level protection. For example, <xref target="I-D.ietf-rats-pkix-key-attestation"/> defines an evidence format for reporting properties of cryptographic modules and managed keys in PKIX environments. The PKIX Key Attestation specification <xref target="I-D.ietf-rats-pkix-key-attestation"/> defines attributes including extractable, never-extractable, sensitive, and local that describe protection properties of keys managed by cryptographic modules. These attributes can be conveyed using the <tt>key-attributes</tt> claim defined in this document while key confirmation itself is conveyed using <tt>cnf</tt> (<xref target="RFC8747"/> and <xref target="RFC7800"/>) and protocol-level proof of possession.</t>
      <t>Appendix A.1.4 of <xref target="RFC9711"/> illustrates how a key and key store may be represented in evidence. However, the example uses private-use claim labels and does not define standardized key-protection claims. This specification uses the standardized <tt>cnf</tt> claim from <xref target="RFC8747"/> and <xref target="RFC7800"/> and defines a new claim for key-protection attributes and usage constraints, while relying on protocol-level proof of possession.</t>
      <t>The use of directly conveyed key protection properties in attestation evidence is consistent with <xref target="I-D.ietf-rats-pkix-key-attestation"/>, which defines attributes describing protection properties of managed keys, such as extractable, never-extractable, sensitive, and local.</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>The reader is assumed to be familiar with the vocabulary and concepts defined in the RATS Architecture (<xref target="RFC9334"/>) such as Attester, Relying Party, Verifier.</t>
      <t>The reader is assumed to be familiar with the common vocabulary and concepts defined in <xref target="RFC5280"/> such as certificate, signature, attribute, verification and validation.</t>
      <t>The following terms are used in this document:</t>
      <t>Attestation Key (AK): A cryptographic key, typically hardware-backed, used to sign attestation evidence that conveys claims about the state of a platform or trusted execution environment.</t>
      <t>Attestation Evidence: Claims about a platform's state, signed by an Attestation Key, and conveyed in an Entity Attestation Token (EAT).</t>
      <t>Entity Attestation Token (EAT): A token format that conveys attestation claims, as defined in <xref target="RFC9711"/>.</t>
      <t>Subject Key: An asymmetric key pair for which the protection of the private component within an attested execution environment is being asserted. The corresponding public component is conveyed in the EAT <tt>cnf</tt> claim and compared with the key used in a CSR or TLS end-entity certificate.</t>
      <t>Proof of Possession (PoP): Evidence that demonstrates control of the private component of the Subject Key at a given point in time. In this profile, PoP is obtained from the surrounding protocol (for example, TLS certificate-based authentication or CSR signature verification).</t>
      <t>Verifier: The entity that validates attestation evidence and evaluates whether the platform state and associated keys satisfy its policy.</t>
      <t>Certification Authority (CA): An entity that issues certificates and may require attestation evidence during certificate enrollment.</t>
      <t>Trusted Execution Environment (TEE): An isolated execution context that provides confidentiality and integrity protections for code and data, including cryptographic key material.</t>
      <t>Key Substitution Attack: An attack in which valid attestation evidence from a protected execution environment is presented to a verifier, while a private key used in a CSR or authentication protocol is not generated or protected within that environment. Because attestation evidence and certificate private key are validated independently, the verifier may lack cryptographic assurance that the certificate private key benefits from the protections claimed in the attestation.</t>
      <t>Key Attestation Key (KAK): An Attestation Key used specifically for signing Key Attestation Tokens in the split model (see <xref target="architecture"/>). The KAK is protected within the trusted computing base, and its public key and protection properties are conveyed in the Platform Attestation Token via the <tt>cnf</tt> and <tt>key-attributes</tt> claims.</t>
      <t>Platform Attestation Token (PAT): An EAT signed by the platform Attestation Key that conveys the state of the trusted computing base. In this context, 'platform' refers to the Attester's full TCB. The KAK public key is conveyed via the <tt>cnf</tt> claim, and KAK protection properties via the <tt>key-attributes</tt> claim.</t>
      <t>Key Attestation Token (KAT): An EAT signed by the KAK that conveys the Subject Public Key via the <tt>cnf</tt> claim and Subject Key protection properties via the <tt>key-attributes</tt> claim.</t>
      <t>Combined Attestation Bundle (CAB): A structure that bundles a Key Attestation Token (KAT) and a Platform Attestation Token (PAT) together for transport in the surrounding protocol, using the CMW collection format <xref target="I-D.ietf-rats-msg-wrap"/>.</t>
      <t>The public key carried in the <tt>cnf</tt> claim is referred to as the Subject Public Key in this document, reflecting its use as the public key carried in the SubjectPublicKeyInfo field of an X.509 certificate <xref target="RFC5280"/> in certificate enrollment and TLS authentication. In the context of the <tt>cnf</tt> claim defined in <xref target="RFC8747"/> and <xref target="RFC7800"/>, this key serves as the proof-of-possession key.</t>
    </section>
    <section anchor="architecture">
      <name>Architecture</name>
      <t>This document defines two deployment models for key attestation:</t>
      <t><strong>Combined Model:</strong> The key attestation function and platform attestation function are hosted within the same trusted execution environment. A single Attestation Key (AK) signs one EAT containing both platform state claims and key protection claims (<tt>cnf</tt> and <tt>key-attributes</tt>). This is the simpler model and is suitable for platforms where separation of privilege between key attestation and platform attestation is not required.</t>
      <t><strong>Split Model:</strong> The key attestation function and platform attestation function are separate logical roles within the trusted computing base, operating at different privilege levels. Platform attestation requires higher privilege than key attestation, and the split model allows the key attestation function to operate at a lower privilege level within the TCB. A dedicated Key Attestation Key (KAK) signs the Key Attestation Token (KAT), and a separate Platform Attestation Token (PAT) is generated and signed by the platform Attestation Key. The two tokens are bundled together as a Combined Attestation Bundle (CAB) for transport.</t>
      <t>In both models, proof of possession of the Subject Key is obtained from the surrounding protocol, as described in <xref target="proof-of-possession"/>.</t>
    </section>
    <section anchor="key-confirmation-and-binding-profile">
      <name>Key Confirmation and Binding Profile</name>
      <section anchor="key-confirmation-overview">
        <name>Overview</name>
        <t>A foundational requirement of this profile is that the Subject Key <bcp14>MUST</bcp14> be generated and held within the attested execution environment. This is what gives the <tt>key-attributes</tt> claims their authority, the attested environment signs attestation evidence about key material it generated and controls.</t>
        <t>This document defines an EAT profile and a new EAT claim that establish a cryptographic binding between a Subject Key and an attested execution environment.</t>
        <t>The profile provides two properties:</t>
        <ol spacing="normal" type="1"><li>
            <t>Proof of Possession : Demonstration that the entity presenting the attestation controls the private component of the Subject Key.</t>
          </li>
          <li>
            <t>Key-to-Platform Binding : Cryptographic association between the private component of the Subject Key and the attested platform state.</t>
          </li>
        </ol>
        <t>The mechanism combines:</t>
        <ul spacing="normal">
          <li>
            <t>an EAT signature generated by the Attestation Key (AK); and</t>
          </li>
          <li>
            <t>protocol-level proof of possession for the Subject Key.</t>
          </li>
        </ul>
        <t>The subject public key used for protocol-level PoP verification is carried in the EAT <tt>cnf</tt> claim. Because the attestation evidence is authenticated by the AK, and PoP is verified in the surrounding protocol, successful verification establishes that:</t>
        <ul spacing="normal">
          <li>
            <t>The attested platform state is authentic; and</t>
          </li>
          <li>
            <t>The entity participating in the surrounding protocol demonstrates control of the private component of the Subject Key during protocol execution.</t>
          </li>
        </ul>
        <t>This construction creates a cryptographic linkage between the Subject Key and the attested platform state, mitigating Key Substitution Attacks.</t>
        <t>The <tt>key-attributes</tt> claim conveys attributes describing key protection properties and permitted usage of the Subject Key. The <tt>key-attributes</tt> claim <bcp14>MUST</bcp14> be present and <bcp14>MUST</bcp14> contain at least one member. When present, attributes such as extractable, never-extractable, sensitive, and local <bcp14>MUST</bcp14> follow the semantics defined in <xref target="I-D.ietf-rats-pkix-key-attestation"/>. These attributes enable relying parties to enforce policies such as requiring keys to be generated within the attested environment and prohibiting extraction of private key material.</t>
      </section>
      <section anchor="high-level-construction">
        <name>High-Level Construction</name>
        <t>At a high level, the mechanism binds a certificate private key to an attested execution environment by combining AK-signed attestation evidence and protocol-level proof of possession.</t>
        <t>First, the attester constructs an EAT Claims Set including:</t>
        <ul spacing="normal">
          <li>
            <t>the verifier-provided <tt>eat_nonce</tt> claim from <xref target="RFC9711"/>;</t>
          </li>
          <li>
            <t>the <tt>cnf</tt> claim containing the Subject Public Key;</t>
          </li>
          <li>
            <t>the <tt>key-attributes</tt> claim defined in this document.</t>
          </li>
        </ul>
        <t>Second, the EAT is signed using the Attestation Key.</t>
        <t>During verification, three relationships are checked:</t>
        <ul spacing="normal">
          <li>
            <t>The digitally signed and protected EAT establishes that the platform state is authentic.</t>
          </li>
          <li>
            <t>The protocol-level PoP check establishes control of the private component of the Subject Key.</t>
          </li>
          <li>
            <t>The public key in <tt>cnf</tt> is compared with the public key in the CSR or TLS end-entity certificate to ensure they refer to the same operational key.</t>
          </li>
        </ul>
        <t>When these checks succeed, the verifier gains assurance that the certificate private key used in the protocol is the same key whose protection within the attested execution environment is being asserted.</t>
      </section>
    </section>
    <section anchor="proof-of-possession">
      <name>Proof-of-Possession</name>
      <t>The Proof of Possession (PoP) demonstrates control of the private component of the Subject Key.</t>
      <t>In this profile, PoP <bcp14>MUST</bcp14> be verified by the surrounding protocol:</t>
      <ul spacing="normal">
        <li>
          <t>In certificate enrollment workflows, by validating the CSR signature.</t>
        </li>
        <li>
          <t>In TLS workflows, by validating certificate-based TLS authentication.</t>
        </li>
      </ul>
      <t>The public key used for protocol-level PoP verification <bcp14>MUST</bcp14> correspond to the Subject Public Key in EAT <tt>cnf</tt>.</t>
      <t>For this profile, the EAT <tt>eat_nonce</tt> claim defined in <xref target="RFC9711"/> is the mandatory freshness mechanism. The EAT <tt>eat_nonce</tt> claim <bcp14>MUST</bcp14> be present and <bcp14>MUST</bcp14> contain a single nonce value supplied by the verifier.</t>
      <t>The nonce <bcp14>MUST</bcp14> be supplied by the verifier and <bcp14>MUST</bcp14> be unpredictable and unique within the verifier's replay window.</t>
      <t>The validity period of the key attestation evidence is determined by the lifetime of the enclosing EAT. Verifiers <bcp14>MUST</bcp14> enforce the <tt>iat</tt>, <tt>nbf</tt>, and <tt>exp</tt> claims defined in <xref target="RFC9711"/> to ensure that attestation evidence is not used outside its intended validity window.</t>
      <section anchor="freshness-requirements">
        <name>Freshness Requirements</name>
        <t>The verifier <bcp14>MUST</bcp14> provide a nonce with sufficient entropy to prevent replay. The nonce is conveyed to the Attester by the Relying Party through the surrounding protocol.
The nonce <bcp14>MUST</bcp14> be unpredictable and unique within the verifier's replay window. The verifier <bcp14>MUST</bcp14> validate that the nonce claim in the EAT matches the nonce it supplied. Failure to include verifier-provided freshness renders the mechanism vulnerable to replay of previously valid attestation evidence. Mechanisms for obtaining and conveying such nonces in certificate enrollment protocols are described in <xref target="I-D.ietf-lamps-attestation-freshness"/>.</t>
        <t>The verifier-provided nonce is the primary mechanism for ensuring freshness of the attestation evidence. The EAT time-based claims (<tt>iat</tt>, <tt>nbf</tt>, and <tt>exp</tt>) provide an additional validity window for the attestation evidence but do not replace the requirement for a verifier-provided nonce. Verifiers <bcp14>MUST</bcp14> validate both the nonce and the applicable time-based claims when evaluating this profile.</t>
      </section>
      <section anchor="verification-procedure">
        <name>Verification Procedure</name>
        <t>Upon receipt of attestation evidence for this profile, the Verifier <bcp14>MUST</bcp14> perform the following checks:</t>
        <ol spacing="normal" type="1"><li>
            <t>Validate the signature on the EAT using the applicable trust anchors for the Attestation Key. If this validation fails, the attestation evidence <bcp14>MUST</bcp14> be rejected.</t>
          </li>
          <li>
            <t>Validate the <tt>key-attributes</tt> claim. The <tt>key-attributes</tt> claim <bcp14>MUST</bcp14> be present and <bcp14>MUST</bcp14> contain at least one member. Trust in the <tt>key-attributes</tt> claim depends on successful appraisal of the attestation evidence for the target environment in which the Subject Key is generated and protected. Such appraisal includes evaluation of measurements in the attestation evidence against the applicable reference values as described in the RATS Architecture <xref target="RFC9334"/> and EAT <xref target="RFC9711"/>.</t>
          </li>
          <li>
            <t>Validate the EAT <tt>eat_nonce</tt> claim. The EAT <tt>eat_nonce</tt> claim <bcp14>MUST</bcp14> be present, <bcp14>MUST</bcp14> contain a single nonce value, and <bcp14>MUST</bcp14> match the verifier-supplied nonce.</t>
          </li>
          <li>
            <t>Extract the Subject Public Key from the EAT <tt>cnf</tt> claim.</t>
          </li>
          <li>
            <t>Compare the Subject Public Key contained in <tt>cnf</tt> with the public key used for protocol-level PoP verification. This public key is either obtained directly from the protocol or supplied to the Verifier by the Relying Party.  </t>
            <ul spacing="normal">
              <li>
                <t>In certificate enrollment, the public key is obtained from the CSR.</t>
              </li>
              <li>
                <t>In TLS, the public key is obtained from the end-entity certificate used for TLS authentication.</t>
              </li>
            </ul>
          </li>
        </ol>
        <t>The public key provided to the Verifier <bcp14>MUST</bcp14> correspond to the same key for which protocol-level PoP verification was performed. If the public key parameters do not match, the binding verification <bcp14>MUST</bcp14> fail.</t>
        <t>Successful completion of all checks establishes a cryptographic binding between the private component corresponding to the public key used in the CSR or TLS end-entity certificate and the attested execution environment at the time the evidence was generated.</t>
        <t>The Verifier conveys the result of the binding verification to the Relying Party as part of the attestation result.</t>
      </section>
    </section>
    <section anchor="split-model-profile">
      <name>Split Model Profile</name>
      <t>In the split model, the key attestation function and platform attestation function are separate logical roles within the trusted computing base. Two EATs are generated and bundled together as a Combined Attestation Bundle (CAB) using the CMW collection format <xref target="I-D.ietf-rats-msg-wrap"/>:</t>
      <ul spacing="normal">
        <li>
          <t>A Platform Attestation Token (PAT), signed by the platform Attestation Key, that conveys the state of the trusted computing base, the KAK public key via the <tt>cnf</tt> claim, and KAK protection properties via the <tt>key-attributes</tt> claim.</t>
        </li>
        <li>
          <t>A Key Attestation Token (KAT), signed by the Key Attestation Key (KAK), that conveys the Subject Public Key via the <tt>cnf</tt> claim and Subject Key protection properties via the <tt>key-attributes</tt> claim.</t>
        </li>
      </ul>
      <t>The KAT is signed by the KAK whose public key and protection properties are attested in the PAT. This provides cryptographic binding between the two tokens without requiring a separate linkage mechanism.</t>
      <section anchor="split-verification-procedure">
        <name>Verification Procedure</name>
        <t>Upon receipt of a CAB for this profile, the Verifier <bcp14>MUST</bcp14> perform the following checks:</t>
        <ol spacing="normal" type="1"><li>
            <t>Validate the signature on the PAT using the applicable trust anchors for the platform Attestation Key. If this validation fails, the attestation evidence <bcp14>MUST</bcp14> be rejected.</t>
          </li>
          <li>
            <t>Validate the EAT <tt>eat_nonce</tt> claim in the PAT. The <tt>eat_nonce</tt> claim <bcp14>MUST</bcp14> be present, <bcp14>MUST</bcp14> contain a single nonce value, and <bcp14>MUST</bcp14> match the verifier-supplied nonce.</t>
          </li>
          <li>
            <t>Validate the <tt>key-attributes</tt> claim in the PAT. The <tt>key-attributes</tt> claim <bcp14>MUST</bcp14> be present and <bcp14>MUST</bcp14> contain at least one member. Trust in the <tt>key-attributes</tt> claim depends on successful appraisal of the PAT against applicable reference values as described in <xref target="RFC9334"/>.</t>
          </li>
          <li>
            <t>Extract the KAK public key from the <tt>cnf</tt> claim in the PAT.</t>
          </li>
          <li>
            <t>Validate the signature on the KAT using the KAK public key extracted in step 4. If this validation fails, the attestation evidence <bcp14>MUST</bcp14> be rejected.</t>
          </li>
          <li>
            <t>Validate the <tt>key-attributes</tt> claim in the KAT. The <tt>key-attributes</tt> claim <bcp14>MUST</bcp14> be present and <bcp14>MUST</bcp14> contain at least one member.</t>
          </li>
          <li>
            <t>Validate the EAT <tt>eat_nonce</tt> claim in the KAT. The <tt>eat_nonce</tt> claim <bcp14>MUST</bcp14> be present, <bcp14>MUST</bcp14> contain a single nonce value, and <bcp14>MUST</bcp14> match the verifier-supplied nonce.</t>
          </li>
          <li>
            <t>Extract the Subject Public Key from the <tt>cnf</tt> claim in the KAT and compare it with the public key used for protocol-level PoP verification, following the same procedure defined in steps 4 and 5 of <xref target="verification-procedure"/>.</t>
          </li>
        </ol>
      </section>
    </section>
    <section anchor="claim-definition">
      <name>Claim Definition</name>
      <t>This document defines a new EAT claim named <tt>key-attributes</tt> that conveys key protection attributes and key-usage constraints for the Subject Key.</t>
      <section anchor="claim-structure">
        <name>Claim Structure</name>
        <t>The claim is defined using CDDL as follows:</t>
        <artwork><![CDATA[
key-attributes = {
; Optional key protection attributes
? extractable: bool,
? never-extractable: bool,
? sensitive: bool,
? local: bool,

; Optional cryptographic usage constraints
? purpose: [* oid]

}

oid = tstr  ; dotted-decimal OID string

]]></artwork>
        <t>The <tt>key-attributes</tt> claim <bcp14>MUST</bcp14> contain at least one member.</t>
      </section>
      <section anchor="subject-key-in-cnf">
        <name>Subject Key in cnf</name>
        <t>This profile uses the EAT <tt>cnf</tt> claim defined in <xref target="RFC8747"/> and <xref target="RFC7800"/> to carry the Subject Public Key.</t>
        <t>When comparing the Subject Public Key contained in <tt>cnf</tt> with the public key used in a CSR or TLS end-entity certificate, the comparison <bcp14>MUST</bcp14> be performed over the public key parameters rather than over their serialized encodings. This ensures that differences in encoding formats (e.g., ASN.1 DER versus CBOR) do not cause two equivalent public keys to be incorrectly treated as unequal.</t>
        <t>For example:</t>
        <ul spacing="normal">
          <li>
            <t>For RSA keys: The modulus (n) and public exponent (e) <bcp14>MUST</bcp14> match.</t>
          </li>
          <li>
            <t>For elliptic curve keys: The curve identifier and public key coordinates (e.g., x and y values) <bcp14>MUST</bcp14> match. If an implementation supports point compression, keys <bcp14>MUST</bcp14> be decompressed to a common format before the comparison is performed.</t>
          </li>
          <li>
            <t>For ML-DSA, SLH-DSA, and FN-DSA keys: The comparison <bcp14>MUST</bcp14> be performed over the raw public key byte string defined by the relevant algorithm specification (e.g., FIPS-204 for ML-DSA). In <tt>cnf</tt>, the Verifier <bcp14>MUST</bcp14> extract the raw public key bytes from the <tt>pub</tt> parameter of that structure. In an X.509 certificate <xref target="RFC5280"/>, the public key is carried in the SubjectPublicKeyInfo structure. The Verifier <bcp14>MUST</bcp14> extract the contents of the <tt>subjectPublicKey</tt> BIT STRING and obtain the contained public key byte string. The raw public key byte string extracted from <tt>cnf</tt> and the byte string extracted from the certificate <bcp14>MUST</bcp14> match exactly.</t>
          </li>
          <li>
            <t>For other key types: The public key parameters defined by the relevant cryptographic specification <bcp14>MUST</bcp14> match exactly. Comparison based solely on serialized encodings (e.g., raw CBOR, JSON, or DER byte sequences) is <bcp14>NOT RECOMMENDED</bcp14>, as differences in encoding rules may cause equivalent keys to appear unequal.</t>
          </li>
        </ul>
        <t>If the comparison fails, the key-to-platform binding is not established.</t>
      </section>
      <section anchor="protocol-based-pop">
        <name>Protocol-Based PoP</name>
        <t>This profile relies on protocol-level proof of possession for the Subject Key. This document does not define a new in-token PoP container or signature format.</t>
      </section>
      <section anchor="key-protection-attributes">
        <name>Key Protection Attributes</name>
        <t>The <tt>key-attributes</tt> claim includes attributes describing key protection properties of the private component of the Subject Key.</t>
        <t>When present, the attributes <tt>extractable</tt>, <tt>never-extractable</tt>, <tt>sensitive</tt>, and <tt>local</tt> <bcp14>MUST</bcp14> follow the definitions and semantics specified in <xref target="I-D.ietf-rats-pkix-key-attestation"/>.</t>
        <t>This document does not redefine these attributes. Their interpretation and security semantics are defined in <xref target="I-D.ietf-rats-pkix-key-attestation"/>.</t>
        <t>A Verifier will evaluate these attributes as part of its security policy when determining whether the Subject Key satisfies requirements for key generation, storage, or exportability.</t>
      </section>
      <section anchor="purpose">
        <name>Purpose</name>
        <t>The <tt>purpose</tt> parameter identifies the key capabilities associated with the Subject Key.</t>
        <t>The value of this parameter is a list of object identifiers (OIDs) identifying the key capabilities defined in <xref target="I-D.ietf-rats-pkix-key-attestation"/>.</t>
        <t>These OIDs correspond to the key capability identifiers defined in Section 5.2.5 of <xref target="I-D.ietf-rats-pkix-key-attestation"/>.</t>
        <t>When the <tt>key-attributes</tt> claim is used in certificate enrollment workflows, the reported key capabilities <bcp14>MUST</bcp14> be compatible with the KeyUsage extensions requested in the CSR and included in the issued certificate.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="threat-model">
        <name>Threat Model</name>
        <t>This document addresses Key Substitution Attacks. In such attacks, valid attestation evidence from a protected execution environment is presented to a verifier while a private key used in certificate enrollment or TLS authentication is not generated or protected within that environment.</t>
        <t>The mechanism defined in this document assumes:</t>
        <ul spacing="normal">
          <li>
            <t>The AK is securely provisioned and protected.</t>
          </li>
          <li>
            <t>The AK correctly signs attestation evidence reflecting the platform state.</t>
          </li>
          <li>
            <t>The surrounding protocol correctly verifies proof of possession of the Subject Key private component.</t>
          </li>
          <li>
            <t>The verifier provides an unpredictable nonce to ensure freshness.</t>
          </li>
          <li>
            <t>The Attester generates the Subject Key within the attested execution environment and does not export the private component in cleartext. If this assumption does not hold, the <tt>key-attributes</tt> claims do not accurately reflect the protection properties of the Subject Key, and the security guarantees of this profile do not apply.</t>
          </li>
        </ul>
        <t>For the split model, the following additional assumption applies:</t>
        <ul spacing="normal">
          <li>
            <t>The platform Attester generates and protects the KAK within the trusted computing base, and the KAK private component is never exported in cleartext. If this assumption does not hold, the <tt>key-attributes</tt> claims in the PAT do not accurately reflect the protection properties of the KAK.</t>
          </li>
        </ul>
        <t>If these assumptions do not hold, the security guarantees of this mechanism do not apply.</t>
      </section>
      <section anchor="proof-of-possession-rationale">
        <name>Proof-of-Possession Rationale</name>
        <t>The AK signature over the EAT provides evidence about the Subject Key and its asserted protection properties. Protocol-level PoP verification provides direct evidence of control of the Subject Key.</t>
        <t>By requiring both checks, the profile prevents reliance solely on self-reported claims about the presence of the Subject Key in the attested environment.</t>
      </section>
      <section anchor="binding-of-key-protection-claims-to-the-attested-environment">
        <name>Binding of Key Protection Claims to the Attested Environment</name>
        <t>The <tt>key-attributes</tt> claim conveys protection properties of the Subject Key, such as non-exportability and hardware-level protection. For these claims to be trustworthy, they must be asserted by the attested environment that generated and holds the Subject Key, as it is the only entity with direct knowledge of and authority over the key protection properties.</t>
        <t>An alternative construction sometimes used in attestation protocols is to build an unsigned claims set (UCCS) containing the Subject Public Key and associated attributes, hash it, and supply the hash as a challenge to an existing attestation interface. In such constructions, the attestation evidence provides an indirect cryptographic binding between the claims set and the attested environment. However, a TEE-bound process acting as a proxy could forward a fabricated UCCS on behalf of an untrusted caller, causing the attested environment to sign claims it did not generate and cannot verify.</t>
        <t>This profile instead requires the Attestation Key (AK) to directly sign the EAT Claims Set containing the <tt>key-attributes</tt> claim and the Subject Public Key in <tt>cnf</tt>. This ensures that key protection attributes are conveyed as claims directly attested by the Attestor, eliminating the risk of fabricated claims being indirectly bound to attestation evidence.</t>
      </section>
      <section anchor="key-protection-properties">
        <name>Key Protection Properties</name>
        <t>The <tt>cnf</tt> claim establishes a cryptographic binding between the Subject Key and the attestation evidence. However, the <tt>cnf</tt> claim alone does not convey information about the protection properties of the private component of that key.</t>
        <t>Some deployments require assurances regarding how the private key is generated, stored, and protected (for example, whether the key is non-exportable or generated within a hardware-protected environment). The <tt>key-attributes</tt> claim enables the Verifier to evaluate such properties and determine whether the Subject Key satisfies the security requirements of the deployment.</t>
      </section>
      <section anchor="key-substitution-attack-illustration">
        <name>Key Substitution Attack Illustration</name>
        <t>The following example illustrates how the mechanism detects a Key Substitution Attack.</t>
        <ol spacing="normal" type="1"><li>
            <t>An attacker generates a private key outside the trusted execution environment, denoted as K_bad.</t>
          </li>
          <li>
            <t>The attacker also possesses or obtains attestation evidence for a different key protected within the trusted execution environment, denoted as K_good.</t>
          </li>
          <li>
            <t>The attacker submits a certificate signing request (CSR) signed using K_bad while attaching an EAT containing <tt>cnf</tt> for K_good.</t>
          </li>
          <li>
            <t>During verification, the Subject Public Key contained in <tt>cnf</tt> (corresponding to K_good) is compared with the public key contained in the CSR (corresponding to K_bad).</t>
          </li>
        </ol>
        <t>Because the public keys do not match, the binding verification fails. Although the attestation evidence and the CSR signature may each be valid independently, the mismatch prevents the establishment of a cryptographic binding between the certificate private key and the attested execution environment.</t>
      </section>
      <section anchor="mitigation-of-key-substitution-attacks">
        <name>Mitigation of Key Substitution Attacks</name>
        <t>This mechanism mitigates Key Substitution Attacks by requiring cryptographic proof that the private key used in a CSR or TLS authentication flow corresponds to the key whose protection within the attested execution environment is being asserted.</t>
        <t>Because protocol-level proof of possession is validated together with the EAT signature, and because the claimed Subject Public Key in <tt>cnf</tt> must match the public key used in the protocol, substitution of a private key that is not generated or protected within the attested execution environment is detected.</t>
        <t>If any of these validations fail, the binding is not established.</t>
      </section>
      <section anchor="claim-omission-and-downgrade">
        <name>Claim Omission and Downgrade</name>
        <t>If a security policy requires that the private key corresponding to a certificate be generated or protected within an attested execution environment, the Relying Party <bcp14>MUST</bcp14> ensure that the <tt>key-attributes</tt> claim defined in this document is present, that the EAT <tt>eat_nonce</tt> claim is present, that the <tt>cnf</tt> claim is present with the subject public key, that protocol-level PoP verification succeeds, and that binding verification succeeds.</t>
        <t>In deployments using a separate Verifier, the Relying Party <bcp14>MUST</bcp14> require the Verifier to enforce the presence and successful validation of the <tt>key-attributes</tt> claim, EAT <tt>eat_nonce</tt>, <tt>cnf</tt> with the subject public key, and protocol-level PoP verification as part of attestation appraisal.</t>
      </section>
      <section anchor="freshness-and-replay-protection">
        <name>Freshness and Replay Protection</name>
        <t>The <tt>eat_nonce</tt> claim establishes the freshness of the Evidence, allowing the Verifier to determine that the AK-signed EAT is generated for the TLS connection or certificate enrollment request currently being evaluated.
Because the Subject Public Key is carried in the <tt>cnf</tt> claim of the same EAT, the claim that this specific Subject Key is protected within the attested environment is likewise fresh.</t>
        <t>In TLS certificate-based authentication, the <tt>eat_nonce</tt> claim is bound to the TLS connection, as described in <xref target="I-D.fossati-seat-expat"/> and <xref target="I-D.fossati-seat-early-attestation"/>. Because the nonce is unique to each connection, the freshness of the Evidence and of the <tt>cnf</tt> claim is established for that connection, and an EAT captured from this connection cannot be replayed in a different connection.</t>
        <t>In certificate enrollment, the freshness of the Evidence is established by a Verifier-provided nonce carried within the Evidence, as specified in <xref target="I-D.ietf-lamps-attestation-freshness"/>. Because the nonce is unique to each enrollment request, the freshness of the Evidence and of the <tt>cnf</tt> claim is established for that request, and an EAT captured from a previous enrollment request cannot be replayed in a different one.</t>
      </section>
      <section anchor="scope-of-guarantees">
        <name>Scope of Guarantees</name>
        <t>This mechanism provides cryptographic evidence that the entity participating in the surrounding protocol demonstrated control of the private component of the Subject Key during protocol execution.</t>
        <t>It does not guarantee:</t>
        <ul spacing="normal">
          <li>
            <t>That the key remains protected after attestation;</t>
          </li>
          <li>
            <t>That the key cannot later be exported or migrated;</t>
          </li>
          <li>
            <t>That the platform remains in the same state after evidence generation.</t>
          </li>
        </ul>
        <t>Such guarantees depend on platform-specific properties and lifecycle management outside the scope of this document.</t>
      </section>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <t>This document requests registration of a new claim in the "CBOR Web Token (CWT) Claims" registry (established by <xref target="RFC8392"/>).</t>
      <t>The following value is to be added to this registry:</t>
      <ul spacing="normal">
        <li>
          <t>Claim Name: key-attributes</t>
        </li>
        <li>
          <t>CWT Claim Key: TBD</t>
        </li>
        <li>
          <t>Claim Description: Key protection attributes and key-usage constraints associated
with the Subject Key identified by the EAT <tt>cnf</tt> claim.</t>
        </li>
        <li>
          <t>Claim Value Type: CBOR map</t>
        </li>
        <li>
          <t>Change Controller: IETF</t>
        </li>
        <li>
          <t>Reference: RFCXXXX</t>
        </li>
      </ul>
      <t>This document also requests registration of a new claim in the "JSON Web Token (JWT) Claims" registry (established by <xref target="RFC7519"/>).</t>
      <t>The following value is to be added to this registry:</t>
      <ul spacing="normal">
        <li>
          <t>Claim Name: key-attributes</t>
        </li>
        <li>
          <t>Claim Description: Key protection attributes and key-usage constraints associated with the Subject Key identified by the EAT <tt>cnf</tt> claim.</t>
        </li>
        <li>
          <t>Change Controller: IETF</t>
        </li>
        <li>
          <t>Reference: RFCXXXX</t>
        </li>
      </ul>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors thank Paul Wouters and Nathanael Ritz for the discussion and comments.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8747">
          <front>
            <title>Proof-of-Possession Key Semantics for CBOR Web Tokens (CWTs)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="L. Seitz" initials="L." surname="Seitz"/>
            <author fullname="G. Selander" initials="G." surname="Selander"/>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="March" year="2020"/>
            <abstract>
              <t>This specification describes how to declare in a CBOR Web Token (CWT) (which is defined by RFC 8392) that the presenter of the CWT possesses a particular proof-of-possession key. Being able to prove possession of a key is also sometimes described as being the holder-of-key. This specification provides equivalent functionality to "Proof-of-Possession Key Semantics for JSON Web Tokens (JWTs)" (RFC 7800) but using Concise Binary Object Representation (CBOR) and CWTs rather than JavaScript Object Notation (JSON) and JSON Web Tokens (JWTs).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8747"/>
          <seriesInfo name="DOI" value="10.17487/RFC8747"/>
        </reference>
        <reference anchor="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="RFC9711">
          <front>
            <title>The Entity Attestation Token (EAT)</title>
            <author fullname="L. Lundblade" initials="L." surname="Lundblade"/>
            <author fullname="G. Mandyam" initials="G." surname="Mandyam"/>
            <author fullname="J. O'Donoghue" initials="J." surname="O'Donoghue"/>
            <author fullname="C. Wallace" initials="C." surname="Wallace"/>
            <date month="April" year="2025"/>
            <abstract>
              <t>An Entity Attestation Token (EAT) provides an attested claims set that describes the state and characteristics of an entity, a device such as a smartphone, an Internet of Things (IoT) device, network equipment, or such. This claims set is used by a relying party, server, or service to determine the type and degree of trust placed in the entity.</t>
              <t>An EAT is either a CBOR Web Token (CWT) or a JSON Web Token (JWT) with attestation-oriented claims.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9711"/>
          <seriesInfo name="DOI" value="10.17487/RFC9711"/>
        </reference>
        <reference anchor="I-D.ietf-lamps-csr-attestation">
          <front>
            <title>Use of Remote Attestation with Certification Signing Requests</title>
            <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
              <organization>Cryptic Forest Software</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>Siemens</organization>
            </author>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer SIT</organization>
            </author>
            <author fullname="Monty Wiseman" initials="M." surname="Wiseman">
              <organization>Independent</organization>
            </author>
            <author fullname="Ned Smith" initials="N." surname="Smith">
         </author>
            <date day="16" month="June" year="2026"/>
            <abstract>
              <t>   Certification Authorities (CAs) issuing certificates to Public Key
   Infrastructure (PKI) end entities may require a certificate signing
   request (CSR) to include additional verifiable information to confirm
   policy compliance.  For example, a CA may require an end entity to
   demonstrate that the private key corresponding to a CSR's public key
   is secured by a hardware security module (HSM), is not exportable,
   etc.  The process of generating, transmitting, and verifying
   additional information required by the CA is called remote
   attestation.  While work is currently underway to standardize various
   aspects of remote attestation, a variety of proprietary mechanisms
   have been in use for years, particularly regarding protection of
   private keys.

   This specification defines ASN.1 structures which may carry
   attestation data for PKCS#10 and Certificate Request Message Format
   (CRMF) messages.  Both standardized and proprietary attestation
   formats are supported by this specification.

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

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-fossati-seat-early-attestation-06"/>
        </reference>
        <reference anchor="I-D.ietf-rats-pkix-key-attestation">
          <front>
            <title>Evidence Encoding for Hardware Security Modules</title>
            <author fullname="Jean-Pierre Fiset" initials="J." surname="Fiset">
              <organization>Crypto4A Inc.</organization>
            </author>
            <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
              <organization>Cryptic Forest Software</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of the Bundeswehr Munich</organization>
            </author>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer SIT</organization>
            </author>
            <author fullname="Monty Wiseman" initials="M." surname="Wiseman">
         </author>
            <author fullname="Ned Smith" initials="N." surname="Smith">
         </author>
            <date day="5" month="July" year="2026"/>
            <abstract>
              <t>   This document specifies a vendor-agnostic format for Evidence
   produced and verified within a PKIX context.  The Evidence produced
   this way includes claims collected about a cryptographic module, such
   as a Hardware Security Module (HSM), and elements found within it
   such as cryptographic keys.

   One scenario envisaged is that the state information about the
   cryptographic module can be securely presented to a remote operator
   or auditor in a vendor-agnostic verifiable format.  A more complex
   scenario would be to submit this Evidence to a Certification
   Authority to aid in determining whether the storage properties of
   this key meet the requirements of a given certificate profile.

   This specification also offers a format for requesting a
   cryptographic module to produce Evidence tailored for expected use.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rats-pkix-key-attestation-07"/>
        </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="RFC9334">
          <front>
            <title>Remote ATtestation procedureS (RATS) Architecture</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="D. Thaler" initials="D." surname="Thaler"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="N. Smith" initials="N." surname="Smith"/>
            <author fullname="W. Pan" initials="W." surname="Pan"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>In network protocol exchanges, it is often useful for one end of a communication to know whether the other end is in an intended operating state. This document provides an architectural overview of the entities involved that make such tests possible through the process of generating, conveying, and evaluating evidentiary Claims. It provides a model that is neutral toward processor architectures, the content of Claims, and protocols.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9334"/>
          <seriesInfo name="DOI" value="10.17487/RFC9334"/>
        </reference>
        <reference anchor="RFC5280">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author fullname="D. Cooper" initials="D." surname="Cooper"/>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="W. Polk" initials="W." surname="Polk"/>
            <date month="May" year="2008"/>
            <abstract>
              <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5280"/>
          <seriesInfo name="DOI" value="10.17487/RFC5280"/>
        </reference>
        <reference anchor="I-D.ietf-rats-msg-wrap">
          <front>
            <title>RATS Conceptual Messages Wrapper (CMW)</title>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer SIT</organization>
            </author>
            <author fullname="Ned Smith" initials="N." surname="Smith">
              <organization>Independent</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of Applied Sciences Bonn-Rhein-Sieg</organization>
            </author>
            <author fullname="Dionna Glaze" initials="D." surname="Glaze">
              <organization>Google LLC</organization>
            </author>
            <date day="11" month="December" year="2025"/>
            <abstract>
              <t>   The Conceptual Messages introduced by the RATS architecture (RFC
   9334) are protocol-agnostic data units that are conveyed between RATS
   roles during remote attestation procedures.  Conceptual Messages
   describe the meaning and function of such data units within RATS data
   flows without specifying a wire format, encoding, transport
   mechanism, or processing details.  The initial set of Conceptual
   Messages is defined in Section 8 of RFC 9334 and includes Evidence,
   Attestation Results, Endorsements, Reference Values, and Appraisal
   Policies.

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

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

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

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rats-msg-wrap-23"/>
        </reference>
        <reference anchor="I-D.ietf-lamps-attestation-freshness">
          <front>
            <title>Requesting a Freshness Nonce for Attestation Evidence in Certificate Signing Requests</title>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>Siemens</organization>
            </author>
            <author fullname="Hendrik Brockhaus" initials="H." surname="Brockhaus">
              <organization>Siemens</organization>
            </author>
            <author fullname="Joe Mandel" initials="J." surname="Mandel">
              <organization>AKAYLA, Inc.</organization>
            </author>
            <author fullname="Sean Turner" initials="S." surname="Turner">
              <organization>sn3rd</organization>
            </author>
            <date day="4" month="July" year="2026"/>
            <abstract>
              <t>   When an end entity includes attestation statements in a Certificate
   Signing Request (CSR), the freshness of the conveyed Evidence often
   needs to be established.  A common mechanism is a nonce that is
   obtained from a Relying Party or Verifier and included by the
   Attester in the Evidence.

   This document specifies how an end entity requests such an
   attestation freshness nonce from an RA/CA when using certificate
   lifecycle management protocols.  It defines message formats and
   protocol bindings for the conveyance of nonce request and response
   messages in the Certificate Management Protocol (CMP), Enrollment
   over Secure Transport (EST), and Certificate Management over CMS
   (CMC), including optional type-specific information needed to produce
   fresh Evidence for inclusion in a CSR.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-attestation-freshness-08"/>
        </reference>
        <reference anchor="I-D.fossati-seat-expat">
          <front>
            <title>Remote Attestation with Exported Authenticators</title>
            <author fullname="Muhammad Usama Sardar" initials="M. U." surname="Sardar">
              <organization>TU Dresden</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <author fullname="Tirumaleswar Reddy.K" initials="T." surname="Reddy.K">
              <organization>Nokia</organization>
            </author>
            <author fullname="Yaron Sheffer" initials="Y." surname="Sheffer">
              <organization>Intuit</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of the Bundeswehr Munich</organization>
            </author>
            <author fullname="Ionuț Mihalcea" initials="I." surname="Mihalcea">
              <organization>Arm Limited</organization>
            </author>
            <date day="4" month="July" year="2026"/>
            <abstract>
              <t>   This specification defines a method for two parties in a
   communication interaction to exchange Evidence and Attestation
   Results using exported authenticators, as defined in [RFC9261].
   Additionally, it introduces the cmw_attestation extension, which
   allows attestation credentials to be included directly in the
   Certificate message sent during the Exported Authenticator-based
   post-handshake authentication.  The approach supports both the
   passport and background check models from the RATS architecture while
   ensuring that attestation remains bound to the underlying
   communication channel.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-fossati-seat-expat-03"/>
        </reference>
        <reference anchor="RFC8392">
          <front>
            <title>CBOR Web Token (CWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="E. Wahlstroem" initials="E." surname="Wahlstroem"/>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="May" year="2018"/>
            <abstract>
              <t>CBOR Web Token (CWT) is a compact means of representing claims to be transferred between two parties. The claims in a CWT are encoded in the Concise Binary Object Representation (CBOR), and CBOR Object Signing and Encryption (COSE) is used for added application-layer security protection. A claim is a piece of information asserted about a subject and is represented as a name/value pair consisting of a claim name and a claim value. CWT is derived from JSON Web Token (JWT) but uses CBOR rather than JSON.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8392"/>
          <seriesInfo name="DOI" value="10.17487/RFC8392"/>
        </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.fossati-tls-exported-attestation">
          <front>
            <title>Remote Attestation with Exported Authenticators</title>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <author fullname="Muhammad Usama Sardar" initials="M. U." surname="Sardar">
              <organization>TU Dresden</organization>
            </author>
            <author fullname="Tirumaleswar Reddy.K" initials="T." surname="Reddy.K">
              <organization>Nokia</organization>
            </author>
            <author fullname="Yaron Sheffer" initials="Y." surname="Sheffer">
              <organization>Intuit</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of Applied Sciences Bonn-Rhein-Sieg</organization>
            </author>
            <author fullname="Ionuț Mihalcea" initials="I." surname="Mihalcea">
              <organization>Arm Limited</organization>
            </author>
            <date day="3" month="July" year="2025"/>
            <abstract>
              <t>   This specification defines a method for two parties in a
   communication interaction to exchange Evidence and Attestation
   Results using exported authenticators, as defined in RFC 9261.
   Additionally, it introduces the cmw_attestation extension, which
   allows attestation credentials to be included directly in the
   Certificate message sent during the Exported Authenticator-based
   post-handshake authentication.  The approach supports both the
   passport and background check models from the RATS architecture while
   ensuring that attestation remains bound to the underlying
   communication channel.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-fossati-tls-exported-attestation-02"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
