<?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.29 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-geng-acme-public-key-02" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.29.0 -->
  <front>
    <title abbrev="ACME PK Challenge">Automated Certificate Management Environment (ACME) Extension for Public Key Challenges</title>
    <seriesInfo name="Internet-Draft" value="draft-geng-acme-public-key-02"/>
    <author initials="F." surname="Geng" fullname="Feng Geng">
      <organization>Huawei Technologies</organization>
      <address>
        <email>gengfeng@huawei.com</email>
      </address>
    </author>
    <author initials="P." surname="Wu" fullname="Panyu Wu">
      <organization>Huawei Technologies</organization>
      <address>
        <email>wupanyu3@huawei.com</email>
      </address>
    </author>
    <author initials="L." surname="Xia" fullname="Liang Xia">
      <organization>Huawei Technologies</organization>
      <address>
        <email>frank.xialiang@huawei.com</email>
      </address>
    </author>
    <date year="2025" month="July" day="07"/>
    <workgroup>Automated Certificate Management Environment Working Group</workgroup>
    <keyword/>
    <keyword/>
    <keyword/>
    <abstract>
      <?line 54?>

<t>This document specifies an extension to the ACME protocol <xref target="RFC8555"/> that enables Acme server to use the public key authentication protocol to verify that the real certificate applicant behind the Acme client has control over the identity and to ensure strong consistency between the identity in the challenge phase and the identity of the final certificate issued. This document also proposes a process extension for removing CSR at the certificate application phase.</t>
    </abstract>
  </front>
  <middle>
    <?line 58?>

<section anchor="intro">
      <name>Introduction</name>
      <t>When ACME was first introduced, its main focus was on the challenge of verifying control of identifiers such as domain names. ACME later expanded to support verification of user/device ownership and issuance of the certificate for user/device. Based on the sso-01 <xref target="I-D.biggs-acme-sso"/> for verifying email identifiers, this document proposes a more general ACME challenge type oriented towards verifying user/device ownership. The challenge enables the Acme server to verify the control of the identity of the certificate applicant behind the Acme client via a public key authentication protocol, truly realizing what the Acme WG Charter describes as "The processing must also confirm that the requesting party has access to the private key that corresponds to the public key that will appear in the certificate". On the other hand the challenge avoids public key replacement attacks.</t>
      <t>Typically, the Acme client acts as a unified entry point for automated certificate requests and communicates with the Acme server. In the process of requesting a certificate for the user/device, the Acme server does not verify whether the public key in the Certificate Signing Request (CSR) is owned by the applicant, although it can verify the applicant's control over an identifier through the challenge phase. This mechanism has the risk of public key replacement, i.e., an untrustworthy or compromised Acme client may replace the public key in the CSR after completing the challenge, so that the applicant who completes the challenge is not the same as the user corresponding to the public key of the issued certificate. This ultimately allows certificates to be issued to unrelated or malicious entities.</t>
      <t>This document proposes a new ACME challenge type pk-01 that verifies the identity of the applicant by means of public key authentication and is directly bound to the authorization process. The Acme server requires that the public key in the challenge phase be consistent with the public key in the final CSR submission, eliminating the risk of public key replacement attacks. Considering the complicated task of CSR parsing, this document supplements a simplified process of removing CSR (see Section 7), which directly issues a certificate after successful challenge phase, realizing the consistency of the public key in the challenge phase and in the issued certificate.</t>
      <t>More critically, the challenge is designed for the Acme server to work in coordination with a trusted identity provider (IdP), which endorses the relationship between the applicant and its public key. Enables Acme server to recognize the real applicant behind through Acme client, and establishes a complete chain of trust from Acme server to applicant. This trust binding mechanism is particularly important in the scenario of issuing certificates for user/device, ensuring that the certificate clearly identifies the legitimacy of the holder of the identifier.</t>
      <t>Note that this document requires an IdP that records public keys. The IdP is the trust center for the automated certificate request process, which stores the trusted user's public key and possibly the identity information corresponding to the public key. Specific identity information can be selected based on the actual operations. Before the certificate request process, the user's public key should have been entered into the IdP in some way, such as self-registration by the user or LDAP-based import.</t>
      <t>It is worth noting that the existing external account binding in ACME <xref target="RFC8555"/> is primarily used to authenticate Acme client account identitie and is not the same as the validation of certificate applicant identities proposed in this document. The main purpose of this document is to issue certificates to applicant who actually pass the challenge, ensuring that the public key of the applicant who completes the challenge and the public key of the certificate issued are consistent. This document strictly corresponds to the concept of “Prohibit the reuse of Acme client public key to request certificate” in the standard ACME process. If the Acme client's public key is used to apply for a certificate, it is equivalent to an identity impersonation/injection attack by the Acme client on the certificate applicant. The pk-01 challenge presented in this document avoids this very problem by allowing the Acme server to see the actual applicant behind the Acme client, enhancing security.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>The key words "<strong>MUST</strong>", "<strong>MUST NOT</strong>", "<strong>REQUIRED</strong>", "<strong>SHALL</strong>", "<strong>SHALL NOT</strong>", "<strong>SHOULD</strong>", "<strong>SHOULD NOT</strong>", "<strong>RECOMMENDED</strong>", "<strong>NOT RECOMMENDED</strong>", "<strong>MAY</strong>", and "<strong>OPTIONAL</strong>" 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>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>## Problem Statement</t>
      <t>The standard ACME automated certificate application process can be summarized in three phases: ACME account management, challenge phase and certificate application phase. The current decoupled design of the three-part framework brings many benefits, but there are also security issues. The public key of the applicant who completes the challenge in phase 2 and the public key in the issued certificate in phase 3 is not consistently bound. Problems can occur where the users in the challenge phase are not the same as the users who actually receive certificates.</t>
      <t>The content of ACME application certificates can be categorized into resources and user/device. The resource category is mainly server-side resources (e.g., domain names), such as dns-01<xref target="RFC8555"/>, http-01<xref target="RFC8555"/><xref target="RFC8738"/>, tls-alpn-01<xref target="RFC8737"/><xref target="RFC8738"/> and so on. The user/device category is mainly such as sso-01 <xref target="I-D.biggs-acme-sso"/>, device-attest-01 <xref target="I-D.acme-device-attest"/>, and e-mail-reply-00 <xref target="RFC8823"/> and so on. Public key replacement attacks are more likely to occur in scenarios where certificates are issued for the user/device.</t>
      <section anchor="issuing-certificates-for-resource-server">
        <name>Issuing certificates for resource server</name>
        <t>In that case, the applicant is required to demonstrate resource control (e.g., dns-01, http-01, etc.). This is a typical use case for the initial focused application scenario of Web PKI domain name certificates presented in the Acme WG Charter. In this use case, the applicant controls the resource and needs to grant Acme client privileges to directly prove its ownership of the resource to complete the interrogation, in exchange for Acme server's trust, so as to obtain the certificate. Thus both Acme server and applicant need to trust Acme client.</t>
        <figure anchor="fig-pk-security-model-1">
          <name>Issuing certificates for resource server</name>
          <artwork><![CDATA[
    ┌────────────┐                       ┌───────────────┐
    │    DNS     │   Resource Validation │   ACME Server │
    │            │ ◄───────────────────► │    (IdP_A)    │
    └────────────┘                       └───────────────┘
             ▲                                 ▲          
              \                               /           
               \                             /            
                \                           /             
                 \    ┌────────────────┐   /              
                  \   │  ACME Client   │  /               
                   \  │  (SK_1,PK_1)   │ ▼                
                      ┼────────────────┼                  
                      │   Application  │                  
                      └────────────────┘                                
]]></artwork>
        </figure>
        <section anchor="issuing-certificates-for-clients-with-existing-digital-identities">
          <name>Issuing certificates for clients with existing digital identities</name>
          <t>In this case a third party IdP_B exists to provide identity assertion for the applicant. This is commonly seen in situations where certificates are issued for user/device within an organization, where the user/device already hold their own public-private key pairs.</t>
          <t>Applicant has registered the identity public key PK_2 under IdP_B to get the provided identity assertion of IdP_B. Acme server trusts Acme client, but applicant can't fully trust Acme client and holds private key privileges by itself without granting them to other. As a result, when the applicant completes the challenge, it cannot trust whether the Acme client will apply for certificates for other malicious users with the help of its own challenge success record, i.e., the Acme client may be attacked so as to replace the public key information in the CSR to apply for certificates to the Acme server. This causes an adversary to impersonate a legitimate user/device. And Acme server can't “see” the applicant behind the Acme client.</t>
          <figure anchor="fig-pk-security-model-2">
            <name>Issuing certificates to clients with existing digital identities</name>
            <artwork><![CDATA[
                                                             
    ┌───────────┐                          ┌───────────┐     
    │User's IdP │                          │ACME Server│     
    │ (IdP_B)   │                          │  (IdP_A)  │     
    └───────────┘                          └───────────┘     
        ▲                                        ▲           
         \                                      /            
          \                                    /             
           \                                  /              
            \                                ▼               
             \─────────────┐      ┌────────────┐             
             │ Application │      │ACME Client │             
             │ (SK_2,PK_2) │??????│(SK_1,PK_1) │             
             └─────────────┘      └────────────┘             
                                                                 
]]></artwork>
          </figure>
        </section>
      </section>
      <section anchor="defend-against-threats">
        <name>Defend against Threats</name>
        <t>This document proposes the pk-01 challenge to construct a complete chain of trust from the Acme server to the applicant, so that certificates can be issued to the applicants (users/devices) that actually pass the challenge. Acme server indirectly verifies the authenticity of PK_2 behind the Acme client proxy and who holds control of SK_2 by trusting IdP_B. A complete chain of trust from the Acme server to the applicant is constructed so that the Acme server verifies the control of the identity by the applicant behind the Acme client through a public key authentication protocol.</t>
        <figure anchor="fig-pk-challenge-defense">
          <name>Trust chain from Acme server to applicant</name>
          <artwork><![CDATA[
    ┌───────────┐          PK-01           ┌───────────┐
    │User's IdP │# # # # # # # # # # # # # │ACME Server│
    │ (IdP_B)   │                          │  (IdP_A)  │
    └───────────┘                          └───────────┘
        #                                        ▲      
         #                                      /       
          #                                    /        
        PK-01                                 /         
            #                                ▼          
             #─────────────┐      ┌────────────┐        
             │ Application │      │ACME Client │        
             │ (SK_2,PK_2) │      │(SK_1,PK_1) │        
             └─────────────┘      └────────────┘                      
]]></artwork>
        </figure>
        <t>Under the security model of Section 3.1.2, because of the presence of User's IdP, instead of granting the Acme client privileges and trust equivalent to resource control as it did in Section 3.1.1, the applicant only needs to give the Acme client the minimum required trust to require the Acme client to fulfill its proxy responsibility for requesting certificates. PK-01 provides end-to-end security when crossing trust domains from Acme server to applicant (user/device), preventing attacks from both external and internal sources, constructing a stronger generalized security model. It is also applicable and relevant for authentication scenario use cases between cross-trust domains.</t>
        <t>The pk-01 challenge presented in this document prevents public key replacement attacks on the other hand (especially in 8.2 scenarios). With the proposed new identifiers, the consistency of the PK in the challenge phase and the pk in the final issued certificate is guaranteed against public key replacement attacks.</t>
      </section>
    </section>
    <section anchor="extensions-identifier-types">
      <name>Extensions -- Identifier Types</name>
      <t>New identifier types are proposed in this document to ensure strong consistency between the identity corresponding to the final certificate issued and the identity of the certificate applicant. And the public key authentication protocol is utilized to provide strong security for the authentication process.</t>
      <t>The identifier pk can be used in lightweight binding cases, such as user-bound devices, where the Acme server needs to verify the consistency of the pk identifier in the final certificate issuance phase and in the challenge phase. The identifiers csr and selfsign-cert can be used in cases where specific identity information is bound (including pk, subject, etc.). The Acme server needs to verify the consistency of this identifier value during the final certificate issuance phase to prevent the identity information from being tampered with midway. Especially when csr is specified as the identifier, the applicant can send the csr when submitting the certificate order without submitting the csr file again in the final certificate application phase, which corresponds to the simplified process of revocation of csr in Section 7. Implementations MUST NOT use the challenge of type pk-01 as options to validate a type identifier other than the following.</t>
      <t><tt>
"identifier": { "type": "pk", "value":"MIGfMA0GC***GbQIDAQAB"}
"identifier": { "type": "selfsign-cert", "value":"MIIHSDCC***AU1GH3xQ="}
"identifier": { "type": "csr", "value":"MIICljCCA***RL64+taHbP"}
</tt></t>
    </section>
    <section anchor="extensions-pk-01-challenge-types">
      <name>Extensions -- pk-01 Challenge Types</name>
      <t>The pk-01 challenge type requires the client to access the specified pk-url to start the challenge and complete the verification of the corresponding private key control of the declared public key. A challenge of this type MUST include all required fields described in section 8 of <xref target="RFC8555"/>. In addition, the following fields are defined for this specific type of challenge:</t>
      <t>pk_url (required, string): The URL to start the pk-01 challenge type process. The server must include enough information in the URL to allow the request to be associated with a specific challenge and to be able to point to a specific PK provider or public key server.</t>
      <t>pk_provider (optional, string): The domain of the PK provider relied upon for this challenge. Acme server MAY rely upon any number of PK providers and public key servers, however each MUST be represented as a different entry in the challenge array. The applicant can use this field to differentiate the list of providers and select the most appropriate one. If this field does not exist, the Acme server's default identity provider is used. The server MUST NOT present more than one pk-01 challenge with the same pk_provider value in a single authorization, including values for unprovided fields.</t>
      <t>process options (optional, string): Indicate options for the ACME process. The Acme server provides a choice between the standard ACME protocol flow (standard) or a removed CSR file (simplified). If this field is not exist, the ACME standard process is executed by default.</t>
      <t>The server MUST sets the status of the challenge to processing after receiving a response from the client within the validity period. If the client completes the proof of ownership of the private key corresponding to public key and the generated identity assertion validates the declared identifier, then the status of the challenge is set to "valid". If the server fails to validate the public key against the private key control or fails to validate the declared identifier, the status of the challenge will be set to "invalid".</t>
      <t><tt>
{
  "type": "pk-01",
  "url": "https://example.org/acme/chall/abc123_defg456",
  "status": "pending",
  "pk_url": "https://example.org/acme/start-pk",
  "pk_provider": "https://pk-identity-provider.org/",
  "standardization": "standard" | "simplified",
}
</tt></t>
    </section>
    <section anchor="identifier-validation-challenges">
      <name>Identifier Validation Challenges</name>
      <section anchor="protocol-overview">
        <name>Protocol Overview</name>
        <t>The general process of the PK challenge is illustrated by the standard ACME certificate issuance sequence. For convenience, it is divided into three phases: certificate application, public key authentication and certificate issuance phase.</t>
        <t>In the first phase, the client submits the certificate request, which carries the public key information at the start. The server responds to the client that it must satisfy authentication. The client can select one of the various authentication methods it supports and inform the server. The server returns what needs to be accomplished for this authentication method. This content will contain the "start URL".</t>
        <figure anchor="fig-pk-challenge-overview">
          <name>Overview of the pk-01 Challenge Flow</name>
          <artwork><![CDATA[
Client                                                    ACME Server

~~~~~~~~~~~~~~~~~~~~~~ Certificate Application ~~~~~~~~~~~~~~~~~~~~~~~~~

request new order(pk)           -------->
                                <--------           required authorizations
request authorization           -------->
                                <--------       PK challenge with start URL

~~~~~~~~~~~~~~~~~~~~ public key authentication ~~~~~~~~~~~~~~~~~~~~~~~~~~

request on PK start URL         --------->
                                                 ACME redirect to provider
                                                    authentication request

             provider authenticates client (not shown here)

provider redirect to ACME       --------->
identity assertion
                                               validate provider assertion
                                                 record challenge as valid
                                <---------              redirect to client

~~~~~~~~~~~~~~~~~~~~ certificate issuance ~~~~~~~~~~~~~~~~~~~~~~

request challenge              ----------->
                               <----------                           valid
request finalize (CSR)         ----------->        (Verify pk consistency)
                               <-----------                   finalize URL
finalize                       ----------->
                               <-----------                     certificate
]]></artwork>
        </figure>
        <t>In the second phase, the client performs a request for one of the authentication methods and the server responds to it. Among these may be one or more challenge of type pk-01, which can be used to start the process of authentication based on the web through different "start URL". The request redirects the client to the applicant and the IdP, which conducts the public key authentication protocol with the applicant. After successfully providing validation to the IdP, the Acme server records the associated challenge as validated (or not). Among them, the whitelisting mechanism can be supplemented here. Legitimate public key identities will be registered in advance at the Acme server to form a trusted list, and after the public key authentication protocol is passed, the public key identity will be signed by the IdP and then passed to the Acme server to verify the application authority of the public key (whether it is in the trusted list), thus restricting unauthorized public key identities.</t>
        <t>In the process of authentication, the process of this document is quite different from the way of sso. The authentication process is primarily authenticated through public key authentication protocols (e.g. aPAKE/Opaque <xref target="I-D.irtf-cfrg-opaque"/>). The IdP here also needs to support the appropriate public key authentication protocols.</t>
        <t>The redirection to the client then indicates that the authentication process has been completed, at which point it can be demonstrated whether the applicant has the private key corresponding to the public key in the application order. The user's private key information is always private in this process and does not need to be provided to the agent. After completing the authentication, it redirects the client to the certificate request process.</t>
        <t>In the last phase, after completing authentication the client eventually submits the CSR. This document requires that the public key contained in the CSR must match the public key in the starting order. In this way, tampering with public key information can be avoided. Other processes are consistent with the standard process.</t>
      </section>
      <section anchor="public-key-authentication-order-fulfillment">
        <name>Public key authentication &amp; Order fulfillment</name>
        <t>Public key authentication is essentially authenticating the control of the corresponding private key of a public key and pk_url allows the client to initiate the public key authentication process. The server must accept GET requests for pk_url. Upon receiving such a request:</t>
        <ol spacing="normal" type="1"><li>
            <t>The Acme server receives the request and redirects it to the IdP. IdP instance holds the public key, e.g. IdP instances supporting the aPAKE/Opaque protocols.</t>
          </li>
          <li>
            <t>The IdP requires the requesting party to perform authentication to verify that it holds the private key corresponding to the public key. The IdP will include supported public key verification protocols in the verification request, protocols that include, but are not limited to (1) challenge public key signature and verify signature, (2) Opaque/AKE and (3) non-interactive zero-knowledge (NIZK) discrete logarithm equality (DLEQ) proof, etc. The client selects one of the protocols to perform the authentication process.</t>
          </li>
          <li>
            <t>After successfully authenticating the identity, the IdP returns the user's information and the logged-in device public key information to the Acme server. When the Acme server receives the request, it checks whether the device public key is consistent with the public key in the order. When the ACME server receives the request, it MUST check whether the device public key is consistent with the public key in the order. For identifiers of type csr and selfsign-cert, identity consistency checks are also required. The challenge is successful if the check passes.</t>
          </li>
        </ol>
        <figure anchor="fig-pk-authentication-overview">
          <name>Overview of the Public Key Authentication Flow</name>
          <artwork><![CDATA[
ACME Server                          Applicant                                       IdP

~~~~~~~~~~~~~~~~~~~~~~~~~~~provider authenticates client ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ACME redirect to provider        ------------------------------------------------->

                                                    <---------            list of supported 
                                                        public key authentication protocols

                      select authentication protocol --------->        
                                           
verification        <----------------------------------------------- redirect to ACME Server
]]></artwork>
        </figure>
        <t>When the Acme server receives a response from IdP, it must validate it and update the appropriate challenge status. The server updates the challenge status to "valid" if the provider validation is successful, or to "invalid" if it is unsuccessful.</t>
        <t>In the case of public key verification, the IdP acts as the asserting party and conducts a public key authentication agreement with the applicant to obtain public key information and identity information about the subject (applicant). The Acme server acts as a relying party that receives identity information from the IdP. The Acme server verifies the consistency of the public key and the order public key after receiving the public key and identity information. For the identifiers of type csr and selfsign-cert, the identity consistency needs to be further checked on the basis again.</t>
        <t>The standard process, as defined in section 7.4 of <xref target="RFC8555"/>. Once the client has been authorized in all respects, it can proceed with the completion of the order. The client SHOULD use the public key declared in the order as the public key in the CSR. If the order identifier type is csr or selfsign-cert, the commonName, subjectAltName, etc. fields should be filled in the CSR. Then the CSR, encapsulated as specified, is submitted to the ACME server.</t>
        <t>The server needs to validate the order against the identifier after receiving a request from the client to complete the order. The client's request for order fulfillment can only be continued under the condition that all checks have been passed.</t>
      </section>
    </section>
    <section anchor="changes-to-the-finalize-request">
      <name>Changes to the Finalize Request</name>
      <t>Since the Acme server has already obtained the user/device's authenticated public key during the challenge phase, there is no need to send the CSR in the final phase, since the CSR no longer carries parts that are not present in other parts of the ACME protocol.</t>
      <t>The process after removing the CSR, starting from the client issuing a new order request to the ACME server validating the challenge, is consistent with the process in Section 6. It is only in the final certificate issuance phase that the ACME server updates the challenge record to verified (or unverified) and automatically requests a certificate for the applicant (verified public key) when the result is verified. There is no need to send the CSR file again.</t>
      <figure anchor="fig-pk-removing-csr">
        <name>Overview of the PK Challenge Flow(remove CSR)</name>
        <artwork><![CDATA[
Client                                                    ACME Server
~~~~~~~~~~~~~~~~~~~~~~~ certificate issuance ~~~~~~~~~~~~~~~~~~~~~~~~~~~

request challenge              ---------->
                               <---------                            valid
                                                        issue certificates
finalize                       ---------->
                               <----------                     certificate
]]></artwork>
      </figure>
    </section>
    <section anchor="further-use-cases">
      <name>Further Use Cases</name>
      <t>## Temporary Certificate with One-time Key</t>
      <t>The public key authentication protocol in pk-01 can be chosen OPAQUE protocol to realize the temporary certificate with one-time key. For example, in an enterprise cooperation scenario, each company has its own private CA, and a member of company A needs to have a temporary meeting with a member of company B, Bob, and needs to authenticate and authorize Bob. The most suitable method is that the CA of company A signs a temporary certificate for him for this meeting.</t>
      <t>Alice, a legitimate user in company A, generates a temporary ID and password pw for Bob (pw performs OPAQUE protocol for registration), passes the ID and pw to Bob via out-of-band, and Bob generates a temporary public-private key pair (pk,sk) for this purpose. Bob registers the temporary public key pk at the ACME server after authentication through the OPAQUE protocol with the help of the password pw, and then applies for a temporary certificate issued by the CA of Company A that is bound to pk and ID.</t>
      <section anchor="various-public-key-authentication-protocols">
        <name>Various Public Key Authentication Protocols</name>
        <t>The certificate applicant can pick a suitable public key authentication protocol according to the specific usage scenario. It can be WebAuthn authentication, OPAQUE, private key signature checking, non-interactive zero-knowledge (NIZK) discrete logarithm equality (DLEQ) proof, and so on.</t>
      </section>
      <section anchor="revocation-of-certificates">
        <name>Revocation of Certificates</name>
        <t>When a certificate is revoked, it is also necessary to prove whether the user is authorized to revoke it. Thus, the PK-01 challenge proposed in this document can also be used to prove that the user applying for revocation does have the ownership of the corresponding private key of the certificate, so as to realize a more reliable revocation.</t>
      </section>
    </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>
        <artwork><![CDATA[
+----------------+------------------+
| Label          | Reference        |
+----------------+------------------+
| pk             | RFC XXXX         |
+----------------+------------------+
| csr            | RFC XXXX         |
+----------------+------------------+
| selfsign-cert  | RFC XXXX         |
+----------------+------------------+

]]></artwork>
      </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>
        <artwork><![CDATA[
+------------+-------------------------+---------+------------+
| Label      | Identifier Type         | ACME    | Reference  |
+------------+-------------------------+---------+------------+
| pk-01      | pk/csr/selfsign-cert    | Y       | RFC XXXX   |
+------------+-------------------------+---------+------------+


]]></artwork>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8555" target="https://www.rfc-editor.org/info/rfc8555" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8555.xml">
          <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="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <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" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <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="RFC8738" target="https://www.rfc-editor.org/info/rfc8738" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8738.xml">
          <front>
            <title>Automated Certificate Management Environment (ACME) IP Identifier Validation Extension</title>
            <author fullname="R.B. Shoemaker" initials="R.B." surname="Shoemaker"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>This document specifies identifiers and challenges required to enable the Automated Certificate Management Environment (ACME) to issue certificates for IP addresses.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8738"/>
          <seriesInfo name="DOI" value="10.17487/RFC8738"/>
        </reference>
        <reference anchor="RFC8737" target="https://www.rfc-editor.org/info/rfc8737" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8737.xml">
          <front>
            <title>Automated Certificate Management Environment (ACME) TLS Application-Layer Protocol Negotiation (ALPN) Challenge Extension</title>
            <author fullname="R.B. Shoemaker" initials="R.B." surname="Shoemaker"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>This document specifies a new challenge for the Automated Certificate Management Environment (ACME) protocol that allows for domain control validation using TLS.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8737"/>
          <seriesInfo name="DOI" value="10.17487/RFC8737"/>
        </reference>
        <reference anchor="RFC8823" target="https://www.rfc-editor.org/info/rfc8823" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8823.xml">
          <front>
            <title>Extensions to Automatic Certificate Management Environment for End-User S/MIME Certificates</title>
            <author fullname="A. Melnikov" initials="A." surname="Melnikov"/>
            <date month="April" year="2021"/>
            <abstract>
              <t>This document specifies identifiers and challenges required to enable the Automated Certificate Management Environment (ACME) to issue certificates for use by email users that want to use S/MIME.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8823"/>
          <seriesInfo name="DOI" value="10.17487/RFC8823"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.biggs-acme-sso" target="https://datatracker.ietf.org/doc/html/draft-biggs-acme-sso-01" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.biggs-acme-sso.xml">
          <front>
            <title>Automated Certificate Management Environment (ACME) Extension for Single Sign On Challenges</title>
            <author fullname="Andrew Biggs" initials="A." surname="Biggs">
              <organization>Cisco</organization>
            </author>
            <author fullname="Richard Barnes" initials="R." surname="Barnes">
              <organization>Cisco</organization>
            </author>
            <author fullname="Moynihan" initials="R." surname="Moynihan">
              <organization>Cisco</organization>
            </author>
            <date day="8" month="April" year="2021"/>
            <abstract>
              <t>This document specifies an extension to the ACME protocol [RFC8555] to enable ACME servers to validate a client's control of an email identifier using single sign-on (SSO) technologies. An extension to the CAA [RFC8659] resource record specification is also defined to provide domain owners a means to declare a set of SSO providers that ACME servers may rely upon when employing SSO for identifier validation on their domain.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-biggs-acme-sso-01"/>
        </reference>
        <reference anchor="I-D.acme-device-attest" target="https://datatracker.ietf.org/doc/html/draft-acme-device-attest-04" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.acme-device-attest.xml">
          <front>
            <title>Automated Certificate Management Environment (ACME) Device Attestation Extension</title>
            <author fullname="Brandon Weeks" initials="B." surname="Weeks"/>
            <date day="20" month="June" year="2025"/>
            <abstract>
              <t>This document specifies new identifiers and a challenge for the Automated Certificate Management Environment (ACME) protocol which allows validating the identity of a device using attestation.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-acme-device-attest-04"/>
        </reference>
        <reference anchor="I-D.irtf-cfrg-opaque" target="https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-opaque-18" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.irtf-cfrg-opaque.xml">
          <front>
            <title>The OPAQUE Augmented PAKE Protocol</title>
            <author fullname="Daniel Bourdrez" initials="D." surname="Bourdrez"/>
            <author fullname="Hugo Krawczyk" initials="H." surname="Krawczyk">
              <organization>AWS</organization>
            </author>
            <author fullname="Kevin Lewi" initials="K." surname="Lewi">
              <organization>Meta</organization>
            </author>
            <author fullname="Christopher A. Wood" initials="C. A." surname="Wood">
              <organization>Cloudflare, Inc.</organization>
            </author>
            <date day="21" month="November" year="2024"/>
            <abstract>
              <t>This document describes the OPAQUE protocol, an augmented (or asymmetric) password-authenticated key exchange (aPAKE) that supports mutual authentication in a client-server setting without reliance on PKI and with security against pre-computation attacks upon server compromise. In addition, the protocol provides forward secrecy and the ability to hide the password from the server, even during password registration. This document specifies the core OPAQUE protocol and one instantiation based on 3DH. This document is a product of the Crypto Forum Research Group (CFRG) in the IRTF.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-irtf-cfrg-opaque-18"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
3fhfiNMsg+J4AAA=

-->

</rfc>
