<?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.6.39 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-giron-acme-pqcnegotiation-00" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.4 -->
  <front>
    <title abbrev="acme-algoneg">ACME PQC Algorithm Negotiation</title>
    <seriesInfo name="Internet-Draft" value="draft-giron-acme-pqcnegotiation-00"/>
    <author fullname="Alexandre Augusto Giron">
      <organization>Federal University of Technology - Parana (UTFPR), Brazil</organization>
      <address>
        <email>alexandregiron@utfpr.edu.br</email>
      </address>
    </author>
    <date year="2023" month="July" day="30"/>
    <area>None</area>
    <workgroup>None</workgroup>
    <keyword>Automated Certificate Management Environment</keyword>
    <keyword>X.509 Certificates</keyword>
    <keyword>Post-Quantum Cryptography</keyword>
    <abstract>
      <?line 41?>

<t>ACME is a critical protocol for accelerating HTTPS adoption on the Internet, automating digital certificate issuing for web servers. Because RFC 8555 assumes that both sides (client and server) support the primary cryptographic algorithms necessary for the certificate, ACME does not include algorithm negotiation procedures. However, in light of Post-Quantum Cryptography (PQC), many signature algorithm alternatives can be used, allowing for different trade-offs (e.g., signature vs. public key size). In addition, alternative PQC migration strategies exist, such as KEMTLS, which employs KEM public keys for authentication. This document describes an algorithm negotiation mechanism for ACME. The negotiation allows different strategies and provides KEMTLS certificate issuing capabilities.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="TBD"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-giron-acme-pqcnegotiation/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/TBD"/>.</t>
    </note>
  </front>
  <middle>
    <?line 46?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The Automated Certificate Management Environment (ACME) is defined in RFC 8555 <xref target="RFC8555"/>. ACME automates X.509 certificate issuance for Web Servers, thus easing the configuration process in providing encrypted channels over the Internet, often by using HTTPS/TLS protocols. Backed by the Let's Encrypt project, ACME has contributed to a secure Internet by giving the opportunity for system administrators and developers to secure their websites easily and free. ACME specifies how an ACME client can request a certificate to an ACME server with automation capabilities. The server requires a "proof" that the client holds control of the web server's identifier (often a domain name). After this validation process, the server can issue one or more "Domain Validated" (DV) certificate(s) so the client can configure an HTTPS server for the particular domain name(s).</t>
      <t>Basically, ACME requires three steps for the clients when issuing a certificate. First, a client creates an anonymous account to the desired ACME server. Note, however, that it is assumed that the client already trust in the ACME server's certificate, otherwise the client can not connect to the server securely. A secure channel between ACME peers is a requirement fulfilled often by a TLS connection, thus the client must trust in the certificate chain provided by the ACME server. Secondly, after creating an account, the ACME server must prove the ownership of an identifier (i.e., domain name) by means of an ACME challenge. Currently, HTTP-01, DNS-01 and TLS-ALPN-01 are standardized by IETF (others are being proposed, e.g., <xref target="I-D.ietf-acme-authority-token"/>. Lastly, after proving the control of the identifier, the client request a certificate by sending a Certificate-Signing Request (CSR) to the ACME server. The server validates the request and the CSR. If everything went ok, the client can download the requested certificate(s). Note the sequential process: account creation, challenge validation, and then requesting/issuing the certificate.</t>
      <t>In order to request and issue a certificate, ACME specification obligates implementations to support elliptical curve algorithm "ES256" <xref target="RFC7518"/> and state that they should support  the "Ed25519" algorithm <xref target="RFC8037"/>. Since the messages in ACME follows the JSON Web Signature standard <xref target="RFC7515"/>, the algorithm support details are specified outside ACME. Therefore, if an ACME server does not support the algorithm or a particular parameter that the client has requested, the server throws "badPublicKey", "badCSR" or "badSignatureAlgorithm" (RFC 8555, Section 6.7).</t>
      <t>The main problem caused by the absence of an algorithm negotiation procedure in ACME is that clients does not know in advance if the server has support to a particular algorithm for the certificate. Therefore, the client must create an account, perform the validation, send a CSR and then receive an error ("badPublicKey"). This "trial-and-error" process  spends client and server resources inefficiently. Having an algorithm negotiation process, the client could check several ACME servers until the client finds the support it needs, without wasting time creating an account and validating the domain for each one of the servers.</t>
      <t>Currently, NIST is selecting Post-Quantum Cryptography (PQC) algorithms for standardization. Dilithium (primary), Falcon, and Sphincs+ have been selected, but other signature algorithms may appear. Similarly, Kyber was selected for standardization as a Key Encapsulation Mechanism (KEM), but others are still candidates (BIKE, HQC, Classic McEliece). Some of these algorithms are probably going to replace the classical alternatives, such as "RS256" and "ES256", since the latter are known to be vulnerable to a Cryptographically Relevant Quantum Computer <xref target="PQC"/>. The PQC algorithms have several parameters, not to mention the "hybrid mode", combining them to the classical alternatives. One can expect that, in the near future, ACME clients will chose the best PQC algorithm (and the mode) that better suit its needs.  Consequently, the HTTPS/TLS servers will be able to secure their connections against the quantum threat.</t>
      <t>In the PQC migration context, TLS has a promising alternative called KEMTLS <xref target="KEMTLS"/>. KEMTLS replaces digital signatures in TLS handshakes by using a KEM algorithm. Therefore, a KEMTLS server must have a KEM certificate: a digital certificate containing the web server's KEM public key and a signature provided by the CA. As of now, ACME does not support KEM algorithms for certificates.</t>
      <t>On the other hand, Güneysu et al. showed how to build a CSR-like process to issue a KEM certificate <xref target="VerifiableGeneration"/>. In theory, ACME could use such a method to issue a KEM certificate without significant changes at the protocol level. However, PoP using verifiable generation for KEMs has some drawbacks, e.g.:
- So far, the method is proposed for Kyber and FrodoKEM only. Although the method can also be applied to other algorithms, the security proofs are on a "per-algorithm" basis.
- The method increase sizes, consequently increasing the communication cost for the ACME's protocol.</t>
      <t>The emphasis of this document is on the KEMTLS certificate use case. KEMTLS aims to reduce the size of cryptographic objects for the PQC migration context. KEMTLS can reduce byte costs for a post-quantum TLS but at the cost of increasing sizes in ACME by using verifiable generation processes.</t>
      <t>This document describes an algorithm negotiation procedure for ACME. The process gives flexibility for ACME clients to select the certificate algorithm that better fits its needs, with the PQC landscape options in mind. The document also specifies options for  ACME peers when negotiate a KEM certificate issuance, with or without a CSR-like process, thus contributing to the KEMTLS adoption.</t>
    </section>
    <section anchor="certificate-algorithm-negotiation">
      <name>Certificate Algorithm Negotiation</name>
      <t>With flexibility in mind, by using the process described in this document, ACME servers allow the following options for their clients:
- OPTION 1 (PQTLS): Client account keys and certificate keys are from signature scheme(s). Certificates are signed, i.e., Issuer CA uses digital signature keys). The issuance process is the same as specified in RFC 8555 <xref target="RFC8555"/>.
- OPTION 2 (KEMTLS): Client account keys use a signature scheme; Certificate keys are from a KEM. Certificates are signed by the Issuer CA key. The issuance process is modified as specified in this document.
- OPTION 3 (KEM-POP): Client account keys use a signature scheme; Certificate keys are from a KEM. Certificates are signed by the Issuer CA key. The issuance process is the same as specified in RFC 8555 <xref target="RFC8555"/> (not covered in this document, please refer to <xref target="VerifiableGeneration"/> for a discussion).</t>
      <t>Given that a KEMTLS certificate handles two algorithms (a KEM and a signature), and the possible trade-offs in different use cases (such as IoT <xref target="KEMTLS-BENCH-IOT"/>, this document specifies clients to negotiate not only what is the desired KEM scheme, but also what is the signature that the Issuer CA is willing to use. Such a detailed negotiation for the certificate better address the application's needs. On the other hand, the negotiation described here is simplified  for signature-based certificates (PQTLS option), where only one digital signature scheme is requested by the client.</t>
      <section anchor="cert-algorithms-endpoint">
        <name>Cert-algorithms endpoint</name>
        <t>In order to allow ACME client implementations to select their preferred certificate algorithms, this document specifies servers to implement a new endpoint named /cert-algorithms. The new endpoint can be reached after a GET /dir (see Figure 1 below). The client does not need to create an account with the server, thus saving resources. As PQC standardization evolves, this document does not specify one default configuration or algorithm. ACME implementations can select their preferred (or default) configurations, but they should also allow users to choose at least in the first certificate issuance (renewals can be automated with the same configuration).</t>
        <t>```
 +------+                       +------+
 | ACME |                       | ACME |
 |Client|                       |Server|
 +--+---+                       +--+---+
    |    GET /dir                  |
    |-----------------------------&gt;|
    +------------------------------+
    |                   HTTP 200   |
    |                              |
    |    GET /new-nonce            |
    |-----------------------------&gt;|
    |&lt;-----------------------------+
    |                   HTTP 200   |
    |                              |
    |    GET /cert-algorithms      |
    |-----------------------------&gt;|
    |&lt;-----------------------------+
    |                   HTTP 200   |</t>
        <t>Figure 1: Obtaining algorithm support information
```</t>
        <t>Depending on the server's support, the server might implement one or several classical, PQC, and hybrid PQC algorithms for certificates. In this context, hybrid algorithms are often called "composite" <xref target="I-D.ounsworth-pq-composite-sigs"/>, in which cryptographic objects are concatenated in a single structure. If the algorithm supported by the server is a signature algorithm, the server replies with the corresponding OID; this is the same as if hybrids are allowed (assuming the composite model and corresponding OIDs <xref target="I-D.ounsworth-pq-composite-keys"/><xref target="I-D.ounsworth-pq-composite-sigs"/>. Nevertheless, by means of this new algorithm negotiation endpoint, clients can verify in advance if the server supports the desired algorithms.</t>
      </section>
      <section anchor="algorithm-list-definition">
        <name>Algorithm List Definition</name>
        <t>Upon HTTP GET requests to the /cert-algorithms endpoint, ACME servers reply with a JSON-formatted list of supported algorithms, as follows:</t>
        <t><tt>
{
     "PQTLS": {
       "Dilithium2": "1.3.6.1.4.1.2.267.7.4.4",
       "P256_Dilithium2": "1.3.9999.2.7.1",
       "Dilithium3" : "1.3.6.1.4.1.2.267.7.6.5",
        ...
     },
     "KEMTLS": {
       "Kyber-512-with-Dilithium2-sha256": "Kyber-512-with-Dilithium2-sha256",
       "P256-Kyber-512-with-P256-Dilithium2-sha256": "P256-Kyber-512-with-P256-Dilithium2-sha256"
       ...
     },
     "KEM-POP" : {
       "Kyber": "Reserved-TBD",
       "FrodoKEM" : "Reserved-TBD",
     }
}
</tt></t>
        <t>Servers <bcp14>MUST</bcp14> provide such a list with at least one algorithm. Note the distinction between Signatures, KEMTLS, and KEM-POP, as an alternative to telling the clients a different naming to support (possibly) different issuance processes. Moreover, the OIDs presented on this list are from the OQS project <xref target="OQS"/>, but they are subject to change whenever the Internet drafts evolve (such as <xref target="I-D.ounsworth-pq-composite-keys"/>).</t>
      </section>
    </section>
    <section anchor="kem-certificate-issuance-modes">
      <name>KEM Certificate Issuance Modes</name>
      <t>ACME Certificate issuance process does not require modifications when issuing PQC signature certificates. However, this document proposes the following changes to the ACME protocol for KEM certificates. Assuming that the ACME client has already performed account registration and challenge, Figures 2 and 3 show two ways to issue a KEM certificate. Figure 2 requires 3 RTTs, while Figure 3 optimizes performance to 1 RTT. The main difference is that the optimized mode does not guarantee key confirmation. The 1-RTT mode is similar to the "Indirect Method" of PoP defined in RFC 4210 <xref target="RFC4210"/>. ACME servers <bcp14>SHOULD</bcp14> enforce the 3-RTT mode if they require a confirmation that the client actually possesses the certificate's private key. If performance is desired, the 1-RTT mode is suitable since it reduces the number of signed requests and polling time.</t>
      <t>```
     +------+                       +------+                    +------+                       +------+
     | ACME |                       | ACME |                    | ACME |                       | ACME |
     |Client|                       |Server|                    |Client|                       |Server|
     +--+---+                       +--+---+                    +--+---+                       +--+---+
        |                              |                           |                              |
        |pk,sk &lt;- KEM.Keygen()         |                           |pk,sk &lt;- KEM.Keygen()         |
        |                              |                           |                              |
        | POST /finalize [pk,mode]     |                           | POST /finalize [pk,mode]     |
        |-----------------------------&gt;|                           |-----------------------------&gt;|
        |                              |                           |                              |
        |        Z,ct &lt;- KEM.Encaps(pk)|                           |        Z,ct &lt;- KEM.Encaps(pk)|
        |  ct                          |                           |        enc_cert &lt;-enc(Z,cert)|
        |&lt;-----------------------------+                           | ct,enc_cert                  |
        |                              |                           |&lt;-----------------------------+
        |Z &lt;- KEM.Decaps(ct,sk)        |                           |                              |
        |                              |                           |Z &lt;- KEM.Decaps(ct,sk)        |
        | POST /key-confirm [Z]        |                           |cert &lt;- dec(Z,enc_cert)       |
        |-----------------------------&gt;|                           |                              |
        |&lt;-----------------------------+
        |                   HTTP 200   |
        |                     or 401   |
        | POST /certZ                  |                   [ ] Message signed by the client's account
        |-----------------------------&gt;|                       key
        |&lt;-----------------------------+
        |           application-pem    |</t>
      <t>Figure 2: 3-RTT KEMTLS Certificate Issuance Process        Figure 3: 1-RTT KEMTLS Certificate Issuance Process
```</t>
      <t>Figure 2 shows the 3-RTT mode. The client can not use a CSR for a KEMTLS certificate, so it generates a key pair and send a "modified CSR", where the public key is a KEM public key, and the signature is random (dummy) data. The server then identifies and extracts the mode and the KEM public key from the modified CSR. Having implemented the KEM algorithm, the server encapsulates under the client's public key sending back the ciphertext to the client. The client performs a decapsulation and confirms the shared secret using the /key-confirm endpoint. ACME servers willing to issue KEMTLS certificates <bcp14>MUST</bcp14> implement this endpoint.</t>
      <t>Figure 3 shortens the KEMTLS process because it replies a ciphertext and the encrypted certificate before key confirmation. Since it is encrypted, clients without the private key cannot use the certificate. Having the private key, the client decapsulates the shared secret Z and derives a symmetric key from it (see Section 3.2). The symmetric key is used to decrypt the certificate. In this way, issuing a KEMTLS certificate does not impose additional RTTs compared to the 1-RTT CSR standard process, i.e., POSTing a CSR to /finalize. The 3-RTT mode, on the other hand, imposes the RTT related to the key-confirmation endpoint.</t>
      <t>Note, however, that key confirmation can be addressed differently in the 1-RTT mode. First, ACME servers could limit the use of this mode or ask for a delayed key confirmation, depending on CA policies (see Section 5 for a discussion). Secondly, if required, ACME servers could establish a TLS handshake with the client's domain at a later (perhaps more convenient) moment. A valid TLS handshake would tell that the client could use the encrypted certificate, thus proving possession of the private key. Lastly, for the applications where it is enough to prove possession of the account's private key (and not the certificate), the 1-RTT mode could be used.</t>
      <section anchor="post-examples">
        <name>POST Examples</name>
        <t>Considering the first POST to /finalize (Figure 2), which would be similar to a standard POST <xref target="RFC8555"/>, an example of a reply would be as follows. This example considers a CSR built with a KEM public key (Kyber-512) and dummy data in the CSR's signature.</t>
        <t><tt>
HTTP/1.1 200 OK
Content-Type: application/json
Replay-Nonce: CGf81JWBsq8QyIgPCi9Q9X
Link: &lt;https://example.com/acme/directory&gt;;rel="index"
{
  "key-confirm-data": {
    "ct": "9HwLdArXTDC/otcTWNWYcOgRxWOeUahZj3Ri7SrKlCo4syv...Cl79urEXkhoUhWcqWzb2",
    "ct-alg": "Kyber-512"
  },
  "key-confirm-url": "https://example.com/key-confirm/Rg5dV14Gh1Q"
}
</tt></t>
        <t>Note that this reply contains the 'key-confirm-data' and 'key-confirm-url' so ACME clients can proceed accordingly. After decapsulating the shared secret from "ct", the client can POST to the key confirm URL.</t>
        <t>```
POST /key-confirm/Rg5dV14Gh1Q HTTP/1.1
Host: example.com
Content-Type: application/jose+json</t>
        <t>{
     "protected": base64url({
       "alg": "Dilithium2",
       "kid": "https://example.com/acme/acct/evOfKhNU60wg",
       "nonce": "Q_s3MWoqT05TrdkM2MTDcw",
       "url": "https://example.com/key-confirm/Rg5dV14Gh1Q"
     }),
     "payload": base64url({
       "Z": "r0Sk+fqvfceIetPIdszNs7PMylb3G/B536mZDj0B8Rs="
     }),
     "signature": "9cbg5JO1Gf5YLjjz...SpkUfcdPai9uVYYQ"
}
```</t>
        <t>The POST is signed with Dilithium2 in this example. Note that the client is sending "Z" back in a secure channel (i.e., an underlying TLS connection between the ACME peers), so Z is not being disclosed to a passive attacker. The shared secret Z is used to prove the private key's possession. The ACME server compares the received Z with the order's information and starts issuing the certificate. If Z mismatches the server's storage, an HTTP error 401 is sent. If Z matches, there are no further modifications in the protocol, so the client and server proceed as RFC 8555 <xref target="RFC8555"/> dictates, i.e., clients start polling until their certificates are ready to be downloaded.</t>
      </section>
      <section anchor="deriving-keys-for-encrypting-a-kem-certificate">
        <name>Deriving keys for encrypting a KEM Certificate</name>
        <t>When using the 1-RTT mode for KEM certificate issuance, ACME peers <bcp14>MUST</bcp14> implement a Key-Derivation Function (KDF) and a Symmetric encryption algorithm. Since ACME can be considered as a "TLS-enabler" protocol, and for simplicity of implementations, ACME peers <bcp14>SHOULD</bcp14> provide HKDF <xref target="RFC5869"/> (as in TLS <xref target="RFC8446"/>) to derive the keys for encrypting the certificate. The hash function for  HKDF is obtained from the ciphersuite (see Section 3.3 below).</t>
        <t>Following the notation provided in RFC 5869, for the 1-RTT mode, ACME peers <bcp14>SHOULD</bcp14> implement the following "two-step" Key-Derivation Method:</t>
        <t><tt>
   PRK &lt;- HKDF-Extract(salt, Z)
   OKM &lt;- HKDF-Expand(PRK, info, L)
</tt></t>
        <t>where Z is the KEM output (shared secret), salt is an optional and non-secret random value, PRK is the intermediary pseudorandom key, info is optional context information, L is the length of OKM, and OKM is the output keying material. The length of OKM (in octets) depends on the ciphersuite. This document recommends filling the 'salt' octets with the Key Authorization String (KAS)  and the 'info' field as the hash of the POST /finalize message. Note that the OKM can comprise the key (using OKM's left-most bytes) and Initialization Vectors (IVs), if required, in the OKM's right-most bytes.</t>
      </section>
      <section anchor="encrypting-a-kem-certificate-in-a-jwe-message">
        <name>Encrypting a KEM Certificate in a JWE message</name>
        <t>Section 5.1 in RFC 7518 <xref target="RFC7518"/> defines a set of symmetric algorithms for encryting JSON-formatted messages. The encrypted certificate <bcp14>SHOULD</bcp14> be sent in a JWE Ciphertext format specified in RFC 7516 <xref target="RFC7516"/>. Following Section 5.1 of RFC 7516, ACME servers encrypts M as the base64-encoded certificate using OKM. No Key agreement is performed at the JWE domain, thus ACME peers <bcp14>MUST</bcp14> perform JWE Direct Encryption, i.e., selecting "dir" as the "alg" field  (Section 4.1 of RFC 7518 <xref target="RFC7518"/>) and one encryption algorithm defined in Section 5.1 of RFC 7518 <xref target="RFC7518"/> for the "enc" field in the JOSE header. As a result, the JWE message contains only the ciphertext field and the header; the remaining JWE fields are absent (note that it could mean empty or zero-ed octets). ACME clients decrypt the JWE Ciphertext following Section 5.2 of RFC 7516.</t>
        <t>When receiving an encrypting certificate, it concludes the 1-RTT mode. Therefore, there is no need for the ACME peers to exchange further JWS messages. On the other hand, depending on CA policies, ACME servers could allow a POST in /key-confirm endpoint in a later moment, if a delayed key confirmation is desired. Such a policy could be use to limit the usage of the 1-RTT mode, if desired, for example enforcing 3-RTT mode if a previous 1-RTT was not later "key confirmed" or checked by a TLS handshake (between the ACME server and the ACME client's domain that was  certified).</t>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<t>KEM Certificate: a X.509 certificate where the subject's public key is from a Key-Encapsulation Mechanism (KEM) but the signature comes from the Issuer Certificate Authority (CA) digital signature scheme.</t>
      <t>3-RTT Mode: a modification in ACME to allow issuance of KEM certificates with explicit key confirmation.</t>
      <t>1-RTT Mode: a modification in ACME to allow issuance of KEM certificates without key confirmation, delayed or implicit key confirmation.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>RFC 8555 <xref target="RFC8555"/> states that ACME relies on a secure channel, often provided by TLS. In this regard, this document does not impose any changes. The first modification is the /cert-algorithms endpoint, which should be open for clients to query. ACME servers could control the number of queries to this endpoint by controlling the nonces to avoid Denial-of-Service (DoS). The second modification is a feature; ACME servers can now support KEM certificates in an automated way. In both modifications, one question is about the security of the supported algorithms (i.e., select which algorithms to support). The recommendations in this document are built upon the announced standards by NIST. Given the ongoing PQC standardization, new algorithms and attacks on established schemes can appear, meaning that the recommendation for algorithm support can change in the future.</t>
      <t>RFC 8555 states that ACME clients prove the possession of the private keys for their certificate requests <xref target="RFC8555"/>. This document follows this guideline explicitly in the 3-RTT mode for KEM certificates. On the other hand, in the 1-RTT mode, key confirmation is implicit. It is assumed that an encrypted KEM certificate is not useful to anyone but the owner of the KEM private key. Therefore, if the certificate is being used, the client holds the private key as expected. Moreover, this document provides a guideline on performing a "delayed" key confirmation, i.e., by separately POSTing to the /key-confirm endpoint. An alternate solution would be for the ACME server to monitor TLS usage by the client's domain, also as an implicit way to confirm proof of possession.</t>
      <section anchor="integration-with-other-ecosystems">
        <name>Integration with other ecosystems</name>
        <t>The 3-RTT mode provides explicit key confirmation, which complies with RFC 8555, and it is also easier to integrate with other ecosystems, such as Certificate Transparency <xref target="RFC9162"/>. However, the 1-RTT mode imposes challenges, such as publishing the certificate without (prior) key confirmation. One solution would be a delayed log, in which the CA awaits key confirmation or perform a TLS handshake with the client's domain. If full integration is required, it would be easier to manage if the 3-RTT mode is enforced by default.</t>
      </section>
      <section anchor="revocation-considerations">
        <name>Revocation Considerations</name>
        <t>Section 7.6 (RFC 8555 <xref target="RFC8555"/>) allows clients to sign a revocation request using the certificate's private key under revocation or by using account keys. For KEM certificates, revocation <bcp14>SHOULD</bcp14> be performed using the account keys. An alternative solution could be implemented as follows:</t>
        <ul spacing="normal">
          <li>The client performs a POST to /revoke-cert endpoint as specified in RFC 8555, but including the KEM public key under revocation as the "jwk" field and the KEM certificate as the "certificate" field. The "signature" <bcp14>SHOULD</bcp14> be random (dummy) data.</li>
          <li>ACME servers can distinguish such a request from the original ones since they can identify the KEM public key from the "alg" in the header and in the certificate. The ACME server generates and responds with "key-confirm-data" and "key-confirm-url", similar to Section 3.1.</li>
          <li>The ACME client completes the revocation process by POSTing to key-confirm-url in the same way as described in Section 3.1. The main distinction is that the "signature" <bcp14>SHOULD</bcp14> contain random (dummy) data. Such a URL should be specially created for revocation purposes so that the server does not verify the signature only if the shared secret matches the earlier encapsulation process.</li>
        </ul>
      </section>
      <section anchor="grease-csr">
        <name>"Grease" CSR</name>
        <t>When issuing KEM certificates, this document proposed not verifying the CSR for compatibility purposes. It is inspired in GREASE mode <xref target="I-D.ietf-tls-esni"/>, the Encrypted ClientHello feature can damage middlebox implementations. In ACME, servers might try to instantiate standard CSR objects from the POST request data. Random (dummy) data as a signature object in CSRs would avoid breaking implementations. However, ACME servers <bcp14>MUST</bcp14> allow grease CSRs only if the subject's public key algorithm is a KEM.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC8555">
          <front>
            <title>Automatic Certificate Management Environment (ACME)</title>
            <author fullname="R. Barnes" initials="R." surname="Barnes"/>
            <author fullname="J. Hoffman-Andrews" initials="J." surname="Hoffman-Andrews"/>
            <author fullname="D. McCarney" initials="D." surname="McCarney"/>
            <author fullname="J. Kasten" initials="J." surname="Kasten"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>Public Key Infrastructure using X.509 (PKIX) certificates are used for a number of purposes, the most significant of which is the authentication of domain names. Thus, certification authorities (CAs) in the Web PKI are trusted to verify that an applicant for a certificate legitimately represents the domain name(s) in the certificate. As of this writing, this verification is done through a collection of ad hoc mechanisms. This document describes a protocol that a CA and an applicant can use to automate the process of verification and certificate issuance. The protocol also provides facilities for other certificate management functions, such as certificate revocation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8555"/>
          <seriesInfo name="DOI" value="10.17487/RFC8555"/>
        </reference>
        <reference anchor="RFC7518">
          <front>
            <title>JSON Web Algorithms (JWA)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>This specification registers cryptographic algorithms and identifiers to be used with the JSON Web Signature (JWS), JSON Web Encryption (JWE), and JSON Web Key (JWK) specifications. It defines several IANA registries for these identifiers.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7518"/>
          <seriesInfo name="DOI" value="10.17487/RFC7518"/>
        </reference>
        <reference anchor="RFC8037">
          <front>
            <title>CFRG Elliptic Curve Diffie-Hellman (ECDH) and Signatures in JSON Object Signing and Encryption (JOSE)</title>
            <author fullname="I. Liusvaara" initials="I." surname="Liusvaara"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document defines how to use the Diffie-Hellman algorithms "X25519" and "X448" as well as the signature algorithms "Ed25519" and "Ed448" from the IRTF CFRG elliptic curves work in JSON Object Signing and Encryption (JOSE).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8037"/>
          <seriesInfo name="DOI" value="10.17487/RFC8037"/>
        </reference>
        <reference anchor="RFC7515">
          <front>
            <title>JSON Web Signature (JWS)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and an IANA registry defined by that specification. Related encryption capabilities are described in the separate JSON Web Encryption (JWE) specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7515"/>
          <seriesInfo name="DOI" value="10.17487/RFC7515"/>
        </reference>
        <reference anchor="I-D.ounsworth-pq-composite-sigs">
          <front>
            <title>Composite Signatures For Use In Internet PKI</title>
            <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
              <organization>Entrust Limited</organization>
            </author>
            <author fullname="John Gray" initials="J." surname="Gray">
              <organization>Entrust Limited</organization>
            </author>
            <author fullname="Massimiliano Pala" initials="M." surname="Pala">
              <organization>CableLabs</organization>
            </author>
            <date day="29" month="May" year="2023"/>
            <abstract>
              <t>   The migration to post-quantum cryptography is unique in the history
   of modern digital cryptography in that neither the old outgoing nor
   the new incoming algorithms are fully trusted to protect data for the
   required data lifetimes.  The outgoing algorithms, such as RSA and
   elliptic curve, may fall to quantum cryptanalysis, while the incoming
   post-quantum algorithms face uncertainty about both the underlying
   mathematics as well as hardware and software implementations that
   have not had sufficient maturing time to rule out classical
   cryptanalytic attacks and implementation bugs.

   Cautious implementers may wish to layer cryptographic algorithms such
   that an attacker would need to break all of them in order to
   compromise the data being protected using either a Post-Quantum /
   Traditional Hybrid, Post-Quantum / Post-Quantum Hybrid, or
   combinations thereof.  This document, and its companions, defines a
   specific instantiation of hybrid paradigm called "composite" where
   multiple cryptographic algorithms are combined to form a single key,
   signature, or key encapsulation mechanism (KEM) such that they can be
   treated as a single atomic object at the protocol level.

   This document defines the structures CompositeSignatureValue, and
   CompositeSignatureParams, which are sequences of the respective
   structure for each component algorithm.  The explicit variant is
   defined which allows for a set of signature algorithm identifier OIDs
   to be registered together as an explicit composite signature
   algorithm and assigned an OID.

   This document is intended to be coupled with corresponding documents
   that define the structure and semantics of composite public and
   private keys and encryption [I-D.ounsworth-pq-composite-keys],
   however may also be used with non-composite keys, such as when a
   protocol combines multiple certificates into a single cryptographic
   operation.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ounsworth-pq-composite-sigs-09"/>
        </reference>
        <reference anchor="I-D.ounsworth-pq-composite-keys">
          <front>
            <title>Composite Public and Private Keys For Use In Internet PKI</title>
            <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
              <organization>Entrust Limited</organization>
            </author>
            <author fullname="John Gray" initials="J." surname="Gray">
              <organization>Entrust Limited</organization>
            </author>
            <author fullname="Massimiliano Pala" initials="M." surname="Pala">
              <organization>CableLabs</organization>
            </author>
            <author fullname="Jan Klaußner" initials="J." surname="Klaußner">
              <organization>D-Trust GmbH</organization>
            </author>
            <date day="29" month="May" year="2023"/>
            <abstract>
              <t>   The migration to post-quantum cryptography is unique in the history
   of modern digital cryptography in that neither the old outgoing nor
   the new incoming algorithms are fully trusted to protect data for the
   required data lifetimes.  The outgoing algorithms, such as RSA and
   elliptic curve, may fall to quantum cryptalanysis, while the incoming
   post-quantum algorithms face uncertainty about both the underlying
   mathematics as well as hardware and software implementations that
   have not had sufficient maturing time to rule out classical
   cryptanalytic attacks and implementation bugs.

   Cautious implementers may wish to layer cryptographic algorithms such
   that an attacker would need to break all of them in order to
   compromise the data being protected using either a Post-Quantum /
   Traditional Hybrid, Post-Quantum / Post-Quantum Hybrid, or
   combinations thereof.  This document, and its companions, defines a
   specific instantiation of hybrid paradigm called "composite" where
   multiple cryptographic algorithms are combined to form a single key,
   signature, or key encapsulation mechanism (KEM) such that they can be
   treated as a single atomic object at the protocol level.

   This document defines the structures CompositePublicKey and
   CompositePrivateKey, which are sequences of the respective structure
   for each component algorithm.  Explicit pairings of algorithms are
   defined which should meet most Internet needs.

   This document is intended to be coupled with corresponding documents
   that define the structure and semantics of composite signatures and
   encryption, such as [I-D.ounsworth-pq-composite-sigs] and
   [I-D.ounsworth-pq-composite-kem].

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ounsworth-pq-composite-keys-05"/>
        </reference>
        <reference anchor="RFC4210">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate Management Protocol (CMP)</title>
            <author fullname="C. Adams" initials="C." surname="Adams"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="T. Kause" initials="T." surname="Kause"/>
            <author fullname="T. Mononen" initials="T." surname="Mononen"/>
            <date month="September" year="2005"/>
            <abstract>
              <t>This document describes the Internet X.509 Public Key Infrastructure (PKI) Certificate Management Protocol (CMP). Protocol messages are defined for X.509v3 certificate creation and management. CMP provides on-line interactions between PKI components, including an exchange between a Certification Authority (CA) and a client system. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4210"/>
          <seriesInfo name="DOI" value="10.17487/RFC4210"/>
        </reference>
        <reference anchor="RFC5869">
          <front>
            <title>HMAC-based Extract-and-Expand Key Derivation Function (HKDF)</title>
            <author fullname="H. Krawczyk" initials="H." surname="Krawczyk"/>
            <author fullname="P. Eronen" initials="P." surname="Eronen"/>
            <date month="May" year="2010"/>
            <abstract>
              <t>This document specifies a simple Hashed Message Authentication Code (HMAC)-based key derivation function (HKDF), which can be used as a building block in various protocols and applications. The key derivation function (KDF) is intended to support a wide range of applications and requirements, and is conservative in its use of cryptographic hash functions. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5869"/>
          <seriesInfo name="DOI" value="10.17487/RFC5869"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <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.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC7516">
          <front>
            <title>JSON Web Encryption (JWE)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Hildebrand" initials="J." surname="Hildebrand"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Encryption (JWE) represents encrypted content using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and IANA registries defined by that specification. Related digital signature and Message Authentication Code (MAC) capabilities are described in the separate JSON Web Signature (JWS) specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7516"/>
          <seriesInfo name="DOI" value="10.17487/RFC7516"/>
        </reference>
        <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="RFC9162">
          <front>
            <title>Certificate Transparency Version 2.0</title>
            <author fullname="B. Laurie" initials="B." surname="Laurie"/>
            <author fullname="E. Messeri" initials="E." surname="Messeri"/>
            <author fullname="R. Stradling" initials="R." surname="Stradling"/>
            <date month="December" year="2021"/>
            <abstract>
              <t>This document describes version 2.0 of the Certificate Transparency (CT) protocol for publicly logging the existence of Transport Layer Security (TLS) server certificates as they are issued or observed, in a manner that allows anyone to audit certification authority (CA) activity and notice the issuance of suspect certificates as well as to audit the certificate logs themselves. The intent is that eventually clients would refuse to honor certificates that do not appear in a log, effectively forcing CAs to add all issued certificates to the logs.</t>
              <t>This document obsoletes RFC 6962. It also specifies a new TLS extension that is used to send various CT log artifacts.</t>
              <t>Logs are network services that implement the protocol operations for submissions and queries that are defined in this document.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9162"/>
          <seriesInfo name="DOI" value="10.17487/RFC9162"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="KEMTLS">
          <front>
            <title>Post-Quantum TLS Without Handshake Signatures</title>
            <author fullname="Peter Schwabe" initials="P." surname="Schwabe">
              <organization>Max Planck Institute for Security and Privacy &amp;amp; Radboud University, Bochum, Germany</organization>
            </author>
            <author fullname="Douglas Stebila" initials="D." surname="Stebila">
              <organization>University of Waterloo, Waterloo, ON, Canada</organization>
            </author>
            <author fullname="Thom Wiggers" initials="T." surname="Wiggers">
              <organization>Radboud University, Nijmegen, Netherlands</organization>
            </author>
            <date month="October" year="2020"/>
          </front>
          <seriesInfo name="Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications" value="Security"/>
          <seriesInfo name="DOI" value="10.1145/3372297.3423350"/>
          <refcontent>ACM</refcontent>
        </reference>
        <reference anchor="KEMTLS-BENCH-IOT">
          <front>
            <title>KEMTLS vs. Post-quantum TLS: Performance on Embedded Systems</title>
            <author fullname="Ruben Gonzalez" initials="R." surname="Gonzalez">
              <organization/>
            </author>
            <author fullname="Thom Wiggers" initials="T." surname="Wiggers">
              <organization/>
            </author>
            <date year="2022"/>
          </front>
          <seriesInfo name="Security, Privacy, and Applied Cryptography Engineering" value="pp. 99-117"/>
          <seriesInfo name="DOI" value="10.1007/978-3-031-22829-2_6"/>
          <seriesInfo name="ISBN" value="[&quot;9783031228285&quot;, &quot;9783031228292&quot;]"/>
          <refcontent>Springer Nature Switzerland</refcontent>
        </reference>
        <reference anchor="VerifiableGeneration">
          <front>
            <title>Proof-of-Possession for KEM Certificates using Verifiable Generation</title>
            <author fullname="Tim Güneysu" initials="T." surname="Güneysu">
              <organization>Ruhr University Bochum, Horst Görtz Institute for IT-Security &amp;amp; DFKI GmbH, Cyber-Physical Systems, Bochum, Germany</organization>
            </author>
            <author fullname="Philip Hodges" initials="P." surname="Hodges">
              <organization>University of Waterloo, Waterloo, ON, Canada</organization>
            </author>
            <author fullname="Georg Land" initials="G." surname="Land">
              <organization>Ruhr University Bochum, Horst Görtz Institute for IT-Security &amp;amp; DFKI GmbH, Cyber-Physical Systems, Bochum, Germany</organization>
            </author>
            <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
              <organization>Entrust, Ottawa, ON, Canada</organization>
            </author>
            <author fullname="Douglas Stebila" initials="D." surname="Stebila">
              <organization>University of Waterloo, Waterloo, ON, Canada</organization>
            </author>
            <author fullname="Greg Zaverucha" initials="G." surname="Zaverucha">
              <organization>Microsoft Research, Redmond, WA, USA</organization>
            </author>
            <date month="November" year="2022"/>
          </front>
          <seriesInfo name="Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications" value="Security"/>
          <seriesInfo name="DOI" value="10.1145/3548606.3560560"/>
          <refcontent>ACM</refcontent>
        </reference>
        <reference anchor="OQS">
          <front>
            <title>Post-quantum Key Exchange for the Internet and the Open Quantum Safe Project</title>
            <author fullname="Douglas Stebila" initials="D." surname="Stebila">
              <organization/>
            </author>
            <author fullname="Michele Mosca" initials="M." surname="Mosca">
              <organization/>
            </author>
            <date year="2017"/>
          </front>
          <seriesInfo name="Lecture Notes in Computer Science" value="pp. 14-37"/>
          <seriesInfo name="DOI" value="10.1007/978-3-319-69453-5_2"/>
          <seriesInfo name="ISBN" value="[&quot;9783319694528&quot;, &quot;9783319694535&quot;]"/>
          <refcontent>Springer International Publishing</refcontent>
        </reference>
        <reference anchor="PQC">
          <front>
            <title>Post-quantum cryptography</title>
            <author fullname="Daniel J. Bernstein" initials="D." surname="Bernstein">
              <organization/>
            </author>
            <author fullname="Tanja Lange" initials="T." surname="Lange">
              <organization/>
            </author>
            <date month="September" year="2017"/>
          </front>
          <seriesInfo name="Nature" value="vol. 549, no. 7671, pp. 188-194"/>
          <seriesInfo name="DOI" value="10.1038/nature23461"/>
          <refcontent>Springer Science and Business Media LLC</refcontent>
        </reference>
        <reference anchor="I-D.ietf-acme-authority-token">
          <front>
            <title>ACME Challenges Using an Authority Token</title>
            <author fullname="Jon Peterson" initials="J." surname="Peterson">
              <organization>Neustar, Inc.</organization>
            </author>
            <author fullname="Mary Barnes" initials="M." surname="Barnes">
              <organization>Neustar, Inc.</organization>
            </author>
            <author fullname="David Hancock" initials="D." surname="Hancock">
              <organization>Comcast</organization>
            </author>
            <author fullname="Chris Wendt" initials="C." surname="Wendt">
              <organization>Somos</organization>
            </author>
            <date day="24" month="October" year="2022"/>
            <abstract>
              <t>   Some proposed extensions to the Automated Certificate Management
   Environment (ACME) rely on proving eligibility for certificates
   through consulting an external authority that issues a token
   according to a particular policy.  This document specifies a generic
   Authority Token challenge for ACME which supports subtype claims for
   different identifiers or namespaces that can be defined separately
   for specific applications.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-acme-authority-token-09"/>
        </reference>
        <reference anchor="I-D.ietf-tls-esni">
          <front>
            <title>TLS Encrypted Client Hello</title>
            <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
              <organization>RTFM, Inc.</organization>
            </author>
            <author fullname="Kazuho Oku" initials="K." surname="Oku">
              <organization>Fastly</organization>
            </author>
            <author fullname="Nick Sullivan" initials="N." surname="Sullivan">
              <organization>Cloudflare</organization>
            </author>
            <author fullname="Christopher A. Wood" initials="C. A." surname="Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="6" month="April" year="2023"/>
            <abstract>
              <t>   This document describes a mechanism in Transport Layer Security (TLS)
   for encrypting a ClientHello message under a server public key.

Discussion Venues

   This note is to be removed before publishing as an RFC.

   Source for this draft and an issue tracker can be found at
   https://github.com/tlswg/draft-ietf-tls-esni
   (https://github.com/tlswg/draft-ietf-tls-esni).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-esni-16"/>
        </reference>
      </references>
    </references>
    <?line 292?>

<section numbered="false" anchor="contributors">
      <name>Contributors</name>
      <t>Lucas Pandolfo Perin
Technology Innovation Institute, United Arab Emirates</t>
      <t>Victor do Valle Cunha
Federal University of Santa Catarina, Brazil</t>
      <t>Ricardo Custódio
Federal University of Santa Catarina, Brazil</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
+s5hhv1SF//4ryjOvvL9/wXtp601zWsAAA==

-->

</rfc>
