<?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.43 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-acme-rats-03" category="std" consensus="true" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 3.35.0 -->
  <front>
    <title abbrev="acme-rats">Automated Certificate Management Environment (ACME) Remote Attestation Identifier and Challenge Type</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-acme-rats-03"/>
    <author fullname="Chunchi Peter Liu">
      <organization>Huawei</organization>
      <address>
        <email>liuchunchi@huawei.com</email>
      </address>
    </author>
    <author fullname="Mike Ounsworth">
      <organization>Cryptic Forest Software, Ltd</organization>
      <address>
        <email>mike@ounsworth.ca</email>
      </address>
    </author>
    <author fullname="Michael Richardson">
      <organization>Sandelman Software Works Inc</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
      </address>
    </author>
    <author fullname="Ganesh Mallaya">
      <organization>AppViewX, Inc</organization>
      <address>
        <email>ganesh.mallaya@appviewx.com</email>
      </address>
    </author>
    <author fullname="Sven Rajala">
      <organization>Keyfactor</organization>
      <address>
        <email>sven.rajala@keyfactor.com</email>
      </address>
    </author>
    <date year="2026" month="October" day="28"/>
    <area>Security</area>
    <workgroup>Automated Certificate Management Environment</workgroup>
    <keyword>ACME</keyword>
    <keyword>Remote Attestation</keyword>
    <keyword>Zero Trust</keyword>
    <abstract>
      <?line 68?>

<t>This document describes an approach where an ACME Server can challenge an ACME Client to provide Evidence, Endorsements, or Attestation Result according to the Remote ATtestation procedureS (RATS) framework in any format supported by the Conceptual Message Wrapper (CMW).</t>
      <t>The ACME Server can optionally challenge the Client for specific claims that it wishes attestation for.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://liuchunchi.github.io/draft-liu-acme-rats/draft-liu-acme-rats.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-acme-rats/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Automated Certificate Management Environment Working Group mailing list (<eref target="mailto:acme@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/acme/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/acme/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/liuchunchi/draft-liu-acme-rats"/>.</t>
    </note>
  </front>
  <middle>
    <?line 74?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>ACME <xref target="RFC8555"/> is a standard protocol for issuing and renewing certificates automatically.
When an ACME client needs a certificate, it connects to the ACME server, providing a proof of control of a desired identity. Upon success, it then receives a certificate with that identity in it.</t>
      <t>These identities become part of the certificate, usually a Fully Qualified Domain Name (FQDN) that goes into the Subject Alt Name (SAN) for a certificate.
Prior to ACME, the authorization process of obtaining a certificate from an operator of a (public) certification authority was non-standard and ad-hoc.
It ranged from sending faxes on company letterhead to answering an email sent to a well-known email address like <tt>hostmaster@example.com</tt>, evolving into a process where some randomized nonce could be placed in a particular place on the target web server.
The point of this process is to prove that the given DNS FQDN was controlled by the same client system initiating the certificate request.</t>
      <t>ACME standardized the process of proving domain control, allowing for full automation of certificate issuance.
It has been a massive success: increasing HTTPS usage from 27% in 2013 to over 80% in 2019 <xref target="letsencrypt"/>.</t>
      <t>While the ACME process supports many kinds of identifiers such as email addresses and DTN node IDs, and other client-type identifiers, ACME for client certificates has not yet become as popular, in part because these types of certificates are usually located on much more general purpose systems such as laptops and computers used by people in which there is no standardized automated way to perform proof of control.</t>
      <t>In addition to proving control of an identifier, a major concern that enterprises have with the use of client certificates has been the trustworthiness of the client system itself.
Such systems have many more configurations, and are often harder to assess the security posture of as a result.
While well managed mutual TLS (client and server authentication via PKIX certificate) has significant advantages over the more common login via username/password, if the private key associated with a client certificates is disclosed or lost, then the impact can be more significant.</t>
      <t>One use case envisioned here is that of client devices within an enterprise.  A Network Operations Center (NOC)
(which may be internal or an external contracted entity) will issue (client) certificates to devices that can prove via remote attestation that they are running an up-to-date operating system as well as the enterprise-required endpoint security software.</t>
      <t>Another use case envisioned is issuance of server certificates, for example TLS certificates or code-signing certificates, where the Certification Authority (CA) requires, in addition to proof of control of the identifiers, some proof about the security posture of the operating environment, such as how the private key is stored, or the running environment of the server application.</t>
      <t>This is a place where Remote Attestation Procudures (RATS) <xref target="RFC9334"/> can offer additional assurance.
Remote Attestation provides a framework as well as an emerging ecosystem of standardized data formats and tools for a device to provide a remote peer with proof of various system properties in the form of measured evidence and third-party endorsements.
ACME servers can leverage the Remote Attestation ecosystem either by directly consuming evidence and endorsements, or by having a third-party verifier assess the evidence and endorsements and produce an attestation result which is then provided to the ACME server.</t>
      <t>In this document, we propose an extension to the ACME protocol where ACME Server MAY challenge the ACME Client to produce an Attestation Evidence or Attestation Result in any format that is supported by the RATS Conceptual Message Wrapper <xref target="I-D.ietf-rats-msg-wrap"/>, for instance, an EAT (entity attestation token).
The ACME Server then verifies the attestation result against an appraisal policy as required by the requested certificate profile.
Essentially, this provides a mechanism for the ACME server to challenge for and transport Remote Attestation data, but it leaves out-of-scope how the ACME server verifies the provided data according to its certificate profiles.
Remote Attestation can in some cases provide proof of control of an identifier, such as a hardware serial number or a cryptographic public key, but in general Remote Attestation will be at a lower level than the identifier going into the certificate such as a FQDN or an email address.
Therefore the design of this extension does not replace the identity challenges in the ACME protocol, but acts supplementally to it.</t>
      <t>ACME can presently offer certificates with multiple identities.
Typically, in a server certificate situation, each identity represents a unique FQDN that would be placed into the certificate as distinct Subject Alt Names (SAN).
For instance each of the names: example.com, www.example.com, www.example.net and marketing.example.com might be placed in a single certificate for a server that provides web content under those four names.</t>
      <t>This document defines a new identity type, <tt>trustworthy</tt> that the ACME client can ask for.
A new <tt>attestation-result-01</tt> challenge is defined as a new method by which the ACME Server can challenge the Client to provide Remote Attestation according to the RATS Passport model.
The <tt>attestation-evidence-02</tt> challenge is also defined, challenging the client to provide direct evidence according to the RATS Background Check model.
In this way, the Certification Authority (CA) or Registration Authority (RA) issues certificates only to devices that can provide an appropriate attestation of the required properties / claims, indicating that the device from which the ACME request originates has passed the required security checks.</t>
      <t>The term "remote attestation" covers a broad range of standardized and proprietary technologies and data formats and this specification tries to be as technology-agnostic as possible. However, it assumes that evidence could contain sensitive data and therefore needs an optional payload encryption mechanism to keep this information protected as at passes through the various layers of the ACME server and RA to a RATS Verifier, whereas attestation results are assumed to be non-sensitive and therefore do not require this extra protection.</t>
      <t>Attested ACME requests can form an essential building block towards the continuous monitoring/validation requirement of Zero-Trust principle when coupled with other operational measures, such as issuing only short-lived certificates.</t>
      <t>For ease of denotion, we omit the "ACME" adjective from now on, where Server means ACME Server and Client means ACME Client.</t>
      <section anchor="design-overview">
        <name>Design overview</name>
        <t>Conceptually, the server is challenging the client to produce remote attestation as part of the certificate enrollment flow.
However, this mechanism cannot be defined simply as an ACME challenge for a number of reasons.</t>
        <t>First, the ACME protocol <xref target="RFC8555"/> is designed such that a client requests a given identifier to appear in the certificate, and the server provides a list of proof-of-control challenges such as {DNS-01, HTTP-01} to which the client only needs to respond to one. The design goal here is that the remote attestation challenge supplements the identifier challenges rather than replaces them. Instead we want the behavior that the client must respond to one of {DNS-01, HTTP-01} and also provide remote attestation of the given list of attestable properties.</t>
        <t>Second, an ACME client can request multiple identifiers in a single certificate request and so ACME challenges are per identifier. By contrast, remote attestation typically applies to the entire client device or private key and is not coupled to the requested identifiers.</t>
        <t>Consider an example where a Client requests a certificate for the DNS name "client01.finance.example" and the Server wants to respond that the client can fulfill either a DNS-01 or an HTTP-01 Challenge to prove ownership of that DNS same, and also the Client must provide two separate types of remote attestation, one measuring the boot stack and device integrity where the application runs, and a separate attestation proving that the subject private key is in an HSM. The desired behavior is {DNS-01 OR HTTP-01} AND measured-boot AND hsm. The only way for the Server to issue four Challenges in ACME that behave this way is to issue the DNS-01 and HTTP-01 under the same Identifier, and the measured-boot and hsm Challenges each under their own Identifier. To achieve this, <xref target="sec-identifier"/> introduces a new ACME Identifier type "remote-attestation" which is not really an identifier, but instead conveys the general type of attestation required.</t>
        <t>EDNOTE: there will be cases where the attestation does act as proof-of-control of an identifier, such as validating a Serial Number DN component. So do we want to allow <tt>attestation-result-01</tt> and <tt>attestation-evidence-01</tt> to be used within any identifier so that you can say DNS-01 or HTTP-01 or remote-attestation for cases where that makes sense?</t>
      </section>
      <section anchor="related-work">
        <name>Related work</name>
        <t>ACME-RA and ACME-DA specifications address device and posture trustworthiness within ACME through different mechanisms and scopes. The Device Attestation Extension defines two new identifier types, <tt>permanent-identifier</tt> and <tt>hardware-module</tt>, and validates them through a single <tt>device-attest-01</tt> challenge answered with a WebAuthn attestation object; the Server performs verification directly against the attestation statement, corresponding to a single-hop Background Check pattern. These identifiers may be carried into the certificate's Subject Alternative Name, subject to strict octet-matching rules, or omitted under a defined privacy-preserving mode, and the mechanism assumes the requesting client and the attested device or key are the same entity.</t>
        <t>The ACME RATS extension takes a broader approach. It introduces a <tt>remote-attestation</tt> identifier whose value functions as a property hint, such as "hsm" or "measured-boot", rather than an actual identifier, and defines a <tt>remote-attest-01</tt> challenge answered with a RATS Conceptual Message Wrapper capable of carrying evidence, endorsements, or an attestation result in any RATS-supported format. It offers support for both the Passport and Background Check models defined by the RATS architecture, including an optional third-party Verifier role and payload encryption for sensitive evidence. Attestation under this specification is explicitly supplemental because it does not populate certificate identifiers, and the client must separately satisfy a conventional identifier challenge such as <tt>DNS-01</tt> or <tt>HTTP-01</tt>. It also accounts for topologies in which the Client and the attested application host are distinct.</t>
        <t>In summary, the Device Attestation Extension provides a narrowly scoped, identity-binding mechanism built on WebAuthn-wrapped vendor attestation formats, while ACME RATS provides a more general, RATS-ecosystem-native framework for conveying supplemental trust and posture information, decoupled from certificate identifiers. The two mechanisms are intended to be complementary rather than competing.</t>
        <t><xref target="CSRATT"/> define a mechanism for carrying arbitrary remote attestation data within a certificate signing request (CSR) object (PKCS#10 or CRMF). Since ACME internally uses PKCS#10 CSRs, this provides an alternate mechanism for carrying remote attestation within ACME.
This specification provides additional functionality that cannot be achieved via attested CSRs, namely giving the ACME server a way to challenge the client not only for attestation, for for attestation of specific properties. It also decouples the attestation from the CSR, which future-proofs this mechanism in case CSR is removed as a mandatory part of the ACME protocol at some future time.
That said, there is no reason that <xref target="CSRATT"/> could not be combined with the mechanism described in this document; for example a client could provide an attested CSR proving protection properties of the private key within an HSM, and also respond to an ACME remote attestation challenge proving the security posture of the application stack.</t>
        <t><xref target="RATSPA"/> defines a summary of a local assessment of posture for managed systems and across various  layers.
The claims and mechanisms defined in <xref target="RATSPA"/> are a good basis for the assessment that will need to be done in order to satisfy the trustworthiness challenge detailed in this document.</t>
      </section>
    </section>
    <section anchor="overview">
      <name>Overview</name>
      <section anchor="sec-identifier">
        <name>'remote-attestation' identifier</name>
        <t>A new identifier type to indicate client support or server request for remote attestation.
This is a "dummy" identifier in that the <tt>value</tt> does not contain an actual identifier, but instead a property that is to be remotely attested.
The <tt>value</tt> MAY be left empty, or contain a property hint as per <xref target="prophints"/>.</t>
        <dl>
          <dt>type (required, string):</dt>
          <dd>
            <t>The string "remote-attestation".</t>
          </dd>
          <dt>value (required, string):</dt>
          <dd>
            <t>A string from the  ACME Attest Claims Hint Registry defined in <xref target="prophints"/>, which could be the empty string.</t>
          </dd>
        </dl>
        <t>A Client MAY advertize support for multiple "remote-attestation" identifiers in the same ACME protocol flow.</t>
        <t>A Server MAY issue challenges for multiple "remote-attestation" identifiers in the same ACME protocol flow. As the Server is authoritative for the requirements to be fulfilled for the given certificate request, the Server MAY choose not to issue a Challenge for every "remote-attestation" identifier type that the Client advertized support for, and conversely, the Server MAY issue a challenge for "remote-attestation" identifiers that the Client did not advertize support for.</t>
        <t>EDNOTE: Is there any reason for the client to include "remote-attestation" identifiers in the newOrder at all?</t>
      </section>
      <section anchor="rats-chall">
        <name>remote-attest-01 Challenge</name>
        <t>A <tt>remote-attest-01</tt> challenge type asks the Client to provide Evidence appropriate for making a  trustworthiness decision.
The Client SHOULD use the provided
<tt>freshnessNonce</tt> as an attestation freshness nonce, if the Client's underlying attestation technology supports freshness nonces.</t>
        <t>The Server MAY include a <tt>attestClaimsHint</tt> containing a list of claims or specific properties that it would like to see attested.</t>
        <t>The Client MUST complete the challenge by returning a CMW <xref target="I-D.ietf-rats-msg-wrap"/> which MAY contain remote attestation data in any defined CMW format, including: EAT <xref target="RFC9711"/>, WebAuthn (cite), TPM attest_certify (?cite), PKIXKeyAttesation <xref target="RATSKA"/>.
It may contain other RATS conceptual message types such as evidence, endorsement, or attestation result as appropriate for the mode.
Since this specification allows wide flexibility on the contents of the remote attestation data, this document does not remove the need for vendors to perform interoperability testing with CAs to ensure compatibility.</t>
        <t>This section describes the challenge/response extensions and procedures to use them.</t>
        <section anchor="remote-attest-01-challenge-object">
          <name>remote-attest-01 Challenge Object</name>
          <t>The <tt>remote-attest-01</tt> Challenge Object is:</t>
          <t>The basic fields <tt>type</tt> (which MUST be "remote-attest-01"), <tt>url</tt>, <tt>status</tt>, <tt>validated</tt> and <tt>error</tt> are preserved from <xref section="8" sectionFormat="of" target="RFC8555"/> un-modified. The following new fields are added:</t>
          <dl>
            <dt>freshnessNonce (required, string):</dt>
            <dd>
              <t>A randomly created nonce provided by the server which MUST be included in the Attestation Results to provide freshness.</t>
            </dd>
          </dl>
          <t>EDNOTE TODO: we should decide whether this nonce MAY / SHOULD / SHOULD NOT / MUST NOT be the same as the ACME nonce or the ACME Challenge URL.</t>
          <dl>
            <dt>attestClaimsHint (optional, list of string)</dt>
            <dd>
              <t>If the Server requires attestation of specific claims or properties in order to issue the requested certificate profile, then it MAY list one or more types of claims from the newly-defined ACME Attest Claims Hints registry defined in <xref target="prophints"/>.</t>
            </dd>
            <dt>verifierEncryptionCredential (optional, JWK)</dt>
            <dd>
              <t>A URL where the Client can fetch the encryption public key that it can use for encrypting the remote-attestation challenge response.</t>
            </dd>
          </dl>
          <t>The <tt>attestClaimsHint</tt> SHOULD contain values from the "JSON Web Token Claims" registry created by <xref target="RFC7519"/>, in particular claims related to remote attestation as registered in <xref target="RFC9711"/> and related documents, but MAY contain non-registered values. The Client SHOULD attempt to collect evidence, endorsements, or attestation results from its local environment that satisfies these claims, either directly if the local environment supports EAT <xref target="RFC7519"/>, or mapped to the closest equivalent claims in the supported format. The Client MAY ignore any claims that it does not recognize or that it is unable to collect remote attestation for. In other words, the Client SHOULD return what it has rather than failing, and allow the Server to decide if it is acceptable for the requested certificate profile.</t>
          <t>The <tt>verifierEncryptionCredential</tt> is an encryption key in JSON Web Key (JWK) {!RFC7517} format that the Client can use to encrypt the attestation data that it will return.
It is intended for cases where the evidence contains sensitive data the Client wishes to protect it against accidental logging, for example by HTTP proxies, as it passes through the Server's application stack. This could for example include data such as identifiers that could be linkable to a person and therefore qualify as Personally Identifiable Information, or any other detailed type of system measurement that the Client deems sensitive.
The credential SHOULD be in the JSON Web Key (JWK) <xref target="RFC7517"/> format, but MAY be in other reasonable formats such as a DER or PEM encoded X.509 certificate.</t>
          <t>EDNOTE: in the name of simplicity, make this "MUST JWK"?</t>
          <t>EDNOTE: We need to think carefully about whether this step needs to behave differently depending on whether the client will provide Evidence vs Attestation Result; particularly the nonces work a bit differently in the two cases. ... is it enough for the Server to always provide a nonce and just ignore it if the thing it gets back is an AR? Or maybe go even more hands-off and say "Here's a nonce field, whether and how you use it is up to the RA and its attestation Verifier" ?</t>
        </section>
        <section anchor="attestation-response">
          <name>remote-attest-01 Response</name>
          <t>The HTTP POST body to the challenge URL MUST be a raw JSON or CBOR CMW <xref section="5.2" sectionFormat="comma" target="I-D.ietf-rats-msg-wrap"/>, base64 encoded as necessary.</t>
          <t>If the Server provided a <tt>verifierEncryptionCredential</tt> and the Client wishes to make use of it, then the entire CWM payload MUST be placed inside a JSON Web Encryption (JWE) envelope <xref target="RFC7516"/>.</t>
        </section>
      </section>
    </section>
    <section anchor="example-protocol-flow">
      <name>Example Protocol Flow</name>
      <section anchor="new-order-req">
        <name>Step 1: newOrder Request Object</name>
        <t>During the certificate order creation step, the Client sends a /newOrder JWS request (Section 7.4 of <xref target="RFC8555"/>) whose payload contains an array of identifiers. To indicate support for remote attestation, the client adds one or more <tt>remote-attestation</tt> identifiers to the array of identifiers. This is entirely optional and the server MAY choose to challenge for attestation or not according to its configuration for the requested certificate profile irrespective of whether the client indicated that it is attestation-capable.</t>
        <t>The "remote-attestation" identifier MAY appear as the only identifier type in the array, but only if the supported remote attestation type is capable of proving control of the identifier(s) that will go into the certificate's CN or SANs. For example, a measured-boot style remote attestation MAY be capable of proving ownership of a hardware serial number, or a WebAuthn / FIDO / Passkey style remote attestation MAY be capable of proving control of a FIDO token belonging to a given username or email address.
However, more typically the "remote-attestation" identifier serves to provide supplemental trustworthiness next to a direct proof-of-control identity challenge such as DNS-01 or HTTP-01.</t>
        <t>In this example, a client is requesting a certificate for a <tt>dns</tt> identity <tt>client01.finance.example</tt> and offers that it can provide remote attestation of the measured-boot stack of the application server via the remote-attestation identifier <tt>"measured-boot"</tt>, as well as provide remote attestation from the underlying cryptographic hardware holding the private key via the remote-attestation identifier <tt>"hsm"</tt>. These values refer to the ACME Attest Properties Hint Registry defined in <xref target="prophints"/>.</t>
        <t>An example extended newOrder JWS request:</t>
        <artwork><![CDATA[
  POST /acme/new-order HTTP/1.1
  Content-Type: application/json
  {
    "protected": base64url({
      "alg": "ES256",
    }),
    "payload": base64url({
      "identifiers": [
        { "type": "dns", "value": "client01.finance.example" },
        { "type": "remote-attestation", "value": "measured-boot" },
        { "type": "remote-attestation", "value": "hsm" },
      ],
    }),
    "signature": "H6ZXtGjTZyUnPeKn...wEA4TklBdh3e454g"
  }
]]></artwork>
      </section>
      <section anchor="new-order-resp">
        <name>Step 2: Order Object</name>
        <t>As explained in <xref section="7.1.3" sectionFormat="comma" target="RFC8555"/>, the server returns an Order Object.</t>
        <t>An example extended Order Object that includes confirmation that this order will include remote attestation:</t>
        <artwork><![CDATA[
  POST /acme/new-order HTTP/1.1
  ...

  HTTP/1.1 200 OK
  Content-Type: application/json
  {
    "status": "pending",

    "identifiers": [
        { "type": "dns", "value": "client01.finance.example" },
        { "type": "remote-attestation", "value": "measured-boot" },
        { "type": "remote-attestation", "value": "hsm" },
    ],

    "authorizations": [
      "https://example.com/acme/authz/PAniVnsZcis",
      "https://example.com/acme/authz/C1uq5Dr+x8GSEJTSKW5B",
      "https://example.com/acme/authz/01jcCDfT0iJBmUlaueum",
    ],

    "finalize": "https://example.com/acme/order/T..fgo/finalize",
  }
]]></artwork>
        <t>The server is not required to match the list of remote-attestation identifiers provided by the client. The server MAY challenge for a subset of the remote-attestation identifiers offered by the client, or it MAY challenge for remote-attestation identifiers that were not offered by the client. The server has full discretion for deciding what properties are required to be attested for the requested certificate profile.</t>
      </section>
      <section anchor="step-3-authorization-object">
        <name>Step 3: Authorization Object</name>
        <t>The Client MUST complete the authorizations provided by the server, but it MAY do so in any order <xref target="RFC8555"/>.</t>
        <t>In this example, the Server has created an Authorization Object for the "remote-attestation" and "dns" identifiers.
The client accesses each authorization object from the URLs given in the Order Object.
In this example, the <tt>PAniVnsZcis</tt> authorization relates to the <tt>dns</tt> identifier, and
it is not changed from <xref section="8" sectionFormat="comma" target="RFC8555"/>.
The <tt>C1uq5Dr+x8GSEJTSKW5B</tt> authorization corresponds to the remote-attestation "measured-boot" identifier.</t>
        <t>Here is an example <tt>remote-attest-01</tt> challenge:</t>
        <artwork><![CDATA[
   POST https://example.com/acme/authz/C1uq5Dr+x8GSEJTSKW5B HTTP/1.1
   ..

   HTTP/1.1 200 OK
   Content-Type: application/json
   {
     "status": "pending",
     "expires": "2025-09-30T14:09:07.99Z",

     "identifier": {
       "type": "remote-attestation",
       "value": "measured-boot"
     },

     "challenges": [
       {
         "type": "remote-attest-01",
         "url": "https://example.com/acme/chall/prV_8235AD9d",
         "status": "pending",
         "freshnessNonce": "yoW1RL2zPBzYEHBQ06Jy",
         "attestClaimsHint": ["hwmodel", "swversion", "submods", "manifests",],
         "verifierEncryptionCredential": "https://example.com/acme/ra-encr-keys/_fyg_W85yTul8zDPygcIgKmj-xA",
       }
     ],
   }
]]></artwork>
        <t>EDNOTE: TODO: check 8555 if "token" is mandatory, and if so, use that to carry the attestation freshness nonce.</t>
        <t>In this example, the Server is indicating that it wants a remote attestation result including the following claims:</t>
        <artwork><![CDATA[
"attestClaimsHint": ["hwmodel", "swversion", "submods", "manifests",],
]]></artwork>
        <t>meaning that it is interested in the type of device and what software is running on it. This field is called a "hint" because the ACME Client might not be capable of obtaining remote attestation evidence, endorsements, or attestation results that directly map to these claims. Servers SHOULD NOT be written to expect exactly these claims back. This mechanism does not remove the need for vendors to perform interop testing against CAs.</t>
        <t>EDNOTE: is the attestClaimsHint actually adding anything useful on top of the identifier values of "measured-boot", "hsm", "passkey", etc?</t>
      </section>
      <section anchor="step-4-respond-to-remote-attestation-challenge">
        <name>Step 4: Respond to Remote Attestation Challenge</name>
        <t>The client now queries its local environment to obtain evidence, endorsements and/or attestation results to satisfy the Remote Attestation challenge.</t>
        <t>If the underlying remote attestation technology supports a freshness nonce, then the Client passes the (example) token <tt>yoW1RL2zPBzYEHBQ06Jy</tt> into the underlying attestation service as the nonce.</t>
        <t>The payload of the Remote Attestation Challenge response MUST be a CMW <xref target="I-D.ietf-rats-msg-wrap"/>, but the underlying payload type within the CMW is left unconstrained and therefore the details of collecting the remote attestation data for this this step are not in scope for this document.
As an example, it might use EAT <xref target="RFC9711"/>, TPM-CHARRA <xref target="RFC9684"/>, or X, or Y (XXX: insert more options)</t>
        <t>Assume the following binary blob is Remote Attestation evidence collected by the Client:</t>
        <artwork><![CDATA[
yePAuQj5xXAnz87/7ItOkDTk5Y4syoW1RL2zPBzYEHBQ06JyUvZDYPYjeTqwlPszb9Grbxw0UAEFx5DxObV1
]]></artwork>
        <t>This result is sent as a POST to <tt>https://example.com/acme/chall/prV_8235AD9d</tt></t>
        <artwork><![CDATA[
   POST https://example.com/acme/chall/prV_8235AD9d HTTP/1.1
   ..
   Content-Type: application/cmw+cbor

   yePAuQj5xXAnz87/7ItOkDTk5Y4syoW1RL2zPBzYEHBQ06JyUvZDYPYjeTqwlPszb9Grbxw0UAEFx5DxObV1
]]></artwork>
        <t>(EDIT: change to cwm+jws example that wraps the example binary blob)</t>
        <t>Alternatively, the Client MAY use the JWE format <xref target="RFC7516"/> to encrypt the remote attestation data for the Server's <tt>verifierEncryptionCredential</tt> and instead send a POST like this:</t>
        <artwork><![CDATA[
   POST https://example.com/acme/chall/prV_8235AD9d HTTP/1.1
   ..
   Content-Type: application/jwt

   eyJhbGciOiJSU0EtT0FFUCIsImVuYyI6IkEyNTZHQ00ifQ.RYSEVOaD[snip]wwEbtY96_8P3a_A.5QLBf5hAXCkP7CdS.XBiai[snip]RWz1D3f.kCIIMWMoObyekuQ33u0oYQ
]]></artwork>
        <t>('[snip]' indicates that the JWE has been truncated for publication.)</t>
        <t>The Server decodes the provided CMW <xref target="I-D.ietf-rats-msg-wrap"/>.</t>
        <t>The Server MUST perform a full verification of the remote attestation data, including verification of the signature against a pre-configured trust anchor, and appraisal according to a suitable appraisal policy. The CA's certificate policy is the final authority for what trust anchors and appraisal policies will apply and the details are not in scope for this document.</t>
        <t>At this point, if the client were to re-retrieve the authorization object from step 3, it would observe (if everything was accepted and successfully verified) that the status for this challenge would now be marked as valid.</t>
      </section>
      <section anchor="step-5-perform-other-challenges">
        <name>Step 5: Perform other challenges</name>
        <t>The client SHOULD now perform any other Remote Attestation or non-Remote Attestation challenges that were listed in the Order Object from step 2.
ACME provides no ordering constraint on the challenges, so the Client MAY process them in any order, including concurrently.</t>
      </section>
      <section anchor="step-6-finalize-order-retrieve-certificate">
        <name>Step 6: Finalize Order, retrieve certificate</name>
        <t>At this point, the process continues as described in <xref section="7.4" sectionFormat="of" target="RFC8555"/>.
This means that the finalize action is used, which includes a CSR.
If all is well, it will result in a certificate being issued.</t>
      </section>
    </section>
    <section anchor="prophints">
      <name>ACME Attest Properties Hint Registry</name>
      <t>In order for the client to communicate in the newOrder request what types of attestation it is capable of producing, and for the server to indicate in the newOrder response what properties it requires attestation of, this specification creates a new IANA registry called "ACME Attest Properties Hint Registry. The hint is used as the value of the "remote-attestation" identifier type, as described in {#new-order-req} and {#new-order-resp}. In order to preserve vendor flexibility, the initial values in the ACME Attest Properties Hint Registry are intended to be generic in nature, and decoupled from the RATS conceptual message type (evidence, endorsement, or attestation result) or attestation data format (EAT (cite), WebAuthn (cite), TPM attest_certify (cite), PKIXKeyAttestation (cite), or device-proprietary). This model expects CAs to publish documentation about what specific data formats they support, and for vendors to perform interoperability testing with CAs to ensure compatibility. Ultimately, the CA's certificate policies will be the authority on what evidence or attestation results it will accept.</t>
      <t>The ACME Attest Claims Hint Registry is intended to help clients to collect evidence or attestation results that are most likely to be acceptable to the server, but are not a guaranteed replacement for performing interoperability testing between a given attesting device and a given CA. Similarly, an ACME attestation hint may not map one-to-one with attestation functionality exposed by the underlying attesting device, so Clients might need to act as intermediaries mapping ACME hints to vendor-specific functionality on a per-hardware-vendor basis.</t>
      <t>See <xref target="iana-propshints"/> for the initial contents of this new registry.</t>
    </section>
    <section anchor="example-use-cases">
      <name>Example use cases</name>
      <section anchor="conflicting-duties">
        <name>Conflicting duties</name>
        <t>(EDIT: This text might be stale)</t>
        <ol spacing="normal" type="1"><li>
            <t>Integration/compatibility difficulty: Integrating SOC and NOC requires plenty of customized, case-by-case developing work. Especially considering different system vendors, system versions, different data models and formats due to different client needs... Let alone possible updates.</t>
          </li>
          <li>
            <t>Conflict of duties: NOC people do not want SOC people to interfere with their daily work, and so do SOC people. Also, NOC people may have limited security knowledge, and SOC people vice versa. Where to draw the line and what is the best tool to help them collaborate is a question.</t>
          </li>
        </ol>
      </section>
      <section anchor="enterprise-wifi-access">
        <name>Enterprise WiFi Access</name>
        <t>In enterprise access cases, security administrators wish to check the security status of an accessing end device before it connects to the internal network.
Endpoint Detection and Response (EDR) softwares can check the security/trustworthiness statuses of the device and produce an Attestation Result (AR) if the check passes. ACME-RA procedures can then be used to redeem a certificate using the AR.</t>
        <t>With that being said, a more specific use case is as follows: an enterprise employee visits multiple campuses, and connects to each one's WiFi. For example, an inspector visits many (tens of) power substations a day, connects to the local WiFi, downloads log data, proceeds to the next and repeat the process.</t>
        <t>Current access solution include: 1. The inspector remembers the password for each WiFi, and conducts the 802.1X EAP password-based (PAP/CHAP/MS-CHAPv2) authentication. or 2. an enterprise MDM receives the passwords and usernames over an application layer connection from the MDM server, and enters them on user's behalf. While Solution 1 obviously suffers from management burdens induced by the massive number of password pairs, and password rotation requirements, the drawback of Solution 2 is more obsecure, which include:</t>
        <t>a. Bring Your Own Device (BYOD) situation and MDM is not available.
b. Password could risk leakage due to APP compromise, or during Internet transmission. Anyone with the leaked password can access, without binding of trusted/usual devices.
c. The RADIUS Client/Access Point/Switch is not aware of the identity of the accessing device, therefore cannot enforce more fine-grained access policies.</t>
        <t>An ideal user story is:
1. When the inspector is at base (or whenever the Remote Attestation-based check is available), he gets his device inspected and redeems a certificate using ACME-RA.
2. When at the substation, the inspector authenticate to the WiFi using EAP-TLS, where all the substations have the company root CA installed.
2*. Alternatively, the Step 2 can use EAP-repeater mode, where the RADIUS Client redirects the request back to the RADIUS Server for more advanced checks.</t>
      </section>
      <section anchor="byod-devices">
        <name>BYOD devices</name>
        <t>Another example is issuing S/MIME certificates to BYOD devices only if they can prove via attestation that they are registered to a corporate MDM and the user they are registered to matches the user for which a certificate has been requested.</t>
        <t>In this case, the Server might challenge the client to prove that it is properly-registered to the enterprise to the same user as the subject of the requested S/MIME certificate, and that the device is running the corporate-approved security agents.</t>
      </section>
      <section anchor="private-key-in-hardware">
        <name>Private key in hardware</name>
        <t>In some scenarios the CA might require that the private key corresponding to the certificate request is stored in cryptographic hardware and non-extractable. For example, the certificate profile for some types of administrative credentials may be required to be stored in a token or smartcard. Or the CA might be required to enforce that the private key is stored in a FIPS-certified HSM running in a configuration compliant with its FIPS certificate -- this is the case, for example, with CA/Browser Forum Code Signing certificates <xref target="CABF-CSBRs"/> which can be attested for example via <xref target="RATSKA"/>.</t>
        <t>It could also be possible that the requested certificate profile does not require the requested key to be hardware-backed, but that the CA will issue the certificate with extra assurance, for example an extra policy OID or a longer expiry period, if attestation of hardware can be provided.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The attestation-result-01 challenge (the Passport Model) is mandatory to implement.
The encrypted-evidence-01 challenge (the background-check model) is optional.</t>
      <t>In all cases the Server has to be able to verify Attestation Results from the Verifier.
To do that it requires appropriate trust anchors.</t>
      <t>In the Passport model, Evidence -- which may contain personally identifiable information (PII)) -- is never seen by the ACME Server.
Additionally, there is no need for the Verifier to accept connections from ACME Server(s).
The Attester/Verifier relationship used in the Passport Model leverages a pre-existing relationship.
For instance if the Verifier is operated by the manufacturer of the Attester (or their designate), then this is the same relationship that would be used to obtain updated software/firmware.
In this case, the trust anchors may also be publically available, but the Server does not need any further relationship with the Verifier.</t>
      <t>In the background-check model, Evidence is sent from the Attester to the ACME Server.
The ACME Server then relays this Evidence to a Verifier.
The Evidence is encrypted so that the Server it never able to see any PII which might be included.
The choice of Verifier is more complex in the background-check model.
Not only does ACME Server have to have the correct trust anchors to verify the resulting Attestation Results, but the ACME Server will need some kind of business relationship with the Verifier in order for the Verifier to be willing to appraise Evidence.</t>
      <t>The <tt>trustworthy</tt> identifier is not an actual identifier.
It does not result in any specific contents to the certificate Subject or SubjectAltName.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="iana-propshints">
        <name>ACME Attest Properties Hint Registry</name>
        <t>IANA is requested to open a new registry, XXXXXXXX</t>
        <t>Type: designated expert</t>
        <t>The registry has the following columns:</t>
        <ul spacing="normal">
          <li>
            <t>Property Hint: the string value to be placed within an ACME identifier of type "remote-attestation".</t>
          </li>
          <li>
            <t>Description: a description of the general property which the client is expected to attest.</t>
          </li>
        </ul>
        <t>The initial registry contents is shown in the table below.</t>
        <table>
          <thead>
            <tr>
              <th align="left">Property Hint</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">""</td>
              <td align="left">Empty string. Indicates client support for, or a server request for, attestation without being specific about what type. Typically this means the client will produce whatever remote attestation data it is capable of.</td>
            </tr>
            <tr>
              <td align="left">"hsm"</td>
              <td align="left">Attestation that the private key associated with this certificate request is stored in cryptographic hardware such as a TPM or PKIX HSM. In the case of PKCS#11 HSMs, the attestation SHOULD contain the PKCs#11 properties of the private key storage, as well as an indication of whether the cryptographic module is operating in FIPS mode.</td>
            </tr>
            <tr>
              <td align="left">"measured_boot"</td>
              <td align="left">Attestation from the device's onboard measured-boot stack of the device running the application.</td>
            </tr>
            <tr>
              <td align="left">"os_patch_level"</td>
              <td align="left">Attestation to the version or patch level of the device's operating system.</td>
            </tr>
            <tr>
              <td align="left">"sw_manifest"</td>
              <td align="left">A manifest list of all software currently running on the device.</td>
            </tr>
            <tr>
              <td align="left">"fido2"</td>
              <td align="left">A request for FIDO2-based user authentication; maybe this is to validate a user identifier directly against the FIDO2 data, or maybe this serves as a second-factor to the CA's certificate pickup flow.</td>
            </tr>
          </tbody>
        </table>
        <t>In general, the target environment that the Server wants to be remotely attested is the environment where the application is running. The "hsm" property is an exception to this because this wants attestation from the cryptographic module instead.</t>
        <t>In cases where the Client is running on a different host from the application, remote attestation always refers to the application host. In other words, a centralized Client MUST fulfill the ACME-RA challenge by getting the application server that will ultimately use the certificate to query its local environment for remote attestation, and the Client MUST NOT present remote attestation from the host where it is running.</t>
        <t>EDNOTE: I am somewhat surprised that a registry like this does not already exist associated with CMW.</t>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8555">
          <front>
            <title>Automatic Certificate Management Environment (ACME)</title>
            <author fullname="R. Barnes" initials="R." surname="Barnes"/>
            <author fullname="J. Hoffman-Andrews" initials="J." surname="Hoffman-Andrews"/>
            <author fullname="D. McCarney" initials="D." surname="McCarney"/>
            <author fullname="J. Kasten" initials="J." surname="Kasten"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>Public Key Infrastructure using X.509 (PKIX) certificates are used for a number of purposes, the most significant of which is the authentication of domain names. Thus, certification authorities (CAs) in the Web PKI are trusted to verify that an applicant for a certificate legitimately represents the domain name(s) in the certificate. As of this writing, this verification is done through a collection of ad hoc mechanisms. This document describes a protocol that a CA and an applicant can use to automate the process of verification and certificate issuance. The protocol also provides facilities for other certificate management functions, such as certificate revocation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8555"/>
          <seriesInfo name="DOI" value="10.17487/RFC8555"/>
        </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="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-rats-ar4si">
          <front>
            <title>Attestation Results for Secure Interactions</title>
            <author fullname="Eric Voit" initials="E." surname="Voit">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer SIT</organization>
            </author>
            <author fullname="Thomas Hardjono" initials="T." surname="Hardjono">
              <organization>MIT</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <author fullname="Vincent Scarlata" initials="V." surname="Scarlata">
              <organization>Intel</organization>
            </author>
            <date day="18" month="May" year="2026"/>
            <abstract>
              <t>   This document defines reusable Attestation Result information
   elements.  When these elements are offered to Relying Parties as
   Evidence, different aspects of Attester trustworthiness can be
   evaluated.  Additionally, where the Relying Party is interfacing with
   a heterogeneous mix of Attesting Environment and Verifier types,
   consistent policies can be applied to subsequent information exchange
   between each Attester and the Relying Party.

   This document also defines two serialisations of the proposed
   information model, utilising CBOR and JSON.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rats-ar4si-10"/>
        </reference>
        <reference anchor="RFC7519">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7519"/>
          <seriesInfo name="DOI" value="10.17487/RFC7519"/>
        </reference>
        <reference anchor="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="RFC7517">
          <front>
            <title>JSON Web Key (JWK)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>A JSON Web Key (JWK) is a JavaScript Object Notation (JSON) data structure that represents a cryptographic key. This specification also defines a JWK Set JSON data structure that represents a set of JWKs. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and IANA registries established by that specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7517"/>
          <seriesInfo name="DOI" value="10.17487/RFC7517"/>
        </reference>
        <reference anchor="RFC7516">
          <front>
            <title>JSON Web Encryption (JWE)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Hildebrand" initials="J." surname="Hildebrand"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Encryption (JWE) represents encrypted content using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and IANA registries defined by that specification. Related digital signature and Message Authentication Code (MAC) capabilities are described in the separate JSON Web Signature (JWS) specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7516"/>
          <seriesInfo name="DOI" value="10.17487/RFC7516"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="CSRATT">
          <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="22" month="October" 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-32"/>
        </reference>
        <reference anchor="RATSPA">
          <front>
            <title>Remote Posture Assessment for Systems, Containers, and Applications at Scale</title>
            <author fullname="Kathleen Moriarty" initials="K." surname="Moriarty">
              <organization>Transforming Information Security LLC</organization>
            </author>
            <author fullname="Monty Wiseman" initials="M." surname="Wiseman">
              <organization>Beyond Identity</organization>
            </author>
            <author fullname="A.J. Stein" initials="A. J." surname="Stein">
         </author>
            <author fullname="Chandra Nelogal" initials="C." surname="Nelogal">
              <organization>Dell Technologies</organization>
            </author>
            <date day="8" month="April" year="2026"/>
            <abstract>
              <t>   This document establishes an architectural pattern whereby
   Attestation Results could be produced for a complete set of
   benchmarks or controls that are defined and grouped by an external
   entity, eliminating the need to convey individual Evidence items for
   each item within a benchmark or control framework.  This document
   establishes a pattern to list sets of benchmarks and controls within
   CWT and JWT formats for use as an Entity Attestation Token (EAT).
   While the discussion below pertains mostly to TPM, other Roots of
   Trust such as TCG DICE and non-TCG defined components will also be
   included.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rats-posture-assessment-04"/>
        </reference>
        <reference anchor="RATSKA">
          <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="I-D.draft-bweeks-acme-device-attest-01">
          <front>
            <title>Automated Certificate Management Environment (ACME) Device Attestation Extension</title>
            <author fullname="Brandon Weeks" initials="B." surname="Weeks">
              <organization>Google</organization>
            </author>
            <date day="7" month="August" year="2022"/>
            <abstract>
              <t>   This document specifies new identifiers and a challenge for the
   Automated Certificate Management Environment (ACME) protocol which
   allows validating the identity of a device using attestation.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-bweeks-acme-device-attest-01"/>
        </reference>
        <reference anchor="letsencrypt" target="https://www.eff.org/deeplinks/2023/08/celebrating-ten-years-encrypting-web-lets-encrypt">
          <front>
            <title>Celebrating Ten Years of Encrypting the Web with Let's Encrypt</title>
            <author>
              <organization>Electronic Frontier Foundation</organization>
            </author>
            <date year="2025" month="August" day="20"/>
          </front>
        </reference>
        <reference anchor="CABF-CSBRs" target="https://cabforum.org/working-groups/code-signing/documents/">
          <front>
            <title>Baseline Requirements for Code-Signing Certificates</title>
            <author>
              <organization>CA/BROWSER FORUM</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="RFC9684">
          <front>
            <title>A YANG Data Model for Challenge-Response-Based Remote Attestation (CHARRA) Procedures Using Trusted Platform Modules (TPMs)</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="M. Eckel" initials="M." surname="Eckel"/>
            <author fullname="S. Bhandari" initials="S." surname="Bhandari"/>
            <author fullname="E. Voit" initials="E." surname="Voit"/>
            <author fullname="B. Sulzen" initials="B." surname="Sulzen"/>
            <author fullname="L. Xia" initials="L." surname="Xia"/>
            <author fullname="T. Laffey" initials="T." surname="Laffey"/>
            <author fullname="G. C. Fedorkow" initials="G. C." surname="Fedorkow"/>
            <date month="December" year="2024"/>
            <abstract>
              <t>This document defines the YANG Remote Procedure Calls (RPCs) and configuration nodes that are required to retrieve attestation evidence about integrity measurements from a device, following the operational context defined in RFC 9683 "TPM-based Network Device Remote Integrity Verification". Complementary measurement logs originating from one or more Roots of Trust for Measurement (RTMs) are also provided by the YANG RPCs. The defined module requires the inclusion of the following in the device components of the composite device on which the YANG server is running: at least one Trusted Platform Module (TPM) of either version 1.2 or 2.0 as well as a corresponding TPM Software Stack (TSS), or an equivalent hardware implementation that includes the protected capabilities as provided by TPMs as well as a corresponding software stack.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9684"/>
          <seriesInfo name="DOI" value="10.17487/RFC9684"/>
        </reference>
      </references>
    </references>
    <?line 512?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>We thank the participants on the ACME Working Group mailing list for their insightful feedback and comments. In particular, the authors extend sincere appreciation to Mike Agrenius Kushner for their reviews and suggestions, which greatly improved the quality of this document.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
HoRdJe5Zk7P0A1d9s1LbIe+i4LqtdpD+a1eI6XzXNvtSHA2gCrKa5LxS4pW5
8F6irwsuUmMVZyuQ4xQle5doOuz1/rf711Osh3CDWycZCZ/2DkbYQfOI/cpD
bnEcnNHeB27O+ok6NPZdXV//UNSQusx2Pkn7xn6UzeGL/snk4ZNv+wP69PPu
QF5lSdj9YiCD4IH/lo9hWtVHBomDAtb2B6pPUMW/767T+Dzoer+DpMPhmsj1
18agbE735j9bAMCspwizJvDRl9/+9q768cPVb5s3+YV+lYOavT4ZP766yZ4n
i0f68ZPH1ML4c3iMXvV5eKj4yDv1HbPC0BunHUZBUgXrJl6d/G50MHqECmUg
1tnkJjUlnOEO1GssglkEW7Ai3205qBiJqRGFi9scibG7TbJ/FnsBeD34YT9R
D/f31fmrP4HW7MTHcxHTC5C39/8pYv7Tbq3R5DHcnetlHXQYYOjjK3/sXYzz
9Nfc/Banpj/4yneODup/PTku//bx6Y+Tk5+uJq/ePnn+1S/vH3yIj45nV/vp
T8+Xb7Ko1vWy39oNAjtL/+Dt3jUcYc7e1Wg0mxd77o3BFqFdLcIS06A+OGGD
yPq0bczgXrlgtsIsjCHsnWyo081qUVNPja6aob475yA53Z6C9C8JJDRH/8Jo
rF2ic42SDLvGbiwfXZjU3hHbtAEPsTo9eSopcCi9JqzEo2ZkAUynQcbw1/ow
HTt8dGi7FUjH0jAaeGdou4n/d8TCXO8aBGFSYL2OhLCZC7HVyjbfqEMvC0xx
hJGNJUR554rd1jsVUFTHiNs0qx+vAmOQOmTawrFmF1dJr3Xa0JvLn42tFmbz
pcnwO7dyHdD+dWsCjlw4+zJUM13FQo8NMko7WwTNXTuk01MEKLmpu3hHe3Jf
KOMW0IHibWYalLT2ei8lqTSoIb0ve6UtpFhK/QU2GEoyxZKsQ5R9WZaJMOuW
ZvwNaAQYwsSvuFP4s+Gj/auDx4f7zw73vxs9e/abFXyh5IPHraJ2v8RxD90h
vPj7z24Kn4gWylY3112zYQR+EDwEmuS9XJ+m2VuVv/7+9OGjJ+PjZ0nj9TvB
xXKlEWDHpzbF24PLnx/+cfH8j/cnL5//sv/tT5vGK+0QJG6uv1hT1QqKZbPG
pDGR0Xi9SJGQBrGM8nSGNcr9wT/D8e7z29278TKidvXYbN/s/T7bzH9/+/TJ
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
mPmHjoCl+FBxamqAaIMvjTzj/wN9IaQy/Z0AAA==

-->

</rfc>
