<?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-01" 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-01"/>
    <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>
    <date year="2026" month="June" day="07"/>
    <area>Security</area>
    <workgroup>RATS</workgroup>
    <keyword>PQC</keyword>
    <keyword>COSE</keyword>
    <keyword>Hybrid</keyword>
    <keyword>HPKE</keyword>
    <keyword>Post-Quantum</keyword>
    <abstract>
      <?line 68?>

<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
        RATS 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 75?>

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

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-fossati-seat-early-attestation-04"/>
      </reference>
      <reference anchor="I-D.ietf-rats-pkix-key-attestation">
        <front>
          <title>Evidence Encoding for Hardware Security Modules</title>
          <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
            <organization>Cryptic Forest Software</organization>
          </author>
          <author fullname="Jean-Pierre Fiset" initials="J." surname="Fiset">
            <organization>Crypto4A Inc.</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="17" month="March" 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-05"/>
      </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>Nonce-based Freshness for Remote Attestation in Certificate Signing Requests (CSRs) for the Certification Management Protocol (CMP), for Enrollment over Secure Transport (EST), and for Certificate Management over CMS (CMC)</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="20" month="April" year="2026"/>
          <abstract>
            <t>   When an end entity includes attestation statements in a Certificate
   Signing Request (CSR), this document is specifically concerned with
   establishing the freshness of Evidence statements among that
   attestation data.  Current attestation technology commonly achieves
   this using nonces.

   This document outlines the process through which nonces are supplied
   to the end entity by an RA/CA for inclusion in Evidence, leveraging
   the Certificate Management Protocol (CMP), Enrollment over Secure
   Transport (EST), and Certificate Management over CMS (CMC).

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-attestation-freshness-06"/>
      </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>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA8096XLcxpn/8RS91A+LrpmxZctrm05iUxRlM7oYkraTSqUs
DNAz0xEGmKABUmOV/Sz7LPtk+x194hgOJTvZlCsa4ujju8/GdDpNGtUU8kgc
PJVbcdw0Ujdpo6pSLKpanJZwN758Vb2WpRb3T4+vDg+SdD6v5TW8DX+KzggH
SZY2clnV2yOhmzxJ8ior0zXMldfpopnWMs+30zpt9PS13E7nqsxVuZwWKY6Q
6Ha+VlrDOM12A++cnV49Scp2PZf1UZLDM0dJVpUa1tLqI9HUrUxgHZ8maS1T
WM+lzNoa1n6Q3FT162VdtRu4enF8dXmQwGxwMT9KxFSc/+UE/zl5eXmK/363
ndcqp1/nT+nKeaWb6V/atGzadZIk17JsYWoh4iGF4FUe/AizwS7Et3gbr69T
VcB13OY3SjaLWVUv8XpaZyu4vmqajT766CN8DC+pazmzj32EFz6a19WNlh/h
AB8dwAoAumX+U1pUJcy3lTrZqCPx96bKJkJXdVPLhYZf27X50dQqayYiq9Zr
WTZwBbCwTjcbWOQ/kiRtm1VVIyRgSUIs2qJgFF2pul2nhdQ3aS0uEFP0AKwq
LdXPhN8j8aJ6rVK6ngGoj8SjtFzCwmpJ12q5pKeepnWZNulr82TVlg2SxBmg
my9JA6PXsyaY9Seij29KnGMGy4e991b5XVqWUosrna2qhSzVcmCR35cA01oj
HVcL0aykeNSWOUwhV7V43pYqW9FblpTh+Uc34vks2NcL2c4VEN4y2tej9Dqt
VWdX38p6nZbbaF8rWuWscav8Zrl+Mytl47cE/1Ml0PHVTDyptIal28sGHatq
neruvXijz1SZ1pW9ZyZv6MXZgl/8pqBnkLh6U5/NxHO1SotMpvHcZ1XZNr17
8dzH9RrmX6tG5p0F0Nsz+/Y3ab1GZCZJWQGgGkDNUZKochH8lSTT6RTQAaSb
Zk2SXK2URqptkYBFLhcKcZ6Wo9KJhZPY1NVCFRKezEUqSnkjUEhlRarWAJa0
AaSV1yCykCRA2vxTZo3YtPNCZQIkBL2mGo3DNHALR4efG1k3Cqa/Uc1KlSIN
5pbXKpdlJmfipFqDNJM5PUUDVFlVTAt5LQv8E+gQ/tsATiRJOLGoq7VZRw2C
gwShe28CdwACOA8sTq9w8yKrt5umWtbpZgXrNbJTzGVzIwEAKbysrkFIup2k
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
RJwHcDGdTgV+myb5P4KMfIZNiAAA

-->

</rfc>
