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

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc compact="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no"?>
<?rfc strict="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-anima-brski-ae-01" category="std" consensus="true">

  <front>
    <title abbrev="BRSKI-AE">BRSKI-AE: Alternative Enrollment Protocols in BRSKI</title>

    <author initials="D." surname="von Oheimb" fullname="David von 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>
    <author 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>
    </author>

    <date year="2022"/>

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

    <abstract>


<t>This document enhances
Bootstrapping Remote Secure Key Infrastructure (BRSKI, RFC 8995)
to allow employing alternative enrollment protocols, such as CMP.</t>

<t>Using self-contained signed objects, the origin of enrollment requests and responses
can be authenticated independently of message transfer.
This supports end-to-end security and asynchronous operation of certificate enrollment
and provides flexibility where to authenticate and authorize certification requests.</t>



    </abstract>



  </front>

  <middle>


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

<section anchor="motivation"><name>Motivation</name>

<t>BRSKI, as defined in <xref target="RFC8995"/>, specifies a solution for
secure automated zero-touch bootstrapping of new devices, so-called pledges.
This includes the discovery of the registrar in the target domain,
time synchronization, and the exchange of security information
necessary to establish mutual trust between pledges and the target domain.</t>

<t>A pledge gains trust in the target domain via the domain registrar as follows.
It obtains security information about the domain,
specifically a domain certificate to be trusted,
by requesting a voucher object defined in <xref target="RFC8366"/>.
Such a voucher is a self-contained signed object
originating from a Manufacturer Authorized Signing Authority (MASA).
Therefore, the voucher may be provided
in online mode (synchronously) or offline mode (asynchronously).
The pledge can authenticate the voucher
because it is shipped with a trust anchor of its manufacturer such that
it can validate signatures (including related certificates) by the MASA.</t>

<t>Trust by the target domain in a pledge is established by providing the pledge
with a domain-specific LDevID certificate.
The certification request of the pledge is signed using its IDevID secret and can be
validated by the target domain using the trust anchor of the pledge manufacturer,
which needs to pre-installed in the domain.</t>

<t>For enrolling devices with LDevID certificates,
BRSKI typically utilizes Enrollment over Secure Transport (EST) <xref target="RFC7030"/>.
EST has its specific characteristics, detailed in <xref target="using-est"/>.
In particular, it requires online or on-site availability of the RA
for performing the data origin authentication and final authorization decision
on the certification request.
This type of enrollment can be called 'synchronous enrollment'.
For various reasons,
it may be preferable to use alternative enrollment protocols such as
the Certificate Management Protocol (CMP) <xref target="RFC4210"/>
profiled in <xref target="I-D.ietf-lamps-lightweight-cmp-profile"/>
or Certificate Management over CMS (CMC) <xref target="RFC5272"/>.
that are more flexible and independent of the transfer mechanism because they
represent certification request messages as authenticated self-contained objects.</t>

<t>Depending on the application scenario,
the required RA/CA components may not be part of the registrar.
They even may not be available on-site but rather be
provided by remote backend systems. The registrar or its deployment site may not have
an online connection with them or the connectivity may be intermittent.
This may be due to security requirements for operating the backend systems
or due to site deployments where on-site or always-online operation
may be not feasible or too costly.
In such scenarios, the authentication and authorization of certification requests
will not or can not be performed on-site at enrollment time.
In this document, enrollment that is not performed in a (time-wise) consistent
way is called 'asynchronous enrollment'.
Asynchronous enrollment requires a store-and-forward transfer of certification
requests along with the information needed for authenticating the requester.
This allows offline processing the request.</t>

<t>Application scenarios may also involve network segmentation, which is utilized
in industrial systems to separate domains with different security needs.
Such scenarios lead to similar requirements if the TLS connection
carrying the requester authentication is terminated
and thus request messages need to be forwarded on further channels
before the registrar/RA can authorize the certification request.
In order to preserve the requester authentication, authentication information
needs to be retained and ideally bound directly to the certification request.</t>

<t>There are basically two approaches for forwarding certification requests
along with requester authentication information:</t>

<t><list style="symbols">
  <t>A trusted component (e.g., a local RA) in the target domain is needed
that forwards the certification request combined with the validated identity of
the requester (e,g., its IDevID certificate)
and an indication of successful verification of
the proof-of-possession (of the corresponding private key) in a way
preventing changes to the combined information.
When connectivity is available, the trusted component
forwards the certification request together with the requester information
(authentication and proof-of-possession) for further processing.
This approach offers only hop-by-hop security.
The backend PKI must rely on the local pledge authentication result
provided by the local RA
when performing the authorization of the certification request.
In BRSKI, the EST server is such a trusted component,
being co-located with the registrar in the target domain.</t>
  <t>Involved components use authenticated self-contained objects for the enrollment,
directly binding the certification request and the requester authentication
in a cryptographic way.
This approach supports end-to-end security,
without the need to trust in intermediate domain components.
Manipulation of the request and the requester identity information
can be detected during the validation of the self-contained signed object.</t>
</list></t>

<t>Focus of this document is the support of alternative enrollment protocols that allow
using authenticated self-contained objects for device credential bootstrapping.
This enhancement of BRSKI is named BRSKI-AE,
where AE stands for alternative enrollment protocols and for asynchronous enrollment.
This specification carries over the main characteristics of BRSKI,
namely that the pledge obtains trust anchor information
for authenticating the domain registrar and other target domain components
as well as a domain-specific X.509 device certificate (the LDevID certificate)
along with the corresponding private key (the LDevID secret) and certificate chain.</t>

<t>The goals are to enhance BRSKI to</t>

<t><list style="symbols">
  <t>support alternative enrollment protocols,</t>
  <t>support end-to-end security for enrollment, and</t>
  <t>make it applicable to scenarios involving asynchronous enrollment.</t>
</list></t>

<t>This is achieved by</t>

<t><list style="symbols">
  <t>extending the well-known URI approach with an additional path element
indicating the enrollment protocol being used, and</t>
  <t>defining a certificate waiting indication and handling, for the case that the
certifying component is (temporarily) not available.</t>
</list></t>

<t>This specification can be applied to both synchronous and asynchronous enrollment.</t>

<t>In contrast to BRSKI, this specification supports offering multiple enrollment protocols
on the infrastructure side, which enables pledges and their developers
to pick the preferred one.</t>

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

<t>BRSKI-AE is intended to be used in domains that may have limited support
of on-site PKI services and comprises application scenarios like the following.</t>

<t><list style="symbols">
  <t>There are requirements or implementation restrictions
that do not allow using EST for enrolling an LDevID certificate.</t>
  <t>Pledges and/or the target domain already have an established
certificate management approach different from EST that shall be reused
(e.g., in brownfield installations).</t>
  <t>There is no registration authority available on site in the target domain.
Connectivity to an off-site RA is intermittent or entirely offline.
A store-and-forward mechanism is used
for communicating with the off-site services.</t>
  <t>Authoritative actions of a local RA are limited and may not be sufficient
for authorizing certification requests by pledges.
Final authorization is done by an RA residing in the operator domain.</t>
</list></t>

</section>
<section anchor="list-examples"><name>List of Application Examples</name>

<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.
They motivate the support of alternative enrollment protocols,
based on the following examples of operational environments:</t>

<t><list style="symbols">
  <t>Rolling stock</t>
  <t>Building automation</t>
  <t>Electrical substation automation</t>
  <t>Electric vehicle charging infrastructures</t>
  <t>Infrastructure isolation policy</t>
  <t>Sites with insufficient level of operational security</t>
</list></t>

</section>
</section>
<section anchor="terminology"><name>Terminology</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>

<t>This document relies on the terminology defined in <xref target="RFC8995"/>
and <xref target="IEEE.802.1AR_2009"/>.<!-- TBD DvO: Have not found version of 2014 -->
The following terms are defined in addition:</t>

<dl>
  <dt>
EE:  </dt>
  <dd>
    <t>End entity, in the BRSKI context called pledge.
It is the entity that is bootstrapped to the target domain.
It holds a public-private key pair, for which it requests a public-key certificate.
An identifier for the EE is given as the subject name of the certificate.</t>
  </dd>
  <dt>
RA:  </dt>
  <dd>
    <t>Registration authority, an optional system
component to which a CA delegates certificate management functions
such as authenticating requesters and performing authorization checks
on certification requests.</t>
  </dd>
  <dt>
CA:  </dt>
  <dd>
    <t>Certification authority, issues certificates
and provides certificate status information.</t>
  </dd>
  <dt>
target domain:  </dt>
  <dd>
    <t>The set of entities that share a common local trust anchor,
independent of where the entities are deployed.</t>
  </dd>
  <dt>
site:  </dt>
  <dd>
    <t>Describes the locality where an entity, e.g., pledge, registrar, RA, CA, is deployed.
Different sites can belong to the same target domain.</t>
  </dd>
  <dt>
on-site:  </dt>
  <dd>
    <t>Describes a component or service or
functionality available in the target deployment site.</t>
  </dd>
  <dt>
off-site:  </dt>
  <dd>
    <t>Describes a component or service or
functionality available in an operator site different from
the target deployment site. This may be a central site or a
cloud service, to which only a temporary connection is available.</t>
  </dd>
  <dt>
asynchronous communication:  </dt>
  <dd>
    <t>Describes a time-wise interrupted communication
between a pledge (EE) and a registrar or PKI component.</t>
  </dd>
  <dt>
synchronous communication:  </dt>
  <dd>
    <t>Describes a time-wise uninterrupted communication
between a pledge (EE) and a registrar or PKI component.</t>
  </dd>
  <dt>
authenticated self-contained object:  </dt>
  <dd>
    <t>Describes in this context an object
that is cryptographically bound to the IDevID certificate of a pledge.
The binding is assumed to be provided through a digital signature
of the actual object using the IDevID secret.</t>
  </dd>
</dl>

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

<section anchor="basic-requirements"><name>Basic Requirements</name>

<t>There were two main drivers for the definition of BRSKI-AE:</t>

<t><list style="symbols">
  <t>The solution architecture may already use or require
a certificate management protocol other than EST.
Therefore, this other protocol should be usable for requesting LDevID certificates.</t>
  <t>The domain registrar may not be the (final) point that authenticates and authorizes
certification requests and the pledge may not have a direct connection to it.
Therefore, certification requests should be self-contained signed objects.</t>
</list></t>

<t>Based on the intended target environment 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>At least the following properties are required:</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.</t>
  <t>proof-of-identity: provides data origin authentication of
the certification request. This typically is achieved by a signature
using the IDevID secret of the pledge.</t>
</list></t>

<t>The rest of this section gives an incomplete list of solution examples,
based on existing technology described in IETF documents:</t>

</section>
<section anchor="solution-options-for-proof-of-possession"><name>Solution Options for Proof-of-possession</name>

<t>Certification request objects: Certification requests are
  data structures protecting only the integrity of the contained data
  and providing proof-of-possession for a (locally generated) private key.
  Examples for certification request data structures are:</t>

<t><list style="symbols">
  <t>PKCS#10 <xref target="RFC2986"/>. This certification request structure is self-signed to
protect its integrity and prove possession of the private key
that corresponds to the public key included in the request.</t>
  <t>CRMF <xref target="RFC4211"/>. Also this certificate request message format supports
integrity protection and proof-of-possession,
typically by a self-signature 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 support any signature algorithm.</t>
</list></t>

<t>The integrity protection of certification request fields includes the public
  key because it is part of the data signed by the corresponding private key.
  Yet note that for the above examples this is not sufficient to provide data
  origin authentication, i.e., proof-of-identity. This extra property can be
  achieved by an additional binding to the IDevID of the pledge.
  This binding to source authentication supports the
  authorization decision for the certification request. The binding of data
  origin authentication to the certification request may be
  delegated to the protocol used for certificate management.</t>

</section>
<section anchor="solution-options-for-proof-of-identity"><name>Solution Options for Proof-of-identity</name>

<t>The certification request should be bound to
  an existing authenticated credential (here, the IDevID certificate) to enable a proof
  of identity and, based on it, an authorization of the certification request.
  The binding may be achieved through security options in an
  underlying transport protocol such as TLS if the authorization of the
  certification request is (completely) done at the next communication hop.
  This binding can also be done in a transport-independent way by wrapping the
  certification request with signature employing an existing IDevID.
  the BRSKI context, this will be the IDevID.
  This requirement is addressed by existing enrollment protocols
  in various ways, such as:</t>

<t><list style="symbols">
  <t>EST <xref target="RFC7030"/> utilizes PKCS#10 to
encode the certification request. The Certificate Signing
Request (CSR) optionally provides a binding to the underlying TLS session
by including the tls-unique value in the self-signed PKCS#10 structure.
The tls-unique value results from the TLS handshake.
Since the TLS handshake includes client
authentication and the pledge utilizes its IDevID for it,
the proof-of-identity is provided by such a binding to the TLS session.
This can be supported using the EST /simpleenroll endpoint.
Note that the binding of the TLS handshake to the CSR is optional in EST.
As an alternative to binding to the underlying
TLS authentication in the transport layer, <xref target="RFC7030"/> sketches wrapping the CSR
with a Full PKI Request message using an existing certificate.</t>
  <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.
Thus SCEP does not rely on the security of the underlying transfer.</t>
  <t>CMP <xref target="RFC4210"/> 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 transfer protocol.</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 transfer protocol.</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 {{I-D.selander-ace-coap-est-oscore}}
may be considered as a further variant.
-->

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

<t>In order to support alternative enrollment protocols, asynchronous enrollment,
and more general system architectures,
BRSKI-AE lifts some restrictions of 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.</t>

<t>The enhancements needed are kept to a minimum in order to ensure 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.</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.
Consequently, the authentication and authorization of the certification request
<bcp14>MAY</bcp14> be done by the domain registrar and/or by other domain components. These components
may be offline or reside in some central backend of the domain operator (off-site)
as described in <xref target="sup-env"/>. The registrar and other on-site domain components
may have no or only temporary (intermittent) connectivity to them.
The certification request <bcp14>MAY</bcp14> also be piggybacked on another protocol.</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 Off-site PKI Components" anchor="uc1figure"><artwork 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/ |  .
|        <-------->............<-------> Enrollment |  .
|        |     .  |        BRSKI-AE    | Proxy/LRA  |  .
| IDevID |     .  |            |       +------^-----+  .
|        |     .  +------------+              |        .
|        |     .                              |        .
+--------+     ...............................|.........
                on-site "domain" components   |
                                              | e.g., RFC 4210,
                                              |       RFC 7030, ...
 .............................................|.....................
 . +---------------------------+     +--------v------------------+ .
 . | Public-Key Infrastructure <-----+ Registration Authority    | .
 . | PKI CA                    +-----> PKI RA                    | .
 . +---------------------------+     +---------------------------+ .
 ...................................................................
         off-site or central "domain" components
]]></artwork></figure>

<t>The architecture overview in <xref target="uc1figure"/>
has the same logical elements as BRSKI, but with 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, or none 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 functionality as described in BRSKI <xref target="RFC8995"/>.</t>
  <t>Domain Registrar / Enrollment Proxy / LRA: in BRSKI-AE,
the domain registrar has mostly the same functionality as in BRSKI, namely
to facilitate the communication of the pledge with the MASA and the PKI.
Yet in contrast to BRSKI, the registrar offers different enrollment protocols
and <bcp14>MAY</bcp14> act as a local registration authority (LRA) or simply as an enrollment proxy.
In such cases, the domain registrar forwards the certification request
to some off-site RA component, which performs at least part of the authorization.
This also covers the case that the registrar has only intermittent connection
and forwards the certification request to the RA upon re-established connectivity.  <vspace blankLines='1'/>
Note: To support alternative enrollment protocols, the URI scheme
for addressing the domain registrar is generalized (see <xref target="addressing"/>).</t>
</list></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: general 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: The interaction with the MASA may be synchronous (voucher request with nonce)
or asynchronous (voucher request without nonce).</t>
  <t>Ownership tracker: as defined in BRSKI.</t>
</list></t>

<t>The following list describes the target domain components that can optionally be
operated in the off-site backend of the target domain.</t>

<t><list style="symbols">
  <t>PKI RA: Performs certificate management functions for the domain
as a centralized 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.</t>
  <t>PKI CA: Performs certificate generation by signing the certificate structure
requested in already authenticated and authorized certification requests.</t>
</list></t>

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

<t><list style="symbols">
  <t>Discovery phase: same as in BRSKI steps (1) and (2)</t>
  <t>Voucher exchange phase: same as in BRSKI steps (3) and (4).</t>
  <t>Enrollment phase: step (5) is changed to employing an alternative enrollment protocol
that uses authenticated self-contained objects.</t>
</list></t>

</section>
<section anchor="message-exchange"><name>Message Exchange</name>

<t>The behavior of a pledge described in Section 2.1 of BRSKI <xref target="RFC8995"/>
is kept with one 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.
<!-- Note that EST with simple-enroll cannot be applied here
because it binds the pledge authentication to the transport channel (TLS) rather than
to the certification request object itself, so this form of authentication
is not visible / verifiable to authorization points outside the registrar.-->
<xref target="exist_prot"/> discusses selected suitable enrollment protocols and options applicable.</t>

<t><figure title="BRSKI-AE Abstract Protocol Overview">
    <artwork>
[
 Cannot render SVG graphics - please view
 https://raw.githubusercontent.com/anima-wg/anima-brski-ae/main/o.png
]
    </artwork>
</figure></t>

<t><strong>Pledge - registrar discovery and voucher exchange</strong></t>

<t>The discovery phase and voucher exchange are applied as specified in <xref target="RFC8995"/>.</t>

<t><strong>Registrar - MASA voucher exchange</strong></t>

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

<t><strong>Pledge - registrar - RA/CA certificate enrollment</strong></t>

<t>As stated in <xref target="req-sol"/>, the enrollment <bcp14>MUST</bcp14> be
performed using an authenticated self-contained object providing
not only proof-of-possession but also proof-of-identity (source authentication).</t>

<figure title="Certificate Enrollment" anchor="enrollfigure"><artwork align="left"><![CDATA[
+--------+                        +------------+       +------------+
| Pledge |                        | Domain     |       | Operator   |
|        |                        | Registrar  |       | RA/CA      |
|        |                        |  (JRC)     |       | (PKI)      |
+--------+                        +------------+       +------------+
 /-->                                      |                       |
[Optional request of CA certificates]      |                       |
 |---------- CA Certs Request ------------>|                       |
 |                 [if connection to operator domain is available] |
 |                                         |-- CA Certs Request -->|
 |                                         |<- CA Certs Response --|
 |<--------- CA Certs Response ------------|                       |
 /-->                                      |                       |
[Optional request of attributes to include in Certificate Request] |
 |---------- Attribute Request ----------->|                       |
 |                 [if connection to operator domain is available] |
 |                                         |- Attribute Request -->|
 |                                         |<- Attribute Response -|
 |<--------- Attribute Response -----------|                       |
 /-->                                      |                       |
[Mandatory certificate request]            |                       |
 |---------- Certificate Request --------->|                       |
 |                 [if connection to operator domain is available] |
 |                                         |-Certificate Request ->|
 |                                         |<- Certificate Resp. --|
 |<--------- Certificate Response ---------|                       |
 /-->                                      |                       |
[Optional certificate confirmation]        |                       |
 |---------- Certificate Confirm --------->|                       |
 |                 [if connection to operator domain is available] |
 |                                         |-Certificate Confirm ->|
 |                                         |<---- PKI Confirm -----|
 |<--------- PKI/Registrar Confirm --------|                       |
]]></artwork></figure>

<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: 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 may be just the domain registrar certificate).</t>
  <t>CA Certs Response: It <bcp14>MUST</bcp14> contain the current root CA certificate,
which typically is the LDevID trust anchor, and any additional certificates
that the pledge may need to validate certificates.</t>
  <t>Attribute Request: Typically, the automated bootstrapping occurs
without local administrative configuration of the pledge.
Nevertheless, there are cases in which the pledge may also
include additional attributes specific to the target domain
into the certification request. To get these attributes in
advance, the attribute request can be used.</t>
  <t>Attribute Response: It <bcp14>MUST</bcp14> contain the attributes to be included
in the subsequent certification request.</t>
  <t>Certificate Request: This certification request <bcp14>MUST</bcp14> contain the
authenticated self-contained object ensuring both proof-of-possession of the
corresponding private key and proof-of-identity of the requester.</t>
  <t>Certificate Response: The certification response message <bcp14>MUST</bcp14> contain on success
the requested certificate and <bcp14>MAY</bcp14> include further information,
like certificates of intermediate CAs.</t>
  <t>Certificate Confirm: An optional confirmation sent
after the requested certificate has been received and validated.
It contains a positive or negative confirmation by the pledge whether
the certificate was successfully enrolled and fits its needs.</t>
  <t>PKI/Registrar Confirm: An acknowledgment by the PKI or registrar
that <bcp14>MUST</bcp14> be sent on reception of the Cert Confirm.</t>
</list></t>

<t>The generic messages described above may be implemented using various
enrollment protocols supporting authenticated self-contained objects,
as described in <xref target="req-sol"/>. Examples are available in <xref target="exist_prot"/>.</t>

<t><strong>Pledge - registrar - enrollment status telemetry</strong></t>

<t>The enrollment status telemetry is performed as specified in <xref target="RFC8995"/>.
In BRSKI this is described as part of the enrollment phase,
but due to the generalization on the enrollment protocol described in this document
it fits better as a separate step here.</t>

</section>
<section anchor="addressing"><name>Enhancements to Addressing Scheme</name>

<t>BRSKI-AE provides generalizations to the addressing scheme defined in
BRSKI <xref target="RFC8995"/> to accommodate alternative enrollment protocols that
use authenticated self-contained objects for certification requests.
As this is supported by various existing enrollment protocols,
they can be directly employed (see also <xref target="exist_prot"/>).</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 on the
example of simple enrollment: "/.well-known/est/simpleenroll".
This approach is generalized to the following notation:
"/.well-known/&lt;enrollment-protocol&gt;/&lt;request&gt;"
in which &lt;enrollment-protocol&gt; 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 in order to provide maximal compatibility to BRSKI:</t>

<t><list style="symbols">
  <t>&lt;enrollment-protocol&gt;: <bcp14>MUST</bcp14> reference the protocol being used, which
<bcp14>MAY</bcp14> be CMP, CMC, SCEP, EST <xref target="RFC7030"/> as in BRSKI, or a newly defined approach.  <vspace blankLines='1'/>
Note: additional endpoints (well-known URIs) at the registrar
may need to be defined by the enrollment protocol being used.</t>
  <t>&lt;request&gt;: if present, the &lt;request&gt; 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>

</section>
<section anchor="discovery_eo"><name>Domain Registrar Support of Alternative Enrollment Protocols</name>

<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 at the registrar.
The pledge will recognize whether its
preferred enrollment option is supported by the domain registrar
by sending a request to its preferred enrollment endpoint
and evaluating the HTTP response status code.</t>

<t>The following list of endpoints provides an illustrative example for
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="I-D.ietf-lamps-cmp-updates"/>
and the Lightweight CMP profile <xref target="I-D.ietf-lamps-lightweight-cmp-profile"/>.</t>

<figure><artwork align="left"><![CDATA[
  </brski/voucherrequest>,ct=voucher-cms+json
  </brski/voucher_status>,ct=json
  </brski/enrollstatus>,ct=json
  </est/cacerts>;ct=pkcs7-mime
  </est/fullcmc>;ct=pkcs7-mime
  </est/csrattrs>;ct=pkcs7-mime
  </cmp/initialization>;ct=pkixcmp
  </cmp/p10>;ct=pkixcmp
  </cmp/getcacerts>;ct=pkixcmp
  </cmp/getcertreqtemplate>;ct=pkixcmp

]]></artwork></figure>

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

<t>This section maps the requirements to support proof-of-possession and
proof-of-identity to selected existing enrollment protocols
handles provides further aspects of instantiating them in BRSKI-AE.</t>

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

<section anchor="brski-est-fullcmc-instantiation-to-est-informative"><name>BRSKI-EST-fullCMC: Instantiation to EST (informative)</name>

<t>When using EST <xref target="RFC7030"/>, the following aspects and constraints
need to be considered and the given extra requirements need to be fulfilled,
which adapt Section 5.9.3 of BRSKI <xref target="RFC8995"/>:</t>

<t><list style="symbols">
  <t>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.</t>
  <t>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 <xref target="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.  <vspace blankLines='1'/>
Note: In this case the binding to the underlying TLS connection is not necessary.</t>
  <t>When the RA is temporarily not available, as per Section 4.2.3 of <xref target="RFC7030"/>,
an HTTP status code 202 should be returned by the registrar,
and the pledge will repeat the initial Full PKI Request</t>
</list></t>

</section>
<section anchor="brski-cmp-instantiation-to-cmp-normative-if-cmp-is-chosen"><name>BRSKI-CMP: Instantiation to CMP (normative if CMP is chosen)</name>

<t>Note: Instead of referring to CMP
as specified in <xref target="RFC4210"/> and <xref target="I-D.ietf-lamps-cmp-updates"/>,
this document refers to the Lightweight CMP Profile
<xref target="I-D.ietf-lamps-lightweight-cmp-profile"/> because
the subset of CMP defined there is sufficient for the functionality needed here.</t>

<t>When using CMP, the following specific implementation requirements apply
(cf. <xref target="enrollfigure"/>).</t>

<t><list style="symbols">
  <t>CA Certs Request
  <list style="symbols">
      <t>Requesting CA certificates over CMP is <bcp14>OPTIONAL</bcp14>.<br />
If supported, it <bcp14>SHALL</bcp14> be implemented as specified in
Section 4.3.1 of <xref target="I-D.ietf-lamps-lightweight-cmp-profile"/>.</t>
    </list></t>
  <t>Attribute Request
  <list style="symbols">
      <t>Requesting certificate request attributes over CMP is <bcp14>OPTIONAL</bcp14>.<br />
If supported, it <bcp14>SHALL</bcp14> be implemented as specified in
Section 4.3.3 of <xref target="I-D.ietf-lamps-lightweight-cmp-profile"/>.<br />
Note that alternatively the registrar <bcp14>MAY</bcp14> modify the contents of requested certificate contents
as specified in Section 5.2.3.2 of <xref target="I-D.ietf-lamps-lightweight-cmp-profile"/>.</t>
    </list></t>
  <t>Certificate Request
  <list style="symbols">
      <t>Proof-of-possession <bcp14>SHALL</bcp14> be provided as defined in Section 4.1.1 (based on CRMF)
or Section 4.1.4 (based on PKCS#10) of the Lightweight CMP Profile
<xref target="I-D.ietf-lamps-lightweight-cmp-profile"/>.<br />
The <spanx style="verb">caPubs</spanx> field of certificate response messages <bcp14>SHOULD NOT</bcp14> be used.</t>
      <t>Proof-of-identity <bcp14>SHALL</bcp14> be provided by using signature-based
protection of the certification request message as outlined in
Section 3.2. of <xref target="I-D.ietf-lamps-lightweight-cmp-profile"/> using the IDevID secret.</t>
    </list></t>
  <t>Certificate Confirm
  <list style="symbols">
      <t>Explicit confirmation of new certificates to the RA
<bcp14>MAY</bcp14> be used as specified in Section 4.1.1
of the Lightweight CMP Profile <xref target="I-D.ietf-lamps-lightweight-cmp-profile"/>.<br />
Note that independently of certificate confirmation within CMP,
enrollment status telemetry with the registrar will be performed
as described in Section 5.9.4 of BRSKI <xref target="RFC8995"/>.</t>
    </list></t>
  <t>If delayed delivery of responses (for instance, to support asynchronous enrollment)
within CMP is needed, it <bcp14>SHALL</bcp14> be performed
as specified in Sections 4.4 and 5.1.2 of <xref target="I-D.ietf-lamps-lightweight-cmp-profile"/>.</t>
</list></t>

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

<t>This document does not require IANA actions.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

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

<t>The security considerations as laid out in the Lightweight CMP Profile
<xref target="I-D.ietf-lamps-lightweight-cmp-profile"/> apply as far as CMP is used.</t>

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

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

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference anchor='RFC4210' target='https://www.rfc-editor.org/info/rfc4210'>
<front>
<title>Internet X.509 Public Key Infrastructure Certificate Management Protocol (CMP)</title>
<author fullname='C. Adams' initials='C.' surname='Adams'><organization/></author>
<author fullname='S. Farrell' initials='S.' surname='Farrell'><organization/></author>
<author fullname='T. Kause' initials='T.' surname='Kause'><organization/></author>
<author fullname='T. Mononen' initials='T.' surname='Mononen'><organization/></author>
<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='RFC8366' target='https://www.rfc-editor.org/info/rfc8366'>
<front>
<title>A Voucher Artifact for Bootstrapping Protocols</title>
<author fullname='K. Watsen' initials='K.' surname='Watsen'><organization/></author>
<author fullname='M. Richardson' initials='M.' surname='Richardson'><organization/></author>
<author fullname='M. Pritikin' initials='M.' surname='Pritikin'><organization/></author>
<author fullname='T. Eckert' initials='T.' surname='Eckert'><organization/></author>
<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 &quot;voucher&quot;.</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='RFC8995' target='https://www.rfc-editor.org/info/rfc8995'>
<front>
<title>Bootstrapping Remote Secure Key Infrastructure (BRSKI)</title>
<author fullname='M. Pritikin' initials='M.' surname='Pritikin'><organization/></author>
<author fullname='M. Richardson' initials='M.' surname='Richardson'><organization/></author>
<author fullname='T. Eckert' initials='T.' surname='Eckert'><organization/></author>
<author fullname='M. Behringer' initials='M.' surname='Behringer'><organization/></author>
<author fullname='K. Watsen' initials='K.' surname='Watsen'><organization/></author>
<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='I-D.ietf-lamps-cmp-updates'>
   <front>
      <title>Certificate Management Protocol (CMP) Updates</title>
      <author fullname='Hendrik Brockhaus'>
	 <organization>Siemens AG</organization>
      </author>
      <author fullname='David von Oheimb'>
	 <organization>Siemens AG</organization>
      </author>
      <author fullname='John Gray'>
	 <organization>Entrust</organization>
      </author>
      <date day='12' month='January' year='2022'/>
      <abstract>
	 <t>   This document contains a set of updates to the syntax and transfer of
   Certificate Management Protocol (CMP) version 2.  This document
   updates RFC 4210, RFC 5912, and RFC 6712.

   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 &#39;.well-known&#39; HTTP path segments.

   To properly differentiate the support of EnvelopedData instead of
   EncryptedValue, the CMP version 3 is introduced in case a transaction
   is supposed to use EnvelopedData.

   CMP version 3 is introduced to enable signaling support of
   EnvelopedData instead of EncryptedValue and signaling the use of an
   explicit hash AlgorithmIdentifier in certConf messages, as far as
   needed.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-lamps-cmp-updates-17'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-lamps-cmp-updates-17.txt' type='TXT'/>
</reference>


<reference anchor='I-D.ietf-lamps-lightweight-cmp-profile'>
   <front>
      <title>Lightweight Certificate Management Protocol (CMP) Profile</title>
      <author fullname='Hendrik Brockhaus'>
	 <organization>Siemens AG</organization>
      </author>
      <author fullname='David von Oheimb'>
	 <organization>Siemens AG</organization>
      </author>
      <author fullname='Steffen Fries'>
	 <organization>Siemens AG</organization>
      </author>
      <date day='1' month='February' year='2022'/>
      <abstract>
	 <t>   This document aims at simple, interoperable, and automated PKI
   management operations covering typical use cases of industrial and
   IoT scenarios.  This is achieved by profiling the Certificate
   Management Protocol (CMP), the related Certificate Request Message
   Format (CRMF), and HTTP-based or CoAP-based transfer 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 special and complex use
   cases are supported as well, by features specified as recommended or
   optional.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-lamps-lightweight-cmp-profile-10'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-lamps-lightweight-cmp-profile-10.txt' type='TXT'/>
</reference>

<reference anchor='IEEE.802.1AR_2009' target='http://ieeexplore.ieee.org/servlet/opac?punumber=5367676'>
 <front>
  <title>IEEE Standard for Local and metropolitan area networks - Secure Device Identity</title>
  <author>
   <organization>IEEE</organization>
  </author>
  <date day='28' month='December' year='2009'/>
  <abstract><t>A secure device identifier (DevID) is cryptographically bound to a device and supports authentication of the devices identity. Locally significant identities can be securely associated with an initial manufacturer-provisioned DevID and used in provisioning and authentication protocols toallow a network administrator to establish the trustworthiness of a device and select appropriate policies for transmission and reception of data and control protocols to and from the device.</t>
   </abstract>
 </front>
 <seriesInfo name='IEEE' value='802.1AR-2009'/>
 <seriesInfo name='DOI' value='10.1109/ieeestd.2009.5367679'/>
</reference>



<reference anchor='RFC2119' target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author fullname='S. Bradner' initials='S.' surname='Bradner'><organization/></author>
<date month='March' year='1997'/>
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference anchor='RFC8174' target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author fullname='B. Leiba' initials='B.' surname='Leiba'><organization/></author>
<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'>





<reference anchor='RFC2986' target='https://www.rfc-editor.org/info/rfc2986'>
<front>
<title>PKCS #10: Certification Request Syntax Specification Version 1.7</title>
<author fullname='M. Nystrom' initials='M.' surname='Nystrom'><organization/></author>
<author fullname='B. Kaliski' initials='B.' surname='Kaliski'><organization/></author>
<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='RFC4211' target='https://www.rfc-editor.org/info/rfc4211'>
<front>
<title>Internet X.509 Public Key Infrastructure Certificate Request Message Format (CRMF)</title>
<author fullname='J. Schaad' initials='J.' surname='Schaad'><organization/></author>
<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' target='https://www.rfc-editor.org/info/rfc5272'>
<front>
<title>Certificate Management over CMS (CMC)</title>
<author fullname='J. Schaad' initials='J.' surname='Schaad'><organization/></author>
<author fullname='M. Myers' initials='M.' surname='Myers'><organization/></author>
<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' target='https://www.rfc-editor.org/info/rfc5652'>
<front>
<title>Cryptographic Message Syntax (CMS)</title>
<author fullname='R. Housley' initials='R.' surname='Housley'><organization/></author>
<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' target='https://www.rfc-editor.org/info/rfc5929'>
<front>
<title>Channel Bindings for TLS</title>
<author fullname='J. Altman' initials='J.' surname='Altman'><organization/></author>
<author fullname='N. Williams' initials='N.' surname='Williams'><organization/></author>
<author fullname='L. Zhu' initials='L.' surname='Zhu'><organization/></author>
<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='RFC7030' target='https://www.rfc-editor.org/info/rfc7030'>
<front>
<title>Enrollment over Secure Transport</title>
<author fullname='M. Pritikin' initials='M.' role='editor' surname='Pritikin'><organization/></author>
<author fullname='P. Yee' initials='P.' role='editor' surname='Yee'><organization/></author>
<author fullname='D. Harkins' initials='D.' role='editor' surname='Harkins'><organization/></author>
<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='RFC8894' target='https://www.rfc-editor.org/info/rfc8894'>
<front>
<title>Simple Certificate Enrolment Protocol</title>
<author fullname='P. Gutmann' initials='P.' surname='Gutmann'><organization/></author>
<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="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>


    </references>


<section anchor="using-est"><name>Using EST for Certificate Enrollment</name>

<t>When using EST with BRSKI, pledges interact via TLS with the domain registrar,
which acts both as EST server and as registration authority (RA).
The TLS connection is mutually authenticated,
where the pledge uses its IDevID certificate issued by its manufacturer.</t>

<t>In order to provide a strong proof-of-origin of the certification request,
EST has the option to include in the certification request
the so-called tls-unique value <xref target="RFC5929"/> of the underlying TLS channel.
This binding of the proof-of-identity of the TLS client, which is supposed to
be the certificate requester, to the proof-of-possession for the private key is
conceptually non-trivial and requires specific support by TLS implementations.</t>

<t>The registrar terminates the security association with the pledge at TLS level
and thus the binding between the certification request and the authentication
of the pledge.
The EST server uses the authenticated pledge identity provided by the IDevID
for checking the authorization of the pledge for the given certification request
before issuing to the pledge a domain-specific certificate (LDevID certificate).
This approach typically requires online or on-site availability of the RA
for performing the final authorization decision for the certification request.</t>

<t>Using EST for BRSKI has the advantage that the mutually authenticated TLS
connection established between the pledge and the registrar can be reused
for protecting the message exchange needed for enrolling the LDevID certificate.
This strongly simplifies the implementation of the enrollment message exchange.</t>

<t>Yet the use of TLS has the limitation that this cannot provide auditability
nor end-to-end security for the certificate enrollment request
because the TLS session is transient and terminates at the registrar.
This is a problem in particular if the enrollment is done via multiple hops,
part of which may not even be network-based.</t>

<t>A further limitation of using EST as the certificate enrollment protocol is that
due to using PKCS#10 structures in enrollment requests,
the only possible proof-of-possession method is a self-signature, which
excludes requesting certificates for key types that do not support signing.</t>

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

<t>This informative annex provides some detail to
the application examples listed in <xref target="list-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 building a train,
with track-side equipment, and/or possibly with backend systems.
These devices are typically unaware of backend system
connectivity. Managing certificates may be done during maintenance
cycles of the railroad car, but can already be prepared during
operation. Preparation will include generating certification requests,
which are collected and later forwarded for
processing, once the railroad car is connected to the operator backend.
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 enrollment of TLS certificates of
on-board and track-side components in the Subset-137 specifying the ETRAM/ETCS
on-line 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 with 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 as 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
(IEDs) 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 in order to support the
various capabilities of IEDs from different vendors. The IEC standard
IEC62351-9 <xref target="IEC-62351-9"/> specifies mandatory
support of two enrollment protocols: SCEP <xref target="RFC8894"/> and EST
<xref target="RFC7030"/> for the infrastructure side, while
the IED must only support one of the two.</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 connections 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-policy"><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 registration authority 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. Especially the CA/Browser
forum currently increases the security requirements in the certificate
issuance procedures for publicly trusted certificates.
In case the on-site components of the target domain cannot be operated securely
enough for the needs of a registration authority, 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>From IETF draft 06 -&gt; IETF draft 06:</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.</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="discovery_eo"/> 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="discovery_eo"/> 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 offsite 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>

<!--
LocalWords: bcp uc prot vexchange enrollfigure req eo selander coap
LocalWords: oscore fullcmc simpleenroll tls env brski UC seriesinfo
LocalWords: Attrib lt docname ipr toc anima async wg symrefs ann ae
LocalWords: sortrefs iprnotified Instantiation caPubs raVerified repo
-->

</section>


  </back>

<!-- ##markdown-source:
H4sIAOybTWIAA9V9a3fbVnbod/yKU3utRkpIypLtJNakWWUoOVHHtnRFO+l0
VuqC5KGIGgRYAJSsOr6/5f6W+8vufp4HAMpyZqbt1ZqJJRI4j3322e/HcDhM
kiZrcntsvvjhcvrHs+H49NiM88ZWRdpk19acFlWZ52tbNOaiKptyXua1yQpD
T3+RpLNZZa+Pjb6cLMp5ka5hvEWVLpthZpvlMC2ydTqcVfW7bJja4aNHSd2k
xeJtmpcFPNlUW5tkm4p+q5ujR4+ePTpK0sqmx+Z8YytYSFnUBt4wL9MivbK4
muTmChb66uzl2PzyY/Lu5ticFbhq2wxPcOZknjbHpm4WyRxetkW9rWWmRdrA
pEePjo6STXacGAObgu3f2voL+GNerjfpvPEf1Lfryi7r4IOyauJPYO1F2WTL
zC7gw6Kkp5oq88Ok22ZVVsfJEEAHL56MzHVZmPOVzdYzeJghdpJeZ4v4C4A9
fGEXWVNW8GdZwaanGQKgNuMf4ROFv3zIE1sLE583TTn8KV0Vw8usuDJf496y
5vbYvNwW2XxFW13guX97+M3jZ7z1bdFU8MSPtlqnxS18ZNdplsNZ4spGsLJR
SSv7x5qnGwG04KltlR2bVdNs6uODg5ubm1Hw9YHueToyz6vM1m6708Yul7Zw
n/53ba7mdYyWuI7fs7OfRuaHqpy/W6Vbv7ufbLGosnfRN/9dO1zxWkYzXcvv
2eXpyLywaeU2eJpnZaMf0c4mWT0vzfQWALoOt3IJ620y+Cuta2u+cTv5Jc3z
rLZ5bgu3nclPw28fP3oSbmd6kzX/aasc7j98vFkRzXjw1ZND8+SJ+fabb80z
oBgP/G5zWNI/znEttL2iBGggKcOrfvl88uTo8JH8+u3jr7/WX589e4q/ng1P
RkSz8nS9qYfz9Wa43SDFqHu+zbOrVXNj8b/05KYql1lOE52dnp6Ovn10NDoc
X75FinacZMWytZSjZ99+7Vd1KL8+PfrmSH/9+qn79dnRM/n1m0eP3Q6+ffaE
p5sMvz56/PRwSA8BTROiDl8Y+sIMzUV5YyugZ3Q+Zu1IKVFWOJtynsFGF8Yt
FCiRfT9fpcWVpUENDHKSNim9ALBdIyoKda7tHNCoucV50qoxz+Asb2c4n37x
zt6Gky6JouHPJliXsf+xzTb4wBf0rRJOnpzQjOk8TZvmgIZ23gBjsvMVLiY3
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
XrsI836/3wJUml2GDIA5jEoC6AX1eVXVR2hHxT4Md/9W2RXqNaFc7Q4Unbih
qcHXgiRcJv0p6Yij7LH19mpLVlBAi8m4dvUZ4ARQ8tDp3dMuAjgAFVmFFjzG
KUkuJCPjc5PxwQ8VSJAwBEy9XWtNDao5PUeEbPu5ooC5jr/RJrgrtJ4Fs9Ku
uDYuTouFN+IoK+625aJFeyq695XxDYpgOtmclomVz21B0rQKIUxYSa7txyLh
Oaq5uEjQRBV9bZJZdGsMexwh+r7i5GiP2rmitgKR7c8/wTJKlrYnXJPWvP7h
hLpQnIIUXVbHWiQSW2M3lm3Tb1f82keQ1ZDinJ2+fm4WVbpszKOvzfD7+AMK
Nb+0WA5efUObUgoIoG2TiFZUUhIjWbTKKO03LDdJ8YMLVEpdJUsq8601cRwP
dm0PqIjB1RUH1qGLtbQVViMxp1gnusEBf0hzRBhMa97Ohvu1yi1y4eAurEC/
BxrtZ2d7e81tGi+CmJyivDHi4HaBtj2AetIG1FMC1EkKGre5hlHPYd71jKJV
14yUlo6EAoWmDVyMNRkCgTssyNqKcSWlVIFhPa3MyytAq2yNirxFgK3XaDm2
zZxHWWVLFgbsGjVxNKKWXMc9LHvwiZR1GopTr/iGYM0jSnqnhcF9GyJFRg5S
oGonhnyJ4d/Q2jjc/yU1AwR+aiXjkVxEhQKbM2W7fg2KPmh5R/x4jHJ4W4nq
YbNvvgccR0cuKNCVkLvg4buzDx46HPUc4OP2AT451jkX5s3kyCW0IR+QOEml
u66Ln4R2of64pgbZgO4YMK/SiQZGxSLXQitIc8hJ0GMS1VvWVmkUiZsyL4lW
yTsUnFAV7jauS8yeVwscGonnzl4D++CQsDCPr/XKn8avfpQ+h7plgjInCXE4
PQ7iqtviKt9MDgO8WYSJCHdHeo/8FezclRQ3N2SCigSuc2ZH7TN7TGf2Eyjq
9p21G7pHTOqwLK8txF4DBDslZObNakKfTy2hHR3hAlrfUQ0VaRinXVt9ajfQ
1iUH/qmHwU9KhxnAVqbwS0FvRkV6h5H4mfRKUtrfo7R268olxFlZbN6d/gtm
H2xnOPo2p6pXXXgdtuF1xERK9GsXrMVljIOaFGHTTFn5SNpKG76pSdDnlgfH
9/7pfHqqLW417A5d1ctUE6goE9BqUTB/sXV2CXyJajEw5AjQrz1hlAtxLGf8
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
1GuSbAebkkrQ/T/TW/nwb9wAAA==

-->

</rfc>

