<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.1 (Ruby 2.6.10) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>

<?rfc compact="yes"?>
<?rfc iprnotified="no"?>
<?rfc strict="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-anima-brski-ae-12" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="BRSKI-AE">BRSKI-AE: Alternative Enrollment Protocols in BRSKI</title>

    <author initials="D." surname="von&nbsp;Oheimb" fullname="David von&nbsp;Oheimb" role="editor">
      <organization abbrev="Siemens">Siemens AG</organization>
      <address>
        <postal>
          <street>Otto-Hahn-Ring 6</street>
          <city>Munich</city>
          <code>81739</code>
          <country>Germany</country>
        </postal>
        <email>david.von.oheimb@siemens.com</email>
        <uri>https://www.siemens.com/</uri>
      </address>
    </author>
    <author initials="S." surname="Fries" fullname="Steffen Fries">
      <organization abbrev="Siemens">Siemens AG</organization>
      <address>
        <postal>
          <street>Otto-Hahn-Ring 6</street>
          <city>Munich</city>
          <code>81739</code>
          <country>Germany</country>
        </postal>
        <email>steffen.fries@siemens.com</email>
        <uri>https://www.siemens.com/</uri>
      </address>
    </author>
    <author initials="H." surname="Brockhaus" fullname="Hendrik Brockhaus">
      <organization abbrev="Siemens">Siemens AG</organization>
      <address>
        <postal>
          <street>Otto-Hahn-Ring 6</street>
          <city>Munich</city>
          <code>81739</code>
          <country>Germany</country>
        </postal>
        <email>hendrik.brockhaus@siemens.com</email>
        <uri>https://www.siemens.com/</uri>
      </address>
    </author>

    <date year="2024"/>

    <area>Operations and Management</area>
    <workgroup>ANIMA WG</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<?line 149?>

<t>This document defines an enhancement of
Bootstrapping Remote Secure Key Infrastructure (BRSKI, RFC 8995).
It supports alternative certificate enrollment protocols, such as CMP, that
use authenticated self-contained signed objects for certification messages.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-anima-brski-ae/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/anima-wg/anima-brski-ae"/>.</t>
    </note>


  </front>

  <middle>


<?line 156?>

<section anchor="introduction"><name>Introduction</name>

<t>BRSKI <xref target="RFC8995"/> is typically used with Enrollment over Secure Transport
(EST, <xref target="RFC7030"/>) as the enrollment protocol
for operator-specific device certificates, employing HTTP over TLS for secure message transfer.
BRSKI-AE is a variant using alternative enrollment protocols with
authenticated self-contained objects for the device certificate enrollment.
<!--
This enhancement of BRSKI is named BRSKI-AE, where AE stands for
**A**lternative **E**nrollment.
(while originally it was used to abbreviate **A**synchronous **E**nrollment)
--></t>

<t>This approach provides the following advantages.
The origin of requests and responses
can be authenticated independent of message transfer.
This supports end-to-end authentication (proof of origin) also over
multiple hops, as well as asynchronous operation of certificate enrollment.
This in turn provides architectural flexibility where and when to
ultimately authenticate and authorize certification requests while retaining
full-strength integrity and authenticity of certification requests.</t>

<t>This specification carries over the main characteristics of BRSKI, namely:</t>

<t><list style="symbols">
  <t>The pledge is assumed to have received its Initial Device IDentifier
(IDevID, <xref target="IEEE_802.1AR-2018"/>) credentials during its production.
It uses them to authenticate itself to the
Manufacturer Authorized Signing Authority (MASA, <xref target="RFC8995"/>),
and to the registrar, which is the access point of the target domain,
and to possibly further components of the domain where it will be operated.</t>
  <t>The pledge first obtains via the voucher <xref target="RFC8366"/> exchange a trust anchor
for authenticating entities in the domain such as the domain registrar.</t>
  <t>The pledge then obtains its
Locally significant Device IDentifier (IDevID, <xref target="IEEE_802.1AR-2018"/>).
To this end, the pledge generates a private key, called LDevID secret,
and requests via the domain registrar from the PKI of its new domain
a domain-specific device certificate, called LDevID certificate.
On success, it receives the LDevID certificate along with its certificate chain.</t>
</list></t>

<t>The goals of BRSKI-AE are to provide an enhancement of BRSKI for
LDevID certificate enrollment using, alternatively to EST, a protocol that</t>

<t><list style="symbols">
  <t>supports end-to-end authentication over multiple hops</t>
  <t>enables secure message exchange over any kind of transfer,
including asynchronous delivery.</t>
</list></t>

<t>Note that the BRSKI voucher exchange of the pledge with the registrar and MASA
uses authenticated self-contained objects,
so the voucher exchange already has these properties.</t>

<t>The well-known URI approach of BRSKI and EST messages is extended
with an additional path element indicating the enrollment protocol being used.
<!--- not really: and
* defining a certificate waiting indication and handling, for the case that the
  certifying component is (temporarily) not available.
--></t>

<t>Based on the definition of the overall approach and specific endpoints,
this specification enables the registrar to offer multiple enrollment protocols,
from which pledges and their developers can then pick the most suitable one.</t>

<t>It may be noted that BRSKI (RFC 8995) specifies how to use HTTP over TLS,
but further variants are known, such as
Constrained BRSKI <xref target="I-D.ietf-anima-constrained-voucher"/> using CoAP over DTLS.
In the sequel, 'HTTP' and 'TLS' are just references to the most common case,
where variants such as using CoAP and/or DTLS are meant to be subsumed -
the differences are not relevant here.</t>

<t>This specification is sufficient together with its references to
support BRSKI with the Certificate Management Protocol (CMP, <xref target="RFC9480"/>)
profiled in the Lightweight CMP Profile (LCMPP, <xref target="RFC9483"/>).
Combining BRSKI with a protocol or profile other than LCMPP will require
additional IANA registrations based on the rules specified in this document.
It may also require additional specifications for details of the protocol or
profile (similar to <xref target="RFC9483"></xref>), which are outside the scope of this document.</t>

<section anchor="sup-env"><name>Supported Scenarios</name>

<t>BRSKI-AE is intended to be used in situations like the following.</t>

<t><list style="symbols">
  <t>Pledges and/or the target domain reuse an already established
certificate enrollment protocol different from EST, such as CMP.</t>
  <t>The application scenario indirectly excludes the use of EST
for certificate enrollment, for reasons like these:
  <list style="symbols">
      <t>The Registration Authority (RA) is not co-located with the registrar
while it requires end-to-end authentication of requesters.
Yet EST does not support end-to-end authentication over multiple hops.</t>
      <t>The RA or certification authority (CA) operator requires
auditable proof of origin for Certificate Signing Requests (CSRs). This is not
possible with TLS because it provides only transient source authentication.</t>
      <t>Certificates are requested for types of keys, such as Key Encapsulation
Mechanism (KEM) keys, that do not support signing (nor alternative forms
of single-shot proof of possession like those described in <xref target="RFC6955"/>).
This is not supported by EST because it uses CSRs in PKCS #10 <xref target="RFC2986"/>
format, which can only use proof-of-possession methods that
need just a single message, while proof of possession for KEM keys,
for instance, requires receiving a fresh challenge value beforehand.</t>
      <t>The pledge implementation uses security libraries not providing EST support
or uses a TLS library that does not support providing
the so-called tls-unique value <xref target="RFC5929"/>,
which is needed by EST for strong binding of the source authentication.</t>
    </list></t>
  <t>No full RA functionality is available on-site in the target domain, while
connectivity to an off-site RA may be intermittent or entirely offline.
<!-- in the latter case a message store-and-forward mechanism is needed. --></t>
  <t>Authoritative actions of a local RA at the registrar is not sufficient
for fully and reliably authorizing pledge certification requests. This
may be due to missing data access or due to an insufficient level of security,
for instance regarding the local storage of private keys.
<!-- Final authorization then is done by a RA residing in the backend. --></t>
</list></t>

<t>Bootstrapping can be handled in various ways,
depending on the application domains.
The informative <xref target="app-examples"/> provides illustrative examples from
various industrial control system environments and operational setups
motivating the support of alternative enrollment protocols.</t>

</section>
</section>
<section anchor="terminology"><name>Terminology and abbreviations</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>This document relies on the terminology defined in <xref target="RFC8995"/>, <xref target="RFC5280"/>,
and <xref target="IEEE_802.1AR-2018"/>.
The following terms are described partly in addition.</t>

<dl>
  <dt>asynchronous communication:</dt>
  <dd>
    <t>time-wise interrupted delivery of messages,
here between a pledge and the registrar or an RA</t>
  </dd>
  <dt>authenticated self-contained object:</dt>
  <dd>
    <t>a data structure that is cryptographically bound to the identity of
its originator by an attached digital signature on the actual object,
using a private key of the originator such as the IDevID secret.</t>
  </dd>
  <dt>backend:</dt>
  <dd>
    <t>placement of a domain component separately from the domain registrar;
may be on-site or off-site</t>
  </dd>
  <dt>BRSKI:</dt>
  <dd>
    <t>Bootstrapping Remote Secure Key Infrastructure <xref target="RFC8995"/></t>
  </dd>
  <dt>BRSKI-AE:</dt>
  <dd>
    <t>BRSKI with <strong>A</strong>lternative <strong>E</strong>nrollment, a variation of BRSKI <xref target="RFC8995"/>
in which BRSKI-EST, the enrollment protocol between pledge and the registrar,
is replaced by enrollment protocols that support end-to-end authentication
of the pledge to the RA, such as Lightweight CMP (see LCMPP).</t>
  </dd>
  <dt>CMP:</dt>
  <dd>
    <t>Certificate Management Protocol <xref target="RFC9480"/></t>
  </dd>
  <dt>CSR:</dt>
  <dd>
    <t>Certificate Signing Request</t>
  </dd>
  <dt>EST:</dt>
  <dd>
    <t>Enrollment over Secure Transport <xref target="RFC7030"/></t>
  </dd>
  <dt>IDevID:</dt>
  <dd>
    <t>Initial Device IDentifier of a pledge, provided by the manufacturer
and comprising a private key and the related X.509 certificate with its chain</t>
  </dd>
  <dt>LDevID:</dt>
  <dd>
    <t>Locally significant Device IDentifier of a pledge, provided by its target domain
and comprising a private key and the related X.509 certificate with its chain</t>
  </dd>
  <dt>local RA (LRA):</dt>
  <dd>
    <t>a subordinate RA that is close to entities being enrolled and separate from
a subsequent RA.  In BRSKI-AE it is needed if a backend RA is used,
and in this case, the LRA is co-located with the registrar.</t>
  </dd>
  <dt>LCMPP:</dt>
  <dd>
    <t>Lightweight CMP Profile <xref target="RFC9483"/></t>
  </dd>
  <dt>MASA:</dt>
  <dd>
    <t>Manufacturer Authorized Signing Authority</t>
  </dd>
  <dt>on-site:</dt>
  <dd>
    <t>locality of a component or service or functionality
at the site of the registrar</t>
  </dd>
  <dt>off-site:</dt>
  <dd>
    <t>locality of component or service or functionality, such as RA or CA,
not at the site of the registrar.
This may be a central site or a cloud service,
to which connection may be intermittent.</t>
  </dd>
  <dt>pledge:</dt>
  <dd>
    <t>device that is to be bootstrapped into a target domain.
It requests an LDevID using IDevID credentials installed by its manufacturer.</t>
  </dd>
  <dt>RA:</dt>
  <dd>
    <t>Registration Authority, the PKI component to which
a CA typically delegates certificate management functions
such as authenticating pledges and performing authorization checks
on certification requests</t>
  </dd>
  <dt>registrar:</dt>
  <dd>
    <t>short for domain registrar</t>
  </dd>
  <dt>site:</dt>
  <dd>
    <t>the locality where an entity, such as a pledge, registrar, or PKI component
is deployed.  The target domain may have multiple sites.</t>
  </dd>
  <dt>synchronous communication:</dt>
  <dd>
    <t>time-wise uninterrupted delivery of messages,
here between a pledge and a registrar or PKI component</t>
  </dd>
  <dt>target domain:</dt>
  <dd>
    <t>the domain that a pledge is going to be bootstrapped into</t>
  </dd>
</dl>

<t>This document utilizes generic terminology regarding PKI management operations to be independent of the terminology of a specific enrollment protocol.</t>

<dl>
  <dt>certification request:</dt>
  <dd>
    <t>message requesting a certificate with proof of identity</t>
  </dd>
  <dt>certification response:</dt>
  <dd>
    <t>message providing the answer to a certification request</t>
  </dd>
  <dt>attribute request:</dt>
  <dd>
    <t>message requesting content to be included in the certification request</t>
  </dd>
  <dt>attribute response:</dt>
  <dd>
    <t>message providing the answer to the attribute request</t>
  </dd>
  <dt>CA certs request:</dt>
  <dd>
    <t>message requesting CA certificates</t>
  </dd>
  <dt>CA certs response:</dt>
  <dd>
    <t>message providing the answer to a CA certs request</t>
  </dd>
  <dt>certificate confirm:</dt>
  <dd>
    <t>message stating to the backend PKI that the requester of a certificate
received the new certificate and accepted it</t>
  </dd>
  <dt>PKI/registrar confirm:</dt>
  <dd>
    <t>acknowledgment of the PKI on the certificate confirm</t>
  </dd>
</dl>

</section>
<section anchor="req-sol"><name>Basic Requirements and Mapping to Solutions</name>

<t>Based on the intended target scenarios described in <xref target="sup-env"/> and
the application examples described in <xref target="app-examples"/>, the following
requirements are derived to support authenticated self-contained objects
as containers carrying certification requests.</t>

<t>The following properties are required for a certification request:</t>

<t><list style="symbols">
  <t>Proof of possession: demonstrates access to the private
key corresponding to the public key contained in a certification request.
This is typically achieved by a self-signature using the corresponding
private key but can also be achieved indirectly, see <xref section="4.3" sectionFormat="comma" target="RFC4210"/>.</t>
  <t>Proof of identity, also called proof of origin:
provides data origin authentication of the certification request.
Typically, this is achieved by a signature using the pledge IDevID secret
over some data, which needs to include a sufficiently strong identifier
of the pledge, such as the device serial number
typically included in the subject of the IDevID certificate.</t>
</list></t>

<t>The remainder of this section gives a non-exhaustive list of solution examples,
based on existing technology described in IETF documents.</t>

<section anchor="solutions-PoP"><name>Solution Options for Proof of Possession</name>

<t>Certificate signing request (CSR) objects: CSRs are
  data structures protecting only the integrity of the contained data
  and providing proof of possession for a (locally generated) private key.
  Important types of CSR data structures are:</t>

<t><list style="symbols">
  <t>PKCS #10 <xref target="RFC2986"/>. This very common form of CSR is
self-signed to protect its integrity and to prove possession of
the private key that corresponds to the public key included in the request.</t>
  <t>Certificate Request Message Format (CRMF, <xref target="RFC4211"/>).
This less common but more general CSR format
supports several ways of integrity protection and proof of possession.
Typically a self-signature is used, which is generated over (part of) the
structure with the private key corresponding to the included public key.
CRMF also supports further proof-of-possession methods for types of keys
that do not have signing capability. For details see <xref section="4" sectionFormat="comma" target="RFC4211"/>.</t>
</list></t>

<t>It should be noted that the integrity protection of CSRs includes the public key
  because it is part of the data signed by the corresponding private key.
  Yet this signature does not provide data origin authentication, i.e.,
  proof of identity of the requester because the key pair involved is new
  and therefore does not yet have a confirmed identity associated with it.
  <!-- already covered by the next paragraph:
  This extra property can be
  achieved by an additional binding to the IDevID of the pledge.
  This binding to the source authentication supports the
  authorization decision of the certification request.
  --></t>

</section>
<section anchor="solutions-PoI"><name>Solution Options for Proof of Identity</name>

<t>Binding a certificate signing request (CSR) to an existing authenticated
  credential (the BRSKI context, the IDevID certificate) enables
  proof of origin, which in turn supports an authorization decision on the CSR.</t>

<t>The binding of data origin authentication to the CSR
  is typically delegated to the protocol used for certificate management.
  This binding may be achieved through security options in an
  underlying transport protocol such as TLS if the authorization of the
  certification request is (sufficiently) done at the next communication hop.
  Depending on the key type, the binding can also be done in a stronger,
  transport-independent way by wrapping the CSR with a signature.</t>

<t>This requirement is addressed by existing enrollment protocols
  in various ways, such as:</t>

<t><list style="symbols">
  <t>EST <xref target="RFC7030"/>, also its variant EST-coaps <xref target="RFC9148"/>,
utilizes PKCS #10 to encode Certificate Signing Requests (CSRs).
While such a CSR has not been designed
to include proof of origin, there is a limited, indirect way of
binding it to the source authentication of the underlying TLS session.
This is achieved by including in the CSR the tls-unique value <xref target="RFC5929"/>
resulting from the TLS handshake.  As this is optionally supported
by the EST <spanx style="verb">"/simpleenroll"</spanx> endpoint used in BRSKI
and the TLS handshake employed in BRSKI includes certificate-based client
authentication of the pledge with its IDevID credentials, the proof of
pledge identity being an authenticated TLS client can be bound to the CSR.  <vspace blankLines='1'/>
Yet this binding is only valid in the context of the TLS session
established with the registrar acting as the EST server and typically also
as an RA.  So even such a cryptographic binding of the authenticated
pledge identity to the CSR is not visible nor verifiable to authorization
points outside the registrar, such as a (second) RA in the backend.
What the registrar needs to do is to authenticate and pre-authorize
the pledge and to indicate this to the (second) RA
by signing the forwarded certification request with its private key and
a related certificate that has the id-kp-cmcRA extended key usage attribute.  <vspace blankLines='1'/>
<xref section="2.5" sectionFormat="comma" target="RFC7030"/> sketches wrapping PKCS #10-formatted CSRs
with a Full PKI Request message sent to the <spanx style="verb">"/fullcmc"</spanx> endpoint.
This would allow for source authentication at the message level, such that
the registrar could forward it to external RAs in a meaningful way.
This approach is so far not sufficiently described
and likely has not been implemented.</t>
</list></t>

<!--
Note that, besides the existing enrollment protocols, there is
ongoing work in the ACE WG to define an encapsulation of EST messages
in OSCORE, which will result in a TLS-independent way of protecting EST.
This approach {{draft.selander-ace-coap-est-oscore}}
may be considered as a further variant.
-->

<t><list style="symbols">
  <t>SCEP <xref target="RFC8894"/> supports using a shared secret (passphrase) or
an existing certificate to protect CSRs based on
SCEP Secure Message Objects using CMS wrapping
(<xref target="RFC5652"/>). Note that the wrapping using
an existing IDevID in SCEP is referred to as 'renewal'.
This way
SCEP does not rely on the security of the underlying message transfer.</t>
  <t>CMP <xref target="RFC4210"/> <xref target="RFC9480"/> supports using a shared secret (passphrase)
or an existing
certificate, which may be an IDevID credential, to authenticate
certification requests via the PKIProtection structure in a PKIMessage.
The certification request is typically encoded utilizing CRMF,
while PKCS #10 is supported as an alternative.
Thus, CMP does not rely on the security of the underlying message transfer.</t>
  <t>CMC <xref target="RFC5272"/> also supports utilizing a shared secret (passphrase) or
an existing certificate to protect certification requests,
which can be either in CRMF or PKCS #10 structure.
The proof of identity can be provided as part of a FullCMCRequest,
based on CMS <xref target="RFC5652"/> and signed with an existing IDevID secret.
Thus, CMC does not rely on the security of the underlying message transfer.</t>
</list></t>

<t>To sum up, EST does not meet the requirements for authenticated self-contained
objects, but SCEP, CMP, and CMC do. This document primarily focuses on CMP as
it has more industry adoption than CMC and SCEP has issues not detailed here.</t>

</section>
</section>
<section anchor="uc1"><name>Adaptations to BRSKI</name>

<t>To enable using alternative certificate enrollment protocols supporting end-to-end
authentication, asynchronous enrollment, and more general system architectures,
BRSKI-AE provides some generalizations on BRSKI <xref target="RFC8995"/>.
This way, authenticated self-contained objects such as those described in
<xref target="req-sol"/> above can be used for certificate enrollment,
and RA functionality can be deployed freely in the target domain.
Parts of the RA functionality can even be distributed over several nodes.</t>

<t>The enhancements are kept to a minimum to ensure
the reuse of already defined architecture elements and interactions.
In general, the communication follows the BRSKI model and utilizes the existing
BRSKI architecture elements.
In particular, the pledge initiates communication with the domain registrar and
interacts with the MASA as usual for voucher request and response processing.</t>

<section anchor="architecture"><name>Architecture</name>

<t>The key element of BRSKI-AE is that the authorization of a certification request
<bcp14>MUST</bcp14> be performed based on an authenticated self-contained object.
The certification request is bound in a self-contained way
to a proof of origin based on the IDevID credentials.
Consequently, the certification request <bcp14>MAY</bcp14> be transferred using any mechanism
or protocol. Authentication and authorization of the certification request
can be done by the domain registrar and/or by backend domain components.
As mentioned in <xref target="sup-env"/>, these components may be offline or off-site.
The registrar and other on-site domain components
may have no or only temporary (intermittent) connectivity to them.</t>

<t>This leads to generalizations in the
placement and enhancements of the logical elements as shown in <xref target="uc1figure"/>.</t>

<figure title="Architecture Overview Using Backend PKI Components" anchor="uc1figure"><artset><artwork  type="svg" align="left"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="560" width="544" viewBox="0 0 544 560" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
<path d="M 8,208 L 8,336" fill="none" stroke="black"/>
<path d="M 32,48 L 32,200" fill="none" stroke="black"/>
<path d="M 32,464 L 32,512" fill="none" stroke="black"/>
<path d="M 80,208 L 80,336" fill="none" stroke="black"/>
<path d="M 112,464 L 112,512" fill="none" stroke="black"/>
<path d="M 152,240 L 152,304" fill="none" stroke="black"/>
<path d="M 160,464 L 160,512" fill="none" stroke="black"/>
<path d="M 216,240 L 216,304" fill="none" stroke="black"/>
<path d="M 304,240 L 304,304" fill="none" stroke="black"/>
<path d="M 336,32 L 336,144" fill="none" stroke="black"/>
<path d="M 376,312 L 376,456" fill="none" stroke="black"/>
<path d="M 424,240 L 424,304" fill="none" stroke="black"/>
<path d="M 456,72 L 456,144" fill="none" stroke="black"/>
<path d="M 472,152 L 472,256" fill="none" stroke="black"/>
<path d="M 504,464 L 504,512" fill="none" stroke="black"/>
<path d="M 536,32 L 536,144" fill="none" stroke="black"/>
<path d="M 336,32 L 536,32" fill="none" stroke="black"/>
<path d="M 32,48 L 144,48" fill="none" stroke="black"/>
<path d="M 224,48 L 328,48" fill="none" stroke="black"/>
<path d="M 336,64 L 536,64" fill="none" stroke="black"/>
<path d="M 336,144 L 536,144" fill="none" stroke="black"/>
<path d="M 8,208 L 80,208" fill="none" stroke="black"/>
<path d="M 152,240 L 216,240" fill="none" stroke="black"/>
<path d="M 304,240 L 424,240" fill="none" stroke="black"/>
<path d="M 432,256 L 472,256" fill="none" stroke="black"/>
<path d="M 88,272 L 144,272" fill="none" stroke="black"/>
<path d="M 224,272 L 296,272" fill="none" stroke="black"/>
<path d="M 152,304 L 216,304" fill="none" stroke="black"/>
<path d="M 304,304 L 424,304" fill="none" stroke="black"/>
<path d="M 8,336 L 80,336" fill="none" stroke="black"/>
<path d="M 32,464 L 112,464" fill="none" stroke="black"/>
<path d="M 160,464 L 504,464" fill="none" stroke="black"/>
<path d="M 120,480 L 160,480" fill="none" stroke="black"/>
<path d="M 112,496 L 152,496" fill="none" stroke="black"/>
<path d="M 32,512 L 112,512" fill="none" stroke="black"/>
<path d="M 160,512 L 504,512" fill="none" stroke="black"/>
<polygon class="arrowhead" points="480,152 468,146.4 468,157.6" fill="black" transform="rotate(270,472,152)"/>
<polygon class="arrowhead" points="440,256 428,250.4 428,261.6" fill="black" transform="rotate(180,432,256)"/>
<polygon class="arrowhead" points="384,456 372,450.4 372,461.6" fill="black" transform="rotate(90,376,456)"/>
<polygon class="arrowhead" points="384,312 372,306.4 372,317.6" fill="black" transform="rotate(270,376,312)"/>
<polygon class="arrowhead" points="304,272 292,266.4 292,277.6" fill="black" transform="rotate(0,296,272)"/>
<polygon class="arrowhead" points="232,272 220,266.4 220,277.6" fill="black" transform="rotate(180,224,272)"/>
<polygon class="arrowhead" points="160,496 148,490.4 148,501.6" fill="black" transform="rotate(0,152,496)"/>
<polygon class="arrowhead" points="152,272 140,266.4 140,277.6" fill="black" transform="rotate(0,144,272)"/>
<polygon class="arrowhead" points="128,480 116,474.4 116,485.6" fill="black" transform="rotate(180,120,480)"/>
<polygon class="arrowhead" points="96,272 84,266.4 84,277.6" fill="black" transform="rotate(180,88,272)"/>
<polygon class="arrowhead" points="40,200 28,194.4 28,205.6" fill="black" transform="rotate(90,32,200)"/>
<g class="text">
<text x="184" y="52">Drop-Ship</text>
<text x="372" y="52">Vendor</text>
<text x="432" y="52">Service</text>
<text x="352" y="84">M</text>
<text x="408" y="84">anufacturer</text>
<text x="352" y="100">A</text>
<text x="400" y="100">uthorized</text>
<text x="496" y="100">Ownership</text>
<text x="352" y="116">S</text>
<text x="388" y="116">igning</text>
<text x="488" y="116">Tracker</text>
<text x="352" y="132">A</text>
<text x="396" y="132">uthority</text>
<text x="288" y="212">.........................................</text>
<text x="128" y="228">.</text>
<text x="448" y="228">.</text>
<text x="508" y="228">BRSKI-</text>
<text x="128" y="244">.</text>
<text x="448" y="244">.</text>
<text x="500" y="244">MASA</text>
<text x="44" y="260">Pledge</text>
<text x="128" y="260">.</text>
<text x="180" y="260">Join</text>
<text x="340" y="260">Domain</text>
<text x="184" y="276">Proxy</text>
<text x="352" y="276">Registrar</text>
<text x="404" y="276">w/</text>
<text x="448" y="276">.</text>
<text x="128" y="292">.</text>
<text x="184" y="292">.......</text>
<text x="328" y="292">LRA</text>
<text x="356" y="292">or</text>
<text x="380" y="292">RA</text>
<text x="448" y="292">.</text>
<text x="44" y="308">IDevID</text>
<text x="128" y="308">.</text>
<text x="448" y="308">.</text>
<text x="140" y="324">BRSKI-AE</text>
<text x="196" y="324">over</text>
<text x="232" y="324">TLS</text>
<text x="448" y="324">.</text>
<text x="132" y="340">using,</text>
<text x="184" y="340">e.g.,</text>
<text x="232" y="340">LCMPP</text>
<text x="448" y="340">.</text>
<text x="128" y="356">.</text>
<text x="448" y="356">.</text>
<text x="248" y="372">...............................</text>
<text x="416" y="372">.........</text>
<text x="128" y="388">on-site</text>
<text x="192" y="388">(local)</text>
<text x="252" y="388">domain</text>
<text x="324" y="388">components</text>
<text x="408" y="404">e.g.,</text>
<text x="456" y="404">LCMPP</text>
<text x="192" y="436">.............................................</text>
<text x="452" y="436">..................</text>
<text x="16" y="452">.</text>
<text x="68" y="452">Public-Key</text>
<text x="172" y="452">Infrastructure</text>
<text x="520" y="452">.</text>
<text x="16" y="468">.</text>
<text x="520" y="468">.</text>
<text x="16" y="484">.</text>
<text x="236" y="484">Registration</text>
<text x="328" y="484">Authority</text>
<text x="520" y="484">.</text>
<text x="16" y="500">.</text>
<text x="76" y="500">CA</text>
<text x="196" y="500">RA</text>
<text x="240" y="500">(unless</text>
<text x="292" y="500">part</text>
<text x="324" y="500">of</text>
<text x="364" y="500">Domain</text>
<text x="436" y="500">Registrar)</text>
<text x="520" y="500">.</text>
<text x="16" y="516">.</text>
<text x="520" y="516">.</text>
<text x="268" y="532">................................................................</text>
<text x="104" y="548">backend</text>
<text x="172" y="548">(central</text>
<text x="220" y="548">or</text>
<text x="272" y="548">off-site)</text>
<text x="340" y="548">domain</text>
<text x="412" y="548">components</text>
</g>
</svg>
</artwork><artwork  type="ascii-art" align="left"><![CDATA[
                                         +------------------------+
   +--------------Drop-Ship--------------| Vendor Service         |
   |                                     +------------------------+
   |                                     | M anufacturer|         |
   |                                     | A uthorized  |Ownership|
   |                                     | S igning     |Tracker  |
   |                                     | A uthority   |         |
   |                                     +--------------+---------+
   |                                                      ^
   |                                                      |
   V                                                      |
+--------+     .........................................  |
|        |     .                                       .  | BRSKI-
|        |     .  +-------+          +--------------+  .  | MASA
| Pledge |     .  | Join  |          | Domain       |<----+
|        |<------>| Proxy |<-------->| Registrar w/ |  .
|        |     .  |.......|          | LRA or RA    |  .
| IDevID |     .  +-------+          +--------------+  .
|        |   BRSKI-AE over TLS                ^        .
+--------+   using, e.g., LCMPP               |        .
               .                              |        .
               ...............................|.........
            on-site (local) domain components |
                                              | e.g., LCMPP
                                              |
 .............................................|..................
 . Public-Key Infrastructure                  v                 .
 . +---------+     +------------------------------------------+ .
 . |         |<----+   Registration Authority                 | .
 . |    CA   +---->|   RA (unless part of Domain Registrar)   | .
 . +---------+     +------------------------------------------+ .
 ................................................................
         backend (central or off-site) domain components
]]></artwork></artset></figure>

<t>The architecture overview in <xref target="uc1figure"/>
has the same logical elements as BRSKI, but with a more flexible placement
of the authentication and authorization checks on certification requests.
Depending on the application scenario, the registrar <bcp14>MAY</bcp14> still do all of these
checks (as is the case in BRSKI), or part of them.</t>

<t>The following list describes the on-site components in the target domain
of the pledge shown in <xref target="uc1figure"/>.</t>

<t><list style="symbols">
  <t>Join Proxy: same requirements as in BRSKI, see <xref section="4" sectionFormat="comma" target="RFC8995"/></t>
  <t>Domain Registrar including LRA or RA functionality: in BRSKI-AE,
the domain registrar has mostly the same functionality as in BRSKI, namely
to act as the gatekeeper of the domain for onboarding new devices and
to facilitate the communication of pledges with their MASA and the domain PKI.
Yet there are some generalizations and specific requirements:  <list style="numbers">
      <t>The registrar <bcp14>MUST</bcp14> support at least one certificate enrollment protocol
with authenticated self-contained objects for certification requests.
To this end, the URI scheme for addressing endpoints at the registrar
is generalized (see <xref target="addressing"/>).</t>
      <t>Rather than having full RA functionality, the registrar <bcp14>MAY</bcp14> act as
a local registration authority (LRA) and delegate part of its involvement
in certificate enrollment to a backend RA.
In such scenarios, the registrar optionally checks certification requests
it receives from pledges and forwards them to the backend RA, which performs
the remaining parts of the enrollment request validation and authorization.
Note that to this end the backend RA may need information regarding
the authorization of pledges from the registrar or from other sources.
On the way back, the registrar forwards responses by the PKI
to the pledge on the same channel.      <vspace blankLines='1'/>
To support end-to-end authentication of the pledge across the
registrar to the backend RA, the certification request signed by
the pledge needs to be upheld and forwarded by the registrar.
Therefore, the registrar cannot use for its communication with the PKI
an enrollment protocol that is different from
the enrollment protocol used between the pledge and the registrar.</t>
      <t>The use of a certificate enrollment protocol with
authenticated self-contained objects gives freedom how to transfer
enrollment messages between the pledge and an RA.
BRSKI demands that the RA accept  certification requests for LDevIDs
only with the consent of the registrar.
BRSKI-AE guarantees this also in case that the RA is not part of
the registrar, even if the message exchange with backend systems is unprotected
and involves further transport hops.
See <xref target="sec-consider"/> for details on how this can be achieved.</t>
    </list></t>
</list></t>

<!-- is already covered by paragraph a little further below:
     Note:
     As far as (at least part of) the certificate enrollment traffic is routed
     via the registrar, BRSKI-AE re-uses during the certificate enrollment phase
     the channel that has been established in the BRSKI steps before between the
     pledge and the registrar.  Consequently, tunneling via this channel needs
     to be supported by the certificate enrollment protocol.
     By default, this channel is based on HTTP over TLS,
     but it may also be based on, for instance, CoAP over DTLS
     in the context of Constrained BRSKI {{I-D.ietf-anima-constrained-voucher}}.
-->
<!--
     In the latter scenario,
     the EST-specific parts of that specification do not apply.
-->

<t>Despite the above generalizations to the enrollment phase, the final
step of BRSKI, namely the enrollment status telemetry, is kept as it is.</t>

<t>The following list describes the components provided by
the vendor or manufacturer outside the target domain.</t>

<t><list style="symbols">
  <t>MASA: functionality as described in BRSKI <xref target="RFC8995"/>.
The voucher exchange with the MASA via the domain registrar
is performed as described in BRSKI.  <vspace blankLines='1'/>
Note: From the definition of the interaction with the MASA in
<xref section="5" sectionFormat="comma" target="RFC8995"/> follows that it may be synchronous (using voucher
request with nonces) or asynchronous (using nonceless voucher requests).</t>
  <t>Ownership tracker: as defined in BRSKI.</t>
</list></t>

<t>The following list describes backend target domain components,
which may be located on-site or off-site in the target domain.</t>

<t><list style="symbols">
  <t>RA: performs centralized certificate management functions
as a public-key infrastructure for the domain operator.
As far as not already done by the domain registrar, it performs the final
validation and authorization of certification requests.  Otherwise,
the RA co-located with the domain registrar directly connects to the CA.</t>
  <t>CA, also called domain CA: generates domain-specific certificates
according to certification requests that have been
authenticated and authorized by the registrar and/or an extra RA.</t>
</list></t>

<t>Based on the diagram in BRSKI <xref section="2.1" sectionFormat="comma" target="RFC8995"/> and the architectural
changes, the original protocol flow is divided into several phases
showing commonalities and differences to the original approach as follows.</t>

<t><list style="symbols">
  <t>Discovery phase: mostly as in BRSKI step (1). For details see <xref target="discovery"/>.</t>
  <t>Identification phase: same as in BRSKI step (2).</t>
  <t>Voucher exchange phase: same as in BRSKI steps (3) and (4).</t>
  <t>Voucher status telemetry: same as in BRSKI directly after step (4).</t>
  <t>Certificate enrollment phase: the use of EST in step (5) is changed
to employing a certificate enrollment protocol that uses
an authenticated self-contained object for requesting the LDevID certificate.  <vspace blankLines='1'/>
For transporting the certificate enrollment request and response messages, the   (D)TLS channel established between pledge and registrar is MANDATORY to use.
To this end, the enrollment protocol, the pledge, and the registrar need to support the use of this existing channel for certificate enrollment.
Due to this architecture, the pledge does not need to establish additional connections for certificate enrollment and the registrar retains full control over the certificate enrollment traffic.</t>
  <t>Enrollment status telemetry: the final exchange of BRSKI step (5).</t>
</list></t>

</section>
<section anchor="message_ex"><name>Message Exchange</name>

<t>The behavior of a pledge described in BRSKI <xref section="2.1" sectionFormat="comma" target="RFC8995"/>
is kept, with one major exception.
After finishing the Imprint step (4), the Enroll step (5) <bcp14>MUST</bcp14> be performed
with an enrollment protocol utilizing authenticated self-contained objects,
as explained in <xref target="req-sol"/>.
<!--
the certification request MUST be performed using an
authenticated self-contained object providing not only proof of possession
but also proof of identity (source authentication).
-->
<xref target="exist_prot"/> discusses selected suitable enrollment protocols
and options applicable.</t>

<t>An abstract overview of the BRSKI-AE protocol
can be found at <xref target="BRSKI-AE-overview"/>.</t>

<section anchor="discovery"><name>Pledge - Registrar Discovery</name>

<t>Discovery as specified in BRSKI <xref section="4" sectionFormat="comma" target="RFC8995"/> does not support
the discovery of registrars with enhanced feature sets.
A pledge can not find out in this way whether discovered registrars
support the certificate enrollment protocol it expects, such as CMP.</t>

<t>As a more general solution, the BRSKI discovery mechanism can be extended
to provide up-front information on the capabilities of registrars.
Future work such as <xref target="I-D.eckert-anima-brski-discovery"/> may provide this.</t>

<t>In the absence of such a generally applicable solution,
BRSKI-AE deployments may use their particular way of doing discovery.
<xref target="brski-cmp-instance"/> defines a minimalist approach that <bcp14>MAY</bcp14> be used for CMP.</t>

</section>
<section anchor="pledge-registrar-masa-voucher-exchange"><name>Pledge - Registrar - MASA Voucher Exchange</name>

<t>The voucher exchange is performed as specified in <xref target="RFC8995"/>.</t>

</section>
<section anchor="pledge-registrar-masa-voucher-status-telemetry"><name>Pledge - Registrar - MASA Voucher Status Telemetry</name>

<t>The voucher status telemetry is performed
as specified in <xref section="5.7" sectionFormat="comma" target="RFC8995"/>.</t>

</section>
<section anchor="pledge-registrar-raca-certificate-enrollment"><name>Pledge - Registrar - RA/CA Certificate Enrollment</name>

<t>This replaces the EST integration for PKI bootstrapping described in
<xref section="5.9" sectionFormat="comma" target="RFC8995"/>
(while <xref section="5.9.4" sectionFormat="comma" target="RFC8995"/> remains as the final phase, see below).</t>

<t>The certificate enrollment phase may involve the transmission of several messages.
Details can depend on the application scenario,
the employed enrollment protocol, and other factors.
<!-- <br>
In line with the generalizations described in {{architecture}},
It is RECOMMENDED to transfer these messages
via the channel established between the pledge and the registrar.
--></t>

<t>The only message exchange <bcp14>REQUIRED</bcp14> is for
the actual certification request and response.
Further message exchanges <bcp14>MAY</bcp14> be performed as needed.</t>

<t>Note:
The message exchanges marked <bcp14>OPTIONAL</bcp14> in the below <xref target="enrollfigure"/>
cover all those supported by the use of EST in BRSKI.
The last <bcp14>OPTIONAL</bcp14> one, namely certificate confirmation,
is not supported by EST, but by CMP and other enrollment protocols.</t>

<figure title="Certificate Enrollment" anchor="enrollfigure"><artset><artwork  type="svg" align="left"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="576" width="688" viewBox="0 0 688 576" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
<path d="M 8,32 L 8,96" fill="none" stroke="black"/>
<path d="M 48,104 L 48,560" fill="none" stroke="black"/>
<path d="M 80,32 L 80,96" fill="none" stroke="black"/>
<path d="M 328,32 L 328,96" fill="none" stroke="black"/>
<path d="M 384,104 L 384,560" fill="none" stroke="black"/>
<path d="M 432,32 L 432,96" fill="none" stroke="black"/>
<path d="M 576,32 L 576,96" fill="none" stroke="black"/>
<path d="M 640,104 L 640,560" fill="none" stroke="black"/>
<path d="M 680,32 L 680,96" fill="none" stroke="black"/>
<path d="M 8,32 L 80,32" fill="none" stroke="black"/>
<path d="M 328,32 L 432,32" fill="none" stroke="black"/>
<path d="M 576,32 L 680,32" fill="none" stroke="black"/>
<path d="M 8,96 L 80,96" fill="none" stroke="black"/>
<path d="M 328,96 L 432,96" fill="none" stroke="black"/>
<path d="M 576,96 L 680,96" fill="none" stroke="black"/>
<path d="M 56,144 L 120,144" fill="none" stroke="black"/>
<path d="M 304,144 L 376,144" fill="none" stroke="black"/>
<path d="M 392,176 L 424,176" fill="none" stroke="black"/>
<path d="M 576,176 L 632,176" fill="none" stroke="black"/>
<path d="M 392,192 L 424,192" fill="none" stroke="black"/>
<path d="M 584,192 L 632,192" fill="none" stroke="black"/>
<path d="M 56,208 L 120,208" fill="none" stroke="black"/>
<path d="M 312,208 L 376,208" fill="none" stroke="black"/>
<path d="M 56,272 L 120,272" fill="none" stroke="black"/>
<path d="M 312,272 L 376,272" fill="none" stroke="black"/>
<path d="M 392,304 L 424,304" fill="none" stroke="black"/>
<path d="M 584,304 L 632,304" fill="none" stroke="black"/>
<path d="M 392,320 L 424,320" fill="none" stroke="black"/>
<path d="M 592,320 L 632,320" fill="none" stroke="black"/>
<path d="M 56,336 L 120,336" fill="none" stroke="black"/>
<path d="M 320,336 L 376,336" fill="none" stroke="black"/>
<path d="M 56,384 L 120,384" fill="none" stroke="black"/>
<path d="M 344,384 L 376,384" fill="none" stroke="black"/>
<path d="M 392,416 L 416,416" fill="none" stroke="black"/>
<path d="M 608,416 L 632,416" fill="none" stroke="black"/>
<path d="M 392,432 L 416,432" fill="none" stroke="black"/>
<path d="M 616,432 L 632,432" fill="none" stroke="black"/>
<path d="M 56,448 L 120,448" fill="none" stroke="black"/>
<path d="M 352,448 L 376,448" fill="none" stroke="black"/>
<path d="M 56,496 L 120,496" fill="none" stroke="black"/>
<path d="M 328,496 L 376,496" fill="none" stroke="black"/>
<path d="M 392,528 L 424,528" fill="none" stroke="black"/>
<path d="M 600,528 L 632,528" fill="none" stroke="black"/>
<path d="M 392,544 L 424,544" fill="none" stroke="black"/>
<path d="M 536,544 L 632,544" fill="none" stroke="black"/>
<path d="M 56,560 L 120,560" fill="none" stroke="black"/>
<path d="M 344,560 L 376,560" fill="none" stroke="black"/>
<polygon class="arrowhead" points="640,528 628,522.4 628,533.6" fill="black" transform="rotate(0,632,528)"/>
<polygon class="arrowhead" points="640,416 628,410.4 628,421.6" fill="black" transform="rotate(0,632,416)"/>
<polygon class="arrowhead" points="640,304 628,298.4 628,309.6" fill="black" transform="rotate(0,632,304)"/>
<polygon class="arrowhead" points="640,176 628,170.4 628,181.6" fill="black" transform="rotate(0,632,176)"/>
<polygon class="arrowhead" points="400,544 388,538.4 388,549.6" fill="black" transform="rotate(180,392,544)"/>
<polygon class="arrowhead" points="400,432 388,426.4 388,437.6" fill="black" transform="rotate(180,392,432)"/>
<polygon class="arrowhead" points="400,320 388,314.4 388,325.6" fill="black" transform="rotate(180,392,320)"/>
<polygon class="arrowhead" points="400,192 388,186.4 388,197.6" fill="black" transform="rotate(180,392,192)"/>
<polygon class="arrowhead" points="384,496 372,490.4 372,501.6" fill="black" transform="rotate(0,376,496)"/>
<polygon class="arrowhead" points="384,384 372,378.4 372,389.6" fill="black" transform="rotate(0,376,384)"/>
<polygon class="arrowhead" points="384,272 372,266.4 372,277.6" fill="black" transform="rotate(0,376,272)"/>
<polygon class="arrowhead" points="384,144 372,138.4 372,149.6" fill="black" transform="rotate(0,376,144)"/>
<polygon class="arrowhead" points="64,560 52,554.4 52,565.6" fill="black" transform="rotate(180,56,560)"/>
<polygon class="arrowhead" points="64,448 52,442.4 52,453.6" fill="black" transform="rotate(180,56,448)"/>
<polygon class="arrowhead" points="64,336 52,330.4 52,341.6" fill="black" transform="rotate(180,56,336)"/>
<polygon class="arrowhead" points="64,208 52,202.4 52,213.6" fill="black" transform="rotate(180,56,208)"/>
<g class="text">
<text x="44" y="52">Pledge</text>
<text x="364" y="52">Domain</text>
<text x="620" y="52">Operator</text>
<text x="376" y="68">Registrar</text>
<text x="608" y="68">RA/CA</text>
<text x="368" y="84">(JRC)</text>
<text x="608" y="84">(PKI)</text>
<text x="104" y="132">[OPTIONAL</text>
<text x="176" y="132">request</text>
<text x="220" y="132">of</text>
<text x="244" y="132">CA</text>
<text x="312" y="132">certificates]</text>
<text x="140" y="148">CA</text>
<text x="176" y="148">Certs</text>
<text x="232" y="148">Request</text>
<text x="280" y="148">(1)</text>
<text x="440" y="164">[OPTIONAL</text>
<text x="528" y="164">forwarding]</text>
<text x="444" y="180">CA</text>
<text x="480" y="180">Certs</text>
<text x="536" y="180">Request</text>
<text x="444" y="196">CA</text>
<text x="480" y="196">Certs</text>
<text x="540" y="196">Response</text>
<text x="140" y="212">CA</text>
<text x="176" y="212">Certs</text>
<text x="236" y="212">Response</text>
<text x="288" y="212">(2)</text>
<text x="104" y="244">[OPTIONAL</text>
<text x="176" y="244">request</text>
<text x="220" y="244">of</text>
<text x="276" y="244">attributes</text>
<text x="84" y="260">to</text>
<text x="128" y="260">include</text>
<text x="172" y="260">in</text>
<text x="240" y="260">Certification</text>
<text x="332" y="260">Request]</text>
<text x="168" y="276">Attribute</text>
<text x="240" y="276">Request</text>
<text x="288" y="276">(3)</text>
<text x="440" y="292">[OPTIONAL</text>
<text x="528" y="292">forwarding]</text>
<text x="472" y="308">Attribute</text>
<text x="544" y="308">Request</text>
<text x="472" y="324">Attribute</text>
<text x="548" y="324">Response</text>
<text x="168" y="340">Attribute</text>
<text x="244" y="340">Response</text>
<text x="296" y="340">(4)</text>
<text x="104" y="372">[REQUIRED</text>
<text x="200" y="372">certification</text>
<text x="292" y="372">request]</text>
<text x="184" y="388">Certification</text>
<text x="272" y="388">Request</text>
<text x="320" y="388">(5)</text>
<text x="440" y="404">[OPTIONAL</text>
<text x="528" y="404">forwarding]</text>
<text x="480" y="420">Certification</text>
<text x="568" y="420">Request</text>
<text x="480" y="436">Certification</text>
<text x="572" y="436">Response</text>
<text x="184" y="452">Certification</text>
<text x="276" y="452">Response</text>
<text x="328" y="452">(6)</text>
<text x="104" y="484">[OPTIONAL</text>
<text x="192" y="484">certificate</text>
<text x="296" y="484">confirmation]</text>
<text x="176" y="500">Certificate</text>
<text x="256" y="500">Confirm</text>
<text x="304" y="500">(7)</text>
<text x="440" y="516">[OPTIONAL</text>
<text x="528" y="516">forwarding]</text>
<text x="480" y="532">Certificate</text>
<text x="560" y="532">Confirm</text>
<text x="448" y="548">PKI</text>
<text x="496" y="548">Confirm</text>
<text x="184" y="564">PKI/Registrar</text>
<text x="272" y="564">Confirm</text>
<text x="320" y="564">(8)</text>
</g>
</svg>
</artwork><artwork  type="ascii-art" align="left"><![CDATA[
+--------+                              +------------+                 +------------+
| Pledge |                              | Domain     |                 | Operator   |
|        |                              | Registrar  |                 | RA/CA      |
|        |                              |  (JRC)     |                 | (PKI)      |
+--------+                              +------------+                 +------------+
     |                                         |                               |
     |  [OPTIONAL request of CA certificates]  |                               |
     |--------- CA Certs Request (1) --------->|                               |
     |                                         |  [OPTIONAL forwarding]        |
     |                                         |----- CA Certs Request ------->|
     |                                         |<---- CA Certs Response -------|
     |<-------- CA Certs Response (2) ---------|                               |
     |                                         |                               |
     |  [OPTIONAL request of attributes        |                               |
     |   to include in Certification Request]  |                               |
     |--------- Attribute Request (3) -------->|                               |
     |                                         |  [OPTIONAL forwarding]        |
     |                                         |----- Attribute Request ------>|
     |                                         |<---- Attribute Response ------|
     |<-------- Attribute Response (4) --------|                               |
     |                                         |                               |
     |  [REQUIRED certification request]       |                               |
     |--------- Certification Request (5) ---->|                               |
     |                                         |  [OPTIONAL forwarding]        |
     |                                         |---- Certification Request --->|
     |                                         |<--- Certification Response ---|
     |<-------- Certification Response (6) ----|                               |
     |                                         |                               |
     |  [OPTIONAL certificate confirmation]    |                               |
     |--------- Certificate Confirm (7) ------>|                               |
     |                                         |  [OPTIONAL forwarding]        |
     |                                         |----- Certificate Confirm ---->|
     |                                         |<---- PKI Confirm -------------|
     |<-------- PKI/Registrar Confirm (8) -----|                               |
]]></artwork></artset></figure>

<t>It may be noted that connections between the registrar and the PKI components
of the operator (RA, CA, etc.) may be intermittent or off-line.
Messages should be sent as soon as sufficient transfer capacity is available.</t>

<t>The label <spanx style="verb">[OPTIONAL forwarding]</spanx> in <xref target="enrollfigure"/>
means that on receiving from a pledge a request message of the given type,
the registrar <bcp14>MAY</bcp14> answer the request directly.
In this case, it <bcp14>MUST</bcp14> authenticate its responses with the same credentials
as used for authenticating itself at the TLS level for the voucher exchange.
Otherwise, the registrar <bcp14>MUST</bcp14> forward the request to the RA
and forward any resulting response back to the pledge.</t>

<t>The decision of whether to forward a request or to answer it directly can depend
on various static and dynamic factors. They include the application scenario,
the capabilities of the registrar and of the local RA possibly co-located
with the registrar, the enrollment protocol being used, and the specific
contents of the request.</t>

<t>Note that
there are several options for how the registrar could be able to directly answer
requests for CA certificates or for certification request attributes.
It could cache responses obtained from the domain PKI and
later use their contents for responding to requests asking for the same data.
The contents could also be explicitly provisioned at the registrar.</t>

<t>Further note that
certification requests typically need to be handled by the backend PKI,
but the registrar can answer them directly with an error response
in case it determines that such a request should be rejected,
for instance, because is not properly authenticated or not authorized.<!--br-->
Also, certificate confirmation messages
will usually be forwarded to the backend PKI,
but if the registrar knows that they are not needed or wanted there
it can acknowledge such messages directly.</t>

<t>The following list provides an abstract description of the flow
depicted in <xref target="enrollfigure"/>.</t>

<t><list style="symbols">
  <t>CA Certs Request (1): The pledge optionally requests the latest relevant
CA certificates. This ensures that the pledge has the
complete set of current CA certificates beyond the
pinned-domain-cert (which is contained in the voucher
and which may be just the domain registrar certificate).</t>
  <t>CA Certs Response (2): This <bcp14>MUST</bcp14> contain any intermediate CA certificates
that the pledge may need to validate certificates
and <bcp14>MAY</bcp14> contain the LDevID trust anchor.</t>
  <t>Attribute Request (3): Typically, the automated bootstrapping occurs
without local administrative configuration of the pledge.
Nevertheless, there are cases in which the pledge may also
include in the Certification Request (5) additional attributes that are
specific to the target domain. To get these attributes in
advance, the attribute request may be used.</t>
  <t>Attribute Response (4): This <bcp14>MUST</bcp14> contain the attributes requested in (3)
to be included in the subsequent Certification Request (5).  <vspace blankLines='1'/>
For example, <xref section="6.11.7.2" sectionFormat="comma" target="RFC8994"/> specifies
how the attribute request is used to signal to the pledge
the acp-node-name field required for enrollment into an ACP domain.</t>
  <t>Certification Request (5): This <bcp14>MUST</bcp14> contain the
authenticated self-contained object ensuring both the proof of possession of
the corresponding private key and the proof of identity of the requester.</t>
  <t>Certification Response (6): This <bcp14>MUST</bcp14> contain on success
the requested certificate and <bcp14>MAY</bcp14> include further information,
like certificates of intermediate CAs and any additional trust anchors.</t>
  <t>Certificate Confirm (7): An optional confirmation sent
after the requested certificate has been received and validated.
If sent, it <bcp14>MUST</bcp14> contain a positive or negative confirmation by the pledge to
the PKI whether the certificate was successfully enrolled and fits its needs.</t>
  <t>PKI/Registrar Confirm (8): An acknowledgment by the PKI
that <bcp14>MUST</bcp14> be sent on reception of the Certificate Confirm.</t>
</list></t>

<t>The generic messages described above may be implemented using any certificate
enrollment protocol that supports authenticated self-contained objects for the
certification request as described in <xref target="req-sol"/>.
Examples are available in <xref target="exist_prot"/>.</t>

<t>Note that the optional certificate confirmation by the pledge to the PKI
described above is independent of the mandatory enrollment status telemetry
done between the pledge and the registrar in the final phase of BRSKI-AE,
described next.</t>

</section>
<section anchor="pledge-registrar-enrollment-status-telemetry"><name>Pledge - Registrar Enrollment Status Telemetry</name>

<t>The enrollment status telemetry is performed
as specified in <xref section="5.9.4" sectionFormat="comma" target="RFC8995"/>.</t>

<t>In BRSKI this is described as part of the certificate enrollment step, but
due to the generalization on the enrollment protocol described in this document
it is regarded as a separate phase here.</t>

</section>
</section>
<section anchor="addressing"><name>Enhancements to the Endpoint Addressing Scheme of BRSKI</name>

<t>BRSKI-AE provides generalizations to the addressing scheme defined in
BRSKI <xref section="5" sectionFormat="comma" target="RFC8995"/> to accommodate alternative enrollment protocols
that use authenticated self-contained objects for certification requests.
In existing RAs/CAs supporting such an enrollment protocol (see also
<xref target="exist_prot"/>), these generalizations can be employed without modifications.</t>

<t>The addressing scheme in BRSKI for certification requests and
the related CA certificates and CSR attributes retrieval functions
uses the definition from EST <xref target="RFC7030"/>.
Here is the example of simple enrollment: <spanx style="verb">"/.well-known/est/simpleenroll"</spanx>.
This approach is generalized to the following notation:
<spanx style="verb">"/.well-known/&lt;enrollment-protocol&gt;/&lt;request&gt;"</spanx>
in which <spanx style="verb">&lt;enrollment-protocol&gt;</spanx> refers to a certificate enrollment protocol.
Note that enrollment is considered here a message sequence
that contains at least a certification request and a certification response.
The following conventions are used to provide maximal compatibility with BRSKI:</t>

<t><list style="symbols">
  <t><spanx style="verb">&lt;enrollment-protocol&gt;</spanx>: <bcp14>MUST</bcp14> reference the protocol being used.
Existing values include '<spanx style="verb">est</spanx>' <xref target="RFC7030"/> as in BRSKI and '<spanx style="verb">cmp</spanx>' as in
<xref target="RFC9483"/> and <xref target="brski-cmp-instance"/> below.
Values for other existing protocols such as CMC and SCEP,
as well as for newly defined protocols are outside the scope of this document.
For use of the <spanx style="verb">&lt;enrollment-protocol&gt;</spanx> and <spanx style="verb">&lt;request&gt;</spanx> URI components,
they would need to be specified in a suitable RFC and
placed into the Well-Known URIs registry, just as EST in <xref target="RFC7030"/>.</t>
  <t><spanx style="verb">&lt;request&gt;</spanx>: if present, this path component <bcp14>MUST</bcp14> describe,
depending on the enrollment protocol being used, the operation requested.
Enrollment protocols are expected to define their request endpoints,
as done by existing protocols (see also <xref target="exist_prot"/>).</t>
</list></t>

<!-- ## Domain Registrar Support of Alternative Enrollment Protocols -->

<t>Well-known URIs for various endpoints on the domain registrar are
already defined as part of the base BRSKI specification or indirectly by EST.
In addition, alternative enrollment endpoints <bcp14>MAY</bcp14> be supported by the registrar.</t>

<t>A pledge <bcp14>SHOULD</bcp14> use the endpoints defined for the enrollment protocol(s)
that it can use.
It will recognize whether the protocol it uses and the specific request it wants
to perform are understood and supported by the domain registrar
by sending the request to the respective endpoint according to the above
addressing scheme and then evaluating the HTTP status code of the response.
If the pledge uses endpoints that are not standardized,
it risks that the registrar does not recognize a request and thus may reject it,
even if the registrar supports the intended protocol and operation.</t>

<t>The following list of endpoints provides an illustrative example of
a domain registrar supporting several options for EST as well as for
CMP to be used in BRSKI-AE. The listing contains the supported
endpoints to which the pledge may connect for bootstrapping. This
includes the voucher handling as well as the enrollment endpoints.
The CMP-related enrollment endpoints are defined as well-known URIs
in CMP Updates <xref target="RFC9480"/> and the Lightweight CMP Profile <xref target="RFC9483"/>.</t>

<figure><artwork align="left"><![CDATA[
  /.well-known/brski/voucherrequest
  /.well-known/brski/voucher_status
  /.well-known/brski/enrollstatus
  /.well-known/est/cacerts
  /.well-known/est/csrattrs
  /.well-known/est/fullcmc
  /.well-known/cmp/getcacerts
  /.well-known/cmp/getcertreqtemplate
  /.well-known/cmp/initialization
  /.well-known/cmp/pkcs10
]]></artwork></figure>

</section>
</section>
<section anchor="exist_prot"><name>Instantiation with Existing Enrollment Protocols</name>

<t>This section maps the generic requirements to support proof of possession
and proof of identity to selected existing certificate enrollment protocols
and specifies further aspects of using such enrollment protocols in BRSKI-AE.</t>

<section anchor="brski-cmp-instance"><name>BRSKI-CMP: BRSKI-AE instantiated with CMP</name>

<t>Instead of referring to CMP
as specified in <xref target="RFC4210"/> and <xref target="RFC9480"/>,
this document refers to the Lightweight CMP Profile (LCMPP)
<xref target="RFC9483"/> because
the subset of CMP defined there is sufficient for the functionality needed here.</t>

<t>When using CMP, adherence to
the LCMPP <xref target="RFC9483"/> is <bcp14>REQUIRED</bcp14>.
In particular, the following specific requirements apply (cf. <xref target="enrollfigure"/>).</t>

<t><list style="symbols">
  <t>CA Certs Request (1) and Response (2):<br />
Requesting CA certificates is <bcp14>OPTIONAL</bcp14>.<br />
If supported, it <bcp14>SHALL</bcp14> be implemented as specified in
<xref section="4.3.1" sectionFormat="comma" target="RFC9483"/>.</t>
  <t>Attribute Request (3) and Response (4):<br />
Requesting certification request attributes is <bcp14>OPTIONAL</bcp14>.<br />
If supported, it <bcp14>SHALL</bcp14> be implemented as specified in
<xref section="4.3.3" sectionFormat="comma" target="RFC9483"/>.  <vspace blankLines='1'/>
Alternatively, the registrar <bcp14>MAY</bcp14> modify
the contents of the requested certificate contents
as specified in <xref section="5.2.3.2" sectionFormat="comma" target="RFC9483"/>.</t>
  <t>Certification Request (5) and Response (6):<br />
Certificates <bcp14>SHALL</bcp14> be requested and provided
as specified in the LCMPP
<xref section="4.1.1" sectionFormat="comma" target="RFC9483"/> (based on CRMF) or
<xref section="4.1.4" sectionFormat="comma" target="RFC9483"/> (based on PKCS #10).  <vspace blankLines='1'/>
Proof of possession <bcp14>SHALL</bcp14> be provided in a way suitable for the key type.
Proof of identity <bcp14>SHALL</bcp14> be provided by signature-based
protection of the certification request message
as outlined in <xref section="3.2" sectionFormat="comma" target="RFC9483"/>
using the IDevID secret.  <vspace blankLines='1'/>
When the registrar forwards a certification request by the pledge to
a backend RA/CA, the registrar is <bcp14>RECOMMENDED</bcp14> to wrap the original
certification request in a nested message signed with its own credentials
as described in <xref section="5.2.2.1" sectionFormat="comma" target="RFC9483"/>.
This explicitly conveys the consent by the registrar to the RA
while retaining the original certification request message
with its proof of origin provided by the pledge signature.  <vspace blankLines='1'/>
In case additional trust anchors (besides the pinned-domain-cert)
need to be conveyed to the pledge,
this <bcp14>SHOULD</bcp14> be done in the <spanx style="verb">caPubs</spanx> field of the certification response
rather than in a CA Certs Response.</t>
  <t>Certificate Confirm (7) and PKI/Registrar Confirm (8):<br />
Explicit confirmation of new certificates to the RA/CA
<bcp14>MAY</bcp14> be used as specified in
<xref section="4.1.1" sectionFormat="comma" target="RFC9483"/>.  <vspace blankLines='1'/>
Note that independently of the certificate confirmation within CMP,
enrollment status telemetry with the registrar at BRSKI level will be performed
as described in <xref section="5.9.4" sectionFormat="comma" target="RFC8995"/>.</t>
  <t>If delayed delivery of CMP messages is needed
(for instance, to support enrollment over an asynchronous channel),
it <bcp14>SHALL</bcp14> be performed as specified in
Section <xref target="RFC9483" section="4.4" sectionFormat="bare"/> and Section <xref target="RFC9483" section="5.1.2" sectionFormat="bare"/> of <xref target="RFC9483"/>.</t>
</list></t>

<t>How messages are exchanged between the registrar and backend PKI
components (i.e., RA and/or CA) is out of scope of this document.
Since CMP is independent of message transfer, the mechanism for this exchange
can be freely chosen according to the needs of the application scenario.
For the applicable security considerations, see <xref target="sec-consider"/>.
Further guidance can be found in <xref section="6" sectionFormat="comma" target="RFC9483"/>.</t>

<!--
CMP Updates {{RFC9480}} and
the LCMPP {{RFC9483}}
provide requirements for interoperability.
-->

<t>BRSKI-AE with CMP can also be combined with
Constrained BRSKI <xref target="I-D.ietf-anima-constrained-voucher"/>,
using CoAP for enrollment message transport as described by
CoAP Transport for CMP <xref target="RFC9482"/>.
In this scenario, the EST-specific parts
of <xref target="I-D.ietf-anima-constrained-voucher"/> do not apply.</t>

<t>For BRSKI-AE scenarios where a general solution (cf. <xref target="discovery"/>)
for discovering registrars with CMP support is not available,
the following minimalist approach <bcp14>MAY</bcp14> be used.
Perform discovery as defined in BRSKI <xref section="B" sectionFormat="comma" target="RFC8995"/> but using
the service name <spanx style="verb">"brski-registrar-cmp"</spanx> (defined in <xref target="iana-consider"/>)
instead of <spanx style="verb">"brski-registrar"</spanx> (defined in <xref section="8.6" sectionFormat="comma" target="RFC8995"/>).
Note that this approach does not support join proxies.</t>

</section>
<section anchor="support-of-other-enrollment-protocols"><name>Support of Other Enrollment Protocols</name>

<t>Further instantiations of BRSKI-AE can be done.  They are left for future work.</t>

<t>In particular, CMC <xref target="RFC5272"/> (using its in-band source authentication options)
and SCEP <xref target="RFC8894"/> (using its 'renewal' option) could be used.</t>

<t>The fullCMC variant of EST sketched in <xref section="2.5" sectionFormat="comma" target="RFC7030"/>
might also be used here. For EST-fullCMC further specification is necessary.
<!--
Yet most likely it will not be followed up
because, by now, no implementations of this EST variant are known,
and no reasons are known why it could be preferable over using BRSKI-CMP.
--></t>

<!--
 ## BRSKI-EST-fullCMC: Application to EST

When using EST {{RFC7030}}, the following aspects and constraints
need to be considered and the given extra requirements need to be fulfilled,
which adapt BRSKI {{RFC8995, Section 5.9.3}}:

* Proof of possession is provided typically by using the specified PKCS #10
  structure in the request.
  Together with Full PKI requests, also CRMF can be used.

* Proof of identity needs to be achieved by signing the certification request
  object using the Full PKI Request option (including the /fullcmc endpoint).
  This provides sufficient information for the RA to authenticate the pledge
  as the origin of the request and to make an authorization decision on the
  received certification request.
  Note:
  EST references CMC {{RFC5272}} for the definition of the Full PKI Request.
  For proof of identity, the signature of the SignedData of the Full PKI Request
  is performed using the IDevID secret of the pledge.  The data signed
  must include include a sufficiently strong identifier of the pledge,
  e.g, the subject of its IDevID certificate.

  Note:
  In this case the binding to the underlying TLS channel is not necessary.

* When the RA is temporarily not available, as per {{RFC7030, Section 4.2.3}},
  an HTTP status code 202 should be returned by the registrar,
  and the pledge will repeat the initial Full PKI Request later.
-->

<!--
Note that the work in the ACE WG described in
{{draft-selander-ace-coap-est-oscore}} may be considered here as well,
as it also addresses the encapsulation of EST in a way that
makes it independent of the underlying TLS channel using OSCORE,
which also entails that authenticated self-contained objects are used.
-->

</section>
</section>
<section anchor="iana-consider"><name>IANA Considerations</name>

<t>This document requires one IANA action: register in the
<eref target="https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml">Service Name and Transport Protocol Port Number Registry</eref>
the following service name.</t>

<t><strong>Service Name:</strong> brski-registrar-cmp<br />
<strong>Transport Protocol(s):</strong> tcp<br />
<strong>Assignee:</strong> IESG <eref target="mailto:iesg@ietf.org">iesg@ietf.org</eref><br />
<strong>Contact:</strong> IESG <eref target="mailto:iesg@ietf.org">iesg@ietf.org</eref><br />
<strong>Description:</strong> Bootstrapping Remote Secure Key Infrastructure registrar with
CMP capabilities according to the Lightweight CMP Profile (LCMPP, <xref target="RFC9483"/>)<br />
<strong>Reference:</strong> [THISRFC]</t>

<t>Note:
We chose here the suffix "cmp" rather than some other abbreviation like "lcmpp"
mainly because this document defines the normative CMP instantiation of
BRSKI-AE, which implies adherence to LCMPP is necessary and sufficient.</t>

</section>
<section anchor="sec-consider"><name>Security Considerations</name>

<t>The security considerations  laid out in BRSKI <xref target="RFC8995"/> apply to the
discovery and voucher exchange as well as for the status exchange information.</t>

<t>In particular,
even if the registrar delegates part or all of its RA role
during certificate enrollment to a separate system,
it still must be made sure that the registrar takes part in the decision
on accepting or declining a request to join the domain,
as required in <xref section="5.3" sectionFormat="comma" target="RFC8995"/>.
As this pertains also to obtaining a valid domain-specific certificate,
it must be made sure that a pledge can not circumvent the registrar
in the decision of whether it is granted an LDevID certificate by the CA.
There are various ways how to fulfill this, including:</t>

<t><list style="symbols">
  <t>implicit consent</t>
  <t>the registrar signals its consent to the RA out-of-band before or during
the enrollment phase, for instance by entering the pledge identity in a database.</t>
  <t>the registrar provides its consent using an extra message that is transferred
on the same channel as the enrollment messages, possibly in a TLS tunnel.</t>
  <t>the registrar explicitly states its consent by signing, in addition to the pledge,
the authenticated self-contained certificate enrollment request message.</t>
</list></t>

<t>Note: If EST was used, the registrar could give implicit consent on a
certification request by forwarding the request to a PKI entity using a
connection authenticated with a certificate containing an id-kp-cmcRA extension.</t>

<t>When CMP is used, the security considerations laid out in the
LCMPP <xref target="RFC9483"/> apply.</t>

<t>Note that CMP messages are not encrypted.
This may give eavesdroppers insight into which devices are bootstrapped into the
domain, and this in turn might also be used to selectively block the enrollment
of certain devices.
To prevent this, the underlying message transport channel can be encrypted.
This is already provided by TLS between the pledge and the registrar, and
for the onward exchange with backend systems, encryption may need to be added.</t>

</section>
<section anchor="acknowledgments"><name>Acknowledgments</name>

<t>We thank Eliot Lear
for his contributions as a co-author at an earlier draft stage.</t>

<t>We thank Brian E. Carpenter, Michael Richardson, and Giorgio Romanenghi
for their input and discussion on use cases and call flows.</t>

<t>Moreover,
we thank Toerless Eckert (document shepherd),
Barry Leiba (SECdir review),
Mahesh Jethanandani (IETF area director),
Meral Shirazipour (Gen-ART reviewer),
Michael Richardson (ANIMA design team member),
as well as Rajeev Ranjan, Rufus Buschart,
Andreas Reiter, and Szofia Fazekas-Zisch (Siemens colleagues)
for their reviews with suggestions for improvements.</t>

</section>


  </middle>

  <back>


    <references title='Normative References' anchor="sec-normative-references">



<reference anchor="RFC5280">
  <front>
    <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
    <author fullname="D. Cooper" initials="D." surname="Cooper"/>
    <author fullname="S. Santesson" initials="S." surname="Santesson"/>
    <author fullname="S. Farrell" initials="S." surname="Farrell"/>
    <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
    <author fullname="R. Housley" initials="R." surname="Housley"/>
    <author fullname="W. Polk" initials="W." surname="Polk"/>
    <date month="May" year="2008"/>
    <abstract>
      <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5280"/>
  <seriesInfo name="DOI" value="10.17487/RFC5280"/>
</reference>

<reference anchor="RFC8995">
  <front>
    <title>Bootstrapping Remote Secure Key Infrastructure (BRSKI)</title>
    <author fullname="M. Pritikin" initials="M." surname="Pritikin"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <author fullname="T. Eckert" initials="T." surname="Eckert"/>
    <author fullname="M. Behringer" initials="M." surname="Behringer"/>
    <author fullname="K. Watsen" initials="K." surname="Watsen"/>
    <date month="May" year="2021"/>
    <abstract>
      <t>This document specifies automated bootstrapping of an Autonomic Control Plane. To do this, a Secure Key Infrastructure is bootstrapped. This is done using manufacturer-installed X.509 certificates, in combination with a manufacturer's authorizing service, both online and offline. We call this process the Bootstrapping Remote Secure Key Infrastructure (BRSKI) protocol. Bootstrapping a new device can occur when using a routable address and a cloud service, only link-local connectivity, or limited/disconnected networks. Support for deployment models with less stringent security requirements is included. Bootstrapping is complete when the cryptographic identity of the new key infrastructure is successfully deployed to the device. The established secure connection can be used to deploy a locally issued certificate to the device as well.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8995"/>
  <seriesInfo name="DOI" value="10.17487/RFC8995"/>
</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="IEEE_802.1AR-2018" target="https://ieeexplore.ieee.org/document/8423794">
  <front>
    <title>IEEE Standard for Local and Metropolitan Area Networks - Secure Device Identity</title>
    <author >
      <organization>IEEE</organization>
    </author>
    <date year="2018" month="August"/>
  </front>
  <seriesInfo name="IEEE" value="802.1AR-2018"/>
  <seriesInfo name="DOI" value="10.1109/IEEESTD.2018.8423794"/>
</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 title='Informative References' anchor="sec-informative-references">




<reference anchor="I-D.ietf-anima-constrained-voucher">
   <front>
      <title>Constrained Bootstrapping Remote Secure Key Infrastructure (cBRSKI)</title>
      <author fullname="Michael Richardson" initials="M." surname="Richardson">
         <organization>Sandelman Software Works</organization>
      </author>
      <author fullname="Peter Van der Stok" initials="P." surname="Van der Stok">
         <organization>vanderstok consultancy</organization>
      </author>
      <author fullname="Panos Kampanakis" initials="P." surname="Kampanakis">
         <organization>Cisco Systems</organization>
      </author>
      <author fullname="Esko Dijk" initials="E." surname="Dijk">
         <organization>IoTconsultancy.nl</organization>
      </author>
      <date day="3" month="March" year="2024"/>
      <abstract>
	 <t>   This document defines the Constrained Bootstrapping Remote Secure Key
   Infrastructure (cBRSKI) protocol, which provides a solution for
   secure zero-touch onboarding of resource-constrained (IoT) devices
   into the network of a domain owner.  This protocol is designed for
   constrained networks, which may have limited data throughput or may
   experience frequent packet loss. cBRSKI is a variant of the BRSKI
   protocol, which uses an artifact signed by the device manufacturer
   called the &quot;voucher&quot; which enables a new device and the owner&#x27;s
   network to mutually authenticate.  While the BRSKI voucher data is
   encoded in JSON, cBRSKI uses a compact CBOR-encoded voucher.  The
   BRSKI voucher data definition is extended with new data types that
   allow for smaller voucher sizes.  The Enrollment over Secure
   Transport (EST) protocol, used in BRSKI, is replaced with EST-over-
   CoAPS; and HTTPS used in BRSKI is replaced with DTLS-secured CoAP
   (CoAPS).  This document Updates RFC 8995 and RFC 9148.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-anima-constrained-voucher-24"/>
   
</reference>


<reference anchor="BRSKI-AE-overview" >
  <front>
    <title>BRSKI-AE Protocol Overview</title>
    <author initials="" surname="S.&nbsp;Fries" fullname="S.&nbsp;Fries">
      <organization></organization>
    </author>
    <author initials="D." surname="von&nbsp;Oheimb">
      <organization></organization>
    </author>
    <date year="2023" month="March"/>
  </front>
  <format type="PDF" target="https://datatracker.ietf.org/meeting/116/materials/slides-116-anima-update-on-brski-ae-alternative-enrollment-protocols-in-brski-00"/>
<annotation>Graphics on slide 4 of the status update on the BRSKI-AE draft 04 at IETF 116.</annotation></reference>


<reference anchor="RFC2986">
  <front>
    <title>PKCS #10: Certification Request Syntax Specification Version 1.7</title>
    <author fullname="M. Nystrom" initials="M." surname="Nystrom"/>
    <author fullname="B. Kaliski" initials="B." surname="Kaliski"/>
    <date month="November" year="2000"/>
    <abstract>
      <t>This memo represents a republication of PKCS #10 v1.7 from RSA Laboratories' Public-Key Cryptography Standards (PKCS) series, and change control is retained within the PKCS process. The body of this document, except for the security considerations section, is taken directly from the PKCS #9 v2.0 or the PKCS #10 v1.7 document. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2986"/>
  <seriesInfo name="DOI" value="10.17487/RFC2986"/>
</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="RFC4211">
  <front>
    <title>Internet X.509 Public Key Infrastructure Certificate Request Message Format (CRMF)</title>
    <author fullname="J. Schaad" initials="J." surname="Schaad"/>
    <date month="September" year="2005"/>
    <abstract>
      <t>This document describes the Certificate Request Message Format (CRMF) syntax and semantics. This syntax is used to convey a request for a certificate to a Certification Authority (CA), possibly via a Registration Authority (RA), for the purposes of X.509 certificate production. The request will typically include a public key and the associated registration information. This document does not define a certificate request protocol. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4211"/>
  <seriesInfo name="DOI" value="10.17487/RFC4211"/>
</reference>

<reference anchor="RFC5272">
  <front>
    <title>Certificate Management over CMS (CMC)</title>
    <author fullname="J. Schaad" initials="J." surname="Schaad"/>
    <author fullname="M. Myers" initials="M." surname="Myers"/>
    <date month="June" year="2008"/>
    <abstract>
      <t>This document defines the base syntax for CMC, a Certificate Management protocol using the Cryptographic Message Syntax (CMS). This protocol addresses two immediate needs within the Internet Public Key Infrastructure (PKI) community:</t>
      <t>1. The need for an interface to public key certification products and services based on CMS and PKCS #10 (Public Key Cryptography Standard), and</t>
      <t>2. The need for a PKI enrollment protocol for encryption only keys due to algorithm or hardware design.</t>
      <t>CMC also requires the use of the transport document and the requirements usage document along with this document for a full definition. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5272"/>
  <seriesInfo name="DOI" value="10.17487/RFC5272"/>
</reference>

<reference anchor="RFC5652">
  <front>
    <title>Cryptographic Message Syntax (CMS)</title>
    <author fullname="R. Housley" initials="R." surname="Housley"/>
    <date month="September" year="2009"/>
    <abstract>
      <t>This document describes the Cryptographic Message Syntax (CMS). This syntax is used to digitally sign, digest, authenticate, or encrypt arbitrary message content. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="70"/>
  <seriesInfo name="RFC" value="5652"/>
  <seriesInfo name="DOI" value="10.17487/RFC5652"/>
</reference>

<reference anchor="RFC5929">
  <front>
    <title>Channel Bindings for TLS</title>
    <author fullname="J. Altman" initials="J." surname="Altman"/>
    <author fullname="N. Williams" initials="N." surname="Williams"/>
    <author fullname="L. Zhu" initials="L." surname="Zhu"/>
    <date month="July" year="2010"/>
    <abstract>
      <t>This document defines three channel binding types for Transport Layer Security (TLS), tls-unique, tls-server-end-point, and tls-unique-for-telnet, in accordance with RFC 5056 (On Channel Binding).</t>
      <t>Note that based on implementation experience, this document changes the original definition of 'tls-unique' channel binding type in the channel binding type IANA registry. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5929"/>
  <seriesInfo name="DOI" value="10.17487/RFC5929"/>
</reference>

<reference anchor="RFC6955">
  <front>
    <title>Diffie-Hellman Proof-of-Possession Algorithms</title>
    <author fullname="J. Schaad" initials="J." surname="Schaad"/>
    <author fullname="H. Prafullchandra" initials="H." surname="Prafullchandra"/>
    <date month="May" year="2013"/>
    <abstract>
      <t>This document describes two methods for producing an integrity check value from a Diffie-Hellman key pair and one method for producing an integrity check value from an Elliptic Curve key pair. This behavior is needed for such operations as creating the signature of a Public-Key Cryptography Standards (PKCS) #10 Certification Request. These algorithms are designed to provide a Proof-of-Possession of the private key and not to be a general purpose signing algorithm.</t>
      <t>This document obsoletes RFC 2875.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6955"/>
  <seriesInfo name="DOI" value="10.17487/RFC6955"/>
</reference>

<reference anchor="RFC7030">
  <front>
    <title>Enrollment over Secure Transport</title>
    <author fullname="M. Pritikin" initials="M." role="editor" surname="Pritikin"/>
    <author fullname="P. Yee" initials="P." role="editor" surname="Yee"/>
    <author fullname="D. Harkins" initials="D." role="editor" surname="Harkins"/>
    <date month="October" year="2013"/>
    <abstract>
      <t>This document profiles certificate enrollment for clients using Certificate Management over CMS (CMC) messages over a secure transport. This profile, called Enrollment over Secure Transport (EST), describes a simple, yet functional, certificate management protocol targeting Public Key Infrastructure (PKI) clients that need to acquire client certificates and associated Certification Authority (CA) certificates. It also supports client-generated public/private key pairs as well as key pairs generated by the CA.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7030"/>
  <seriesInfo name="DOI" value="10.17487/RFC7030"/>
</reference>

<reference anchor="RFC8366">
  <front>
    <title>A Voucher Artifact for Bootstrapping Protocols</title>
    <author fullname="K. Watsen" initials="K." surname="Watsen"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <author fullname="M. Pritikin" initials="M." surname="Pritikin"/>
    <author fullname="T. Eckert" initials="T." surname="Eckert"/>
    <date month="May" year="2018"/>
    <abstract>
      <t>This document defines a strategy to securely assign a pledge to an owner using an artifact signed, directly or indirectly, by the pledge's manufacturer. This artifact is known as a "voucher".</t>
      <t>This document defines an artifact format as a YANG-defined JSON document that has been signed using a Cryptographic Message Syntax (CMS) structure. Other YANG-derived formats are possible. The voucher artifact is normally generated by the pledge's manufacturer (i.e., the Manufacturer Authorized Signing Authority (MASA)).</t>
      <t>This document only defines the voucher artifact, leaving it to other documents to describe specialized protocols for accessing it.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8366"/>
  <seriesInfo name="DOI" value="10.17487/RFC8366"/>
</reference>

<reference anchor="RFC8894">
  <front>
    <title>Simple Certificate Enrolment Protocol</title>
    <author fullname="P. Gutmann" initials="P." surname="Gutmann"/>
    <date month="September" year="2020"/>
    <abstract>
      <t>This document specifies the Simple Certificate Enrolment Protocol (SCEP), a PKI protocol that leverages existing technology by using Cryptographic Message Syntax (CMS, formerly known as PKCS #7) and PKCS #10 over HTTP. SCEP is the evolution of the enrolment protocol sponsored by Cisco Systems, which enjoys wide support in both client and server implementations, as well as being relied upon by numerous other industry standards that work with certificates.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8894"/>
  <seriesInfo name="DOI" value="10.17487/RFC8894"/>
</reference>

<reference anchor="RFC8994">
  <front>
    <title>An Autonomic Control Plane (ACP)</title>
    <author fullname="T. Eckert" initials="T." role="editor" surname="Eckert"/>
    <author fullname="M. Behringer" initials="M." role="editor" surname="Behringer"/>
    <author fullname="S. Bjarnason" initials="S." surname="Bjarnason"/>
    <date month="May" year="2021"/>
    <abstract>
      <t>Autonomic functions need a control plane to communicate, which depends on some addressing and routing. This Autonomic Control Plane should ideally be self-managing and be as independent as possible of configuration. This document defines such a plane and calls it the "Autonomic Control Plane", with the primary use as a control plane for autonomic functions. It also serves as a "virtual out-of-band channel" for Operations, Administration, and Management (OAM) communications over a network that provides automatically configured, hop-by-hop authenticated and encrypted communications via automatically configured IPv6 even when the network is not configured or is misconfigured.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8994"/>
  <seriesInfo name="DOI" value="10.17487/RFC8994"/>
</reference>

<reference anchor="RFC9148">
  <front>
    <title>EST-coaps: Enrollment over Secure Transport with the Secure Constrained Application Protocol</title>
    <author fullname="P. van der Stok" initials="P." surname="van der Stok"/>
    <author fullname="P. Kampanakis" initials="P." surname="Kampanakis"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <author fullname="S. Raza" initials="S." surname="Raza"/>
    <date month="April" year="2022"/>
    <abstract>
      <t>Enrollment over Secure Transport (EST) is used as a certificate provisioning protocol over HTTPS. Low-resource devices often use the lightweight Constrained Application Protocol (CoAP) for message exchanges. This document defines how to transport EST payloads over secure CoAP (EST-coaps), which allows constrained devices to use existing EST functionality for provisioning certificates.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9148"/>
  <seriesInfo name="DOI" value="10.17487/RFC9148"/>
</reference>

<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="RFC9482">
  <front>
    <title>Constrained Application Protocol (CoAP) Transfer for the Certificate Management Protocol</title>
    <author fullname="M. Sahni" initials="M." role="editor" surname="Sahni"/>
    <author fullname="S. Tripathi" initials="S." role="editor" surname="Tripathi"/>
    <date month="November" year="2023"/>
    <abstract>
      <t>This document specifies the use of the Constrained Application Protocol (CoAP) as a transfer mechanism for the Certificate Management Protocol (CMP). CMP defines the interaction between various PKI entities for the purpose of certificate creation and management. CoAP is an HTTP-like client-server protocol used by various constrained devices in the Internet of Things space.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9482"/>
  <seriesInfo name="DOI" value="10.17487/RFC9482"/>
</reference>


<reference anchor="IEC-62351-9" >
  <front>
    <title>IEC 62351 - Power systems management and associated information exchange - Data and communications security - Part 9: Cyber security key management for power system equipment</title>
    <author >
      <organization>International Electrotechnical Commission</organization>
    </author>
    <date year="2017" month="May"/>
  </front>
  <seriesInfo name="IEC" value="62351-9 "/>
</reference>
<reference anchor="NERC-CIP-005-5" >
  <front>
    <title>Cyber Security - Electronic Security Perimeter</title>
    <author >
      <organization>North American Reliability Council</organization>
    </author>
    <date year="2013" month="December"/>
  </front>
  <seriesInfo name="CIP" value="005-5"/>
</reference>
<reference anchor="ISO-IEC-15118-2" >
  <front>
    <title>ISO/IEC 15118-2 Road vehicles - Vehicle-to-Grid Communication Interface - Part 2: Network and application protocol requirements</title>
    <author >
      <organization>International Standardization Organization / International Electrotechnical Commission</organization>
    </author>
    <date year="2014" month="April"/>
  </front>
  <seriesInfo name="ISO/IEC" value="15118-2 "/>
</reference>
<reference anchor="UNISIG-Subset-137" >
  <front>
    <title>Subset-137; ERTMS/ETCS On-line Key Management FFFIS; V1.0.0</title>
    <author >
      <organization>UNISIG</organization>
    </author>
    <date year="2015" month="December"/>
  </front>
  <format type="PDF" target="https://www.era.europa.eu/sites/default/files/filesystem/ertms/ccs_tsi_annex_a_-_mandatory_specifications/set_of_specifications_3_etcs_b3_r2_gsm-r_b1/index083_-_subset-137_v100.pdf"/>
<annotation>http://www.kmc-subset137.eu/index.php/download/</annotation></reference>
<reference anchor="OCPP" >
  <front>
    <title>Open Charge Point Protocol 2.0.1 (Draft)</title>
    <author >
      <organization>Open Charge Alliance</organization>
    </author>
    <date year="2019" month="December"/>
  </front>
</reference>



<reference anchor="I-D.eckert-anima-brski-discovery">
   <front>
      <title>Discovery for BRSKI variations</title>
      <author fullname="Toerless Eckert" initials="T. T." surname="Eckert">
         <organization>Futurewei USA</organization>
      </author>
      <author fullname="David von Oheimb" initials="D." surname="von Oheimb">
         <organization>Siemens AG</organization>
      </author>
      <author fullname="Esko Dijk" initials="E." surname="Dijk">
         <organization>IoTconsultancy.nl</organization>
      </author>
      <date day="23" month="October" year="2023"/>
      <abstract>
	 <t>   This document specifies how BRSKI entities, such as registrars,
   proxies, pledges or others that are acting as responders, can be
   discovered and selected by BRSKI entities acting as initiators.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-eckert-anima-brski-discovery-01"/>
   
</reference>




    </references>


<?line 1258?>

<section anchor="app-examples"><name>Application Examples</name>

<t>This informative annex provides some detail about application examples.</t>

<section anchor="rolling-stock"><name>Rolling Stock</name>

<t>Rolling stock or railroad cars contain a variety of sensors,
actuators, and controllers, which communicate within the railroad car
but also exchange information between railroad cars forming a train,
with track-side equipment, and/or possibly with backend systems.
These devices are typically unaware of backend system connectivity.
Enrolling certificates may be done during maintenance cycles
of the railroad car, but can already be prepared during operation.
Such asynchronous enrollment will include generating certification requests,
which are collected and later forwarded for processing whenever
the railroad car gets connectivity with the backend PKI of the operator.
The authorization of the certification request is then done based on
the operator's asset/inventory information in the backend.</t>

<t>UNISIG has included a CMP profile for the enrollment of TLS client and
server X.509 certificates of on-board and track-side components
in the Subset-137 specifying the ETRAM/ETCS
online key management for train control systems <xref target="UNISIG-Subset-137"/>.</t>

</section>
<section anchor="building-automation"><name>Building Automation</name>

<t>In building automation scenarios, a detached
building or the basement of a building may be equipped with sensors, actuators,
and controllers that are connected to each other in a local network but
with only limited or no connectivity to a central building management system.
This problem may occur during installation time but also during operation.
In such a situation a service technician collects the necessary data
and transfers it between the local network and the central building management
system, e.g., using a laptop or a mobile phone.
This data may comprise parameters and settings
required in the operational phase of the sensors/actuators, like a
component certificate issued by the operator to authenticate against other
components and services.</t>

<t>The collected data may be provided by a domain registrar
already existing in the local network. In this case
connectivity to the backend PKI may be facilitated by the service
technician's laptop.
Alternatively, the data can also be collected from the
pledges directly and provided to a domain registrar deployed in a
different network in preparation for the operational phase.
In this case, connectivity to the domain registrar
may also be facilitated by the service technician's laptop.</t>

</section>
<section anchor="substation-automation"><name>Substation Automation</name>

<t>In electrical substation automation scenarios, a control center typically hosts
PKI services to issue certificates for Intelligent Electronic Devices operated
in a substation. Communication between the substation and control center
is performed through a proxy/gateway/DMZ, which terminates protocol flows.
Note that <xref target="NERC-CIP-005-5"/> requires inspection of protocols
at the boundary of a security perimeter (the substation in this case).
In addition, security management in substation automation assumes
central support of several enrollment protocols to support
the various capabilities of IEDs from different vendors.
The IEC standard IEC62351-9 <xref target="IEC-62351-9"/>
specifies for the infrastructure side mandatory support of
two enrollment protocols: SCEP <xref target="RFC8894"/> and EST <xref target="RFC7030"/>,
while an Intelligent Electronic Device may support only one of them.</t>

</section>
<section anchor="electric-vehicle-charging-infrastructure"><name>Electric Vehicle Charging Infrastructure</name>

<t>For electric vehicle charging infrastructure, protocols have been
defined for the interaction between the electric vehicle and the
charging point (e.g., ISO 15118-2 <xref target="ISO-IEC-15118-2"/>)
as well as between the charging point and the charging point operator
(e.g. OCPP <xref target="OCPP"/>). Depending on the authentication
model, unilateral or mutual authentication is required. In both cases,
the charging point uses an X.509 certificate to authenticate itself
in TLS channels between the electric vehicle and
the charging point. The management of this certificate depends,
among others, on the selected backend connectivity protocol.
In the case of OCPP, this protocol is meant to be the only communication
protocol between the charging point and the backend, carrying all
information to control the charging operations and maintain the
charging point itself. This means that the certificate management
needs to be handled in-band of OCPP. This requires the ability to
encapsulate the certificate management messages in a transport-independent way.
Authenticated self-containment will support this by
allowing the transport without a separate enrollment protocol,
binding the messages to the identity of the communicating endpoints.</t>

</section>
<section anchor="infrastructure-isolation"><name>Infrastructure Isolation Policy</name>

<t>This refers to any case in which network infrastructure is normally
isolated from the Internet as a matter of policy, most likely for
security reasons. In such a case, limited access to external PKI
services will be allowed in carefully controlled short periods of
time, for example when a batch of new devices is deployed, and
forbidden or prevented at other times.</t>

</section>
<section anchor="sites-with-insufficient-level-of-operational-security"><name>Sites with Insufficient Level of Operational Security</name>

<t>The RA performing (at least part of) the authorization of a
certification request is a critical PKI component and therefore requires higher
operational security than components utilizing the issued
certificates for their security features. CAs may also demand higher
security in the registration procedures from RAs, which domain registrars
with co-located RAs may not be able to fulfill.
Especially the CA/Browser forum currently increases the security requirements
in the certificate issuance procedures for publicly trusted certificates,
i.e., those placed in trust stores of browsers,
which may be used to connect with devices in the domain.
In case the on-site components of the target domain can not be operated securely
enough for the needs of an RA, this service should be transferred to
an off-site backend component that has a sufficient level of security.</t>

</section>
</section>
<section anchor="app_history"><name>History of Changes TBD RFC Editor: please delete</name>

<t>List of reviewers:</t>

<t><list style="symbols">
  <t>Toerless Eckert (document shepherd)</t>
  <t>Barry Leiba (SECdir)</t>
  <t>Mahesh Jethanandani (IETF area director)</t>
  <t>Meral Shirazipour (Gen-ART reviewer)</t>
  <t>Michael Richardson (ANIMA design team)</t>
  <t>Rajeev Ranjan, Rufus Buschart, Szofia Fazekas-Zisch, etc. (Siemens)</t>
  <t><eref target="https://datatracker.ietf.org/doc/review-ietf-anima-brski-async-enroll-03-yangdoctors-early-rahman-2021-08-15/">YANGDOCTORS Early review of 2021-08-15</eref>
referred to the PRM aspect of <eref target="https://datatracker.ietf.org/doc/draft-ietf-anima-brski-async-enroll/03/">draft-ietf-anima-brski-async-enroll-03</eref>.
This has been carved out of the draft to a different one and thus is no more
applicable here.</t>
</list></t>

<t>IETF draft ae-11 -&gt; ae-12:</t>

<t><list style="symbols">
  <t>Fix minor issues introduced during authors' response to the AD review,<br />
including nits spotted in the Gen-ART review by Meral Shirazipour</t>
</list></t>

<t>IETF draft ae-10 -&gt; ae-11:</t>

<t><list style="symbols">
  <t>In response to AD review by Mahesh Jethanandani,
  <list style="symbols">
      <t>replace most occurrences of 'Note:' by 'Note that' or the like</t>
      <t>move 2nd paragraph of abstract to the introduction</t>
      <t>remove section 1.2 and merge its first paragraph with the preceding section</t>
      <t>reconsider normative language, replacing one 'may' by '<bcp14>MAY</bcp14>' in section 4.1</t>
      <t>fix several ambiguities and hard-to-read sentences by re-phrasing them</t>
      <t>make wording more consistent, in particular: 'certification request'</t>
      <t>fix a number of (mostly grammar) nits</t>
    </list></t>
  <t>Improve item on limitations of PKCS#10 regarding keys that cannot sign</t>
</list></t>

<t>IETF draft ae-09 -&gt; ae-10:</t>

<t><list style="symbols">
  <t>Add reference to RFC 8633 at first occurrence of 'voucher' (fixes #37)</t>
  <t>Update reference of CoAP Transfer for CMP from I-D to RFC 9482</t>
  <t>Move RFC 4210 and RFC 9480 references from normative to informative</t>
  <t>Fix <spanx style="verb">p10</spanx> vs. <spanx style="verb">pkcs10</spanx> entry in list of example endpoints in <xref target="addressing"/></t>
  <t>Minor fix in <xref target="uc1figure"/> and few text tweaks due to Siemens-internal review</t>
  <t>Extend the list of reviewers and acknowledgments by two Siemens colleagues</t>
</list></t>

<t>IETF draft ae-08 -&gt; ae-09:</t>

<t><list style="symbols">
  <t>In response to review by Toerless,
  <list style="symbols">
      <t>tweak abstract to make meaning of 'alternative enrollment' more clear</t>
      <t>expand on first use not "well-known" abbreviations, such as 'EST',<br />
adding also a references on their first use</t>
      <t>add summary and reason for choosing CMP at end of <xref target="solutions-PoI"/></t>
      <t>remove paragraph on optimistic discovery in controlled environments</t>
      <t>mention role of reviewers also in acknowledgments section</t>
    </list></t>
  <t>A couple of grammar and spelling fixes</t>
</list></t>

<t>IETF draft ae-07 -&gt; ae-08:</t>

<t><list style="symbols">
  <t>Update references to service names in <xref target="brski-cmp-instance"/></t>
</list></t>

<t>IETF draft ae-06 -&gt; ae-07:</t>

<t><list style="symbols">
  <t>Update subsections on discovery according to discussion in the design team</t>
  <t>In <xref target="brski-cmp-instance"/>,
replace 'mandatory' by '<bcp14>REQUIRED</bcp14>' regarding adherence to LCMPP,<br />
in response to SECDIR Last Call Review of ae-06 by Barry Leiba</t>
</list></t>

<t>IETF draft ae-05 -&gt; ae-06:</t>

<t><list style="symbols">
  <t>Extend section on discovery according to discussion in the design team</t>
  <t>Make explicit that MASA voucher status telemetry is as in BRSKI</t>
  <t>Add note that on delegation, RA may need info on pledge authorization</t>
</list></t>

<t>IETF draft ae-04 -&gt; ae-05:</t>

<t><list style="symbols">
  <t>Remove entries from the terminology section that should be clear from BRSKI</t>
  <t>Tweak use of the terms IDevID and LDevID and replace PKI RA/CA by RA/CA</t>
  <t>Add the abbreviation 'LCMPP' for Lightweight CMP Profile to the terminology section</t>
  <t>State clearly in <xref target="brski-cmp-instance"/> that LCMPP is mandatory when using CMP</t>
  <t>Change URL of BRSKI-AE-overview graphics to slide on IETF 116 meeting material</t>
</list></t>

<t>IETF draft ae-03 -&gt; ae-04:</t>

<t><list style="symbols">
  <t>In response to SECDIR Early Review of ae-03 by Barry Leiba,
  <list style="symbols">
      <t>replace 'end-to-end security' by the more clear 'end-to-end authentication'</t>
      <t>restrict the meaning of the abbreviation 'AE' to 'Alternative Enrollment'</t>
      <t>replace '<bcp14>MAY</bcp14>' by 'may' in requirement on delegated registrar actions</t>
      <t>re-phrase requirement on certification request exchange, avoiding MANDATORY</t>
      <t>mention that further protocol names need be put in Well-Known URIs registry</t>
      <t>explain consequence of using non-standard endpoints, not following <bcp14>SHOULD</bcp14></t>
      <t>remove requirement that 'caPubs' field in CMP responses <bcp14>SHOULD NOT</bcp14> be used</t>
      <t>add paragraph in security considerations on additional use of TLS for CMP</t>
    </list></t>
  <t>In response to further internal reviews and suggestions for generalization,
  <list style="symbols">
      <t>significantly cut down the introduction because the original motivations and
most explanations are no more needed and would just make it lengthy to read</t>
      <t>sort out asynchronous vs. offline transfer, off-site vs. backend components</t>
      <t>improve description of CSRs and proof of possession vs. proof of origin</t>
      <t>clarify that the channel between pledge and registrar is not restricted
to TLS, but in connection with constrained BRSKI may also be DTLS.
Also move the references to Constrained BRSKI and CoAPS to better contexts.</t>
      <t>clarify that the registrar must not be circumvented in the decision to grant
and LDevID, and give hints and recommendations how to make sure this</t>
      <t>clarify that the cert enrollment phase may involve additional messages
and that BRSKI-AE replaces <xref section="5.9" sectionFormat="comma" target="RFC8995"/> (except Section 5.9.4)
<!--
clarify that messages of the cert enrollment phase are RECOMMENDED to be
transmitted on the existing channel between the pledge and the registrar
--></t>
      <t>the certificate enrollment protocol needs to support transport over (D)TLS
only as far as its messages are transported between pledge and registrar.</t>
      <t>the certificate enrollment protocol chosen between pledge and registrar
needs to be used also for the upstream enrollment exchange with the PKI only
if end-to-end authentication shall be achieved across the registrar to the PKI.</t>
      <t>add that with CMP, further trust anchors <bcp14>SHOULD</bcp14> be transported via <spanx style="verb">caPubs</spanx></t>
      <t>remove the former Appendix A: "Using EST for Certificate Enrollment",
moving relevant points to the list of scenarios in
<xref target="sup-env"/>: "Supported Scenarios",</t>
      <t>streamline the item on EST in
<xref target="solutions-PoI"/>: "Solution Options for Proof of Identity",</t>
      <t>various minor editorial improvements like making the wording more consistent</t>
    </list></t>
</list></t>

<t>IETF draft ae-02 -&gt; ae-03:</t>

<t><list style="symbols">
  <t>In response to review by Toerless Eckert,
  <list style="symbols">
      <t>many editorial improvements and clarifications as suggested, such as
the comparison to plain BRSKI, the description of offline vs. synchronous
message transfer and enrollment, and better differentiation of RA flavors.</t>
      <t>clarify that for transporting certificate enrollment messages between
pledge and registrar, the TLS channel established between these two
(via the join proxy) is used and the enrollment protocol <bcp14>MUST</bcp14> support this.</t>
      <t>clarify that the enrollment protocol chosen between pledge and registrar
<bcp14>MUST</bcp14> also be used for the upstream enrollment exchange with the PKI.</t>
      <t>extend the description and requirements on how during the certificate
enrollment phase the registrar <bcp14>MAY</bcp14> handle requests by the pledge itself and
otherwise <bcp14>MUST</bcp14> forward them to the PKI and forward responses to the pledge.</t>
    </list></t>
  <t>Change "The registrar <bcp14>MAY</bcp14> offer different enrollment protocols" to
"The registrar <bcp14>MUST</bcp14> support at least one certificate enrollment protocol ..."</t>
  <t>In response to review by Michael Richardson,
  <list style="symbols">
      <t>slightly improve the structuring of the Message Exchange <xref target="message_ex"/> and
add some detail on the request/response exchanges for the enrollment phase</t>
      <t>merge the 'Enhancements to the Addressing Scheme' <xref target="addressing"/>
with the subsequent one:
'Domain Registrar Support of Alternative Enrollment Protocols'</t>
      <t>add reference to SZTP (RFC 8572)</t>
      <t>extend venue information</t>
      <t>convert output of ASCII-art figures to SVG format</t>
      <t>various small other text improvements as suggested/provided</t>
    </list></t>
  <t>Remove the tentative informative application to EST-fullCMC</t>
  <t>Move Eliot Lear from co-author to contributor, add Eliot to the acknowledgments</t>
  <t>Add explanations for terms such as 'target domain' and 'caPubs'</t>
  <t>Fix minor editorial issues and update some external references</t>
</list></t>

<t>IETF draft ae-01 -&gt; ae-02:</t>

<t><list style="symbols">
  <t>Architecture: clarify registrar role including RA/LRA/enrollment proxy</t>
  <t>CMP: add reference to CoAP Transport for CMPV2 and Constrained BRSKI</t>
  <t>Include venue information</t>
</list></t>

<t>From IETF draft 05 -&gt; IETF draft ae-01:</t>

<t><list style="symbols">
  <t>Renamed the repo and files from 'anima-brski-async-enroll' to 'anima-brski-ae'</t>
  <t>Added graphics for abstract protocol overview as suggested by Toerless Eckert</t>
  <t>Balanced (sub-)sections and their headers</t>
  <t>Added details on CMP instance, now called BRSKI-CMP</t>
</list></t>

<t>From IETF draft 04 -&gt; IETF draft 05:</t>

<t><list style="symbols">
  <t>David von Oheimb became the editor.</t>
  <t>Streamline wording, consolidate terminology, improve grammar, etc.</t>
  <t>Shift the emphasis towards supporting alternative enrollment protocols.</t>
  <t>Update the title accordingly - preliminary change to be approved.</t>
  <t>Move comments on EST and detailed application examples to informative annex.</t>
  <t>Move the remaining text of section 3 as two new sub-sections of section 1.</t>
</list></t>

<t>From IETF draft 03 -&gt; IETF draft 04:</t>

<t><list style="symbols">
  <t>Moved UC2-related parts defining the pledge in responder mode to a
separate document. This required changes and adaptations in several
sections. Main changes concerned the removal of the subsection for UC2
as well as the removal of the YANG model related text as it is not
applicable in UC1.</t>
  <t>Updated references to the Lightweight CMP Profile (LCMPP).</t>
  <t>Added David von Oheimb as co-author.</t>
</list></t>

<t>From IETF draft 02 -&gt; IETF draft 03:</t>

<t><list style="symbols">
  <t>Housekeeping, deleted open issue regarding YANG voucher-request
in UC2 as voucher-request was enhanced with additional leaf.</t>
  <t>Included open issues in YANG model in UC2 regarding assertion
value agent-proximity and CSR encapsulation using SZTP sub module).</t>
</list></t>

<t>From IETF draft 01 -&gt; IETF draft 02:</t>

<t><list style="symbols">
  <t>Defined call flow and objects for interactions in UC2. Object format
based on draft for JOSE signed voucher artifacts and aligned the
remaining objects with this approach in UC2 .</t>
  <t>Terminology change: issue #2 pledge-agent -&gt; registrar-agent to
better underline agent relation.</t>
  <t>Terminology change: issue #3 PULL/PUSH -&gt; pledge-initiator-mode
and pledge-responder-mode to better address the pledge operation.</t>
  <t>Communication approach between pledge and registrar-agent
changed by removing TLS-PSK (former section TLS establishment)
and associated references to other drafts in favor of relying on
higher layer exchange of signed data objects. These data objects
are included also in the pledge-voucher-request and lead to an
extension of the YANG module for the voucher-request (issue #12).</t>
  <t>Details on trust relationship between registrar-agent and
registrar (issue #4, #5, #9) included in UC2.</t>
  <t>Recommendation regarding short-lived certificates for
registrar-agent authentication towards registrar (issue #7) in
the security considerations.</t>
  <t>Introduction of reference to agent signing certificate using SKID
in agent signed data (issue #11).</t>
  <t>Enhanced objects in exchanges between pledge and registrar-agent
to allow the registrar to verify agent-proximity to the pledge
(issue #1) in UC2.</t>
  <t>Details on trust relationship between registrar-agent and
pledge (issue #5) included in UC2.</t>
  <t>Split of use case 2 call flow into sub sections in UC2.</t>
</list></t>

<t>From IETF draft 00 -&gt; IETF draft 01:</t>

<t><list style="symbols">
  <t>Update of scope in <xref target="sup-env"/> to include in
which the pledge acts as a server. This is one main motivation
for use case 2.</t>
  <t>Rework of use case 2 to consider the
transport between the pledge and the pledge-agent. Addressed is
the TLS channel establishment between the pledge-agent and the
pledge as well as the endpoint definition on the pledge.</t>
  <t>First description of exchanged object types (needs more work)</t>
  <t>Clarification in discovery options for enrollment endpoints at
the domain registrar based on well-known endpoints in <xref target="addressing"/>
do not result in additional /.well-known URIs.
Update of the illustrative example.
Note that the change to /brski for the voucher-related endpoints
has been taken over in the BRSKI main document.</t>
  <t>Updated references.</t>
  <t>Included Thomas Werner as additional author for the document.</t>
</list></t>

<t>From individual version 03 -&gt; IETF draft 00:</t>

<t><list style="symbols">
  <t>Inclusion of discovery options of enrollment endpoints at
the domain registrar based on well-known endpoints in
<xref target="addressing"/> as replacement of section 5.1.3
in the individual draft. This is intended to support both use
cases in the document. An illustrative example is provided.</t>
  <t>Missing details provided for the description and call flow in
pledge-agent use case UC2, e.g. to
accommodate distribution of CA certificates.</t>
  <t>Updated CMP example in <xref target="exist_prot"/> to use
Lightweight CMP instead of CMP, as the draft already provides
the necessary /.well-known endpoints.</t>
  <t>Requirements discussion moved to separate section in
<xref target="req-sol"/>. Shortened description of proof-of-identity binding
and mapping to existing protocols.</t>
  <t>Removal of copied call flows for voucher exchange and registrar
discovery flow from <xref target="RFC8995"/> in <xref target="uc1"/> to avoid doubling or text or
inconsistencies.</t>
  <t>Reworked abstract and introduction to be more crisp regarding
the targeted solution. Several structural changes in the document
to have a better distinction between requirements, use case
description, and solution description as separate sections.
History moved to appendix.</t>
</list></t>

<t>From individual version 02 -&gt; 03:</t>

<t><list style="symbols">
  <t>Update of terminology from self-contained to authenticated
self-contained object to be consistent in the wording and to
underline the protection of the object with an existing
credential. Note that the naming of this object may be discussed.
An alternative name may be attestation object.</t>
  <t>Simplification of the architecture approach for the initial use
case having an off-site PKI.</t>
  <t>Introduction of a new use case utilizing authenticated
self-contain objects to onboard a pledge using a commissioning
tool containing a pledge-agent. This requires additional changes
in the BRSKI call flow sequence and led to changes in the
introduction, the application example,and also in the
related BRSKI-AE call flow.</t>
  <t>Update of provided examples of the addressing approach used in
BRSKI to allow for support of multiple enrollment protocols in
<xref target="addressing"/>.</t>
</list></t>

<t>From individual version 01 -&gt; 02:</t>

<t><list style="symbols">
  <t>Update of introduction text to clearly relate to the usage of
IDevID and LDevID.</t>
  <t>Definition of the addressing approach used in BRSKI to allow for
support of multiple enrollment protocols in <xref target="addressing"/>.  This
section also contains a first
discussion of an optional discovery mechanism to address
situations in which the registrar supports more than one enrollment
approach. Discovery should avoid that the pledge performs a trial
and error of enrollment protocols.</t>
  <t>Update of description of architecture elements and
changes to BRSKI in <xref target="architecture"/>.</t>
  <t>Enhanced consideration of existing enrollment protocols in the
context of mapping the requirements to existing solutions in
<xref target="req-sol"/> and in <xref target="exist_prot"/>.</t>
</list></t>

<t>From individual version 00 -&gt; 01:</t>

<t><list style="symbols">
  <t>Update of examples, specifically for building automation as
well as two new application use cases in <xref target="app-examples"/>.</t>
  <t>Deletion of asynchronous interaction with MASA to not
complicate the use case. Note that the voucher exchange can
already be handled in an asynchronous manner and is therefore
not considered further. This resulted in removal of the
alternative path the MASA in Figure 1 and the associated
description in <xref target="architecture"/>.</t>
  <t>Enhancement of description of architecture elements and
changes to BRSKI in <xref target="architecture"/>.</t>
  <t>Consideration of existing enrollment protocols in the context
of mapping the requirements to existing solutions in <xref target="req-sol"/>.</t>
  <t>New section starting <xref target="exist_prot"/> with the
mapping to existing enrollment protocols by collecting
boundary conditions.</t>
</list></t>

<!--
Local IspellDict: american
LocalWords: bcp uc prot vexchange enrollfigure req eo selander coap br iana tcp
LocalWords: oscore fullcmc simpleenroll tls env brski UC seriesinfo IDevID Resp
LocalWords: Attrib lt docname ipr toc anima async wg symrefs ann ae pkcs cert
LocalWords: sortrefs iprnotified Instantiation caPubs raVerified repo reqs Conf
LocalWords: IDentity IDentifier coaps aasvg acp cms json pkixcmp kp DOI abbrev
LocalWords: PoP PoI anufacturer uthorized igning uthority SECDIR nbsp passphrase
LocalWords: ietf cmp lcmpp submissionType kw std org uri cmpv app sol est Certs
LocalWords: github eckert lternative nrollment sec Mahesh Jethanandani Gen ART
LocalWords: Meral Shirazipour
-->

</section>

    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
        <name>Contributors</name>
    <contact initials="E." surname="Lear" fullname="Eliot Lear">
      <organization>Cisco Systems</organization>
      <address>
        <postal>
          <street>Richtistrasse 7</street>
          <city>Wallisellen</city>
          <code>CH-8304</code>
          <country>Switzerland</country>
        </postal>
        <phone>+41 44 878 9200</phone>
        <email>lear@cisco.com</email>
      </address>
    </contact>
    </section>

  </back>

<!-- ##markdown-source:
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

-->

</rfc>

