<?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.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-acme-device-attest-07" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title abbrev="ACME DA">Automated Certificate Management Environment (ACME) Device Attestation Extension</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-acme-device-attest-07"/>
    <author initials="B." surname="Weeks" fullname="Brandon Weeks">
      <organization abbrev="Google Inc">Google Inc</organization>
      <address>
        <email>me@brandonweeks.com</email>
      </address>
    </author>
    <author initials="G." surname="Mallaya" fullname="Ganesh Mallaya">
      <organization abbrev="AppViewX Inc.">AppViewX Inc.</organization>
      <address>
        <email>ganesh.mallaya@appviewx.com</email>
      </address>
    </author>
    <author initials="S." surname="Rajala" fullname="Sven Rajala">
      <organization abbrev="Keyfactor">Keyfactor</organization>
      <address>
        <email>sven.rajala@keyfactor.com</email>
      </address>
    </author>
    <author initials="C." surname="Bonnell" fullname="Corey Bonnell">
      <organization abbrev="TurboLight Solutions">TurboLight Solutions</organization>
      <address>
        <email>corey.bonnell@turbolightsolutions.com</email>
      </address>
    </author>
    <author initials="R." surname="Hurst" fullname="Ryan Hurst">
      <organization abbrev="Peculiar Ventures">Peculiar Ventures</organization>
      <address>
        <email>ryan.hurst+ietf@peculiarventures.com</email>
      </address>
    </author>
    <date year="2026" month="June" day="13"/>
    <area>Security</area>
    <workgroup>ACME Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 84?>

<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>
  <middle>
    <?line 88?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The Automatic Certificate Management Environment (ACME) <xref target="RFC8555"/> standard specifies methods for validating control over identifiers, such as domain names. It is also useful to be able to validate properties of the device requesting the certificate, such as the identity of the device and whether the certificate key is protected by a secure cryptoprocessor.</t>
      <t>Many operating systems and device vendors offer functionality enabling a device to generate a cryptographic attestation of their identity, such as:</t>
      <ul spacing="normal">
        <li>
          <t><eref target="https://source.android.com/security/keystore/attestation">Android Key Attestation</eref></t>
        </li>
        <li>
          <t><eref target="https://developers.google.com/chrome/verified-access/overview">Chrome OS Verified Access</eref></t>
        </li>
        <li>
          <t><eref target="https://trustedcomputinggroup.org/resource/trusted-platform-module-tpm-summary/">Trusted Platform Module</eref></t>
        </li>
        <li>
          <t><eref target="https://support.apple.com/en-om/guide/deployment/dep28afbde6a/web">Managed Device Attestation for Apple Devices</eref></t>
        </li>
      </ul>
      <t>Using ACME and device attestation to issue client certificates for enterprise PKI will be a common use case. The following variances to the ACME specification are described in this document:</t>
      <ul spacing="normal">
        <li>
          <t>Addition of <tt>permanent-identifier</tt> <xref target="RFC4043"/> and <tt>hardware-module</tt> <xref target="RFC4108"/> identifier types.</t>
        </li>
        <li>
          <t>Addition of the <tt>device-attest-01</tt> challenge type to prove control of the <tt>permanent-identifier</tt> and <tt>hardware-module</tt> identifier types.</t>
        </li>
        <li>
          <t>The challenge response payload contains a serialized WebAuthn attestation statement format instead of an empty JSON object (<tt>{}</tt>).</t>
        </li>
        <li>
          <t>Accounts and external account binding being used as a mechanism to pre-authenticate requests to an enterprise CA.</t>
        </li>
      </ul>
      <t>This document does not specify the attestation verification procedures. Section 13 of <xref target="WebAuthn"/> gives some guidance, however verification procedures are complex and may require changes to address future security issues.</t>
      <t>Efforts are underway within the Remote ATtestation ProcedureS (RATS) working group to define a set of standard formats and protocols for attestation. An explicit aim of this document is to support vendor specific formats and protocols that are widely deployed at publication time of this specification.</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?>

</section>
    <section anchor="permanent-identifier">
      <name>Permanent Identifier</name>
      <t>A new identifier type, <tt>permanent-identifier</tt> is introduced to represent the identity of a device assigned by the manufacturer, typically a serial number. Additionally, the assigner of the identifier <bcp14>MAY</bcp14> also be specified. The name of this identifier type was chosen to align with <xref target="RFC4043"/>. This specification does not prescribe the lifetime of the identifier, which is at the discretion of the Assigner Authority.</t>
      <t>Although <xref target="RFC4043"/> permits any valid UTF-8 string to be used as the identifier, this specification mandates that identifiers <bcp14>MUST NOT</bcp14> contain the forward-slash "/" (UTF-8: U+002F) character. This restriction is required to make the ABNF production rule for the <tt>permanent-identifier-value</tt> unambiguous.</t>
      <section anchor="representation-in-order-resources">
        <name>Representation in Order resources</name>
        <t>The identifier's <tt>value</tt> field contains a UTF-8 string representation of the identity of the device. In addition to the value being a valid UTF-8 string, the value <bcp14>MUST</bcp14> match the <tt>permanent-identifier-value</tt> production rule as defined in this ABNF <xref target="RFC5234"/> syntax:</t>
        <artwork><![CDATA[
assigner-value = first-and-second-components *("." component)
first-and-second-components = (("0" / "1") "." (*1(%x31-33) %x30-39))) / ("2" "." component)
component = "0" / (%x31-39 *%x30-39)
device-identifier-value = 1*(%x00-2E / %x30-FF)

permanent-identifier-value = device-identifier-value ["/" assigner-value]
]]></artwork>
        <t>A valid <tt>permanent-identifier-value</tt> value is a UTF-8 string that contains an identity consisting of one or more characters without any forward-slash "/" (UTF-8: U+002F) characters. Optionally, a forward-slash "/" character and "dotted-decimal" object identifier identifying the assigner may follow the identity. The assigner-value is a dotted-decimal representation of an ASN.1 OBJECT IDENTIFIER.</t>
        <t>The Server <bcp14>MUST</bcp14> verify that identifier values in newOrder requests conform to the <tt>permanent-identifier-value</tt> production rule and <bcp14>MUST</bcp14> reject requests containing non-conforming values with a "malformed" error.</t>
        <t>Example identifier without an assigner:</t>
        <artwork><![CDATA[
{
  "type": "permanent-identifier",
  "value": "ABCDEF123456"
}
]]></artwork>
        <t>Example identifier with an assigner:</t>
        <artwork><![CDATA[
{
  "type": "permanent-identifier",
  "value": "ABCDEF123456/1.2.3.4"
}
]]></artwork>
      </section>
      <section anchor="representation-in-certificate-signing-requests-csrs-and-x509-certificates">
        <name>Representation in Certificate Signing Requests (CSRs) and X.509 Certificates</name>
        <t>This section describes the X.509 representation of the <tt>permanent-identifier</tt>. Other credential types may use the same identifier values with representations appropriate to those credential types.</t>
        <t>The identity is included in the Subject Alternative Name Extension using the <tt>identifierValue</tt> field of the PermanentIdentifier form described in <xref target="RFC4043"/>. Although <xref target="RFC4043"/> permits the requester to include the <tt>identifierValue</tt> in a <tt>serialNumber</tt> subject attribute, this specification mandates that the <tt>identifierValue</tt> field of the PermanentIdentifier <bcp14>MUST</bcp14> be present and <bcp14>MUST</bcp14> contain the identifier.</t>
        <t>The value of the identifierValue field of the PermanentIdentifier <bcp14>MUST</bcp14> be an octet-for-octet match of the device-identifier-value value as encoded in the Order resource. If the <tt>assigner-value</tt> value is included in the identifier as encoded in the Order resource, then the <tt>assigner</tt> field of the PermanentIdentifier <bcp14>MUST</bcp14> be the encoding of the "dotted-decimal" object identifier encoded as the <tt>assigner-value</tt> value.</t>
        <t>This strict matching requirement ensures that the SAN in the issued certificate appears exactly as it appeared during proof-of-ownership validation, preventing identifier malleability. Serial number allocation schemes may be case-sensitive or otherwise sensitive to exact byte representation, so no normalization or transformation is permitted.</t>
        <t>To ensure that the identifier as presented in the Order resource and CSR match, the Server <bcp14>MUST</bcp14> perform the logical equivalent of extracting the <tt>device-identifier-value</tt> and <tt>assigner-value</tt> values from the CSR and reconstructing the UTF-8 representation of the identifier. The Server <bcp14>MUST</bcp14> then ensure that the UTF-8 representation and the identifier presented in the Order resource are an octet-for-octet match and reject the Order otherwise. Servers that derive identifier values directly from verified attestation evidence and construct the certificate SAN from that evidence, provided the derived values are verified against the attested device identity in the attestation statement, satisfy the intent of this requirement.</t>
        <t><xref target="RFC8555"/> section 7.4 mandates that "The CSR <bcp14>MUST</bcp14> indicate the exact same set of requested identifiers as the initial newOrder request". However, there are some environments where the Server requires validation of the identifier but does not include the identifier in certificates due to privacy concerns. To support privacy-preserving certificates, Clients <bcp14>MAY</bcp14> omit this identifier in the certificate signing request (CSR). Similarly, if the Server wishes to issue privacy-preserving certificates, it <bcp14>MAY</bcp14> reject CSRs containing a PermanentIdentifier in the subjectAltName extension. See the <xref target="privacy-considerations"/> for more information.</t>
      </section>
    </section>
    <section anchor="hardware-module">
      <name>Hardware Module</name>
      <t>A new identifier type, <tt>hardware-module</tt> is introduced to represent the identity of the secure crypto-processor that generated the certificate key. The identity is modeled after the HardwareModuleName form described in <xref target="RFC4108"/>. It consists of two components: an OBJECT IDENTIFIER to represent the type of hardware module, and a serial number that identifies the specific hardware module.</t>
      <t>Although <xref target="RFC4108"/> specifies that serial numbers can be represented as any sequence of bytes, this specification requires that serial numbers <bcp14>MUST</bcp14> be representable as valid UTF-8 strings consisting of at least one code point and <bcp14>MUST NOT</bcp14> contain a forward-slash "/" (UTF-8: U+002F) character. This restriction ensures that serial numbers can be included in <tt>hardware-module</tt> identifier string values and that the ABNF production rule for the value is unambiguous.</t>
      <section anchor="representation-in-order-resources-1">
        <name>Representation in Order resources</name>
        <t>The identifier's <tt>value</tt> field contains a UTF-8 string representation of the identity of the hardware module. In addition to the value being a valid UTF-8 string, the value <bcp14>MUST</bcp14> match the <tt>hardware-module-value</tt> production rule as defined in this ABNF <xref target="RFC5234"/> syntax:</t>
        <artwork><![CDATA[
hw-type-value = first-and-second-components *("." component)
first-and-second-components = (("0" / "1") "." (*1(%x31-33) %x30-39))) / ("2" "." component)
component = "0" / (%x31-39 *%x30-39)
hw-serial-num-value = 1*(%x00-2E / %x30-FF)

hardware-module-value = hw-serial-num-value ["/" hw-type-value]
]]></artwork>
        <t>A valid <tt>hardware-module-value</tt> value is a UTF-8 string that contains a serial number consisting of one or more characters without any forward-slash "/" (UTF-8: U+002F) characters. Optionally, a forward-slash "/" character and "dotted-decimal" object identifier identifying the hardware type may follow the serial number.</t>
        <t>The Server <bcp14>MUST</bcp14> verify that identifier values in newOrder requests conform to the <tt>hardware-module-value</tt> production rule and <bcp14>MUST</bcp14> reject requests containing non-conforming values with a "malformed" error.</t>
        <t>Example identifier with the type of the hardware module represented using the OBJECT IDENTIFIER "1.2.3.4" and a serial number of "ABCD":</t>
        <artwork><![CDATA[
{
  "type": `hardware-module`,
  "value": "ABCD/1.2.3.4"
}
]]></artwork>
        <t>Example identifier with no type specified and a serial number of "ABCD":</t>
        <artwork><![CDATA[
{
  "type": `hardware-module`,
  "value": "ABCD"
}
]]></artwork>
      </section>
      <section anchor="representation-in-certificate-signing-requests-and-x509-certificates">
        <name>Representation in Certificate Signing Requests and X.509 Certificates</name>
        <t>This section describes the X.509 representation of the <tt>hardware-module</tt> identifier. Other credential types may use the same identifier values with representations appropriate to those credential types.</t>
        <t>The hardware module identity is included in the Subject Alternate Name Extension using the HardwareModuleName form described in <xref target="RFC4108"/>. The HardwareModuleName is encoded as an otherName with the OID id-on-hardwareModuleName (1.3.6.1.5.5.7.8.4) and consists of:</t>
        <ul spacing="normal">
          <li>
            <t>hwType: An OBJECT IDENTIFIER that identifies the type of hardware module</t>
          </li>
          <li>
            <t>hwSerialNum: An OCTET STRING containing the hardware module serial number</t>
          </li>
        </ul>
        <t>The value of the hwSerialNum field of the HardwareModuleName <bcp14>MUST</bcp14> be an octet-for-octet match of the hw-serial-num-value value as encoded in the Order resource. If the <tt>hw-type-value</tt> value is included in the identifier as encoded in the Order resource, then the <tt>hwType</tt> field of the HardwareModuleName <bcp14>MUST</bcp14> be the encoding of the "dotted-decimal" object identifier encoded as the <tt>hw-type-value</tt> value.</t>
        <t>This strict matching requirement ensures that the SAN in the issued certificate appears exactly as it appeared during proof-of-ownership validation, preventing identifier malleability. Serial number allocation schemes may be case-sensitive or otherwise sensitive to exact byte representation, so no normalization or transformation is permitted.</t>
        <t>To ensure that the identifier as presented in the Order resource and CSR match, the Server <bcp14>MUST</bcp14> perform the logical equivalent of extracting the <tt>hw-serial-num-value</tt> and <tt>hw-type-value</tt> values from the CSR and reconstructing the UTF-8 representation of the identifier. The Server <bcp14>MUST</bcp14> then ensure that the UTF-8 representation and the identifier presented in the Order resource are an octet-for-octet match and reject the Order otherwise. Servers that derive identifier values directly from verified attestation evidence and construct the certificate SAN from that evidence, provided the derived values are verified against the attested device identity in the attestation statement, satisfy the intent of this requirement.</t>
        <t><xref target="RFC8555"/> section 7.4 mandates that "The CSR <bcp14>MUST</bcp14> indicate the exact same set of requested identifiers as the initial newOrder request". However, there are some environments where the Server requires validation of the identifier but does not include the identifier in certificates due to privacy concerns. To support privacy-preserving certificates, Clients <bcp14>MAY</bcp14> omit this identifier in the certificate signing request (CSR). Similarly, if the Server wishes to issue privacy-preserving certificates, it <bcp14>MAY</bcp14> reject CSRs containing a HardwareModuleName in the subjectAltName extension. See the <xref target="privacy-considerations"/> for more information.</t>
      </section>
    </section>
    <section anchor="device-attestation-challenge">
      <name>Device Attestation Challenge</name>
      <t>The Client can prove control over a permanent identifier of a device by providing an attestation statement containing the identifier of the device.</t>
      <t>The device-attest-01 ACME challenge object has the following format:</t>
      <dl>
        <dt>type (required, string):</dt>
        <dd>
          <t>The string "device-attest-01".</t>
        </dd>
        <dt>token (required, string):</dt>
        <dd>
          <t>A random value that uniquely identifies the challenge.</t>
        </dd>
      </dl>
      <artwork><![CDATA[
{
  "type": "device-attest-01",
  "url": "https://example.com/acme/chall/Rg5dV14Gh1Q",
  "status": "pending",
  "token": "evaGxfADs6pSRb2LAv9IZf17Dt3juxGJ-PCt92wr-oA"
}
]]></artwork>
      <t>A Client fulfills this challenge by constructing a key authorization (<xref section="8.1" sectionFormat="of" target="RFC8555"/>) from the "token" value provided in the challenge and the Client's account key. The Client then generates a WebAuthn attestation object using the key authorization as the challenge.</t>
      <t>This specification borrows the WebAuthn <em>attestation object</em> representation as described in Section 6.5.4 of <xref target="WebAuthn"/> for encapsulating attestation formats, but with these modifications:</t>
      <ul spacing="normal">
        <li>
          <t>The key authorization is used to form <em>attToBeSigned</em>. This replaces the concatenation of <em>authenticatorData</em> and <em>clientDataHash</em>. <em>attToBeSigned</em> is hashed using an algorithm specified by the attestation format.</t>
        </li>
        <li>
          <t>Some attestation formats use an external attestation authority that issues a certificate binding the challenge to the device before the Client's account key is available. In these formats, <em>attToBeSigned</em> is formed from the token alone rather than the full key authorization, because the external authority signs at attestation time before the account key thumbprint can be incorporated. The token construction provides freshness. The key authorization construction additionally binds the attestation to a specific account key. The Server <bcp14>MUST</bcp14> consult format-specific documentation to determine which construction applies and <bcp14>MUST</bcp14> verify accordingly. Attestation formats whose signing procedure does not incorporate <em>attToBeSigned</em> cannot be used to satisfy this challenge type.</t>
        </li>
        <li>
          <t>The <em>authData</em> field carries browser-context data (including the RP ID hash) that has no meaning in the ACME context and <bcp14>SHOULD</bcp14> be omitted.</t>
        </li>
      </ul>
      <t>A Client responds with the response object containing the WebAuthn attestation object in the "attObj" field to acknowledge that the challenge can be validated by the Server. Clients <bcp14>MAY</bcp14> include additional fields beyond "attObj" in the response object. Servers <bcp14>MUST</bcp14> ignore unrecognized fields in the challenge response.</t>
      <t>On receiving a response, the Server constructs and stores the key authorization from the challenge's "token" value and the current Client account key.</t>
      <t>To validate a device attestation challenge, the Server performs the following steps:</t>
      <ol spacing="normal" type="1"><li>
          <t>Perform the verification procedures described in Section 6 of <xref target="WebAuthn"/>.</t>
        </li>
        <li>
          <t>Verify that <em>attToBeSigned</em> contains the key authorization or the token, according to the construction required by the attestation format, and that the value matches what the Server stored.</t>
        </li>
        <li>
          <t>Verify that the attestation statement contains a device identifier and that it matches the identifier in the Order. The means by which the identifier is encoded in the attestation statement are specific to the attestation format.</t>
        </li>
      </ol>
      <t>If any of the steps fail, then the Server <bcp14>MUST</bcp14> respond to the Client with a "badAttestationStatement" error and set the status of the challenge object to "invalid". The Server <bcp14>SHOULD</bcp14> provide the reason for rejecting the challenge in the "detail" field of the problem document.</t>
      <!-- This specification defines a new challenge response field `attObj` to contain WebAuthn attestation objects as described in Section 7.5.1 of {{RFC8555}}. -->
<artwork><![CDATA[
POST /acme/chall/Rg5dV14Gh1Q
Host: example.com
Content-Type: application/jose+json

{
  "protected": base64url({
    "alg": "ES256",
    "kid": "https://example.com/acme/acct/evOfKhNU60wg",
    "nonce": "SS2sSl1PtspvFZ08kNtzKd",
    "url": "https://example.com/acme/chall/Rg5dV14Gh1Q"
  }),
  "payload": base64url({
    "attObj": base64url(/* WebAuthn attestation object */),
  }),
  "signature": "Q1bURgJoEslbD1c5...3pYdSMLio57mQNN4"
}
]]></artwork>
      <t>The webauthn payload <bcp14>MAY</bcp14> contain any identifiers registered in "WebAuthn Attestation Statement Format Identifiers" and any extensions registered in "WebAuthn Extension Identifiers" <xref target="IANA-Webauthn"/>, <xref target="RFC8809"/>.</t>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <t>Although this document focuses guidance on implementing new identifier types and a challenge for certificate issuance using ACME, it does not define a new protocol, a protocol extension, or an architecture.</t>
      <section anchor="enterprise-pki">
        <name>Enterprise PKI</name>
        <t>ACME was originally envisioned for issuing certificates in the Web PKI, however this extension will primarily be useful in enterprise PKI.</t>
        <section anchor="external-account-binding">
          <name>External Account Binding</name>
          <t>An enterprise CA likely only wants to receive requests from authorized devices. It is <bcp14>RECOMMENDED</bcp14> that the Server require a value for the "externalAccountBinding" field to be present in "newAccount" requests.</t>
          <t>If an enterprise CA desires to limit the number of certificates that can be requested with a given account, including limiting an account to a single certificate, after the desired number of certificates have been issued to an account the Server <bcp14>MAY</bcp14> revoke the account as described in Section 7.1.2 of <xref target="RFC8555"/>.</t>
        </section>
        <section anchor="attestation-posture">
          <name>Attestation Posture</name>
          <t>Enterprise deployments often consist of heterogeneous device fleets where not all devices are capable of hardware attestation. A Server <bcp14>MAY</bcp14> offer device-attest-01 alongside other challenge types within a single authorization, allowing capable devices to complete device-attest-01 while other devices complete an alternative challenge. This posture allows operators to observe fleet attestation coverage before enforcing policy and is compatible with phased deployments.</t>
          <t>Servers <bcp14>MAY</bcp14> rely on other authorization mechanisms, such as external account binding or pre-authorized accounts, to establish device identity instead of completing the device-attest-01 challenge.</t>
        </section>
        <section anchor="multiple-challenge-types">
          <name>Multiple Challenge Types</name>
          <t><xref target="RFC8555"/> permits a Server to offer multiple challenge types within a single authorization, with any one being sufficient to complete it. Servers <bcp14>MAY</bcp14> offer device-attest-01 alongside other challenge types for the same authorization, allowing capable devices to attest while other devices use an alternative challenge type.</t>
        </section>
      </section>
      <section anchor="attestation-trust">
        <name>Attestation Trust</name>
        <t>Attestation formats differ in the authority that enforces the boundary around the attested key and in the claims that authority can make. At one end, dedicated security hardware (such as a TPM or HSM) provides manufacturer-backed guarantees that the key is generated and stored within the hardware and cannot be exported. At the other end, OS-enforced isolation boundaries (such as platform keystores protected by the operating system kernel) provide meaningful key protection guarantees without discrete security hardware. Intermediate cases include TEE-based attestation where a hypervisor or trusted execution environment acts as the authority.</t>
        <t>Servers <bcp14>SHOULD</bcp14> consider the trust properties of each attestation format when establishing issuance policy, including the nature of the authority making the attestation and the key protection guarantees it can assert. The key authorization construction described in <xref target="device-attestation-challenge"/> also contributes to this trust model: formats that use the full key authorization as <em>attToBeSigned</em> bind the attestation to a specific account key, while formats that use the token alone provide freshness without account key binding.</t>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>This section analyzes the privacy implications of the <tt>permanent-identifier</tt> and <tt>hardware-module</tt> identifier types introduced in this document. The guidance here is informed by the threat taxonomy defined in <xref target="RFC6973"/> and is intended to help implementers make informed decisions about whether and when to include these identifiers in certificate requests and issued certificates.</t>
      <t>Both identifier types represent unchanging hardware-bound properties of a device. Unlike domain names or other identifiers whose lifetime is bounded by operational changes, these identifiers typically persist across the entire operational life of a device and cannot be rotated or revoked by the device owner. This permanence has material privacy consequences that implementers must weigh carefully.</t>
      <t>The privacy analysis below addresses the two phases in which these identifiers appear: the attestation exchange between the Client and server during challenge validation, and the optional embedding of identifiers in the issued certificate.</t>
      <section anchor="identification-and-correlation">
        <name>Identification and Correlation</name>
        <t>The <tt>permanent-identifier</tt> type encodes a manufacturer assigned device identity, typically a serial number. The <tt>hardware-module</tt> type encodes the identity of the secure cryptoprocessor that generated the certificate key. In both cases, the identifier is globally unique within its assigner scope and unchanging for the lifetime of the device or hardware module.</t>
        <t>From the perspective of <xref target="RFC6973"/> Section 5.2.2, such identifiers enable direct identification of a device across protocol interactions, deployments, and time. Any entity that receives or observes these identifiers, including the server, intermediary infrastructure, and any relying party that processes the issued certificate acquires an observable reference that can be used to track the device's certificate issuance history, renewal patterns, and operational context.</t>
        <t>When the same <tt>permanent-identifier</tt> or <tt>hardware-module</tt> value appears across multiple certificate requests (as it will in any recurring renewal workflow), it enables <xref target="RFC6973"/> correlation: an observer with access to server logs can reconstruct the full lifecycle of a device's certificate activity. Similarly, when such identifiers are included in issued certificates, logging issued certificates in a central location (in certificate transparency logs, etc.) produces a persistent device audit trail regardless of whether the log operator intends to maintain one.</t>
        <t>Implementers <bcp14>SHOULD</bcp14> assess whether the operational benefit of unchanging device identification outweighs this correlation exposure. In deployments where device anonymity or pseudonymity is a requirement, such as systems handling sensitive workloads on behalf of individuals, implementers <bcp14>SHOULD</bcp14> consider whether alternative validation mechanisms that do not bind the certificate to a permanent hardware identifier are more appropriate.</t>
      </section>
      <section anchor="fingerprinting-via-attestation-payloads">
        <name>Fingerprinting via Attestation Payloads</name>
        <t>The <tt>device-attest-01</tt> challenge response carries a WebAuthn attestation object that may contain significantly more information than the identifier value alone. Depending on the attestation format, this payload may include device model, firmware version, bootloader state, hardware security level, and operating system version. Even when the resulting certificate is issued in a privacy-preserving form that omits the identifier from the subjectAltName extension (see Section 3.2 and Section 4.2), the attestation payload itself is transmitted to and evaluated by the server during challenge validation.</t>
        <t>This constitutes a fingerprinting surface as defined in <xref target="RFC6973"/> Section 3.2. The combination of a hardware serial number, hardware type OID, and firmware attestation attributes may uniquely identify not just the device model but the specific device unit, even in the absence of an explicit <tt>permanent-identifier</tt> value. Implementers operating servers may consider applying data minimization principles to attestation payload handling by limiting only the attributes necessary to make the authorization decision should be evaluated, and the full attestation payload <bcp14>SHOULD NOT</bcp14> be retained beyond the duration of the challenge validation exchange unless there is a specific, documented operational requirement to do so.</t>
        <t>Implementers operating ACME Clients <bcp14>SHOULD</bcp14> be aware that the attestation format selected may expose more device state than is necessary to satisfy the server's authorization policy. Where multiple attestation formats are available, Clients <bcp14>SHOULD</bcp14> prefer formats that minimize the set of disclosed attributes.</t>
      </section>
      <section anchor="secondary-use-of-attestation-data">
        <name>Secondary Use of Attestation Data</name>
        <t>The server receives attestation data in the context of authorizing a certificate issuance request. <xref target="RFC6973"/> Section 5.2.3 identifies secondary use as the processing of data for purposes beyond the original collection context and as a distinct privacy threat.</t>
        <t>Attestation payloads received during challenge validation may contain information about device health, software configuration, and hardware capability that is operationally useful beyond certificate issuance. For example, for asset inventory, compliance monitoring, or security posture assessment. Implementers operating servers must clearly define and document the purposes for which attestation data is processed and must not process attestation data for purposes materially different from authorization of the certificate request without explicit policy disclosure to the device owner or operator.</t>
        <t>Implementers integrating ACME device attestation into enterprise PKI platforms should publish a clear attestation data handling policy that specifies what attributes are evaluated, how long they are retained, and whether they are shared with other systems.</t>
      </section>
      <section anchor="privacy-preserving-certificate-issuance">
        <name>Privacy-Preserving Certificate Issuance</name>
        <t>This document provides an explicit mechanism to decouple attestation-based validation from identifier disclosure in the issued certificate. Clients <bcp14>MAY</bcp14> omit the <tt>permanent-identifier</tt> or <tt>hardware-module</tt> from the CSR, and servers <bcp14>MAY</bcp14> issue certificates that do not contain these identifiers in the subjectAltName extension, even when those identifiers were used to authorize the request.</t>
        <t>Implementers should treat this privacy-preserving mode as the default posture unless there is a specific operational requirement for the identifier to appear in the certificate. The following considerations apply to this decision:</t>
        <ul spacing="normal">
          <li>
            <t>If the issued certificate will be presented to relying parties outside the issuing organization's trust boundary, embedding a <tt>permanent-identifier</tt> or <tt>hardware-module</tt> value in the certificate enables those relying parties to correlate certificate presentations with specific physical hardware. This may be acceptable in closed enterprise environments but is likely inappropriate in any context where the certificate is presented to external services, counter-parties, or public infrastructure.</t>
          </li>
          <li>
            <t>If the certificate is used for mutual TLS in a workload identity context, embedding an unchanging hardware identifier couples the cryptographic identity of the workload to the physical device rather than to the logical identity of the workload. This can impede key rotation, device replacement, and workload migration, in addition to creating the correlation risks described above. In such cases, implementers should prefer logical workload identifiers (such as SPIFFE URIs) in the issued certificate and treat the hardware attestation as a bootstrap authorization mechanism only.</t>
          </li>
          <li>
            <t>If the certificate is intended for use in certificate transparency logs, implementers <bcp14>MUST</bcp14> consider that embedding a <tt>permanent-identifier</tt> or <tt>hardware-module</tt> value will make that identifier permanently and publicly discoverable, indexed by issuance time, issuer, and subject. This constitutes an irreversible disclosure under <xref target="RFC6973"/> Section 5.2.4 and should be avoided unless public discoverability of the device identifier is an explicit operational requirement.</t>
          </li>
        </ul>
      </section>
      <section anchor="stored-data-and-account-binding">
        <name>Stored Data and Account Binding</name>
        <t>This document recommends the use of externalAccountBinding to pre-authenticate device requests to an enterprise server. When an ACME account is persistently bound to a device identity, the server's account store contains a durable mapping between the cryptographic account credential and the physical device. Per <xref target="RFC6973"/> Section 5.1.2, this stored association constitutes a target for compromise: an attacker who obtains the account store gains not only account credentials but a historical record of device-to-identity mappings across all certificate issuances.</t>
        <t>Implementers operating servers <bcp14>SHOULD</bcp14> store account-to-device bindings using the minimum fidelity necessary for authorization decisions. Where the operational requirement is only to confirm that a given device is authorized to request certificates, it may be sufficient to store a hash or other one-way transformation of the device identifier rather than the identifier itself. Implementers should also define and enforce retention limits on historical account-to-certificate linkage records.</t>
      </section>
      <section anchor="implementer-decision-guidance">
        <name>Implementer Decision Guidance</name>
        <t>Implementers considering whether to include <tt>permanent-identifier</tt> or <tt>hardware-module</tt> in CSRs and issued certificates <bcp14>SHOULD</bcp14> work through the following questions before enabling these identifiers:</t>
        <ul spacing="normal">
          <li>
            <t>Is unchanging hardware identity in the certificate necessary for the relying party to make authorization decisions, or is it sufficient for the server to have validated it at issuance time? If the latter, prefer privacy-preserving certificate mode.</t>
          </li>
          <li>
            <t>Will the certificate be logged to a certificate transparency log or otherwise made publicly accessible? If so, embedding a permanent hardware identifier creates an irrevocable, publicly indexed disclosure and should be avoided unless explicitly required.</t>
          </li>
          <li>
            <t>Will the certificate be presented to parties outside the issuing organization's administrative control? If so, consider whether those parties should have visibility into the device's hardware identity.</t>
          </li>
          <li>
            <t>Does the deployment have requirements for device replacement or key rotation without service interruption? Binding the certificate's identity to a specific hardware module OID and serial number complicates these operational scenarios and may require reissuance policies that expose additional identifier churn in logs.</t>
          </li>
          <li>
            <t>What is the attestation data handling policy of the server operator? If this is not documented or auditable, device operators <bcp14>SHOULD</bcp14> treat the attestation exchange as a full disclosure of all attributes present in the attestation payload.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Please reference <xref target="RFC8555"/> for other security considerations.</t>
      <t>See Section 13 of <xref target="WebAuthn"/> for additional security considerations related to attestation statement formats, including certificate revocation.</t>
      <t>Key attestation statements may include a variety of information in addition to the public key being attested. While not described in this document, the Server <bcp14>MAY</bcp14> use any policy when evaluating this information. This evaluation can result in rejection of a certificate request that features a verifiable key attestation for the public key contained in the request. For example, an attestation statement may indicate use of an unacceptable firmware version.</t>
      <t>The "token" value <bcp14>MUST</bcp14> have at least 128 bits of entropy. It <bcp14>MUST NOT</bcp14> contain any characters outside the base64url alphabet, including padding characters ("="). See <xref target="I-D.ietf-tls-rfc8446bis"/>, Appendix C.1 for additional information on randomness requirements.</t>
      <t>The binding between the certified public key and the device identifier is established through the attestation statement rather than through the CSR alone. The attestation authority cryptographically binds the public key to the device identity, either by signing the attestation statement directly, by issuing an attestation certificate, or by other cryptographic means specific to the attestation format. The Server verifies this chain: the attestation is produced by a trusted attestation authority, the public key in the attestation matches the public key in the CSR, and the device identifier in the attestation matches the identifier in the Order. This three-way binding is the basis on which the Server can associate a certified public key with a particular device.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="acme-identifier-types">
        <name>ACME Identifier Types</name>
        <t>The "ACME Identifier Types" registry is to be updated to include the following entries:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Label</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">permanent-identifier</td>
              <td align="left">RFC XXXX</td>
            </tr>
            <tr>
              <td align="left">hardware-module</td>
              <td align="left">RFC XXXX</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="acme-validation-method">
        <name>ACME Validation Method</name>
        <t>The "ACME Validation Methods" registry is to be updated to include the following entries:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Label</th>
              <th align="left">Identifier Type</th>
              <th align="left">ACME</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">device-attest-01</td>
              <td align="left">permanent-identifier</td>
              <td align="left">Y</td>
              <td align="left">RFC XXXX</td>
            </tr>
            <tr>
              <td align="left">device-attest-01</td>
              <td align="left">hardware-module</td>
              <td align="left">Y</td>
              <td align="left">RFC XXXX</td>
            </tr>
          </tbody>
        </table>
        <!-- Begin WebAuthn registry text -->
<!-- Editor's note: the below text was written by Carl Wallance as part of draft-wallace-lamps-key-attestation-ext. These registries only need to be established by a single document, so if they are established by another document prior to this document being approved, this text will be removed and replaced with a reference to the other document.  -->

</section>
      <section anchor="new-error-types">
        <name>New Error Types</name>
        <t>The "ACME Error Types" registry is to be updated to include the following entry:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Type</th>
              <th align="left">Description</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">badAttestationStatement</td>
              <td align="left">The attestation statement is unacceptable (e.g. not signed by an attestation authority trusted by the CA)</td>
              <td align="left">RFC XXXX</td>
            </tr>
          </tbody>
        </table>
        <!-- End WebAuthn registry text -->

</section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC4043">
          <front>
            <title>Internet X.509 Public Key Infrastructure Permanent Identifier</title>
            <author fullname="D. Pinkas" initials="D." surname="Pinkas"/>
            <author fullname="T. Gindin" initials="T." surname="Gindin"/>
            <date month="May" year="2005"/>
            <abstract>
              <t>This document defines a new form of name, called permanent identifier, that may be included in the subjectAltName extension of a public key certificate issued to an entity.</t>
              <t>The permanent identifier is an optional feature that may be used by a CA to indicate that two or more certificates relate to the same entity, even if they contain different subject name (DNs) or different names in the subjectAltName extension, or if the name or the affiliation of that entity stored in the subject or another name form in the subjectAltName extension has changed.</t>
              <t>The subject name, carried in the subject field, is only unique for each subject entity certified by the one CA as defined by the issuer name field. However, the new name form can carry a name that is unique for each subject entity certified by a CA. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4043"/>
          <seriesInfo name="DOI" value="10.17487/RFC4043"/>
        </reference>
        <reference anchor="RFC4108">
          <front>
            <title>Using Cryptographic Message Syntax (CMS) to Protect Firmware Packages</title>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="August" year="2005"/>
            <abstract>
              <t>This document describes the use of the Cryptographic Message Syntax (CMS) to protect firmware packages, which provide object code for one or more hardware module components. CMS is specified in RFC 3852. A digital signature is used to protect the firmware package from undetected modification and to provide data origin authentication. Encryption is optionally used to protect the firmware package from disclosure, and compression is optionally used to reduce the size of the protected firmware package. A firmware package loading receipt can optionally be generated to acknowledge the successful loading of a firmware package. Similarly, a firmware package load error report can optionally be generated to convey the failure to load a firmware package. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4108"/>
          <seriesInfo name="DOI" value="10.17487/RFC4108"/>
        </reference>
        <reference anchor="RFC5234">
          <front>
            <title>Augmented BNF for Syntax Specifications: ABNF</title>
            <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
            <author fullname="P. Overell" initials="P." surname="Overell"/>
            <date month="January" year="2008"/>
            <abstract>
              <t>Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="68"/>
          <seriesInfo name="RFC" value="5234"/>
          <seriesInfo name="DOI" value="10.17487/RFC5234"/>
        </reference>
        <reference anchor="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="RFC8809">
          <front>
            <title>Registries for Web Authentication (WebAuthn)</title>
            <author fullname="J. Hodges" initials="J." surname="Hodges"/>
            <author fullname="G. Mandyam" initials="G." surname="Mandyam"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="August" year="2020"/>
            <abstract>
              <t>This specification defines IANA registries for W3C Web Authentication (WebAuthn) attestation statement format identifiers and extension identifiers.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8809"/>
          <seriesInfo name="DOI" value="10.17487/RFC8809"/>
        </reference>
        <reference anchor="I-D.ietf-tls-rfc8446bis">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
              <organization>Independent</organization>
            </author>
            <date day="13" month="September" year="2025"/>
            <abstract>
              <t>   This document specifies version 1.3 of the Transport Layer Security
   (TLS) protocol.  TLS allows client/server applications to communicate
   over the Internet in a way that is designed to prevent eavesdropping,
   tampering, and message forgery.

   This document updates RFCs 5705, 6066, 7627, and 8422 and obsoletes
   RFCs 5077, 5246, 6961, 8422, and 8446.  This document also specifies
   new requirements for TLS 1.2 implementations.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-rfc8446bis-14"/>
        </reference>
        <reference anchor="WebAuthn" target="https://www.w3.org/TR/webauthn-2/">
          <front>
            <title>Web Authentication: An API for accessing Public Key Credentials Level 2</title>
            <author fullname="Jeff Hodges">
              <organization>Google</organization>
            </author>
            <author fullname="J.C. Jones">
              <organization>Mozilla</organization>
            </author>
            <author fullname="Michael B. Jones">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Akshay Kumar">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Emil Lundberg">
              <organization>Yubico</organization>
            </author>
            <date year="2021" month="April"/>
          </front>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC6973">
          <front>
            <title>Privacy Considerations for Internet Protocols</title>
            <author fullname="A. Cooper" initials="A." surname="Cooper"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <author fullname="B. Aboba" initials="B." surname="Aboba"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="J. Morris" initials="J." surname="Morris"/>
            <author fullname="M. Hansen" initials="M." surname="Hansen"/>
            <author fullname="R. Smith" initials="R." surname="Smith"/>
            <date month="July" year="2013"/>
            <abstract>
              <t>This document offers guidance for developing privacy considerations for inclusion in protocol specifications. It aims to make designers, implementers, and users of Internet protocols aware of privacy-related design choices. It suggests that whether any individual RFC warrants a specific privacy considerations section will depend on the document's content.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6973"/>
          <seriesInfo name="DOI" value="10.17487/RFC6973"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="IANA-Webauthn" target="https://www.iana.org/assignments/webauthn/webauthn.xhtml">
          <front>
            <title>IANA Registries for Web Authentication (WebAuthn)</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 451?>

<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 Ounsworth, Deb Cooley, Aaron Gable, and Richard Barnes for their reviews and suggestions, which greatly improved the quality of this document.</t>
    </section>
    <section numbered="false" anchor="contributors">
      <name>Contributors</name>
      <t>These contributors provided significant implementation experience using Smallstep CA, which shaped the evolution and design of this document.</t>
      <t>Mariano Cano
Smallstep
mariano.cano@gmail.com</t>
      <t>Herman Slatman
Smallstep
mail@hermanslatman.nl</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
