<?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-06" 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-06"/>
    <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="DigiCert, Inc.">DigiCert, Inc.</organization>
      <address>
        <email>corey.bonnell@digicert.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="01"/>
    <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 entries:</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:
H4sIAAAAAAAAA+1963LbRprofz5FL1OnImVIypJlx1HNxbQk20psSyPJ8WRT
qRgkmiRiEOCiAVGMk3mWfZZ9svPdutENgLI9kzlntzberQmFS1++/u43DIfD
XpmUqT5S/XFV5suo1LE61kWZzJIp/KFeRlk010udleo0u0mKPKPfO+Pjl6e7
6kTfJFOtxmWpTRmVSZ6p09tSZwZ+9XvRZFLoGxwaHlYn434Ph5znxeZImTLu
mWqyTAw+W25WsISz0+unvV6cT7NoCX/GRTQrh4kuZ8NoutTDmCYbRjTZ8N7D
Hgx9vxcVOjpSV3paFUm56a3z4t28yKvVkaJZ38DfSTZXz/Ba753ewAMxTJWV
ush0OTzBSXq9qCoXeXHUU8Oegn9JZo7Uk5F6o/U7Q1d4SU+KKIthk/X1vJgf
qWd5Pk81DDqla3bfjct6GSXpkVrqxxMeZo2jjKb5Mpj22QiAnqbRJvImfhZl
2iyCGzTzeLX6NtHrv+Eko2Dy9h2Zf05DjZY81ONotbqB525b67gaqcvopyj1
l3F1ozP/Kq3hG72ZRdMyL4L5w6syt4H3RwW9//idfaA18/FIPcmzTKepN/Vx
XuhNcJ0mP0nmCeLroA2BjluyjCmONZrwWI9jeG4Kz7XWcTlSz6vClN4qLjdR
5l2kJVwA7qVJVKhvgTKqQptgFd13ZSEFDDda4HB/QDx/vJKHb+RZWlKvl+UF
UGZyowFB1eXT48N7h/ftz/17j+Tng4P7h/Lz0YMHD+zPR/e+wp9nw5MR0VKZ
mmExmz46PHw4SQzeeqMnQPyL7IiWZvkBXFV4GZaCrACoFJAqU+OLMzXLCxVN
pxpoF0jropqkyRQPXB0XOsbno9SoF/pGp+qgz9Cw9EX/hvJfpWZVmjJkv9az
mXqex3OBkIA3ypKfZXImJ3dTQPhTvKCXHs/pNh/i9llGgFxf59nWSV7mPyep
YLc/y/Txku98YIKXyXQRwb6ffGCaZFrkJp+VzYmWk58eL+3ND8w1fmcW0UZ9
Uy2j4lPniejdd9VHT3a6TFL1osriiS7mW2b7rpok07w5lYY3H2/olpsjBkFw
pA7uHewP7x0y2kXFXJdHalGWK3O0t7der0fr+yOYYO/6cm+tJ4hC2fBgr9dL
splPEGfjV+PhG3kgxGG8pS71PDFlkWhDiNvGa7VjKWC3v3UtCQhCWk0EWD8n
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
4wXdNXxzlKW9/wsCne5O2ZAAAA==

-->

</rfc>
