<?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.19 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-lamps-rfc6712bis-07" category="std" consensus="true" submissionType="IETF" xml:lang="en" obsoletes="6712 9480" tocDepth="4" tocInclude="true" sortRefs="false" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.23.2 -->
  <front>
    <title abbrev="HTTP Transfer for CMP">Internet X.509 Public Key Infrastructure -- HTTP Transfer for the Certificate Management Protocol (CMP)</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-rfc6712bis-07"/>
    <author initials="H." surname="Brockhaus" fullname="Hendrik Brockhaus">
      <organization abbrev="Siemens">Siemens</organization>
      <address>
        <postal>
          <street>Werner-von-Siemens-Strasse 1</street>
          <city>Munich</city>
          <code>80333</code>
          <country>Germany</country>
        </postal>
        <email>hendrik.brockhaus@siemens.com</email>
        <uri>https://www.siemens.com</uri>
      </address>
    </author>
    <author initials="D." surname="von Oheimb" fullname="David von Oheimb">
      <organization abbrev="Siemens">Siemens</organization>
      <address>
        <postal>
          <street>Werner-von-Siemens-Strasse 1</street>
          <city>Munich</city>
          <code>80333</code>
          <country>Germany</country>
        </postal>
        <email>david.von.oheimb@siemens.com</email>
        <uri>https://www.siemens.com</uri>
      </address>
    </author>
    <author initials="M." surname="Ounsworth" fullname="Mike Ounsworth">
      <organization abbrev="Entrust">Entrust</organization>
      <address>
        <postal>
          <street>1187 Park Place</street>
          <city>Minneapolis</city>
          <region>MN</region>
          <code>55379</code>
          <country>United States of America</country>
        </postal>
        <email>mike.ounsworth@entrust.com</email>
        <uri>https://www.entrust.com</uri>
      </address>
    </author>
    <author initials="J." surname="Gray" fullname="John Gray">
      <organization abbrev="Entrust">Entrust</organization>
      <address>
        <postal>
          <street>1187 Park Place</street>
          <city>Minneapolis</city>
          <region>MN</region>
          <code>55379</code>
          <country>United States of America</country>
        </postal>
        <email>john.gray@entrust.com</email>
        <uri>https://www.entrust.com</uri>
      </address>
    </author>
    <date year="2024"/>
    <area>sec</area>
    <workgroup>LAMPS Working Group</workgroup>
    <keyword>CMP</keyword>
    <keyword>HTTP</keyword>
    <keyword>Certificate management</keyword>
    <keyword>PKI</keyword>
    <abstract>
      <?line 85?>

<t>This document describes how to layer the Certificate Management Protocol
(CMP) over HTTP.</t>
      <t>It includes the updates on RFC 6712 specified in CMP Updates RFC 9480 Section
3 and obsoleted both documents.  These updates introduce CMP URIs using a
Well-known prefix.</t>
    </abstract>
  </front>
  <middle>
    <?line 95?>

<section anchor="sect-1">
      <name>Introduction</name>
      <t>[RFC Editor: please delete:</t>
      <t>During IESG telechat the CMP Updates document was approved on condition that
LAMPS provides a RFC6712bis document.  Version -00 of this document shall
be identical to RFC 6712 and version -01 incorporates the changes specified
in CMP Updates Section 3.</t>
      <t>A history of changes is available in Appendix A of this document.</t>
      <t>The authors of this document wish to thank Tomi Kause and Martin Peylo, the
original authors of RFC 6712, for their work and invite them, next to further
volunteers, to join the -bis activity as co-authors.</t>
      <t>]</t>
      <t>The Certificate Management Protocol (CMP) <xref target="I-D.ietf-lamps-rfc4210bis"/> requires a well-defined
transfer mechanism to enable End Entities (EEs), Registration
Authorities (RAs), and Certification Authorities (CAs) to pass
PKIMessage structures between them.</t>
      <t>The first version of the CMP specification <xref target="RFC2510"/> included a brief
description of a simple transfer protocol layer on top of TCP.  Its
features were simple transfer-level error handling and a mechanism to
poll for outstanding PKI messages.  Additionally, it was mentioned
that PKI messages could also be conveyed using file-, E-mail-, and
HTTP-based transfer, but those were not specified in detail.</t>
      <t>Since the second version of the CMP specification <xref target="RFC4210"/> incorporated
its own polling mechanism and thus the need for a transfer protocol
providing this functionality vanished.  The remaining features CMP
requires from its transfer protocols are connection and error
handling.</t>
      <t>CMP can benefit from utilizing a reliable transport and it requires connection and error handling
from the transfer protocol, which is all covered by HTTP.  Additionally,
delayed delivery of CMP response messages may be handled at transfer level,
regardless of the message contents.  Since <xref target="RFC9480"/> extends the polling
mechanism specified in the second version of <xref target="RFC4210">CMP</xref> to cover
all types of PKI management transactions, delays detected at application
level may also be handled within CMP, using pollReq and pollRep messages.</t>
      <t>The usage of HTTP for transferring CMP messages exclusively uses the
POST method for requests, effectively tunneling CMP over HTTP.  While
this is generally considered bad practice and should not be emulated,
there are good reasons to do so for transferring CMP.  HTTP is used
as it is generally easy to implement and it is able to traverse
network borders utilizing ubiquitous proxies.  Most importantly, HTTP
is already commonly used in existing CMP implementations.  Other HTTP
request methods, such as GET, are not used because PKI management
operations can only be triggered using CMP's PKI messages, which need
to be transferred using a POST request.</t>
      <t>With its status codes, HTTP provides needed error reporting
capabilities.  General problems on the server side, as well as those
directly caused by the respective request, can be reported to the
client.</t>
      <t>As CMP implements a transaction ID, identifying transactions spanning
over more than just a single request/response pair, the statelessness
of HTTP is not blocking its usage as the transfer protocol for CMP
messages.</t>
      <section anchor="sect-1.1">
        <name>Changes Made by RFC 9480</name>
        <t>CMP Updates <xref target="RFC9480"/> updated <xref target="RFC6712"/>, supporting the PKI
management operations specified in the Lightweight CMP
Profile <xref target="RFC9483"/>, in the following areas:</t>
        <ul spacing="normal">
          <li>
            <t>Introduce the HTTP URI path prefix '/.well-known/cmp'.</t>
          </li>
          <li>
            <t>Add options for extending the URI structure with further segments and to
this end define a new protocol registry group.</t>
          </li>
        </ul>
      </section>
      <section anchor="sect-1.2">
        <name>Changes Made by This Document</name>
        <t>This document obsoletes <xref target="RFC6712">RFC 6712</xref>.
It includes the changes specified by CMP Updates <xref target="RFC9480"/> Section 3 as
described in <xref target="sect-1.1"/> and added the requirement on providing the
Content-Length header field in <xref target="sect-3.4"/>.</t>
      </section>
    </section>
    <section anchor="sect-2">
      <name>Conventions Used in This Document</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="sect-3">
      <name>HTTP-Based Protocol</name>
      <t>For direct interaction between two entities, where a reliable
transport protocol like TCP is available, HTTP <bcp14>SHOULD</bcp14> be utilized for
conveying CMP messages.</t>
      <section anchor="sect-3.1">
        <name>HTTP Versions</name>
        <t>Implementations <bcp14>MUST</bcp14> support HTTP/1.0 <xref target="RFC1945"/> and <bcp14>SHOULD</bcp14> support
HTTP/1.1 <xref target="RFC9112"/>.</t>
      </section>
      <section anchor="sect-3.2">
        <name>Persistent Connections</name>
        <t>HTTP persistent connections <xref target="RFC9112"/> allow multiple interactions to
take place on the same HTTP connection.  However, neither HTTP nor
the protocol specified in this document are designed to correlate
messages on the same connection in any meaningful way; persistent
connections are only a performance optimization.  In particular,
intermediaries can do things like mix connections from different
clients into one "upstream" connection, terminate persistent
connections, and forward requests as non-persistent requests, etc.
As such, implementations <bcp14>MUST NOT</bcp14> infer that requests on the same
connection come from the same client (e.g., for correlating PKI
messages with ongoing transactions); every message is to be evaluated
in isolation.</t>
      </section>
      <section anchor="sect-3.3">
        <name>General Form</name>
        <t>A DER-encoded <xref target="ITU.X690.1994"/> PKIMessage <xref target="I-D.ietf-lamps-rfc4210bis"/> is sent as the
entity-body of an HTTP POST request.  If this HTTP request is
successful, the server returns the CMP response in the body of the
HTTP response.  The HTTP response status code in this case <bcp14>MUST</bcp14> be
200; other "Successful 2xx" codes <bcp14>MUST NOT</bcp14> be used for this purpose.
HTTP responses to pushed CMP Announcement messages (i.e., CA
Certificate Announcement, Certificate Announcement, Revocation
Announcement, and Certificate Revocation List (CRL) Announcement)
utilize the status codes 201 and 202 to identify whether the received
information was processed.</t>
        <t>While "Redirection 3xx" status codes <bcp14>MAY</bcp14> be supported by
implementations, clients should only be enabled to automatically
follow them after careful consideration of possible security
implications.  As described in <xref target="sect-5"/>, "301 Moved Permanently"
could be misused for permanent denial of service.</t>
        <t>All applicable "Client Error 4xx" or "Server Error 5xx" status codes
<bcp14>MAY</bcp14> be used to inform the client about errors.</t>
      </section>
      <section anchor="sect-3.4">
        <name>Header Fields</name>
        <t>The Internet Media Type "application/pkixcmp" <bcp14>MUST</bcp14> be set in the HTTP
Content-Type header field when conveying a PKIMessage.</t>
        <t>The Content-Length header field <bcp14>SHOULD</bcp14> be provided, giving the length of
the ASN.1-encoded PKIMessage.</t>
      </section>
      <section anchor="sect-3.5">
        <name>Communication Workflow</name>
        <t>In CMP, most communication is initiated by the EEs where every CMP
request triggers a CMP response message from the CA or RA.</t>
        <t>The CMP Announcement messages described in <xref target="sect-3.7"/> are an
exception.  Their creation may be triggered by certain events or done
on a regular basis by a CA.  The recipient of the Announcement only
replies with an HTTP status code acknowledging the receipt or
indicating an error, but not with a CMP response.</t>
        <t>If the receipt of an HTTP request is not confirmed by receiving an
HTTP response, it <bcp14>MUST</bcp14> be assumed that the transferred CMP message
was not successfully delivered to its destination.</t>
      </section>
      <section anchor="sect-3.6">
        <name>HTTP Request-URI</name>
        <t>Each CMP server on a PKI management entity supporting HTTP or HTTPS transfer
<bcp14>MUST</bcp14> support the use of the path prefix '/.well-known/' as defined in
<xref target="RFC8615"/> and the registered name 'cmp' to ease interworking
in a multi-vendor environment.</t>
        <t>The CMP client needs to be configured with sufficient information to form
the CMP server URI.  This is at least the authority portion of the URI, e.g.,
'www.example.com:80', or the full operation path segment of the PKI management
entity. Additionally, path segments <bcp14>MAY</bcp14> be added after the registered
application name as part of the full operation path to provide further distinction.
The path segment 'p' followed by an arbitraryLabel &lt;name&gt; could, for example,
support the differentiation of specific CAs or certificate profiles. Further
path segments, e.g., as specified in the Lightweight CMP Profile <xref target="RFC9483"/>,
could indicate PKI management operations using an operationLabel &lt;operation&gt;.
A valid, full CMP URI can look like this:</t>
        <ul empty="true">
          <li>
            <t>http://www.example.com/.well-known/cmp</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>http://www.example.com/.well-known/cmp/&lt;operation&gt;</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>http://www.example.com/.well-known/cmp/p/&lt;name&gt;</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>http://www.example.com/.well-known/cmp/p/&lt;name&gt;/&lt;operation&gt;</t>
          </li>
        </ul>
      </section>
      <section anchor="sect-3.7">
        <name>Pushing of Announcements</name>
        <t>A CMP server may create event-triggered announcements or generate
them on a regular basis.  It <bcp14>MAY</bcp14> utilize HTTP transfer to convey them
to a suitable recipient.  In this use case, the CMP server acts as an
HTTP client, and the recipient needs to utilize an HTTP server.  As
no request messages are specified for those announcements, they can
only be pushed to the recipient.</t>
        <t>If an EE wants to poll for a potential CA Key Update Announcement or
the current CRL, a PKI Information Request using a General Message as
described in Appendix D.5 of <xref target="I-D.ietf-lamps-rfc4210bis"/> can be used.</t>
        <t>When pushing Announcement messages, PKIMessage structures are sent as
the entity-body of an HTTP POST request.</t>
        <t>Suitable recipients for CMP announcements might, for example, be
repositories storing the announced information, such as directory
services.  Those services listen for incoming messages, utilizing the
same HTTP Request-URI scheme as defined in <xref target="sect-3.6"/>.</t>
        <t>The following types of PKIMessage are announcements that may be pushed by a
CA.  The prefixed numbers reflect ASN.1 numbering of the respective
element.</t>
        <artwork><![CDATA[
   [15] CA Key Update Announcement
   [16] Certificate Announcement
   [17] Revocation Announcement
   [18] CRL Announcement
]]></artwork>
        <t>CMP Announcement messages do not require any CMP response.  However,
the recipient <bcp14>MUST</bcp14> acknowledge receipt with an HTTP response having
an appropriate status code and an empty body.  When not receiving
such a response, it <bcp14>MUST</bcp14> be assumed that the delivery was not
successful.  If applicable, the sending side <bcp14>MAY</bcp14> try sending the
Announcement again after waiting for an appropriate time span.</t>
        <t>If the announced issue was successfully stored in a database or was
already present, the answer <bcp14>MUST</bcp14> be an HTTP response with a "201 Created"
status code and an empty message body.</t>
        <t>In case the announced information was only accepted for further
processing, the status code of the returned HTTP response <bcp14>MAY</bcp14> also be
"202 Accepted".  After an appropriate delay, the sender may then try
to send the Announcement again and may repeat this until it receives
a confirmation that it has been successfully processed.  The
appropriate duration of the delay and the option to increase it
between consecutive attempts should be carefully considered.</t>
        <t>A receiver <bcp14>MUST</bcp14> answer with a suitable 4xx or 5xx HTTP error code
when a problem occurs.</t>
      </section>
      <section anchor="sect-3.8">
        <name>HTTP Considerations</name>
        <t>While all defined features of the HTTP protocol are available to
implementations, they <bcp14>SHOULD</bcp14> keep the protocol utilization as simple
as possible.  For example, there is no benefit in using chunked
Transfer-Encoding, as the length of an ASN.1 sequence is known when
starting to send it.</t>
        <t>There is no need for the clients to send an "Expect" request-header
field with the "100-continue" expectation and wait for a "100 Continue" status
as described in Section 8.2.3 of <xref target="RFC9112"/>.  The CMP
payload sent by a client is relatively small, so having extra
messages exchanged is inefficient, as the server will only seldom
reject a message without evaluating the body.</t>
      </section>
    </section>
    <section anchor="sect-4">
      <name>Implementation Considerations</name>
      <t>Implementors should be aware that implementations might exist that
use a different approach for transferring CMP over HTTP, because
<xref target="RFC6712">RFC 6712</xref> has been under development for more than a decade.
Further, implementations based on earlier drafts of
<xref target="RFC6712">RFC 6712</xref> might use an unregistered
"application/pkixcmp-poll" MIME type.</t>
    </section>
    <section anchor="sect-5">
      <name>Security Considerations</name>
      <t>The following aspects need to be considered by implementers and
users:</t>
      <ol spacing="normal" type="1"><li>
          <t>There is the risk for denial-of-service attacks through resource
  consumption by opening many connections to an HTTP server.
  Therefore, idle connections should be terminated after an
  appropriate timeout; this may also depend on the available free
  resources.  After sending a CMP Error Message with PKIStatus other than "waiting", the server should
  close the connection, even if the CMP transaction is not yet
  fully completed.</t>
        </li>
        <li>
          <t>Without being encapsulated in effective security protocols, such
  as Transport Layer Security (TLS) <xref target="RFC5246"/> or <xref target="RFC8446"/>, there is no
  integrity protection at the HTTP protocol level.  Therefore,
  information from the HTTP protocol should not be used to change
  state of the transaction.</t>
        </li>
        <li>
          <t>Client users should be aware that storing the target location of
  an HTTP response with the "301 Moved Permanently" status code
  could be exploited by a man-in-the-middle attacker trying to
  block them permanently from contacting the correct server.</t>
        </li>
        <li>
          <t>If no measures to authenticate and protect the HTTP responses to
  pushed Announcement messages are in place, their information
  regarding the Announcement's processing state may not be trusted.
  In that case, the overall design of the PKI system must not
  depend on the Announcements being reliably received and processed
  by their destination.</t>
        </li>
        <li>
          <t>CMP provides inbuilt integrity protection and authentication.
  The information communicated unencrypted in CMP messages does not
  contain sensitive information endangering the security of the PKI
  when intercepted.  However, it might be possible for an
  eavesdropper to utilize the available information to gather
  confidential technical or business critical information.
  Therefore, users of the HTTP transfer for CMP messages might want to
  consider using HTTP over TLS according to <xref target="RFC9110"/> or virtual
  private networks created, for example, by utilizing Internet
  Protocol Security according to <xref target="RFC4301"/>.</t>
        </li>
      </ol>
    </section>
    <section anchor="sect-6">
      <name>IANA Considerations</name>
      <t>The reference to <xref target="RFC2510"/> at https://www.iana.org/assignments/media-types/media-types.xhtml should be replaced with a reference to this document.</t>
      <t>The reference to <xref target="RFC4210"/> at https://www.iana.org/assignments/core-parameters/core-parameters.xhtml should be replaced with a reference to this document.</t>
      <t>The reference to <xref target="RFC9480"/> at https://www.iana.org/assignments/well-known-uris/well-known-uris.xhtml and https://www.iana.org/assignments/cmp/cmp.xhtmlshould should be replaced with a reference to this document.</t>
      <t>No further action by the IANA is necessary for this document or any anticipated
updates.</t>
    </section>
    <section anchor="sect-7">
      <name>Acknowledgments</name>
      <t>The authors of this document wish to thank Tomi Kause and Martin Peylo, the
original authors of <xref target="RFC6712"/>, for their work.</t>
      <t>We also thank all reviewers of this document for their valuable feedback.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC1945">
          <front>
            <title>Hypertext Transfer Protocol -- HTTP/1.0</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="H. Frystyk" initials="H." surname="Frystyk"/>
            <date month="May" year="1996"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is an application-level protocol with the lightness and speed necessary for distributed, collaborative, hypermedia information systems. This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1945"/>
          <seriesInfo name="DOI" value="10.17487/RFC1945"/>
        </reference>
        <reference anchor="RFC8615">
          <front>
            <title>Well-Known Uniform Resource Identifiers (URIs)</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="May" year="2019"/>
            <abstract>
              <t>This memo defines a path prefix for "well-known locations", "/.well-known/", in selected Uniform Resource Identifier (URI) schemes.</t>
              <t>In doing so, it obsoletes RFC 5785 and updates the URI schemes defined in RFC 7230 to reserve that space. It also updates RFC 7595 to track URI schemes that support well-known URIs in their registry.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8615"/>
          <seriesInfo name="DOI" value="10.17487/RFC8615"/>
        </reference>
        <reference anchor="RFC9112">
          <front>
            <title>HTTP/1.1</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document specifies the HTTP/1.1 message syntax, message parsing, connection management, and related security concerns.</t>
              <t>This document obsoletes portions of RFC 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="99"/>
          <seriesInfo name="RFC" value="9112"/>
          <seriesInfo name="DOI" value="10.17487/RFC9112"/>
        </reference>
        <reference anchor="I-D.ietf-lamps-rfc4210bis">
          <front>
            <title>Internet X.509 Public Key Infrastructure -- Certificate Management Protocol (CMP)</title>
            <author fullname="Hendrik Brockhaus" initials="H." surname="Brockhaus">
              <organization>Siemens</organization>
            </author>
            <author fullname="David von Oheimb" initials="D." surname="von Oheimb">
              <organization>Siemens</organization>
            </author>
            <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
              <organization>Entrust</organization>
            </author>
            <author fullname="John Gray" initials="J." surname="Gray">
              <organization>Entrust</organization>
            </author>
            <date day="2" month="September" year="2024"/>
            <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 interactions between client systems and PKI components such
   as a Registration Authority (RA) and a Certification Authority (CA).

   This document obsoletes RFC 4210 by including the updates specified
   by CMP Updates RFC 9480 Section 2 and Appendix A.2 maintaining
   backward compatibility with CMP version 2 wherever possible and
   obsoletes both documents.  Updates to CMP version 2 are: improving
   crypto agility, extending the polling mechanism, adding new general
   message types, and adding extended key usages to identify special CMP
   server authorizations.  Introducing CMP version 3 to be used only for
   changes to the ASN.1 syntax, which are: support of EnvelopedData
   instead of EncryptedValue, hashAlg for indicating a hash
   AlgorithmIdentifier in certConf messages, and RootCaKeyUpdateContent
   in ckuann messages.

   In addition to the changes specified in CMP Updates RFC 9480 this
   document adds support for management of KEM certificates.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-rfc4210bis-13"/>
        </reference>
        <reference anchor="ITU.X690.1994">
          <front>
            <title>Information Technology - ASN.1 encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)</title>
            <author>
              <organization>International Telecommunications Union</organization>
            </author>
            <date year="1994"/>
          </front>
          <seriesInfo name="ITU-T" value="Recommendation X.690"/>
        </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC9480">
          <front>
            <title>Certificate Management Protocol (CMP) Updates</title>
            <author fullname="H. Brockhaus" initials="H." surname="Brockhaus"/>
            <author fullname="D. von Oheimb" initials="D." surname="von Oheimb"/>
            <author fullname="J. Gray" initials="J." surname="Gray"/>
            <date month="November" year="2023"/>
            <abstract>
              <t>This document contains a set of updates to the syntax of Certificate Management Protocol (CMP) version 2 and its HTTP transfer mechanism. This document updates RFCs 4210, 5912, and 6712.</t>
              <t>The aspects of CMP updated in this document are using EnvelopedData instead of EncryptedValue, clarifying the handling of p10cr messages, improving the crypto agility, as well as adding new general message types, extended key usages to identify certificates for use with CMP, and well-known URI path segments.</t>
              <t>CMP version 3 is introduced to enable signaling support of EnvelopedData instead of EncryptedValue and signal the use of an explicit hash AlgorithmIdentifier in certConf messages, as far as needed.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9480"/>
          <seriesInfo name="DOI" value="10.17487/RFC9480"/>
        </reference>
        <reference anchor="RFC9483">
          <front>
            <title>Lightweight Certificate Management Protocol (CMP) Profile</title>
            <author fullname="H. Brockhaus" initials="H." surname="Brockhaus"/>
            <author fullname="D. von Oheimb" initials="D." surname="von Oheimb"/>
            <author fullname="S. Fries" initials="S." surname="Fries"/>
            <date month="November" year="2023"/>
            <abstract>
              <t>This document aims at simple, interoperable, and automated PKI management operations covering typical use cases of industrial and Internet of Things (IoT) scenarios. This is achieved by profiling the Certificate Management Protocol (CMP), the related Certificate Request Message Format (CRMF), and transfer based on HTTP or Constrained Application Protocol (CoAP) in a succinct but sufficiently detailed and self-contained way. To make secure certificate management for simple scenarios and constrained devices as lightweight as possible, only the most crucial types of operations and options are specified as mandatory. More specialized or complex use cases are supported with optional features.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9483"/>
          <seriesInfo name="DOI" value="10.17487/RFC9483"/>
        </reference>
        <reference anchor="RFC2510">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate Management Protocols</title>
            <author fullname="C. Adams" initials="C." surname="Adams"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <date month="March" year="1999"/>
            <abstract>
              <t>This document describes the Internet X.509 Public Key Infrastructure (PKI) Certificate Management Protocols. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2510"/>
          <seriesInfo name="DOI" value="10.17487/RFC2510"/>
        </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="RFC4301">
          <front>
            <title>Security Architecture for the Internet Protocol</title>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <author fullname="K. Seo" initials="K." surname="Seo"/>
            <date month="December" year="2005"/>
            <abstract>
              <t>This document describes an updated version of the "Security Architecture for IP", which is designed to provide security services for traffic at the IP layer. This document obsoletes RFC 2401 (November 1998). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4301"/>
          <seriesInfo name="DOI" value="10.17487/RFC4301"/>
        </reference>
        <reference anchor="RFC5246">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.2</title>
            <author fullname="T. Dierks" initials="T." surname="Dierks"/>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2008"/>
            <abstract>
              <t>This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol. The TLS protocol provides communications security over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5246"/>
          <seriesInfo name="DOI" value="10.17487/RFC5246"/>
        </reference>
        <reference anchor="RFC6712">
          <front>
            <title>Internet X.509 Public Key Infrastructure -- HTTP Transfer for the Certificate Management Protocol (CMP)</title>
            <author fullname="T. Kause" initials="T." surname="Kause"/>
            <author fullname="M. Peylo" initials="M." surname="Peylo"/>
            <date month="September" year="2012"/>
            <abstract>
              <t>This document describes how to layer the Certificate Management Protocol (CMP) over HTTP. It is the "CMPtrans" document referenced in RFC 4210; therefore, this document updates the reference given therein. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6712"/>
          <seriesInfo name="DOI" value="10.17487/RFC6712"/>
        </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="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
      </references>
    </references>
    <?line 468?>

<section anchor="History">
      <name>History of Changes</name>
      <t>Note: This appendix will be deleted in the final version of the document.</t>
      <t>From version 06 -&gt; 07:</t>
      <ul spacing="normal">
        <li>
          <t>Updated the the page header to 'HTTP Transfer for CMP'</t>
        </li>
        <li>
          <t>Removed one instruction to RFC Editors</t>
        </li>
        <li>
          <t>Deprecated PKIMessages as plural of PKIMessage to prevent confusion with ASN.1 type PKIMessages</t>
        </li>
        <li>
          <t>Fixed some nits in Section 1</t>
        </li>
        <li>
          <t>Aligned Section 3.6 and Section 5 with RFC 9483 and draft-ietf-anima-brski-ae</t>
        </li>
      </ul>
      <t>From version 05 -&gt; 06:</t>
      <ul spacing="normal">
        <li>
          <t>Updates IANA considerations addressing IANA early review (see thread "[IANA #1368693] Early review: draft-ietf-lamps-rfc4210bis-12 (IETF 120)").</t>
        </li>
      </ul>
      <t>From version 04 -&gt; 05:</t>
      <ul spacing="normal">
        <li>
          <t>Added IANA considerations addressing IANA early review.</t>
        </li>
      </ul>
      <t>From version 03 -&gt; 04:</t>
      <ul spacing="normal">
        <li>
          <t>Aligned with released RFC 9480 - RFC 9483.</t>
        </li>
      </ul>
      <t>From version 02 -&gt; 03:</t>
      <ul spacing="normal">
        <li>
          <t>Fixing one formatting nit.</t>
        </li>
      </ul>
      <t>From version 01 -&gt; 02:</t>
      <ul spacing="normal">
        <li>
          <t>Updated Section 3.4 including the requirement to add the content-length filed
into the HTTP header.</t>
        </li>
        <li>
          <t>Added a reference to TLS 1.3.</t>
        </li>
        <li>
          <t>Addressed idnits feedback, specifically changing the following RFC references:
RFC2616 -&gt; RFC9112; RFC2818 -&gt; RFC9110, and RFC5246 -&gt; RFC8446</t>
        </li>
      </ul>
      <t>From version 00 -&gt; 01:</t>
      <ul spacing="normal">
        <li>
          <t>Performed all updates specified in CMP Updates Section 3.</t>
        </li>
      </ul>
      <t>Version 00:</t>
      <t>This version consists of the text of RFC6712 with the following changes:</t>
      <ul spacing="normal">
        <li>
          <t>Introduced the authors of this document and thanked the authors of RFC6712
for their work.</t>
        </li>
        <li>
          <t>Added a paragraph to the introduction explaining the background of this document.</t>
        </li>
        <li>
          <t>Added the change history to this appendix.</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA81c63YbuZH+j6fA0j9k55C0qJttzawTRZZntLFsrSRnkjPr
H2A3SGLU7O70RRTj9T5LniVPtvVVAX2hKMeTc3JOcjIzZLMBFOr6VaGg0Wik
7o71vnJ5cayroi6rvd3dV7t7Ks6i1CztsY4LM6tGzlazUWKWeTkqZtHRi8ne
1JWj3RcqMtWxLqtYZdMyS2xly2O9g9/1q4OXuzsqytLSpmWNxzS/3VFlPV26
snRZWq1zWuD87OatSkw6P9Y2Vbk7VlpXWdS8z99im1cLenSA7+V6WdhZ2Xmj
zIrKP5qZpKRnlasSmvw1/XieVrZIbaX/ND7cfaUv62niIv0Hu6ZfZoUpaZKo
qguriRla/3hzc6lvCpOWM1voWVboamH1qS0qN3O0W6svTGrmdmnTSl8WGRGX
Jfrp6cXlM2Wm08ISPx/OQT8rU1hDvLKRWtFe351cXF7rn7Li1qVz/UOR1bm6
tetVVsTHasQDRjwRvnRWXzar0w+XfzhXc1ct6umxHoh4VvPn0TIf1XlMb5cD
4iz9h2Q0WFRVXh4/fx5eG8vAscu6A55/Rd7jRbVMBgrvHeu93b0DZepqkRWg
V5TlR5vGhbvVvy+y6HZh6pIYmhW022sHkvE18Kh9QgKwlij8CVIqRndZOvI/
jq4rkk9p9YRei7KYVth5ubu/vw+ZR65aH+uLOnXRgn+u06qgJz/Ygni0pkd2
aVxyrBdC1HgaiPpdKdOPo2xJr9WFo5c8d1ar1bj7c9jZG3PnYv2/mqjTHxbW
Laf/DluLQdWYph1nTNM/s7MLd2v1hzotSfWqRdjVWcreoLOr9knY1WTy8oW+
NMWtvkxMZOmXws7JrmnO9+2uDg/3X7zq7MqlqTV5lriyu7WPqatsrK8rKKHO
ZvpkaQvS+HavS6JznAU6f2eFnMd22v057PS/skVKlmbW/76b/IVIHM+JxF+z
P5eSi1mayt1ZOM+rt6fwve3Hff9x73ASnh7stR/3dyf+4+HewZH/CJP3H18e
NE9fTTAs3Vht8urgMLx7NDls3+UZzkdvxn13gsXJnfCPNx/Hfzp6tTuevHp1
cKzUaDQiWRDvTVQppW4WrtQUimr2trEto8JNiXWLbEVRQSdmbb/JPyv2zzq7
o9fhU8dKnVfapVFS06Q8g/d/muybiNccwsrcRjQricyl8Mj6o38Jb4DH+tpG
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

-->

</rfc>
