<?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.8 (Ruby 2.6.10) -->


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

]>

<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc linkmailto="no"?>
<?rfc editing="no"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc rfcedstyle="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-anima-rfc8366bis-15" category="std" consensus="yes" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="Voucher Artifact">A Voucher Artifact for Bootstrapping Protocols</title>

    <author initials="K." surname="Watsen" fullname="Kent Watsen">
      <organization>Watsen Networks</organization>
      <address>
        <email>kent+ietf@watsen.net</email>
      </address>
    </author>
    <author initials="M." surname="Richardson" fullname="Michael C. Richardson">
      <organization>Sandelman Software</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
        <uri>http://www.sandelman.ca/</uri>
      </address>
    </author>
    <author initials="M." surname="Pritikin" fullname="Max Pritikin">
      <organization>Cisco Systems</organization>
      <address>
        <email>pritikin@cisco.com</email>
      </address>
    </author>
    <author initials="T." surname="Eckert" fullname="Toerless Eckert">
      <organization>Futurewei Technologies Inc.</organization>
      <address>
        <postal>
          <street>2330 Central Expy</street>
          <city>Santa Clara</city>
          <code>95050</code>
          <country>United States of America</country>
        </postal>
        <email>tte@cs.fau.de</email>
      </address>
    </author>
    <author initials="Q." surname="Ma" fullname="Qiufang Ma">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>
          <city>Nanjing</city>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>maqiufang1@huawei.com</email>
      </address>
    </author>

    <date year="2025" month="October" day="20"/>

    <area>Operations</area>
    <workgroup>ANIMA Working Group</workgroup>
    <keyword>voucher</keyword>

    <abstract>


<?line 118?>

<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 or CBOR document
that has been signed using a variety of cryptographic systems.</t>

<t>The voucher artifact is normally generated by
the Pledge's manufacturer (i.e., the Manufacturer Authorized Signing
Authority (MASA)).</t>

<t>This document updates RFC8366, includes a number of desired extensions into the YANG.
The voucher request defined in RFC8995 is also now included in this document, as well as other YANG extensions needed for variants of BRSKI/RFC8995.</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-rfc8366bis/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        anima Working Group mailing list (<eref target="mailto:anima@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/anima/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/anima/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/anima-wg/voucher"/>.</t>
    </note>


  </front>

  <middle>


<?line 135?>

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

<t>This document defines a strategy to securely assign a candidate device
(Pledge) to an owner using an artifact signed, directly or indirectly,
by the Pledge's manufacturer, i.e., the Manufacturer Authorized
Signing Authority (MASA).  This artifact is known as the "voucher".</t>

<t>The voucher artifact is a JSON <xref target="RFC8259"/> document that
conforms with a data model described by YANG <xref target="RFC7950"/>.
It may also be serialized to CBOR <xref target="CBOR"/>.
It is encoded using the rules defined in <xref target="RFC7951"/> or <xref target="RFC9254"/>, and
is signed using (by default) a CMS structure <xref target="RFC5652"/>.</t>

<t>The primary purpose of a voucher is to securely convey a trust anchor
that a Pledge can use to authenticate subsequent interactions.
The trust anchor may be in the form of a certificate (the "pinned-domain-cert" attribute), a hash of a certificate, or it can be a raw public key (in constrained variations).</t>

<t>This trust anchor represents the authority of the owner of a network.
Communicating this trust anchor securely to the Pledge is the job of the voucher artifact.
The act of communicating this trust anchor is known as pinning the trust anchor, as the Pledge can then use the resulting anchor to authenticate other actors who are part of the network.
The collection of all these actors is collectively known as the network domain.
(This is not related to the domain name system, but rather the term is of mathematical origin)</t>

<t>A voucher may be useful in several contexts, but the driving motivation herein is to support secure onboarding mechanisms.
This is accomplished by assigning an owner to the Pledge, enabling it to authenticate the network that it is connected to.</t>

<t><xref target="RFC8366"/> originally defined just the voucher artifact, leaving the Voucher Request artifiact that is important to BRSKI to be defined in <xref target="BRSKI"/>.
This document includes both Voucher and Voucher-Request, and therefore updates <xref target="BRSKI"/>.</t>

<t>YANG is not easily extended except by updating the YANG definition.
Since <xref target="RFC8366"/> was written, the pattern is to publish YANG modules as two documents: one with only the YANG module, and the other one with usage, motivation and further explanation.
This allows the YANG module to be updated without replacing all of the context.
This document does not follow that pattern, but future updates are may update only the YANG.</t>

<t>This document also introduces an experimental mechanism to support future extensions without requiring the YANG to be replaced.
This includes both new IETF Standard mechanisms, as well as a facility for manufacturer private extensions.</t>

<t>The lifetimes of vouchers may vary.
In some onboarding protocols, the vouchers may include a nonce restricting them to a single use,  whereas the vouchers in other onboarding protocols may have an
indicated lifetime.
In order to support long lifetimes, this document recommends using short lifetimes with programmatic renewal, see <xref target="renewal-over-revocation"/>.</t>

<t>Some onboarding protocols using the voucher artifact defined in
this document include: <xref target="ZERO-TOUCH"/>, <xref target="SECUREJOIN"/>, and <xref target="BRSKI"/>.</t>

</section>
<section anchor="terminology"><name>Terminology</name>

<t>This document uses the following terms:</t>

<dl>
  <dt>(Voucher) Artifact:</dt>
  <dd>
    <t>Used throughout to represent the voucher as instantiated in the form
of a signed structure.</t>
  </dd>
  <dt>Bootstrapping:</dt>
  <dd>
    <t>The process where a Pledge component obtains cryptographic key material to identify
 and trust future interactions within a specific domain network. Based on imprinted
 key material provided during manufacturing process (see imprinting).</t>
  </dd>
  <dt>Domain:</dt>
  <dd>
    <t>The set of entities or infrastructure under common administrative
control.
The goal of the onboarding protocol is to enable a Pledge component to
join a domain and obtain domain specific security credentials.</t>
  </dd>
  <dt>Imprint:</dt>
  <dd>
    <t>The process where a device obtains the cryptographic key material to
identify and trust future interactions generally as part of the manufacturing.
This term is taken from Konrad Lorenz's work in biology with new ducklings:
"during a critical period, the duckling would assume that anything
that looks like a mother duck is in fact their mother"
<xref target="Stajano99theresurrecting"/>. An equivalent for a device is to
obtain the fingerprint of the manufacturer's root certification authority (root ca)
certificate. A device that imprints on an attacker suffers a similar
fate to a duckling that imprints on a hungry wolf. Imprinting is a
term from psychology and ethology, as described in <xref target="imprinting"/>.</t>
  </dd>
  <dt>Join Registrar (and Coordinator):</dt>
  <dd>
    <t>A representative of the domain that is configured, perhaps
autonomically, to decide whether a new device is allowed to join the
domain. The administrator of the domain interfaces with a join
registrar (and Coordinator) to control this process.
Typically, a join registrar is "inside" its domain. For simplicity,
this document often refers to this as just "registrar".</t>
  </dd>
  <dt>MASA (Manufacturer Authorized Signing Authority):</dt>
  <dd>
    <t>The entity that, for the purpose of this document, issues and signs the
vouchers for a manufacturer's Pledges.
In some onboarding protocols, the MASA may have an Internet
presence and be integral to the onboarding process, whereas in
other protocols the MASA may be an offline service that has no
active role in the onboarding process.</t>
  </dd>
  <dt>malicious registrar:</dt>
  <dd>
    <t>An on-path active attacker that presents itself as a legitimate registrar, but which is in fact under the control of an attacker.</t>
  </dd>
  <dt>Onboarding:</dt>
  <dd>
    <t>Onboarding describes the process to provide necessary operational data to Pledge
components and completes the process to bring a device into an operational state.
This data may be configuration data, or also application specific cryptographic
key material (application speciifc security credentials).</t>
  </dd>
  <dt>Owner:</dt>
  <dd>
    <t>The entity that controls the private key of the "pinned-domain-cert"
certificate conveyed by the voucher.</t>
  </dd>
  <dt>Pledge:</dt>
  <dd>
    <t>The prospective component attempting to find and securely join a
domain.
When shipped or in factory reset mode, it only trusts authorized representatives of the
manufacturer.</t>
  </dd>
  <dt>Registrar:</dt>
  <dd>
    <t>See join registrar.</t>
  </dd>
  <dt>TOFU (Trust on First Use):</dt>
  <dd>
    <t>Where a Pledge component makes no security decisions but rather simply
trusts the first domain entity it is contacted by.
Used similarly to <xref target="RFC7435"/>.
This is also known as the "resurrecting duckling" model.</t>
  </dd>
  <dt>Voucher:</dt>
  <dd>
    <t>A short form for Voucher Artifact.  It refers to the signed statement
from the MASA service that indicates to a Pledge
the cryptographic identity of the domain it should trust.
When clarity is needed, it may be preceeded by the type of the signature, such as CMS, JWS or COSE.</t>
  </dd>
  <dt>Voucher Data:</dt>
  <dd>
    <t>The raw (serialized) representation of the YANG without any enclosing signature.
Current formats include JSON and CBOR.</t>
  </dd>
  <dt>Voucher Request:</dt>
  <dd>
    <t>A signed artifact sent from the Pledge to the Registrar, or from the Registrar to the MASA for Voucher acquisition.</t>
  </dd>
  <dt>Pledge Voucher Request (PVR):</dt>
  <dd>
    <t>A signed artifact sent from the Pledge to the Registrar. It is a special form of Voucher Request.</t>
  </dd>
  <dt>Registrar Voucher Request (RVR):</dt>
  <dd>
    <t>A signed artifact sent from the Registrar to the MASA. It is a special form of Voucher Request.</t>
  </dd>
</dl>

</section>
<section anchor="requirements-language"><name>Requirements Language</name>

<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

<?line -18?>

</section>
<section anchor="survey-of-voucher-types"><name>Survey of Voucher Types</name>

<t>A voucher is a cryptographically protected statement to the Pledge
device authorizing a zero-touch "imprint" on the join registrar of the
domain. The specific information a voucher provides is influenced by the
onboarding use case.</t>

<t>The voucher can impart the following information to
the join registrar and Pledge:</t>

<dl>
  <dt>Assertion Basis:</dt>
  <dd>
    <t>Indicates the method that protects
the imprint (this is distinct from the voucher signature that
protects the voucher itself). This includes
manufacturer-asserted ownership verification, assured
logging operations, or reliance on Pledge behavior
such as secure root of trust
of measurement. The join registrar uses this information to make a determination as to whether to accept the Pledge into the network.
Only some methods are normatively defined in this
document. Other methods are left for future work.</t>
  </dd>
  <dt>Authentication of Join Registrar:</dt>
  <dd>
    <t>Indicates how the Pledge
can authenticate the join registrar.  This document defines
a mechanism to pin the domain certificate, or a raw public key.
Pinning a symmetric key, or "CN-ID" or "DNS-ID"
information (as defined in <xref target="RFC6125"/>) is left for future work.</t>
  </dd>
  <dt>Anti-Replay Protections:</dt>
  <dd>
    <t>Time- or nonce-based
information to constrain the voucher to time periods or bootstrap
attempts.</t>
  </dd>
</dl>

<t>A number of onboarding scenarios can be met using differing
combinations of this information. All scenarios address the primary
threat of an on-path active attacker (or MiTM) impersonating the registrar.
This would gain control over the Pledge.
The following combinations are "types" of vouchers:</t>

<texttable>
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='right'>Assertion</ttcol>
      <ttcol align='right'>&#160;</ttcol>
      <ttcol align='right'>Registrar ID</ttcol>
      <ttcol align='right'>&#160;</ttcol>
      <ttcol align='right'>Validity</ttcol>
      <ttcol align='right'>&#160;</ttcol>
      <c>Voucher Type</c>
      <c>Logged</c>
      <c>Verified</c>
      <c>Trust Anchor</c>
      <c>CN-ID or DNS-ID</c>
      <c>RTC</c>
      <c>Nonce</c>
      <c>Audit</c>
      <c>X</c>
      <c>&#160;</c>
      <c>X</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>X</c>
      <c>Nonceless Audit</c>
      <c>X</c>
      <c>&#160;</c>
      <c>X</c>
      <c>&#160;</c>
      <c>X</c>
      <c>&#160;</c>
      <c>Owner Audit</c>
      <c>X</c>
      <c>X</c>
      <c>X</c>
      <c>&#160;</c>
      <c>X</c>
      <c>X</c>
      <c>Owner ID</c>
      <c>&#160;</c>
      <c>X</c>
      <c>X</c>
      <c>X</c>
      <c>X</c>
      <c>&#160;</c>
      <c>Bearer voucher</c>
      <c>X</c>
      <c>&#160;</c>
      <c>wildcard</c>
      <c>wildcard</c>
      <c>optional</c>
      <c>opt</c>
</texttable>

<t>NOTE: All voucher types include a 'Pledge ID serial-number'
      (not shown here for space reasons).</t>

<dl>
  <dt>Audit Voucher:</dt>
  <dd>
    <t>An Audit Voucher is named after the logging assertion mechanisms
that the registrar then "audits" to enforce local policy. The
registrar mitigates a malicious registrar by auditing that an unknown
malicious registrar does not appear in the log entries.
This does not
directly prevent a malicious registrar but provides a response mechanism that
ensures the on-path-attack is unsuccessful.
An advantage is that actual ownership knowledge (i.e., sales integration providing an indication of who purchased the device) is not required on the MASA service.</t>
  </dd>
  <dt>Nonceless Audit Voucher:</dt>
  <dd>
    <t>An Audit Voucher without a validity period statement. Fundamentally,
it is the same as an Audit Voucher except that it can be issued in
advance to support network partitions or to provide a permanent
voucher for remote deployments.
Being issued in advance of the Pledge being online, the Pledge can not provide a nonce to be included for freshness.
This compromise in reducing the freshness allows for the resulting voucher can be carried across air-gapped infrastructure.
In addition, as there is no end to the validity period, the voucher can be used after the manufacturer (and it's delegates) has gone out of business.</t>
  </dd>
  <dt>Ownership Audit Voucher:</dt>
  <dd>
    <t>An Audit Voucher where the MASA service has verified the registrar
as the authorized owner.
The MASA service mitigates a MiTM registrar by refusing to generate
Audit Vouchers for unauthorized registrars. The registrar uses audit
techniques to supplement the MASA. This provides an ideal sharing of
policy decisions and enforcement between the vendor and the owner.</t>
  </dd>
  <dt>Ownership ID Voucher:</dt>
  <dd>
    <t>Named after inclusion of the Pledge's CN-ID or DNS-ID within the
voucher. The MASA service mitigates a MiTM registrar by identifying
the specific registrar (via WebPKI) authorized to own the Pledge.</t>
  </dd>
  <dt>Bearer Voucher:</dt>
  <dd>
    <t>A Bearer Voucher is named after the inclusion of a registrar ID
wildcard. Because the registrar identity is not indicated, this
voucher type must be treated as a secret and protected from exposure
as any 'bearer' of the voucher can claim the pledge
device.  This variation is included in the above description in order to clearly
how other voucher types differ.
This specification does not support bearer vouchers at this time.
There are other specifications in the industry which are equivalent though.
Publishing a nonceless bearer voucher effectively turns the
specified pledge into a "TOFU" device with minimal mitigation
against MiTM registrars. Bearer vouchers are therefore out of scope.</t>
  </dd>
</dl>

</section>
<section anchor="changes-since-rfc8366"><name>Changes since RFC8366</name>

<section anchor="extendfail"><name>Attempts and motivation to extend RFC8366</name>

<t><xref target="RFC8366"/> was published in 2018 during the development of <xref target="BRSKI"/>,
<xref target="ZERO-TOUCH"/> and other work-in-progress efforts.
Since then the industry has matured significantly, and the in-the-field activity which this document supports has become known as <em>onboarding</em> rather than <em>bootstrapping</em>.</t>

<t>The focus of <xref target="BRSKI"/> was onboarding of ISP and Enterprise owned wired routing and switching equipment, with IoT devices being a less important aspect.
<xref target="ZERO-TOUCH"/> has focused upon onboarding of CPE equipment like cable modems and other larger IoT devices, again with smaller IoT devices being of less import.</t>

<t>Since <xref target="BRSKI"/> was published there is now a mature effort to do application-level onboarding of constrained IoT devices defined by The Thread and Fairhair (now OCF) consortia <xref target="fairhair"/>.
The <xref target="cBRSKI"/> document has defined a version of <xref target="BRSKI"/> that is useable over constrained 802.15.4 networks using CoAP and DTLS, while <xref target="I-D.selander-ace-ake-authz"/> provides for using CoAP and EDHOC on even more constrained devices with very constrained networks.</t>

<t><xref target="PRM"/> has created a new methodology for onboarding that does not depend upon a synchronous connection between the Pledge and the Registrar.
This mechanism uses a mobile Registrar Agent that works to collect and transfer signed artifacts via physical travel from one network to another.</t>

<t>Both <xref target="cBRSKI"/> and <xref target="PRM"/> require extensions to the Voucher Request and the resulting Voucher. The new attribtes are required to carry the additional attributes and describe the extended semantics.
In addition <xref target="cBRSKI"/> uses the serialization mechanism described in <xref target="YANGCBOR"/> to produce significantly more compact artifacts.</t>

<t>When the process to define <xref target="cBRSKI"/> and <xref target="PRM"/> was started, there was a belief that the appropriate process was to use the <xref target="RFC8040"/> <em>augment</em> mechanism to further extend both the voucher request <xref target="BRSKI"/> and voucher <xref target="RFC8366"/> artifacts.
However, <xref target="PRM"/> needs to extend an enumerated type with additional values and <em>augment</em> can not do this, so that was initially the impetus for this document.</t>

<t>An attempt was then made to determine what would happen if one wanted to have a constrained version of the <xref target="PRM"/> voucher artifact.
The result was invalid YANG, with multiple definitions of the core attributes from the <xref target="RFC8366"/> voucher artifact.
After some discussion, it was determined that the <em>augment</em> mechanism did not work, nor did it work better when <xref target="RFC8040"/> yang-data was replaced with the <xref target="RFC8791"/> structure mechanisms.</t>

<t>After significant discussion the decision was made to simply roll all of the needed extensions  into this document.</t>

</section>
<section anchor="informational-model-changes-since-rfc8366"><name>Informational Model changes since RFC8366</name>

<t>This document therefore represents a merge of YANG definitions from <xref target="RFC8366"/>, the voucher-request from <xref target="BRSKI"/>, and then extensions to each of these from <xref target="cBRSKI"/>, <xref target="CLOUD"/> and <xref target="PRM"/>.
The difficulty with this approach is that the semantics of the definitions needed for the other documents is not included in this document, but rather in the respective other documents.</t>

</section>
</section>
<section anchor="signature-mechanisms"><name>Signature mechanisms</name>

<t>Three signature systems have been defined for vouchers and voucher-requests.</t>

<t><xref target="cBRSKI"/> defines a mechanism that uses COSE <xref target="RFC9052"/>, with the voucher data encoded using <xref target="RFC9254"/>.
However, as the SID process requires up-to-date YANG, the SID values for this mechanism are presented in this document.</t>

<t><xref target="jBRSKI"/> defines a mechanism that uses JSON <xref target="RFC8259"/> and <xref target="JWS"/>.</t>

<t>The CMS mechanism first defined in <xref target="RFC8366"/> continues to be defined here.</t>

<section anchor="cms-voucher"><name>CMS Format Voucher Artifact</name>

<t>The IETF evolution of PKCS#7 is CMS <xref target="RFC5652"/>.
A CMS-signed voucher, the default type, contains a ContentInfo
structure with the voucher content. An eContentType of 40
indicates that the content is a JSON-encoded voucher.</t>

<t>The signing structure is a CMS SignedData structure, as specified by
Section 5.1 of <xref target="RFC5652"/>, encoded using ASN.1 Distinguished Encoding
Rules (DER), as specified in ITU-T X.690 <xref target="ITU-T.X690.2015"/>.</t>

<t>To facilitate interoperability, <xref target="vcj"/> the media type "application/voucher-cms+json" and the filename extension ".vcj" were registered by <xref target="RFC8366"/>.</t>

<t>The CMS structure <bcp14>MUST</bcp14> contain a 'signerInfo' structure, as
described in Section 5.1 of <xref target="RFC5652"/>, containing the
signature generated over the content using a private key
trusted by the recipient.
Normally, the recipient is the Pledge and the signer is the MASA.
In the Voucher Request, the signer is the Pledge, or the Registrar.
Within this document, the signer is assumed to be the MASA.</t>

<t>Note that Section 5.1 of <xref target="RFC5652"/> includes a
discussion about how to validate a CMS object, which is really a
PKCS7 object (cmsVersion=1).  Intermediate systems (such the
Bootstrapping Remote Secure Key Infrastructures <xref target="BRSKI"/> registrar)
that might need to evaluate the voucher in flight <bcp14>MUST</bcp14> be prepared for
such an older format.
No signaling is necessary, as the manufacturer knows the capabilities
of the Pledge and will use an appropriate format voucher for each
Pledge.</t>

<t>The CMS structure <bcp14>SHOULD</bcp14> also contain all of the certificates
leading up to and including the signer's trust anchor certificate
known to the recipient.  The inclusion of the trust anchor is
unusual in many applications, but third parties cannot accurately
audit the transaction without it.</t>

<t>The CMS structure <bcp14>MAY</bcp14> also contain revocation objects for any
intermediate certificate authorities (CAs) between the
voucher issuer and the trust anchor known to the recipient.
However, the use of CRLs and other validity mechanisms is
discouraged, as the Pledge is unlikely to be able to perform
online checks and is unlikely to have a trusted clock source.
As described below, the use of short-lived vouchers and/or a
Pledge-provided nonce provides a freshness guarantee.</t>

</section>
</section>
<section anchor="voucher"><name>Voucher Artifact</name>

<t>The voucher's primary purpose is to securely assign a Pledge to an
owner.
The voucher informs the Pledge which entity it should consider to be
its owner.</t>

<t>This document defines a voucher that is JSON-encoded, and CMS signed encoding of the
data defined in the YANG module <xref target="voucher-yang-module"/>.</t>

<t>This format is described here as a practical basis for some uses (such
as in NETCONF), but more to clearly indicate what vouchers look like
in practice.
This description also serves to validate the YANG data model.</t>

<t><xref target="RFC8366"/> defined a media type and a filename extension for the
CMS-encoded JSON type.
The media types for JOSE format vouchers is defined in <xref target="jBRSKI"/> and the COSE format voucher is defined in <xref target="cBRSKI"/>.</t>

<t>The Media Type is used by the Pledge (to the Registrar) and from the Registrar (to the MASA) to signal what format of voucher is expected.
Other aspects of the voucher, such as it being nonce-less or which kind of pinned anchor is used is not part of the Media type.</t>

<t>Only the format of voucher that is expected is signaled in the form of a (MIME)  Media
Content-Type in the HTTP Accept: header.</t>

<t>For vouchers stored/transferred via methods like a USB storage device (USB key), then the voucher format is usually signaled by a filename extension.</t>

<section anchor="voucher-tree-diagram"><name>Tree Diagram</name>

<t>The following tree diagram illustrates a high-level view of a voucher
document.
The notation used in this diagram is described in <xref target="RFC8340"/>.
Each node in the diagram is fully described by the YANG module in
<xref target="voucher-yang-module"/>.
Please review the YANG module for a detailed description of the
voucher format.</t>

<figure><artwork><![CDATA[
module: ietf-voucher

  structure voucher:
    +-- voucher
    |  +-- created-on?                        yang:date-and-time
    |  +-- extensions*                        string
    |  +-- assertion?                         enumeration
    |  +-- serial-number                      string
    |  +-- idevid-issuer?                     binary
    |  +-- (pinning)?
    |  |  +--:(pinned-domain-cert)
    |  |  |  +-- pinned-domain-cert?          binary
    |  |  +--:(pinned-domain-pubk)
    |  |  |  +-- pinned-domain-pubk?          binary
    |  |  +--:(pinned-domain-pubk-sha256)
    |  |     +-- pinned-domain-pubk-sha256?   binary
    |  +-- domain-cert-revocation-checks?     boolean
    |  +-- last-renewal-date?                 yang:date-and-time
    +-- (nonceless)?
    |  +--:(expires-on)
    |  |  +-- expires-on?               yang:date-and-time
    |  +--:(nonce)
    |     +-- nonce?                    binary
    +-- est-domain?                     ietf:uri
    +-- additional-configuration-url?   ietf:uri
]]></artwork></figure>

</section>
<section anchor="voucher-examples"><name>Examples</name>

<t>This section provides voucher examples for illustration
purposes.  These examples conform to the encoding rules
defined in <xref target="RFC8259"/>.</t>

<t>The following example illustrates an ephemeral voucher (uses a nonce).
The MASA generated this voucher using the 'logged' assertion type, knowing
that it would be suitable for the Pledge making the request.</t>

<figure><artwork><![CDATA[
{
  "ietf-voucher:voucher": {
    "created-on": "2016-10-07T19:31:42Z",
    "assertion": "logged",
    "serial-number": "JADA123456789",
    "idevid-issuer": "base64encodedvalue==",
    "pinned-domain-cert": "base64encodedvalue==",
    "nonce": "base64encodedvalue=="
  }
}
]]></artwork></figure>

<t>The following example illustrates a non-ephemeral voucher (no nonce).
While the voucher itself expires after two weeks, it presumably can
be renewed for up to a year.   The MASA generated this voucher
using the 'verified' assertion type, which should satisfy all Pledges.</t>

<figure><artwork><![CDATA[
{
  "ietf-voucher:voucher": {
    "created-on": "2016-10-07T19:31:42Z",
    "expires-on": "2016-10-21T19:31:42Z",
    "assertion": "verified",
    "serial-number": "JADA123456789",
    "idevid-issuer": "base64encodedvalue==",
    "pinned-domain-cert": "base64encodedvalue==",
    "domain-cert-revocation-checks": true,
    "last-renewal-date": "2017-10-07T19:31:42Z"
  }
}
]]></artwork></figure>

<t><xref section="8" sectionFormat="comma" target="jBRSKI"/> contains examples of vouchers encoded in JSON, and signed with <xref target="JWS"/>.
<xref section="9" sectionFormat="comma" target="cBRSKI"/> contains examples of vouchers encoded in CBOR, and signed with <xref target="COSE"/>.</t>

</section>
<section anchor="voucher-yang-module"><name>YANG Module</name>

<figure><sourcecode type="yang" markers="true"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

module ietf-voucher {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-voucher";
  prefix vch;

  import ietf-yang-types {
    prefix yang;
    reference
      "RFC 6991: Common YANG Data Types";
  }
  import ietf-inet-types {
    prefix ietf;
    reference
      "RFC 6991: Common YANG Data Types";
  }
  import ietf-yang-structure-ext {
    prefix sx;
  }

  organization
    "IETF ANIMA Working Group";
  contact
    "WG Web:   <https://datatracker.ietf.org/wg/anima/>
     WG List:  <mailto:anima@ietf.org>
     Author:   Kent Watsen
               <mailto:kent+ietf@watsen.net>
     Author:   Michael Richardson
               <mailto:mcr+ietf@sandelman.ca>
     Author:   Max Pritikin
               <mailto:pritikin@cisco.com>
     Author:   Toerless Eckert
               <mailto:tte@cs.fau.de>
     Author:   Qiufang Ma
               <mailto:maqiufang1@huawei.com>";
  description
    "This module defines the format for a voucher, which is
     produced by a pledge's manufacturer or delegate (MASA)
     to securely assign a pledge to an 'owner', so that the
     pledge may establish a secure connection to the owner's
     network infrastructure.

     Copyright (c) 2024 IETF Trust and the persons identified as
     authors of the code.  All rights reserved.

     Redistribution and use in source and binary forms, with or
     without modification, is permitted pursuant to, and subject to
     the license terms contained in, the Revised BSD License set
     forth in Section 4.c of the IETF Trust's Legal Provisions
     Relating to IETF Documents
     (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC XXXX
     (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
     for full legal notices.

     RFCEDITOR: please replace XXXX with the RFC number assigned.

     The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
     NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
     'MAY', and 'OPTIONAL' in this document are to be interpreted as
     described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
     they appear in all capitals, as shown here.";

  revision 2023-01-10 {
    description
      "updated to support new assertion enumerated type";
    reference
      "RFC XXXX Voucher Profile for Bootstrapping Protocols";
  }

  grouping voucher-artifact-grouping {
    description
      "Grouping to allow reuse/extensions in future work.";
    container voucher {
      description
        "A voucher assigns a pledge to an owner using
         the (pinned-domain-cert) value.";
      leaf created-on {
        type yang:date-and-time;
        description
          "A value indicating the date this voucher was created.
           This node is primarily for human consumption and auditing.
           Future work MAY create verification requirements based on
           this node.";
      }
      leaf-list extensions {
        type string {
          length "1..40";
        }
        description
          "A list of extension names that are used in this Voucher
           file.  Each name is registered with the IANA and
           described in an RFC.";
      }
      leaf assertion {
        type enumeration {
          enum verified {
            value 0;
            description
              "Indicates that the ownership has been positively
               verified by the MASA (e.g., through sales channel
               integration).";
          }
          enum logged {
            value 1;
            description
              "Indicates that the voucher has been issued after
               minimal verification of ownership or control.  The
               issuance has been logged for detection of
               potential security issues (e.g., recipients of
               vouchers might verify for themselves that unexpected
               vouchers are not in the log).  This is similar to
               unsecured trust-on-first-use principles but with the
               logging providing a basis for detecting unexpected
               events.";
          }
          enum proximity {
            value 2;
            description
              "Indicates that the voucher has been issued after
               the MASA verified a proximity proof provided by the
               device and target domain.  The issuance has been
               logged for detection of potential security issues.";
          }
          enum agent-proximity {
            value 3;
            description
              "Mostly identical to proximity, but
               indicates that the voucher has been issued
               after the MASA has verified a statement that
               a registrar agent has made contact with the device.";
          }
        }
        description
          "The assertion is a statement from the MASA regarding how
           the owner was verified.  This statement enables pledges
           to support more detailed policy checks.  Pledges MUST
           ensure that the assertion provided is acceptable, per
           local policy, before processing the voucher.";
      }
      leaf serial-number {
        type string;
        mandatory true;
        description
          "The serial-number of the hardware.  When processing a
           voucher, a pledge MUST ensure that its serial-number
           matches this value.  If no match occurs, then the
           pledge MUST NOT process this voucher.";
      }
      leaf idevid-issuer {
        type binary;
        description
          "The Authority Key Identifier OCTET STRING (as defined in
           Section 4.2.1.1 of RFC 5280) from the pledge's IDevID
           certificate.  Optional since some serial-numbers are
           already unique within the scope of a MASA.
           Inclusion of the statistically unique key identifier
           ensures statistically unique identification of the
           hardware.
           When processing a voucher, a pledge MUST ensure that its
           IDevID Authority Key Identifier matches this value.  If no
           match occurs, then the pledge MUST NOT process this
           voucher.
           When issuing a voucher, the MASA MUST ensure that this
           field is populated for serial-numbers that are not
           otherwise unique within the scope of the MASA.";
      }
      choice pinning {
        description
          "One of these attributes is used by the pledge to
           specify the registrar, and how the pledge would like
           the registrar's identity to be pinned";
        leaf pinned-domain-cert {
          type binary;
          description
            "An X.509 v3 certificate structure, as specified by
             RFC 5280, using Distinguished Encoding Rules (DER)
             encoding, as defined in ITU-T X.690.

             This certificate is used by a pledge to trust a Public \
                                                                  Key
             Infrastructure in order to verify a domain certificate
             supplied to the pledge separately by the bootstrapping
             protocol.  The domain certificate MUST have this
             certificate somewhere in its chain of certificates.
             This certificate MAY be an end-entity certificate,
             including a self-signed entity.";
          reference
            "RFC 5280:
               Internet X.509 Public Key Infrastructure Certificate
               and Certificate Revocation List (CRL) Profile.
             ITU-T X.690:
                Information technology - ASN.1 encoding rules:
                Specification of Basic Encoding Rules (BER),
                Canonical Encoding Rules (CER) and Distinguished
                Encoding Rules (DER).";
        }
        leaf pinned-domain-pubk {
          type binary;
          description
            "The pinned-domain-pubk may replace the
             pinned-domain-cert in constrained uses of
             the voucher. The pinned-domain-pubk
             is the Raw Public Key of the Registrar.
             This field is encoded as a Subject Public Key Info block
             as specified in RFC7250, in section 3.
             The ECDSA algorithm MUST be supported.
             The EdDSA algorithm as specified in
             draft-ietf-tls-rfc4492bis-17 SHOULD be supported.
             Support for the DSA algorithm is not recommended.
             Support for the RSA algorithm is a MAY.";
        }
        leaf pinned-domain-pubk-sha256 {
          type binary;
          description
            "The pinned-domain-pubk-sha256 is a second
             alternative to pinned-domain-cert.  In many cases the
             public key of the domain has already been transmitted
             during the key agreement process, and it is wasteful
             to transmit the public key another two times.
             The use of a hash of public key info, at 32-bytes for
             sha256 is a significant savings compared to an RSA
             public key, but is only a minor savings compared to
             a 256-bit ECDSA public-key.
             Algorithm agility is provided by extensions to this
             specification which can define a new leaf for another
             hash type.";
        }
      }
      leaf domain-cert-revocation-checks {
        type boolean;
        description
          "A processing instruction to the pledge that it MUST (true)
           or MUST NOT (false) verify the revocation status for the
           pinned domain certificate.  If this field is not set, then
           normal PKIX behavior applies to validation of the domain
           certificate.";
      }
      leaf last-renewal-date {
        type yang:date-and-time;
        must '../expires-on';
        description
          "The date that the MASA projects to be the last date it
           will renew a voucher on. This field is merely
           informative; it is not processed by pledges.

           Circumstances may occur after a voucher is generated that
           may alter a voucher's validity period.  For instance,
           a vendor may associate validity periods with support
           contracts, which may be terminated or extended
           over time.";
      }
    }
    choice nonceless {
      description
        "Either a nonce must be present, or an expires-on header";
      leaf expires-on {
        type yang:date-and-time;
        description
          "A value indicating when this voucher expires.  The node is
           optional as not all pledges support expirations, such as
           pledges lacking a reliable clock.

           If this field exists, then the pledges MUST ensure that
           the expires-on time has not yet passed. A pledge without
           an accurate clock cannot meet this requirement.

           The expires-on value MUST NOT exceed the expiration date
           of any of the listed 'pinned-domain-cert' certificates.";
      }
      leaf nonce {
        type binary {
          length "8..32";
        }
        description
          "A value that can be used by a pledge in some bootstrapping
           protocols to enable anti-replay protection.  This node is
           optional because it is not used by all bootstrapping
           protocols.

           When present, the pledge MUST compare the provided nonce
           value with another value that the pledge randomly
           generated and sent to a bootstrap server in an earlier
           bootstrapping message.  If the value is present, but
           the values do not match, then the pledge MUST NOT process
           this voucher.";
      }
    }
    leaf est-domain {
      type ietf:uri;
      description
        "The est-domain is a URL from which the Pledge should
           continue doing enrollment rather than with the
           Cloud Registrar.
           The pinned-domain-cert contains a trust-anchor
           which is to be used to authenticate the server
           found at this URI.
          ";
    }
    leaf additional-configuration-url {
      type ietf:uri;
      description
        "The additional-configuration attribute contains a
           URL to which the Pledge can retrieve additional
           configuration information.
           The contents of this URL are manufacturer specific.
           This is intended to do things like configure
           a VoIP phone to point to the correct hosted
           PBX, for example.";
    }
  }

  // Top-level statement
  sx:structure voucher {
    uses voucher-artifact-grouping;
  }
}
]]></sourcecode></figure>

</section>
<section anchor="ietf-voucher-sid-values"><name>ietf-voucher SID values</name>

<t><xref target="RFC9148"/> explains how to serialize YANG into CBOR, and for this a series of SID values are required.
While <xref target="CORESID"/> defines the management process for these values, due to the immaturity  of the tooling around this YANG-SID mechanisms, the following values are considered normative.
It is believed, however, that they will not change.</t>

<figure><artwork><![CDATA[
           
      SID Assigned to
--------- -------------------------------------------------- 
     2451 data /ietf-voucher:voucher/voucher
     2452 data /ietf-voucher:voucher/voucher/assertion
     2453 data /ietf-voucher:voucher/voucher/created-on
     2454 data .../domain-cert-revocation-checks
     2455 data /ietf-voucher:voucher/voucher/expires-on
     2456 data /ietf-voucher:voucher/voucher/idevid-issuer
     2457 data /ietf-voucher:voucher/voucher/last-renewal-date
     2458 data /ietf-voucher:voucher/nonce
     2459 data /ietf-voucher:voucher/voucher/pinned-domain-cert
     2460 data /ietf-voucher:voucher/voucher/pinned-domain-pubk
     2461 data .../pinned-domain-pubk-sha256
     2462 data /ietf-voucher:voucher/voucher/serial-number
     2463 data .../additional-configuration-url
     2464 data /ietf-voucher:voucher/voucher/est-domain
     2465 data .../additional-configuration-url
     2466 data /ietf-voucher:voucher/est-domain
     2467 data /ietf-voucher:voucher/expires-on
     2468 data /ietf-voucher:voucher/voucher/extensions
           
 WARNING, obsolete definitions
]]></artwork></figure>

<t>The "assertion" attribute is an enumerated type in <xref target="RFC8366"/>, but no values were provided as part of the enumeration.
This document provides enumerated values as part of the YANG module.</t>

<t>In the JSON serialization, the literal strings from the enumerated types are used so there is no ambiguity.</t>

<t>In the CBOR serialization, a small integer is used, and the following values are repeated here.
The YANG module should be considered authoritative in the future.
No IANA registry is provided or necessary because the YANG module (and this document) would be extended when there are new entries to make.</t>

<texttable title="CBOR integers for the &quot;assertion&quot; attribute enum" anchor="assertion-enums">
      <ttcol align='left'>Integer</ttcol>
      <ttcol align='left'>Assertion Type</ttcol>
      <c>0</c>
      <c>verified</c>
      <c>1</c>
      <c>logged</c>
      <c>2</c>
      <c>proximity</c>
      <c>3</c>
      <c>agent-proximity</c>
</texttable>

</section>
<section anchor="voucher-extensions"><name>Voucher Extensions</name>

<t>An unstated assumption in <xref target="RFC8366"/> was that vouchers could be extended in proprietary ways by manufacturers.
This allows for manufacturers to communicate new things from the MASA to the Pledge, and since both are under control of the same entity, it seemed perfectly fine, even though it would violate the strict definition of the YANG.</t>

<t>The JSON serialization of vouchers implicitely accomodates the above, since the voucher is just a map (or dictionary).
Map keys are just strings, and creating unique strings is easy to do by including the manufacturer's domain name.</t>

<t>In CBOR serialization <xref target="RFC9148"/>/<xref target="RFC9254"/>, the situation is not so easy.
The delta encoding for keys requires new keys to use the absolute Tag(47) for new entities.
An extension might need to use the Private Use SID values, or acquire SID values for their own use.</t>

<t>Where the process has become complex is when making standard extensions, as has happened recently, resulting in this document.
The processes which were anticipated to be useful, (the "augment" mechanism) turned out not to be the case, see <xref target="extendfail"/>.</t>

<t>Instead, a process similiar to what was done by <xref target="RFC8520"/> has been adopted.
In this, extensions are listed in a leaf named "extensions".
In JSON serialization, these extensions require a unique name, and this <bcp14>MUST</bcp14> be allocated by IANA.
The name <bcp14>MUST</bcp14> be the same as the YANG module name.
The "extensions" list attribute definied in this model allows for new standard extensions to be defined.
Items within that list are strings (in JSON serialization), or integers (in CBOR serialization), as defined by the Voucher Extension Registry.</t>

<t>Extensions are full YANG modules, which are subject to the SID allocation process described in <xref target="RFC9254"/>.
When an extension is serialized,  the extension is placed in a sub-map in the value section.
In JSON serialization, the key is the name of the extension, prefixed by the string "extension:"
In CBOR serialization, the key is the SID which is allocated as the module SID.
This will typically require the absolute Tag(47) to be applied to this key.</t>

<t>Note that this differs from the mechanism described in <xref target="RFC8520"/> in that a sub-map is not used.
Instead keys are created by combining the module name and the attribute as a string.
The <xref target="RFC8520"/> mechanism uses more bytes, but is also not translateable easily to CBOR.</t>

<t>As the Voucher Request artifact is created by augment on the voucher artifact, any extension defined for the voucher is also valid for Voucher Requests.</t>

</section>
<section anchor="manufacturer-private-extensions"><name>Manufacturer Private extensions</name>

<t>In addition to the above described extensions mechanism, a manufacturer might need to communicate content in the voucher (or in the voucher-request), which are never subject to standardization.
While they can use the mechanism above, it does require allocation of a SID in order to do minimal sized encoding.  Note that <xref target="RFC9254"/> does not require use of SIDs.</t>

<t>Instead, a manufacturer <bcp14>MAY</bcp14> use the manufacturer-private leaf to put any content they wish.
In CBOR serialization, if a map is used, then it will be subject to delta encoding, so use of this leaf requires that the content are bstr-encoded <xref section="3.1" sectionFormat="comma" target="RFC8949"/> (Major type 2).
In JSON serialization, delta-encoding does not get in the way, and the manufacturer <bcp14>MAY</bcp14> use any encoding that is convenient for them, but base64URL encoding <xref section="5" sectionFormat="comma" target="RFC4648"/> is <bcp14>RECOMMENDED</bcp14>.</t>

</section>
</section>
<section anchor="voucher-request"><name>Voucher Request Artifact</name>

<t><xref section="3" sectionFormat="comma" target="BRSKI"/> defined a Voucher-Request Artifact as an augmented artifact from the Voucher Artifact originally defined in <xref target="RFC8366"/>.
That definition has been moved to this document, and translated from YANG-DATA <xref target="RFC8040"/> to the SX:STRUCTURE extension <xref target="RFC8791"/>.</t>

<section anchor="voucher-request-tree-diagram"><name>Tree Diagram</name>

<t>The following tree diagram illustrates a high-level view of a voucher
request document.
The notation used in this diagram is described in <xref target="RFC8340"/>.
Each node in the diagram is fully described by the YANG module in
<xref target="voucher-request-yang-module"/>.</t>

<figure><artwork><![CDATA[
module: ietf-voucher-request

  structure voucher:
    +-- voucher
    |  +-- created-on?
    |  |       yang:date-and-time
    |  +-- extensions*                                string
    |  +-- assertion?                                 enumeration
    |  +-- serial-number                              string
    |  +-- idevid-issuer?                             binary
    |  +-- (pinning)?
    |  |  +--:(pinned-domain-cert)
    |  |  |  +-- pinned-domain-cert?                  binary
    |  |  +--:(pinned-domain-pubk)
    |  |  |  +-- pinned-domain-pubk?                  binary
    |  |  +--:(pinned-domain-pubk-sha256)
    |  |     +-- pinned-domain-pubk-sha256?           binary
    |  +-- domain-cert-revocation-checks?             boolean
    |  +-- last-renewal-date?
    |  |       yang:date-and-time
    |  +-- prior-signed-voucher-request?              binary
    |  +-- (registrar-identity)?
    |  |  +--:(proximity-registrar-cert)
    |  |  |  +-- proximity-registrar-cert?            binary
    |  |  +--:(proximity-registrar-pubk)
    |  |  |  +-- proximity-registrar-pubk?            binary
    |  |  +--:(proximity-registrar-pubk-sha256)
    |  |     +-- proximity-registrar-pubk-sha256?     binary
    |  +-- agent-signed-data?                         binary
    |  +-- agent-provided-proximity-registrar-cert?   binary
    |  +-- agent-sign-cert?                           binary
    +-- (nonceless)?
    |  +--:(expires-on)
    |  |  +-- expires-on?               yang:date-and-time
    |  +--:(nonce)
    |     +-- nonce?                    binary
    +-- est-domain?                     ietf:uri
    +-- additional-configuration-url?   ietf:uri
]]></artwork></figure>

</section>
<section anchor="voucher-request-yang-module"><name>"ietf-voucher-request" Module</name>
<t>The ietf-voucher-request YANG module is derived from the ietf-voucher module.</t>

<figure><sourcecode type="yang" markers="true"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

module ietf-voucher-request {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-voucher-request";
  prefix vcr;

  import ietf-yang-structure-ext {
    prefix sx;
  }
  import ietf-voucher {
    prefix vch;
    description
      "This module defines the format for a voucher,
       which is produced by a pledge's manufacturer or
       delegate (MASA) to securely assign a pledge to
       an 'owner', so that the pledge may establish a secure
       connection to the owner's network infrastructure";
    reference
      "RFC XXXX: Voucher Artifact for
       Bootstrapping Protocols";
  }

  organization
    "IETF ANIMA Working Group";
  contact
    "WG Web:   <https://datatracker.ietf.org/wg/anima/>
     WG List:  <mailto:anima@ietf.org>
     Author:   Kent Watsen
               <mailto:kent+ietf@watsen.net>
     Author:   Michael Richardson
               <mailto:mcr+ietf@sandelman.ca>
     Author:   Max Pritikin
               <mailto:pritikin@cisco.com>
     Author:   Toerless Eckert
               <mailto:tte@cs.fau.de>
     Author:   Qiufang Ma
               <mailto:maqiufang1@huawei.com>";
  description
    "This module defines the format for a voucher request.
     It is a superset of the voucher itself.
     It provides content to the MASA for consideration
     during a voucher request.

     The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
     NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
     'MAY', and 'OPTIONAL' in this document are to be interpreted as
     described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
     they appear in all capitals, as shown here.

      Copyright (c) 2024 IETF Trust and the persons identified as
      authors of the code.  All rights reserved.

      Redistribution and use in source and binary forms, with or
      without modification, is permitted pursuant to, and subject to
      the license terms contained in, the Revised BSD License set
      forth in Section 4.c of the IETF Trust's Legal Provisions
      Relating to IETF Documents
      (https://trustee.ietf.org/license-info).

      This version of this YANG module is part of RFC XXXX
      (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
      for full legal notices.

     RFCEDITOR: please replace XXXX with the RFC number assigned.

      The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
      NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
      'MAY', and 'OPTIONAL' in this document are to be interpreted as
      described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
      they appear in all capitals, as shown here.";

  revision 2023-01-10 {
    description
      "Initial version";
    reference
      "RFC XXXX: Bootstrapping Remote Secure Key Infrastructure";
  }

  grouping voucher-request-grouping {
    description
      "Grouping to allow reuse/extensions in future work.";
    uses vch:voucher-artifact-grouping {
      refine "voucher/created-on" {
        mandatory false;
      }
      refine "voucher/last-renewal-date" {
        description
          "A last-renewal-date field
           is not valid in a voucher request, and
           any occurrence MUST be ignored";
      }
      refine "voucher/domain-cert-revocation-checks" {
        description
          "The domain-cert-revocation-checks field
           is not valid in a voucher request, and
           any occurrence MUST be ignored";
      }
      refine "voucher/assertion" {
        mandatory false;
        description
          "Any assertion included in registrar voucher
           requests SHOULD be ignored by the MASA.";
      }
      augment "voucher" {
        description
          "Adds leaf nodes appropriate for requesting vouchers.";
        leaf prior-signed-voucher-request {
          type binary;
          description
            "If it is necessary to change a voucher, or re-sign and
             forward a voucher that was previously provided along a
             protocol path, then the previously signed voucher SHOULD
             be included in this field.

             For example, a pledge might sign a voucher request
             with a proximity-registrar-cert, and the registrar
             then includes it as the prior-signed-voucher-request
             field.  This is a simple mechanism for a chain of
             trusted parties to change a voucher request, while
             maintaining the prior signature information.

             The Registrar and MASA MAY examine the prior signed
             voucher information for the
             purposes of policy decisions. For example this
             information could be useful to a MASA to determine
             that both pledge and registrar agree on proximity
             assertions. The MASA SHOULD remove all
             prior-signed-voucher-request information when
             signing a voucher for imprinting so as to minimize
             the final voucher size.";
        }
        choice registrar-identity {
          description
            "One of these three attributes will be used to pin the \
                                                 registrar identity";
          leaf proximity-registrar-cert {
            type binary;
            description
              "An X.509 v3 certificate structure as specified by
               RFC 5280, Section 4 encoded using the ASN.1
               distinguished encoding rules (DER), as specified
               in [ITU.X690.1994].

               The first certificate in the Registrar TLS server
               certificate_list sequence  (the end-entity TLS
               certificate, see [RFC8446]) presented by the Registrar
               to the Pledge.
               This MUST be populated in a Pledge's voucher request
               when a proximity assertion is requested.";
          }
          leaf proximity-registrar-pubk {
            type binary;
            description
              "The proximity-registrar-pubk replaces
               the proximity-registrar-cert in constrained uses of
               the voucher-request.
               The proximity-registrar-pubk is the
               Raw Public Key of the Registrar. This field is encoded
               as specified in RFC7250, section 3.
               The ECDSA algorithm MUST be supported.
               The EdDSA algorithm as specified in
               draft-ietf-tls-rfc4492bis-17 SHOULD be supported.
               Support for the DSA algorithm is not recommended.
               Support for the RSA algorithm is a MAY, but due to
               size is discouraged.";
          }
          leaf proximity-registrar-pubk-sha256 {
            type binary;
            description
              "The proximity-registrar-pubk-sha256
               is an alternative to both
               proximity-registrar-pubk and pinned-domain-cert.
               In many cases the public key of the domain has already
               been transmitted during the key agreement protocol,
               and it is wasteful to transmit the public key another
               two times.
               The use of a hash of public key info, at 32-bytes for
               sha256 is a significant savings compared to an RSA
               public key, but is only a minor savings compared to
               a 256-bit ECDSA public-key.
               Algorithm agility is provided by extensions to this
               specification which may define a new leaf for another
               hash type.";
          }
        }
        leaf agent-signed-data {
          type binary;
          description
            "The agent-signed-data field contains a data artifact \
                                                             provided
             by the Registrar-Agent to the Pledge for inclusion \
                                                             into the
             voucher request.

             This artifact is signed by the Registrar-Agent and \
                                                             contains
             data, which can be verified by the pledge and the \
                                                           registrar.
             This data contains the pledge's serial-number and a \
                                                           created-on
             information of the agent-signed-data.

             The format is intentionally defined as binary to allow
             the document using this leaf to determine the encoding.\
                                                                   ";
        }
        leaf agent-provided-proximity-registrar-cert {
          type binary;
          description
            "An X.509 v3 certificate structure, as specified by
             RFC 5280, Section 4, encoded using the ASN.1
             distinguished encoding rules (DER), as specified
             in ITU X.690.
             The first certificate in the registrar TLS server
             certificate_list sequence (the end-entity TLS
             certificate; see RFC 8446) presented by the
             registrar to the registrar-agent and provided to
             the pledge.
             This MUST be populated in a pledge's voucher-request
             when an agent-proximity assertion is requested.";
          reference
            "ITU X.690: Information Technology - ASN.1 encoding
             rules: Specification of Basic Encoding Rules (BER),
             Canonical Encoding Rules (CER) and Distinguished
             Encoding Rules (DER)
             RFC 5280: Internet X.509 Public Key Infrastructure
             Certificate and Certificate Revocation List (CRL)
             Profile
             RFC 8446: The Transport Layer Security (TLS)
             Protocol Version 1.3";
        }
        leaf agent-sign-cert {
          type binary;
          description
            "An X.509 v3 certificate structure, as specified by
             RFC 5280, Section 4, encoded using the ASN.1
             distinguished encoding rules (DER), as specified
             in ITU X.690.
             This certificate can be used by the pledge,
             the registrar, and the MASA to verify the signature
             of agent-signed-data. It is an optional component
             for the pledge-voucher request.
             This MUST be populated in a registrar's
             voucher-request when an agent-proximity assertion
             is requested.";
          reference
            "ITU X.690: Information Technology - ASN.1 encoding
             rules: Specification of Basic Encoding Rules (BER),
             Canonical Encoding Rules (CER) and Distinguished
             Encoding Rules (DER)
             RFC 5280: Internet X.509 Public Key Infrastructure
             Certificate and Certificate Revocation List (CRL)
             Profile";
        }
      }
    }
  }

  // Top-level statement
  sx:structure voucher {
    uses voucher-request-grouping;
  }
}
]]></sourcecode></figure>

</section>
<section anchor="voucher-request-sid-values"><name>ietf-voucher-request SID values</name>

<t><xref target="RFC9148"/> explains how to serialize YANG into CBOR, and for this a series of SID values are required.
While <xref target="CORESID"/> defines the management process for these values, due to the immaturity  of the tooling around this YANG-SID mechanisms, the following values are considered normative.
It is believed, however, that they will not change.</t>

<figure><artwork><![CDATA[
           
      SID Assigned to
--------- -------------------------------------------------- 
     2501 data /ietf-voucher-request:voucher/voucher
     2502 data /ietf-voucher-request:voucher/voucher/assertion
     2503 data /ietf-voucher-request:voucher/voucher/created-on
     2504 data .../domain-cert-revocation-checks
     2505 data /ietf-voucher-request:voucher/voucher/expires-on
     2506 data .../idevid-issuer
     2507 data .../last-renewal-date
     2508 data /ietf-voucher-request:voucher/nonce
     2509 data .../pinned-domain-cert
     2510 data .../prior-signed-voucher-request
     2511 data .../proximity-registrar-cert
     2512 data .../proximity-registrar-pubk-sha256
     2513 data .../proximity-registrar-pubk
     2514 data .../serial-number
     2515 data .../agent-provided-proximity-registrar-cert
     2516 data .../agent-sign-cert
     2517 data .../agent-signed-data
     2518 data .../pinned-domain-pubk
     2519 data .../pinned-domain-pubk-sha256
     2520 data .../additional-configuration-url
     2521 data /ietf-voucher-request:voucher/est-domain
     2522 data /ietf-voucher-request:voucher/expires-on
     2523 data /ietf-voucher-request:voucher/voucher/extensions
           
 WARNING, obsolete definitions
]]></artwork></figure>

<t>The "assertion" attribute is an enumerated type, and has values as defined above in <xref target="assertion-enums"/>.</t>

</section>
</section>
<section anchor="design-con"><name>Design Considerations</name>

<section anchor="renewal-over-revocation"><name>Renewals Instead of Revocations</name>

<t>The lifetimes of vouchers may vary.  In some onboarding protocols,
the vouchers may be created and consumed immediately, whereas in other
onboarding solutions, there may be a significant time delay between
when a voucher is created and when it is consumed.
In cases when there is a time delay, there is a need for the Pledge
to ensure that the assertions made when the voucher was created are
still valid.</t>

<t>A revocation artifact is generally used to verify the continued validity
of an assertion such as a PKIX certificate, web token, or a "voucher".  With
this approach, a potentially long-lived assertion is paired with a reasonably
fresh revocation status check to ensure that the assertion is still valid.
However, this approach increases solution complexity, as it introduces the
need for additional protocols and code paths to distribute and process the
revocations.</t>

<t>Addressing the shortcomings of revocations, this document recommends
instead the use of lightweight renewals of short-lived non-revocable
vouchers.  That is, rather than issue a long-lived voucher, where the
'expires-on' leaf is set to some distant date, the expectation
is for the MASA to instead issue a short-lived voucher, where the
'expires-on' leaf is set to a relatively near date, along with a promise
(reflected in the 'last-renewal-date' field) to reissue the voucher again
when needed.  Importantly, while issuing the initial voucher may incur
heavyweight verification checks ("Are you who you say you are?" "Does the
Pledge actually belong to you?"), reissuing the voucher should be a
lightweight process, as it ostensibly only updates the voucher's
validity period.
With this approach, there is
only the one artifact, and only one code path is needed to process
it; there is no possibility of a Pledge choosing to skip the
revocation status check because, for instance, the OCSP Responder is
not reachable.</t>

<t>While this document recommends issuing short-lived vouchers, the
voucher artifact does not restrict the ability to create long-lived
voucher, if required; however, no revocation method is described.</t>

<t>Note that a voucher may be signed by a chain of intermediate CAs
leading up to the trust anchor certificate known by the Pledge.  Even
though the voucher itself is not revocable, it may still be revoked,
per se, if one of the intermediate CA certificates is revoked.</t>

</section>
<section anchor="voucher-per-pledge"><name>Voucher Per Pledge</name>

<t>The solution described herein originally enabled a single voucher to
apply to many Pledges, using lists of regular expressions to represent
ranges of serial-numbers.  However, it was determined that blocking the
renewal of a voucher that applied to many devices would be excessive
when only the ownership for a single Pledge needed to be blocked.
Thus, the voucher format now only supports a single serial-number
to be listed.</t>

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

<section anchor="clock-sensitivity"><name>Clock Sensitivity</name>

<t>An attacker could use an expired voucher to gain control over
a device that has no understanding of time.  The device cannot
trust NTP as a time reference, as an attacker could control
the NTP stream.</t>

<t>There are three things to defend against this: 1) devices are
required to verify that the expires-on field has not yet passed,
2) devices without access to time can use nonces to
get ephemeral vouchers, and 3) vouchers without expiration times
may be used, which will appear in the audit log, informing the
security decision.</t>

<t>This document defines a voucher format that contains time values
for expirations, which require an accurate clock
in order to be processed correctly.  Vendors planning on
issuing vouchers with expiration values must ensure that devices
have an accurate clock when shipped from manufacturing
facilities and take steps to prevent clock tampering.
If it is not possible to ensure clock accuracy, then
vouchers with expirations should not be issued.</t>

</section>
<section anchor="protect-voucher-pki-in-hsm"><name>Protect Voucher PKI in HSM</name>

<t>Pursuant the recommendation made in Section 6.1 for the MASA to be
deployed as an online voucher signing service, it is <bcp14>RECOMMENDED</bcp14> that
the MASA's private key used for signing vouchers is protected by
a hardware security module (HSM).</t>

</section>
<section anchor="test-domain-certificate-validity-when-signing"><name>Test Domain Certificate Validity When Signing</name>

<t>If a domain certificate is compromised, then any outstanding
vouchers for that domain could be used by the attacker.  The domain
administrator is clearly expected to initiate revocation of any
domain identity certificates (as is normal in PKI solutions).</t>

<t>Similarly, they are expected to contact the MASA to indicate that
an outstanding (presumably short lifetime) voucher should be blocked from
automated renewal.
Protocols for voucher distribution are
<bcp14>RECOMMENDED</bcp14> to check for revocation of domain identity certificates
before the signing of vouchers.</t>

</section>
<section anchor="yang-module-security-considerations"><name>YANG Module Security Considerations</name>

<t>The YANG module specified in this document defines the schema
for data that is subsequently encapsulated by a CMS signed-data
content type, as described in Section 5 of <xref target="RFC5652"/>.  As such,
all of the YANG modeled data is protected from modification.</t>

<t>Implementations should be aware that the signed data is only
protected from external modification; the data is still visible.
This potential disclosure of information doesn't affect security
so much as privacy.  In particular, adversaries can glean
information such as which devices belong to which organizations
and which CRL Distribution Point and/or OCSP Responder URLs are
accessed to validate the vouchers.  When privacy is important,
the CMS signed-data content type <bcp14>SHOULD</bcp14> be encrypted, either by
conveying it via a mutually authenticated secure transport protocol
(e.g., TLS <xref target="RFC5246"/>) or by encapsulating the signed-data
content type with an enveloped-data content type (Section 6
of <xref target="RFC5652"/>), though details for how to do this are outside
the scope of this document.</t>

<t>The use of YANG to define data structures, via the 'yang-data'
statement, is relatively new and distinct from the traditional use of
YANG to define an API accessed by network management protocols such as
NETCONF <xref target="RFC6241"/> and RESTCONF <xref target="RFC8040"/>. For this reason, these
guidelines do not follow template described by Section 3.7 of
<xref target="YANG-GUIDE"/>.</t>

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

<section anchor="the-ietf-xml-registry"><name>The IETF XML Registry</name>

<t>This document registers two URIs in the "IETF XML Registry" <xref target="RFC3688"/>.</t>

<t>IANA has registered the following:</t>

<ul empty="true"><li>
  <dl spacing="compact">
    <dt>URI:</dt>
    <dd>
      <t>urn:ietf:params:xml:ns:yang:ietf-voucher</t>
    </dd>
    <dt>Registrant Contact:</dt>
    <dd>
      <t>The ANIMA WG of the IETF.</t>
    </dd>
    <dt>XML:</dt>
    <dd>
      <t>N/A, the requested URI is an XML namespace.</t>
    </dd>
  </dl>
</li></ul>

<t>This reference should be updated to point to this document.</t>

</section>
<section anchor="the-yang-module-names-registry"><name>The YANG Module Names Registry</name>

<t>This document registers two YANG module in the "YANG Module Names"
registry <xref target="RFC6020"/>.</t>

<t>IANA has registred the following:</t>

<ul empty="true"><li>
  <dl spacing="compact">
    <dt>name:</dt>
    <dd>
      <t>ietf-voucher</t>
    </dd>
    <dt>namespace:</dt>
    <dd>
      <t>urn:ietf:params:xml:ns:yang:ietf-voucher</t>
    </dd>
    <dt>prefix:</dt>
    <dd>
      <t>vch</t>
    </dd>
  </dl>

  <t>reference:
  :RFC 8366</t>
</li></ul>

<t>This reference should be updated to point to this document.</t>

</section>
<section anchor="vcj"><name>The Media Types Registry</name>

<t>IANA has registered the media type: voucher-cms+json, and this registration should be updated to point to this document.</t>

</section>
<section anchor="the-smi-security-for-smime-cms-content-type-registry"><name>The SMI Security for S/MIME CMS Content Type Registry</name>

<t>IANA has registered the OID 1.2.840.113549.1.9.16.1.40, id-ct-animaJSONVoucher.
This registration should be updated to point to this document.</t>

</section>
<section anchor="extensions-registry"><name>Extensions Registry</name>

<t>IANA is asked to create a registry of extensions as follows:</t>

<figure><artwork><![CDATA[
  Registry name: Voucher Extensions Registry
  Registry policy: First Come First Served
  Reference: an optional document
  Extension name: UTF-8-encoded string, not to exceed 40 characters.
  Extension SID: the module SID value as allocated
]]></artwork></figure>

<t>Each extension <bcp14>MUST</bcp14> follow the rules specified in this specification.
As is usual, the IANA issues early allocations in accordance with <xref target="RFC7120"/>.</t>

<t>Note that the SID module value is allocated as part of a <xref target="RFC9595"/> process.
This may be from a SID range managed by IANA, or from any other MegaRange.
Future work may allow for PEN based allocations.
IANA does not need to separately allocate a SID value for this column.</t>

<t>Extension name strings for standards track documents are single words, given by the YANG Module Name.
They do not contain dots.
For vendor proprietary extensions, the string <bcp14>SHOULD</bcp14> be made unique by putting the extension name in the form a FQDN <xref target="RFC5822"/>, such as "fuubar.example.com"</t>

<t>Vendor proprietary extensions do not need to be registered with IANA, but vendors <bcp14>MAY</bcp14> do so.</t>

<t>Designated Experts should review for standards track documents for clarity, but the process is essentially tied to WG and IESG process:
There are no choices in the extension names (which is the YANG module), or SID (which is from another IANA process).
For non-standard track extensions, the Designated Expert should review whatever document is provided, if any.  The stability of the reference may be of concern.  The Desigtnated Expert should determine if the work overlaps existing efforts; and if so suggest merging.
However, as registration is optional, the designated expert should not block any registrations.</t>

</section>
</section>


  </middle>

  <back>


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



<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="RFC6020">
  <front>
    <title>YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)</title>
    <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
    <date month="October" year="2010"/>
    <abstract>
      <t>YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF), NETCONF remote procedure calls, and NETCONF notifications. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6020"/>
  <seriesInfo name="DOI" value="10.17487/RFC6020"/>
</reference>

<reference anchor="RFC8259">
  <front>
    <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
    <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
    <date month="December" year="2017"/>
    <abstract>
      <t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format. It was derived from the ECMAScript Programming Language Standard. JSON defines a small set of formatting rules for the portable representation of structured data.</t>
      <t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="90"/>
  <seriesInfo name="RFC" value="8259"/>
  <seriesInfo name="DOI" value="10.17487/RFC8259"/>
</reference>

<reference anchor="RFC7950">
  <front>
    <title>The YANG 1.1 Data Modeling Language</title>
    <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
    <date month="August" year="2016"/>
    <abstract>
      <t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols. This document describes the syntax and semantics of version 1.1 of the YANG language. YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification. There are a small number of backward incompatibilities from YANG version 1. This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7950"/>
  <seriesInfo name="DOI" value="10.17487/RFC7950"/>
</reference>

<reference anchor="CORESID">
  <front>
    <title>YANG Schema Item iDentifier (YANG SID)</title>
    <author fullname="M. Veillette" initials="M." role="editor" surname="Veillette"/>
    <author fullname="A. Pelov" initials="A." role="editor" surname="Pelov"/>
    <author fullname="I. Petrov" initials="I." role="editor" surname="Petrov"/>
    <author fullname="C. Bormann" initials="C." surname="Bormann"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <date month="July" year="2024"/>
    <abstract>
      <t>YANG Schema Item iDentifiers (YANG SIDs) are globally unique 63-bit unsigned integers used to identify YANG items. SIDs provide a more compact method for identifying those YANG items that can be used efficiently, notably in constrained environments (RFC 7228). This document defines the semantics, registration processes, and assignment processes for YANG SIDs for IETF-managed YANG modules. To enable the implementation of these processes, this document also defines a file format used to persist and publish assigned YANG SIDs.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9595"/>
  <seriesInfo name="DOI" value="10.17487/RFC9595"/>
</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="cBRSKI">
   <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="18" month="October" year="2025"/>
      <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-29"/>
   
</reference>


<reference anchor="jBRSKI">
   <front>
      <title>JWS signed Voucher Artifacts for Bootstrapping Protocols</title>
      <author fullname="Thomas Werner" initials="T." surname="Werner">
         <organization>Siemens AG</organization>
      </author>
      <author fullname="Michael Richardson" initials="M." surname="Richardson">
         <organization>Sandelman Software Works</organization>
      </author>
      <date day="15" month="January" year="2025"/>
      <abstract>
	 <t>   This document introduces a variant of the RFC8366 voucher artifact in
   which CMS is replaced by the JSON Object Signing and Encryption
   (JOSE) mechanism described in RFC7515.  This supports deployments in
   which JOSE is preferred over CMS.  In addition to specifying the
   format, the &quot;application/voucher-jws+json&quot; media type is registered
   and examples are provided.

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


<reference anchor="ITU-T.X690.2015" target="https://www.itu.int/rec/T-REC-X.690/">
  <front>
    <title>Information Technology - ASN.1 encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2015" month="August"/>
  </front>
  <seriesInfo name="ITU-T Recommendation X.690," value="ISO/IEC 8825-1"/>
</reference>


<reference anchor="ZERO-TOUCH">
  <front>
    <title>Secure Zero Touch Provisioning (SZTP)</title>
    <author fullname="K. Watsen" initials="K." surname="Watsen"/>
    <author fullname="I. Farrer" initials="I." surname="Farrer"/>
    <author fullname="M. Abrahamsson" initials="M." surname="Abrahamsson"/>
    <date month="April" year="2019"/>
    <abstract>
      <t>This document presents a technique to securely provision a networking device when it is booting in a factory-default state. Variations in the solution enable it to be used on both public and private networks. The provisioning steps are able to update the boot image, commit an initial configuration, and execute arbitrary scripts to address auxiliary needs. The updated device is subsequently able to establish secure connections with other systems. For instance, a device may establish NETCONF (RFC 6241) and/or RESTCONF (RFC 8040) connections with deployment-specific network management systems.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8572"/>
  <seriesInfo name="DOI" value="10.17487/RFC8572"/>
</reference>

<reference anchor="BRSKI">
  <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="PRM">
   <front>
      <title>BRSKI with Pledge in Responder Mode (BRSKI-PRM)</title>
      <author fullname="Steffen Fries" initials="S." surname="Fries">
         <organization>Siemens AG</organization>
      </author>
      <author fullname="Thomas Werner" initials="T." surname="Werner">
         <organization>Siemens AG</organization>
      </author>
      <author fullname="Eliot Lear" initials="E." surname="Lear">
         <organization>Cisco Systems</organization>
      </author>
      <author fullname="Michael Richardson" initials="M." surname="Richardson">
         <organization>Sandelman Software Works</organization>
      </author>
      <date day="3" month="June" year="2025"/>
      <abstract>
	 <t>   This document defines enhancements to Bootstrapping Remote Secure Key
   Infrastructure (BRSKI, RFC8995) as BRSKI with Pledge in Responder
   Mode (BRSKI-PRM).  BRSKI-PRM supports the secure bootstrapping of
   devices, referred to as pledges, into a domain where direct
   communication with the registrar is either limited or not possible at
   all.  To facilitate interaction between a pledge and a domain
   registrar the registrar-agent is introduced as new component.  The
   registrar-agent supports the reversal of the interaction model from a
   pledge-initiated mode, to a pledge-responding mode, where the pledge
   is in a server role.  To establish the trust relation between pledge
   and registrar, BRSKI-PRM relies on object security rather than
   transport security.  This approach is agnostic to enrollment
   protocols that connect a domain registrar to a key infrastructure
   (e.g., domain Certification Authority).

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-anima-brski-prm-23"/>
   
</reference>


<reference anchor="CLOUD">
   <front>
      <title>Bootstrapping Remote Secure Key Infrastructure (BRSKI) Cloud Registrar</title>
      <author fullname="Owen Friel" initials="O." surname="Friel">
         <organization>Cisco</organization>
      </author>
      <author fullname="Rifaat Shekh-Yusef" initials="R." surname="Shekh-Yusef">
         <organization>Ciena</organization>
      </author>
      <author fullname="Michael Richardson" initials="M." surname="Richardson">
         <organization>Sandelman Software Works</organization>
      </author>
      <date day="9" month="September" year="2025"/>
      <abstract>
	 <t>   Bootstrapping Remote Secure Key Infrastructures (BRSKI) defines how
   to onboard a device securely into an operator-maintained
   infrastructure.  It assumes that there is local network
   infrastructure for the device to discover.  On networks without that,
   there is nothing present to help onboard the device.

   This document extends BRSKI and defines behavior for bootstrapping
   devices for deployments where no local infrastructure is available,
   such as in a home or remote office.  This document defines how the
   device can use a well-defined &quot;call-home&quot; mechanism to find the
   operator-maintained infrastructure.

   This document defines how to contact a well-known Cloud Registrar,
   and two ways in which the device may be redirected towards the
   operator-maintained infrastructure.  The Cloud Registrar enables
   discovery of the operator-maintained infrastructure, and may enable
   establishment of trust with operator-maintained infrastructure that
   does not support BRSKI mechanisms.

   This document updates RFC 8995 (BRSKI).

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-anima-brski-cloud-19"/>
   
</reference>

<reference anchor="RFC8791">
  <front>
    <title>YANG Data Structure Extensions</title>
    <author fullname="A. Bierman" initials="A." surname="Bierman"/>
    <author fullname="M. Björklund" initials="M." surname="Björklund"/>
    <author fullname="K. Watsen" initials="K." surname="Watsen"/>
    <date month="June" year="2020"/>
    <abstract>
      <t>This document describes YANG mechanisms for defining abstract data structures with YANG.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8791"/>
  <seriesInfo name="DOI" value="10.17487/RFC8791"/>
</reference>

<reference anchor="RFC7951">
  <front>
    <title>JSON Encoding of Data Modeled with YANG</title>
    <author fullname="L. Lhotka" initials="L." surname="Lhotka"/>
    <date month="August" year="2016"/>
    <abstract>
      <t>This document defines encoding rules for representing configuration data, state data, parameters of Remote Procedure Call (RPC) operations or actions, and notifications defined using YANG as JavaScript Object Notation (JSON) text.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7951"/>
  <seriesInfo name="DOI" value="10.17487/RFC7951"/>
</reference>

<reference anchor="RFC9254">
  <front>
    <title>Encoding of Data Modeled with YANG in the Concise Binary Object Representation (CBOR)</title>
    <author fullname="M. Veillette" initials="M." role="editor" surname="Veillette"/>
    <author fullname="I. Petrov" initials="I." role="editor" surname="Petrov"/>
    <author fullname="A. Pelov" initials="A." surname="Pelov"/>
    <author fullname="C. Bormann" initials="C." surname="Bormann"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <date month="July" year="2022"/>
    <abstract>
      <t>YANG (RFC 7950) is a data modeling language used to model configuration data, state data, parameters and results of Remote Procedure Call (RPC) operations or actions, and notifications.</t>
      <t>This document defines encoding rules for YANG in the Concise Binary Object Representation (CBOR) (RFC 8949).</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9254"/>
  <seriesInfo name="DOI" value="10.17487/RFC9254"/>
</reference>

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

<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>

<reference anchor="RFC7120">
  <front>
    <title>Early IANA Allocation of Standards Track Code Points</title>
    <author fullname="M. Cotton" initials="M." surname="Cotton"/>
    <date month="January" year="2014"/>
    <abstract>
      <t>This memo describes the process for early allocation of code points by IANA from registries for which "Specification Required", "RFC Required", "IETF Review", or "Standards Action" policies apply. This process can be used to alleviate the problem where code point allocation is needed to facilitate desired or required implementation and deployment experience prior to publication of an RFC, which would normally trigger code point allocation. The procedures in this document are intended to apply only to IETF Stream documents.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="100"/>
  <seriesInfo name="RFC" value="7120"/>
  <seriesInfo name="DOI" value="10.17487/RFC7120"/>
</reference>

<reference anchor="RFC9595">
  <front>
    <title>YANG Schema Item iDentifier (YANG SID)</title>
    <author fullname="M. Veillette" initials="M." role="editor" surname="Veillette"/>
    <author fullname="A. Pelov" initials="A." role="editor" surname="Pelov"/>
    <author fullname="I. Petrov" initials="I." role="editor" surname="Petrov"/>
    <author fullname="C. Bormann" initials="C." surname="Bormann"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <date month="July" year="2024"/>
    <abstract>
      <t>YANG Schema Item iDentifiers (YANG SIDs) are globally unique 63-bit unsigned integers used to identify YANG items. SIDs provide a more compact method for identifying those YANG items that can be used efficiently, notably in constrained environments (RFC 7228). This document defines the semantics, registration processes, and assignment processes for YANG SIDs for IETF-managed YANG modules. To enable the implementation of these processes, this document also defines a file format used to persist and publish assigned YANG SIDs.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9595"/>
  <seriesInfo name="DOI" value="10.17487/RFC9595"/>
</reference>




    </references>

    <references title='Informative References' anchor="sec-informative-references">



<reference anchor="RFC5246">
  <front>
    <title>The Transport Layer Security (TLS) Protocol Version 1.2</title>
    <author fullname="T. Dierks" initials="T." surname="Dierks"/>
    <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
    <date month="August" year="2008"/>
    <abstract>
      <t>This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol. The TLS protocol provides communications security over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5246"/>
  <seriesInfo name="DOI" value="10.17487/RFC5246"/>
</reference>

<reference anchor="RFC3688">
  <front>
    <title>The IETF XML Registry</title>
    <author fullname="M. Mealling" initials="M." surname="Mealling"/>
    <date month="January" year="2004"/>
    <abstract>
      <t>This document describes an IANA maintained registry for IETF standards which use Extensible Markup Language (XML) related items such as Namespaces, Document Type Declarations (DTDs), Schemas, and Resource Description Framework (RDF) Schemas.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="81"/>
  <seriesInfo name="RFC" value="3688"/>
  <seriesInfo name="DOI" value="10.17487/RFC3688"/>
</reference>

<reference anchor="RFC6241">
  <front>
    <title>Network Configuration Protocol (NETCONF)</title>
    <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
    <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
    <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
    <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
    <date month="June" year="2011"/>
    <abstract>
      <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6241"/>
  <seriesInfo name="DOI" value="10.17487/RFC6241"/>
</reference>

<reference anchor="RFC8040">
  <front>
    <title>RESTCONF Protocol</title>
    <author fullname="A. Bierman" initials="A." surname="Bierman"/>
    <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
    <author fullname="K. Watsen" initials="K." surname="Watsen"/>
    <date month="January" year="2017"/>
    <abstract>
      <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8040"/>
  <seriesInfo name="DOI" value="10.17487/RFC8040"/>
</reference>

<reference anchor="RFC8340">
  <front>
    <title>YANG Tree Diagrams</title>
    <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
    <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
    <date month="March" year="2018"/>
    <abstract>
      <t>This document captures the current syntax used in YANG module tree diagrams. The purpose of this document is to provide a single location for this definition. This syntax may be updated from time to time based on the evolution of the YANG language.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="215"/>
  <seriesInfo name="RFC" value="8340"/>
  <seriesInfo name="DOI" value="10.17487/RFC8340"/>
</reference>

<reference anchor="RFC6125">
  <front>
    <title>Representation and Verification of Domain-Based Application Service Identity within Internet Public Key Infrastructure Using X.509 (PKIX) Certificates in the Context of Transport Layer Security (TLS)</title>
    <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
    <author fullname="J. Hodges" initials="J." surname="Hodges"/>
    <date month="March" year="2011"/>
    <abstract>
      <t>Many application technologies enable secure communication between two entities by means of Internet Public Key Infrastructure Using X.509 (PKIX) certificates in the context of Transport Layer Security (TLS). This document specifies procedures for representing and verifying the identity of application services in such interactions. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6125"/>
  <seriesInfo name="DOI" value="10.17487/RFC6125"/>
</reference>

<reference anchor="RFC7435">
  <front>
    <title>Opportunistic Security: Some Protection Most of the Time</title>
    <author fullname="V. Dukhovni" initials="V." surname="Dukhovni"/>
    <date month="December" year="2014"/>
    <abstract>
      <t>This document defines the concept "Opportunistic Security" in the context of communications protocols. Protocol designs based on Opportunistic Security use encryption even when authentication is not available, and use authentication when possible, thereby removing barriers to the widespread use of encryption on the Internet.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7435"/>
  <seriesInfo name="DOI" value="10.17487/RFC7435"/>
</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>

<referencegroup anchor="CBOR" target="https://www.rfc-editor.org/info/std94">
  <reference anchor="RFC8949" target="https://www.rfc-editor.org/info/rfc8949">
    <front>
      <title>Concise Binary Object Representation (CBOR)</title>
      <author fullname="C. Bormann" initials="C." surname="Bormann"/>
      <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
      <date month="December" year="2020"/>
      <abstract>
        <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
        <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
      </abstract>
    </front>
    <seriesInfo name="STD" value="94"/>
    <seriesInfo name="RFC" value="8949"/>
    <seriesInfo name="DOI" value="10.17487/RFC8949"/>
  </reference>
</referencegroup>

<referencegroup anchor="COSE" target="https://www.rfc-editor.org/info/std96">
  <reference anchor="RFC9052" target="https://www.rfc-editor.org/info/rfc9052">
    <front>
      <title>CBOR Object Signing and Encryption (COSE): Structures and Process</title>
      <author fullname="J. Schaad" initials="J." surname="Schaad"/>
      <date month="August" year="2022"/>
      <abstract>
        <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. There is a need to be able to define basic security services for this data format. This document defines the CBOR Object Signing and Encryption (COSE) protocol. This specification describes how to create and process signatures, message authentication codes, and encryption using CBOR for serialization. This specification additionally describes how to represent cryptographic keys using CBOR.</t>
        <t>This document, along with RFC 9053, obsoletes RFC 8152.</t>
      </abstract>
    </front>
    <seriesInfo name="STD" value="96"/>
    <seriesInfo name="RFC" value="9052"/>
    <seriesInfo name="DOI" value="10.17487/RFC9052"/>
  </reference>
  <reference anchor="RFC9338" target="https://www.rfc-editor.org/info/rfc9338">
    <front>
      <title>CBOR Object Signing and Encryption (COSE): Countersignatures</title>
      <author fullname="J. Schaad" initials="J." surname="Schaad"/>
      <date month="December" year="2022"/>
      <abstract>
        <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. CBOR Object Signing and Encryption (COSE) defines a set of security services for CBOR. This document defines a countersignature algorithm along with the needed header parameters and CBOR tags for COSE. This document updates RFC 9052.</t>
      </abstract>
    </front>
    <seriesInfo name="STD" value="96"/>
    <seriesInfo name="RFC" value="9338"/>
    <seriesInfo name="DOI" value="10.17487/RFC9338"/>
  </reference>
</referencegroup>

<reference anchor="JWS">
  <front>
    <title>JSON Web Signature (JWS)</title>
    <author fullname="M. Jones" initials="M." surname="Jones"/>
    <author fullname="J. Bradley" initials="J." surname="Bradley"/>
    <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
    <date month="May" year="2015"/>
    <abstract>
      <t>JSON Web Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and an IANA registry defined by that specification. Related encryption capabilities are described in the separate JSON Web Encryption (JWE) specification.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7515"/>
  <seriesInfo name="DOI" value="10.17487/RFC7515"/>
</reference>

<reference anchor="YANGCBOR">
  <front>
    <title>Encoding of Data Modeled with YANG in the Concise Binary Object Representation (CBOR)</title>
    <author fullname="M. Veillette" initials="M." role="editor" surname="Veillette"/>
    <author fullname="I. Petrov" initials="I." role="editor" surname="Petrov"/>
    <author fullname="A. Pelov" initials="A." surname="Pelov"/>
    <author fullname="C. Bormann" initials="C." surname="Bormann"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <date month="July" year="2022"/>
    <abstract>
      <t>YANG (RFC 7950) is a data modeling language used to model configuration data, state data, parameters and results of Remote Procedure Call (RPC) operations or actions, and notifications.</t>
      <t>This document defines encoding rules for YANG in the Concise Binary Object Representation (CBOR) (RFC 8949).</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9254"/>
  <seriesInfo name="DOI" value="10.17487/RFC9254"/>
</reference>


<reference anchor="SECUREJOIN">
   <front>
      <title>6tisch Secure Join protocol</title>
      <author fullname="Michael Richardson" initials="M." surname="Richardson">
         <organization>Sandelman Software Works</organization>
      </author>
      <date day="25" month="February" year="2017"/>
      <abstract>
	 <t>   This document describes a zero-touch mechanism to enroll a new device
   (the &quot;pledge&quot;) into a IEEE802.15.4 TSCH network using the 6tisch
   signaling mechanisms.  The resulting device will obtain a domain
   specific credential that can be used with either 802.15.9 per-host
   pair keying protocols, or to obtain the network-wide key from a
   coordinator.  The mechanism describe her is an augmentation to the
   one-touch mechanism described in [I-D.ietf-6tisch-minimal-security].

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-6tisch-dtsecurity-secure-join-01"/>
   
</reference>

<reference anchor="YANG-GUIDE">
  <front>
    <title>Guidelines for Authors and Reviewers of Documents Containing YANG Data Models</title>
    <author fullname="A. Bierman" initials="A." surname="Bierman"/>
    <date month="October" year="2018"/>
    <abstract>
      <t>This memo provides guidelines for authors and reviewers of specifications containing YANG modules. Recommendations and procedures are defined, which are intended to increase interoperability and usability of Network Configuration Protocol (NETCONF) and RESTCONF protocol implementations that utilize YANG modules. This document obsoletes RFC 6087.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="216"/>
  <seriesInfo name="RFC" value="8407"/>
  <seriesInfo name="DOI" value="10.17487/RFC8407"/>
</reference>


<reference anchor="Stajano99theresurrecting" target="https://www.cl.cam.ac.uk/research/dtg/www/files/publications/public/files/tr.1999.2.pdf">
  <front>
    <title>The Resurrecting Duckling: Security Issues for Ad-Hoc Wireless Networks</title>
    <author initials="F." surname="Stajano" fullname="Frank Stajano">
      <organization></organization>
    </author>
    <author initials="R." surname="Anderson" fullname="Ross Anderson">
      <organization></organization>
    </author>
    <date year="1999"/>
  </front>
</reference>
<reference anchor="imprinting" target="https://en.wikipedia.org/w/index.php?title=Imprinting_(psychology)&amp;oldid=825757556">
  <front>
    <title>Wikipedia article: Imprinting</title>
    <author >
      <organization>Wikipedia</organization>
    </author>
    <date year="2018" month="February"/>
  </front>
</reference>
<reference anchor="fairhair" target="https://openconnectivity.org/developer/specifications/fairhair/">
  <front>
    <title>Fairhair Specification</title>
    <author >
      <organization>Open Connectivity Foundation</organization>
    </author>
    <date year="2019" month="November" day="01"/>
  </front>
</reference>



<reference anchor="I-D.selander-ace-ake-authz">
   <front>
      <title>Lightweight Authorization for Authenticated Key Exchange.</title>
      <author fullname="Göran Selander" initials="G." surname="Selander">
         <organization>Ericsson AB</organization>
      </author>
      <author fullname="John Preuß Mattsson" initials="J. P." surname="Mattsson">
         <organization>Ericsson AB</organization>
      </author>
      <author fullname="Mališa Vučinić" initials="M." surname="Vučinić">
         <organization>INRIA</organization>
      </author>
      <author fullname="Michael Richardson" initials="M." surname="Richardson">
         <organization>Sandelman Software Works</organization>
      </author>
      <author fullname="Aurelio Schellenbaum" initials="A." surname="Schellenbaum">
         <organization>Institute of Embedded Systems, ZHAW</organization>
      </author>
      <date day="18" month="April" year="2022"/>
      <abstract>
	 <t>   This document describes a procedure for augmenting the lightweight
   authenticated Diffie-Hellman key exchange protocol EDHOC with third
   party assisted authorization, targeting constrained IoT deployments
   (RFC 7228).

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-selander-ace-ake-authz-05"/>
   
</reference>

<reference anchor="RFC8520">
  <front>
    <title>Manufacturer Usage Description Specification</title>
    <author fullname="E. Lear" initials="E." surname="Lear"/>
    <author fullname="R. Droms" initials="R." surname="Droms"/>
    <author fullname="D. Romascanu" initials="D." surname="Romascanu"/>
    <date month="March" year="2019"/>
    <abstract>
      <t>This memo specifies a component-based architecture for Manufacturer Usage Descriptions (MUDs). The goal of MUD is to provide a means for end devices to signal to the network what sort of access and network functionality they require to properly function. The initial focus is on access control. Later work can delve into other aspects.</t>
      <t>This memo specifies two YANG modules, IPv4 and IPv6 DHCP options, a Link Layer Discovery Protocol (LLDP) TLV, a URL, an X.509 certificate extension, and a means to sign and verify the descriptions.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8520"/>
  <seriesInfo name="DOI" value="10.17487/RFC8520"/>
</reference>

<reference anchor="RFC4648">
  <front>
    <title>The Base16, Base32, and Base64 Data Encodings</title>
    <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
    <date month="October" year="2006"/>
    <abstract>
      <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4648"/>
  <seriesInfo name="DOI" value="10.17487/RFC4648"/>
</reference>



<reference anchor="RFC5822">
<front>
<title>Not Issued</title>
<author fullname="" initials="" surname=""><organization/></author>
</front>
<seriesInfo name="RFC" value="5822"/>
</reference>




    </references>


<?line 1605?>

<section anchor="examples"><name>Examples</name>

<section anchor="key-pairs-associated-with-examples"><name>Key pairs associated with examples</name>

<t>The following voucher request has been produced using the IDevID public (certificate) and private key.
They are included so that other developers can match the same output.</t>

<t>The private RSA key:</t>

<figure><artwork><![CDATA[
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIBHNh6r8QRevRuo+tEmBJeFjQKf6bpFA/9NGoltv+9sNoAoGCCqGSM49
AwEHoUQDQgAEA6N1Q4ezfMAKmoecrfb0OBMc1AyEH+BATkF58FsTSyBxs0SbSWLx
FjDOuwB9gLGn2TsTUJumJ6VPw5Z/TP4hJw==
-----END EC PRIVATE KEY-----
]]></artwork></figure>

<t>The IDevID certificate (public key):</t>

<figure><artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIBrzCCATWgAwIBAgIEHxj+5zAKBggqhkjOPQQDAjAmMSQwIgYDVQQDDBtoaWdo
d2F5LXRlc3QuZXhhbXBsZS5jb20gQ0EwIBcNMjEwNDI3MTgyOTMwWhgPMjk5OTEy
MzEwMDAwMDBaMBwxGjAYBgNVBAUTETAwLUQwLUU1LUYyLTAwLTAyMFkwEwYHKoZI
zj0CAQYIKoZIzj0DAQcDQgAEA6N1Q4ezfMAKmoecrfb0OBMc1AyEH+BATkF58FsT
SyBxs0SbSWLxFjDOuwB9gLGn2TsTUJumJ6VPw5Z/TP4hJ6NZMFcwHQYDVR0OBBYE
FEWIzJaWAGQ3sLojZWRkVAgGbFatMAkGA1UdEwQCMAAwKwYIKwYBBQUHASAEHxYd
aGlnaHdheS10ZXN0LmV4YW1wbGUuY29tOjk0NDMwCgYIKoZIzj0EAwIDaAAwZQIw
YirbvjT3G8uF3iaOQwD5DYjId6jdPAhAVLzsPbbccCvDf8oZIZqgq8VRjqrfNt6L
AjEAsl1Z+EfH7QOXqMDHqIH6qIbtZ2Q3UXpunKOCTW2tvPM1np1qom1/fyUcA+/w
uptx
-----END CERTIFICATE-----
]]></artwork></figure>

<t>The Certification Authority that created the IDevID:</t>

<figure><artwork><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 1016146354 (0x3c9129b2)
        Signature Algorithm: sha256WithRSAEncryption
        Issuer: CN = highway-test.example.com CA
        Validity
            Not Before: Apr  5 19:36:57 2021 GMT
            Not After : May  6 05:36:57 2021 GMT
        Subject: CN = highway-test.example.com CA
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (3072 bit)
                Modulus:
                    00:b4:7b:27:42:49:9f:ed:85:47:74:ff:f6:50:cd:
                    5d:22:1a:64:38:22:f8:09:d2:d6:f3:60:d8:98:7f:
                    e5:84:52:1e:d9:ce:96:b4:dc:a6:43:74:67:27:d9:
                    9d:42:7d:bf:1a:43:92:9b:d1:dd:34:9b:41:d2:e3:
                    d5:59:b3:40:fc:b3:c9:e1:58:84:3f:87:f7:06:45:
                    25:26:4c:bf:a1:45:72:a0:0a:5b:86:41:d7:8e:be:
                    d3:38:b5:aa:66:69:bd:3a:fd:e9:b5:b8:a2:79:c4:
                    f0:a5:3c:9e:91:94:32:1e:9c:b0:7f:25:46:5b:76:
                    1d:86:23:85:b0:62:45:5c:a8:6f:fb:c5:26:e1:dd:
                    a8:f2:68:ab:c5:8c:b4:58:b4:2e:96:49:fa:fe:d2:
                    ea:a5:11:68:c2:8d:f4:58:ab:30:bd:dd:1b:29:97:
                    00:18:6f:59:40:9c:3a:2a:e4:96:25:bb:12:f4:1a:
                    11:72:6d:31:f6:b4:e1:cc:d8:9a:0c:aa:a8:aa:a4:
                    64:e3:f1:06:1c:c0:09:df:62:ba:04:cb:70:b0:c4:
                    f7:ca:35:22:ea:a9:c7:52:e1:ce:27:fb:6c:52:39:
                    b7:22:b3:5d:97:cb:0a:9f:75:a3:af:16:ef:e6:b2:
                    1b:6a:c3:0b:1d:15:fd:b8:d8:e7:8a:f6:f4:99:1c:
                    23:97:4b:80:e9:79:a3:85:16:f8:dd:bd:77:ef:3a:
                    3c:8e:e7:75:56:67:36:3a:dd:42:7b:84:2f:64:2f:
                    13:0e:fa:b0:3b:11:13:7e:ae:78:a6:2f:46:dd:4b:
                    11:88:e4:7b:19:ab:21:2d:1f:34:ba:61:cd:51:84:
                    a5:ec:6a:c1:90:20:70:e3:aa:f4:01:fd:0c:6e:cd:
                    04:47:99:31:70:79:6c:af:41:78:c1:04:2a:43:78:
                    84:8a:fe:c3:3d:f2:41:c8:2a:a1:10:e0:b7:b4:4f:
                    4e:e6:26:79:ac:49:64:cf:57:1e:2e:e3:2f:58:bd:
                    6f:30:00:67:d7:8b:d6:13:60:bf
                Exponent: 65537 (0x10001)
        X509v3 extensions:
            X509v3 Basic Constraints: critical
                CA:TRUE
            X509v3 Key Usage: critical
                Certificate Sign, CRL Sign
            X509v3 Subject Key Identifier: 
                33:12:45:B7:1B:10:BE:F3:CB:64:E5:4C:50:80:7C:9D:88:\
                                                             65:74:40
            X509v3 Authority Key Identifier: 
                33:12:45:B7:1B:10:BE:F3:CB:64:E5:4C:50:80:7C:9D:88:\
                                                             65:74:40
    Signature Algorithm: sha256WithRSAEncryption
    Signature Value:
        05:37:28:85:37:39:71:87:ec:5c:f0:51:19:55:4a:b7:e0:2a:
        e6:61:30:d4:e2:2b:ad:7a:db:12:fc:8a:a6:6e:15:82:80:10:
        fa:5d:67:60:e8:54:14:e3:89:d6:4e:60:89:98:5b:ab:fe:32:
        26:aa:02:35:68:4e:c6:2e:ce:08:36:d1:ea:a0:97:3d:76:38:
        6e:9d:4b:6f:33:d2:fa:c2:7e:b0:59:bc:75:97:17:d1:1b:c5:
        c4:58:ae:7b:7e:87:e5:87:2b:8b:6b:10:16:70:7c:c8:65:c7:
        d0:62:5d:f3:b5:06:af:03:8b:32:dd:88:f0:07:2b:5d:61:58:
        61:35:54:a6:ce:95:81:a2:6e:fa:b5:aa:25:e1:41:53:9d:e7:
        4b:7e:93:88:79:6b:dd:a3:6e:9a:0d:bd:85:b4:2d:66:b9:cc:
        01:13:f1:b5:d5:91:cc:86:5e:a7:c8:4a:8f:4d:9d:f8:17:31:
        32:7d:50:d5:c2:79:a0:41:a0:69:83:33:16:14:35:26:10:3b:
        23:eb:60:d9:28:68:99:d5:55:61:89:b5:35:5d:8b:fe:b1:96:
        32:69:3e:8b:c2:a2:4e:e1:d8:76:04:3c:87:91:5d:66:9e:81:
        a5:bf:18:2e:3e:39:da:4f:68:57:46:d2:1d:aa:81:51:3b:33:
        72:da:e9:7d:12:b6:a1:fc:c7:1d:c1:9c:bd:92:e8:1b:d2:06:
        e8:0b:82:2a:4f:23:5a:7a:fa:7b:86:a0:d7:c1:46:e7:04:47:
        77:11:cd:da:7c:50:32:d2:6f:fd:1e:0a:df:cf:b1:20:d2:86:
        ce:40:5a:27:61:49:2f:71:f5:04:ac:eb:c6:03:70:a4:70:13:
        4a:af:41:35:83:dc:55:c0:29:7f:12:4f:d0:f1:bb:f7:61:4a:
        9f:8d:61:b0:5e:89:46:49:e3:27:8b:42:82:5e:af:14:d5:d9:
        91:69:3d:af:11:70:5b:a3:92:3b:e3:c8:2a:a4:38:e5:88:f2:
        6f:09:f4:e5:04:3b
-----BEGIN CERTIFICATE-----
MIIELTCCApWgAwIBAgIEPJEpsjANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBto
aWdod2F5LXRlc3QuZXhhbXBsZS5jb20gQ0EwHhcNMjEwNDA1MTkzNjU3WhcNMjEw
NTA2MDUzNjU3WjAmMSQwIgYDVQQDDBtoaWdod2F5LXRlc3QuZXhhbXBsZS5jb20g
Q0EwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQC0eydCSZ/thUd0//ZQ
zV0iGmQ4IvgJ0tbzYNiYf+WEUh7Zzpa03KZDdGcn2Z1Cfb8aQ5Kb0d00m0HS49VZ
s0D8s8nhWIQ/h/cGRSUmTL+hRXKgCluGQdeOvtM4tapmab06/em1uKJ5xPClPJ6R
lDIenLB/JUZbdh2GI4WwYkVcqG/7xSbh3ajyaKvFjLRYtC6WSfr+0uqlEWjCjfRY
qzC93RsplwAYb1lAnDoq5JYluxL0GhFybTH2tOHM2JoMqqiqpGTj8QYcwAnfYroE
y3CwxPfKNSLqqcdS4c4n+2xSObcis12XywqfdaOvFu/mshtqwwsdFf242OeK9vSZ
HCOXS4DpeaOFFvjdvXfvOjyO53VWZzY63UJ7hC9kLxMO+rA7ERN+rnimL0bdSxGI
5HsZqyEtHzS6Yc1RhKXsasGQIHDjqvQB/QxuzQRHmTFweWyvQXjBBCpDeISK/sM9
8kHIKqEQ4Le0T07mJnmsSWTPVx4u4y9YvW8wAGfXi9YTYL8CAwEAAaNjMGEwDwYD
VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFDMSRbcbEL7z
y2TlTFCAfJ2IZXRAMB8GA1UdIwQYMBaAFDMSRbcbEL7zy2TlTFCAfJ2IZXRAMA0G
CSqGSIb3DQEBCwUAA4IBgQAFNyiFNzlxh+xc8FEZVUq34CrmYTDU4iutetsS/Iqm
bhWCgBD6XWdg6FQU44nWTmCJmFur/jImqgI1aE7GLs4INtHqoJc9djhunUtvM9L6
wn6wWbx1lxfRG8XEWK57foflhyuLaxAWcHzIZcfQYl3ztQavA4sy3YjwBytdYVhh
NVSmzpWBom76taol4UFTnedLfpOIeWvdo26aDb2FtC1mucwBE/G11ZHMhl6nyEqP
TZ34FzEyfVDVwnmgQaBpgzMWFDUmEDsj62DZKGiZ1VVhibU1XYv+sZYyaT6LwqJO
4dh2BDyHkV1mnoGlvxguPjnaT2hXRtIdqoFROzNy2ul9Erah/McdwZy9kugb0gbo
C4IqTyNaevp7hqDXwUbnBEd3Ec3afFAy0m/9Hgrfz7Eg0obOQFonYUkvcfUErOvG
A3CkcBNKr0E1g9xVwCl/Ek/Q8bv3YUqfjWGwXolGSeMni0KCXq8U1dmRaT2vEXBb
o5I748gqpDjliPJvCfTlBDs=
-----END CERTIFICATE-----
]]></artwork></figure>

<t>The private key for the Certification Authority that created the IDevID:</t>

<figure><artwork><![CDATA[
-----BEGIN RSA PRIVATE KEY-----
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
-----END RSA PRIVATE KEY-----
]]></artwork></figure>

<t>The MASA certificate that signs the voucher:</t>

<figure><artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIBcDCB9qADAgECAgQLhwoxMAoGCCqGSM49BAMCMCYxJDAiBgNVBAMMG2hpZ2h3
YXktdGVzdC5leGFtcGxlLmNvbSBDQTAeFw0yMTA0MTMyMTQwMTZaFw0yMzA0MTMy
MTQwMTZaMCgxJjAkBgNVBAMMHWhpZ2h3YXktdGVzdC5leGFtcGxlLmNvbSBNQVNB
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqgQVo0S54kT4yfkbBxumdHOcHrps
qbOpMKmiMln3oB1HAW25MJV+gqi4tMFfSJ0iEwt8kszfWXK4rLgJS2mnpaMQMA4w
DAYDVR0TAQH/BAIwADAKBggqhkjOPQQDAgNpADBmAjEArsthLdRcjW6GqgsGHcbT
YLoyczYl0yOFSYcczpQjeRqeQVUkHRUioUi7CsCrPBNzAjEAhjxns5Wi4uX5rfkd
nME0Mnj1z+rVRwOfAL/QWctRwpgEgSSKURNQsXWyL52otPS5
-----END CERTIFICATE-----
]]></artwork></figure>

<t>The private key for MASA certificate signs the voucher:</t>

<figure><artwork><![CDATA[
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIFhdd0eDdzip67kXx72K+KHGJQYJHNy8pkiLJ6CcvxMGoAoGCCqGSM49
AwEHoUQDQgAEqgQVo0S54kT4yfkbBxumdHOcHrpsqbOpMKmiMln3oB1HAW25MJV+
gqi4tMFfSJ0iEwt8kszfWXK4rLgJS2mnpQ==
-----END EC PRIVATE KEY-----
]]></artwork></figure>

</section>
<section anchor="example-cms-signed-voucher-request"><name>Example CMS signed voucher request</name>

<figure><artwork><![CDATA[
MIIGjQYJKoZIhvcNAQcCoIIGfjCCBnoCAQExDTALBglghkgBZQMEAgEwggOl
BgkqhkiG9w0BBwGgggOWBIIDknsiaWV0Zi12b3VjaGVyLXJlcXVlc3Q6dm91
Y2hlciI6eyJhc3NlcnRpb24iOiJwcm94aW1pdHkiLCJjcmVhdGVkLW9uIjoi
MjAyMi0wNy0xMFQxNzowODoxOC41OTgtMDQ6MDAiLCJzZXJpYWwtbnVtYmVy
IjoiMDAtRDAtRTUtRjItMDAtMDIiLCJub25jZSI6IjR2VHNwcFMyQ2VxQnpo
RWRvaWZNMmciLCJwcm94aW1pdHktcmVnaXN0cmFyLWNlcnQiOiJNSUlDRURD
Q0FaYWdBd0lCQWdJRVlGYTZaVEFLQmdncWhrak9QUVFEQWpCdE1SSXdFQVlL
Q1pJbWlaUHlMR1FCR1JZQ1kyRXhHVEFYQmdvSmtpYUprL0lzWkFFWkZnbHpZ
VzVrWld4dFlXNHhQREE2QmdOVkJBTU1NMlp2ZFc1MFlXbHVMWFJsYzNRdVpY
aGhiWEJzWlM1amIyMGdWVzV6ZEhKMWJtY2dSbTkxYm5SaGFXNGdVbTl2ZENC
RFFUQWVGdzB5TVRFeE1qUXhPVFF6TURWYUZ3MHlNekV4TWpReE9UUXpNRFZh
TUZNeEVqQVFCZ29Ka2lhSmsvSXNaQUVaRmdKallURVpNQmNHQ2dtU0pvbVQ4
aXhrQVJrV0NYTmhibVJsYkcxaGJqRWlNQ0FHQTFVRUF3d1pabTkxYm5SaGFX
NHRkR1Z6ZEM1bGVHRnRjR3hsTG1OdmJUQlpNQk1HQnlxR1NNNDlBZ0VHQ0Nx
R1NNNDlBd0VIQTBJQUJKWmxVSEkwdXAvbDNlWmY5dkNCYitsSW5vRU1FZ2M3
Um8rWFpDdGpBSTBDRDFmSmZKUi9oSXl5RG1IV3lZaU5GYlJDSDlmeWFyZmt6
Z1g0cDB6VGl6cWpQakE4TUNvR0ExVWRKUUVCL3dRZ01CNEdDQ3NHQVFVRkJ3
TWNCZ2dyQmdFRkJRY0RBZ1lJS3dZQkJRVUhBd0V3RGdZRFZSMFBBUUgvQkFR
REFnZUFNQW9HQ0NxR1NNNDlCQU1DQTJnQU1HVUNNUUNkU1pSSjgzTU5SQ3ph
Myt2T0JhMDFoNHFadjJsS2hkK0RmaEI0WURodkdwa1dvbFplSEh3TmI3QXRC
Q010YlV3Q01Ib054b2lrK3hXN0F0MWhYRWhwMy9NY1hpQWR6blpicFZxK3hK
RVppaFhVMzZJQmp2WWdXREY5aXZxeEpwRGJ5dz09In19oIIBszCCAa8wggE1
oAMCAQICBB8Y/ucwCgYIKoZIzj0EAwIwJjEkMCIGA1UEAwwbaGlnaHdheS10
ZXN0LmV4YW1wbGUuY29tIENBMCAXDTIxMDQyNzE4MjkzMFoYDzI5OTkxMjMx
MDAwMDAwWjAcMRowGAYDVQQFExEwMC1EMC1FNS1GMi0wMC0wMjBZMBMGByqG
SM49AgEGCCqGSM49AwEHA0IABAOjdUOHs3zACpqHnK329DgTHNQMhB/gQE5B
efBbE0sgcbNEm0li8RYwzrsAfYCxp9k7E1CbpielT8OWf0z+ISejWTBXMB0G
A1UdDgQWBBRFiMyWlgBkN7C6I2VkZFQIBmxWrTAJBgNVHRMEAjAAMCsGCCsG
AQUFBwEgBB8WHWhpZ2h3YXktdGVzdC5leGFtcGxlLmNvbTo5NDQzMAoGCCqG
SM49BAMCA2gAMGUCMGIq27409xvLhd4mjkMA+Q2IyHeo3TwIQFS87D223HAr
w3/KGSGaoKvFUY6q3zbeiwIxALJdWfhHx+0Dl6jAx6iB+qiG7WdkN1F6bpyj
gk1trbzzNZ6daqJtf38lHAPv8LqbcTGCAQQwggEAAgEBMC4wJjEkMCIGA1UE
AwwbaGlnaHdheS10ZXN0LmV4YW1wbGUuY29tIENBAgQfGP7nMAsGCWCGSAFl
AwQCAaBpMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkF
MQ8XDTIyMDcxMDIxMDgxOFowLwYJKoZIhvcNAQkEMSIEIFc4jO6OnilTLkM/
fcc9p5au4ANjvJvjRXsAKK6+RcTvMAoGCCqGSM49BAMCBEcwRQIhAOjoOdgh
Sr+Hk2r2APsfs1+QJba0uRf/+zXA70yb6mRCAiB9aS6Wj8kBcWEvvfsDue41
KWo0ukOBQxdPGpJqg+GAMw==
]]></artwork></figure>

</section>
<section anchor="example-cms-signed-voucher-from-masa"><name>Example CMS signed voucher from MASA</name>

<figure><artwork><![CDATA[
MIIGPQYJKoZIhvcNAQcCoIIGLjCCBioCAQExDTALBglghkgBZQMEAgEwggOU
BgkqhkiG9w0BBwGgggOFBIIDgXsiaWV0Zi12b3VjaGVyOnZvdWNoZXIiOnsi
YXNzZXJ0aW9uIjoibG9nZ2VkIiwiY3JlYXRlZC1vbiI6IjIwMjItMDctMTBU
MTc6MDg6MTguNzIwLTA0OjAwIiwic2VyaWFsLW51bWJlciI6IjAwLUQwLUU1
LUYyLTAwLTAyIiwibm9uY2UiOiI0dlRzcHBTMkNlcUJ6aEVkb2lmTTJnIiwi
cGlubmVkLWRvbWFpbi1jZXJ0IjoiTUlJQ0VEQ0NBWmFnQXdJQkFnSUVZRmE2
WlRBS0JnZ3Foa2pPUFFRREFqQnRNUkl3RUFZS0NaSW1pWlB5TEdRQkdSWUNZ
MkV4R1RBWEJnb0praWFKay9Jc1pBRVpGZ2x6WVc1a1pXeHRZVzR4UERBNkJn
TlZCQU1NTTJadmRXNTBZV2x1TFhSbGMzUXVaWGhoYlhCc1pTNWpiMjBnVlc1
emRISjFibWNnUm05MWJuUmhhVzRnVW05dmRDQkRRVEFlRncweU1URXhNalF4
T1RRek1EVmFGdzB5TXpFeE1qUXhPVFF6TURWYU1GTXhFakFRQmdvSmtpYUpr
L0lzWkFFWkZnSmpZVEVaTUJjR0NnbVNKb21UOGl4a0FSa1dDWE5oYm1SbGJH
MWhiakVpTUNBR0ExVUVBd3daWm05MWJuUmhhVzR0ZEdWemRDNWxlR0Z0Y0d4
bExtTnZiVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSlps
VUhJMHVwL2wzZVpmOXZDQmIrbElub0VNRWdjN1JvK1haQ3RqQUkwQ0QxZkpm
SlIvaEl5eURtSFd5WWlORmJSQ0g5ZnlhcmZremdYNHAwelRpenFqUGpBOE1D
b0dBMVVkSlFFQi93UWdNQjRHQ0NzR0FRVUZCd01jQmdnckJnRUZCUWNEQWdZ
SUt3WUJCUVVIQXdFd0RnWURWUjBQQVFIL0JBUURBZ2VBTUFvR0NDcUdTTTQ5
QkFNQ0EyZ0FNR1VDTVFDZFNaUko4M01OUkN6YTMrdk9CYTAxaDRxWnYybEto
ZCtEZmhCNFlEaHZHcGtXb2xaZUhId05iN0F0QkNNdGJVd0NNSG9OeG9payt4
VzdBdDFoWEVocDMvTWNYaUFkem5aYnBWcSt4SkVaaWhYVTM2SUJqdllnV0RG
OWl2cXhKcERieXc9PSJ9faCCAXQwggFwMIH2oAMCAQICBAuHCjEwCgYIKoZI
zj0EAwIwJjEkMCIGA1UEAwwbaGlnaHdheS10ZXN0LmV4YW1wbGUuY29tIENB
MB4XDTIxMDQxMzIxNDAxNloXDTIzMDQxMzIxNDAxNlowKDEmMCQGA1UEAwwd
aGlnaHdheS10ZXN0LmV4YW1wbGUuY29tIE1BU0EwWTATBgcqhkjOPQIBBggq
hkjOPQMBBwNCAASqBBWjRLniRPjJ+RsHG6Z0c5weumyps6kwqaIyWfegHUcB
bbkwlX6CqLi0wV9InSITC3ySzN9ZcrisuAlLaaeloxAwDjAMBgNVHRMBAf8E
AjAAMAoGCCqGSM49BAMCA2kAMGYCMQCuy2Et1FyNboaqCwYdxtNgujJzNiXT
I4VJhxzOlCN5Gp5BVSQdFSKhSLsKwKs8E3MCMQCGPGezlaLi5fmt+R2cwTQy
ePXP6tVHA58Av9BZy1HCmASBJIpRE1CxdbIvnai09LkxggEEMIIBAAIBATAu
MCYxJDAiBgNVBAMMG2hpZ2h3YXktdGVzdC5leGFtcGxlLmNvbSBDQQIEC4cK
MTALBglghkgBZQMEAgGgaTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwG
CSqGSIb3DQEJBTEPFw0yMjA3MTAyMTA4MThaMC8GCSqGSIb3DQEJBDEiBCBA
77EhoAybh5R6kK89jDefpxRy8Q6rDo1cnlwgvCzXbzAKBggqhkjOPQQDAgRH
MEUCIQD4RnuXwKvYVvwamwVq3VYv7dXcM7bzLg7FXTkhvYqPzwIgXTJxVV5a
cLMAroeHgThS5JU5QA2PJMLGF82UcSNTsEY=
]]></artwork></figure>

</section>
</section>
<section numbered="no" anchor="acknowledgements"><name>Acknowledgements</name>

<t>The authors would like to thank for following for
lively discussions on list and in the halls (ordered
by last name):
<contact fullname="William Atwood"/>,
<contact fullname="Michael H. Behringer"/>,
<contact fullname="Esko Dijk"/>,
<contact fullname="Steffen Fries"/>,
<contact fullname="Sheng Jiang"/>,
<contact fullname="Thomas Werner"/>.</t>

</section>


  </back>

<!-- ##markdown-source:
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
9x/fplau+Pnx0Dm2J4XHfLPfq1pX5c+9nJPLjXMnnVLt9tEIc4fVsDoZ3rWv
9oZ79vF152bcPf04vL7/PGiOZsdXjnsxj85KkTUdW71cZc8d52efP5VfL5uj
y0+Va2N02HYnpwd7n24ee86wcNwu3S0enm/tl+O9/ddOb1i0npbW5/nR0+n1
Q9Ss3HX6wcfc7GXUuntqPvWvH4yXt2ateB1OR4vGQy8/akwO/Zfyp4fR7PU0
dzw8Wva6J4Xo4uSs8Mk/e3nxXqbH3afq1YO9aEz6D4HfMpbF5uL1sv/5vHP6
8mI7nZJdmnwsvHYuerYX5gv3y8VL37Eu5kezvXE4jF4Wi9A56hdKhQv3c23e
eTROmhf3ndLh1LUujo7mT878vj+/eFpelIu3d49vD5Xizaf9YbP2fPp6dvEx
aOy3rs8/BhNvfJrrOZ3X47ZRPgkfX5at6OStU3mw89fDz/ehFR5ftU8On17m
Vwd7V6+zt6vrk3H3aOHeLedX908HB83podvufN4Lz2pG9fmk/fmldVU6dXPd
3P7402Qcdu66l7evpVlpWXuY31UXjeP+vVd76D6cVpuNRavRsM6fzo5bi8PF
w6Fxe53rNq5O9g4aN8AyrYO9t8YFeoNPrqoHjX4VOOoMnb0J/+vR4Vnnumf3
Wqf7b8ay0B11j5qN/qdC+/H+unF2UCX/a3tx9XB2YDX0h1eeBe41dPZtLph9
B1eNo/Old3T+Nnodfny1q0etx9ubl2KpGYwfuoc3JW8WuVHY2Wu/jI3e8K45
ODis3N85g8rR1U2pNLnrjpufxkezYO+pPX4ZtPNWa//4NCy1z6OTF/+TXXOe
hrPJTTQ/q51WjMWksrjrveZHr/3r4+p96+5zeb/v90fD5ezUem3c2Sdv7Ue7
f/UwKr5FV9a8UQqXxYenxcEych5uh0Pj/LYzfpveHfjj/Upk+aPSzVF34jqn
/elF272bO36hYh32CkdRMz+e2YuD1t5xPv94cjYcVSbL1sul0X0slo7eWsv+
7eHtYjIeXFkH08Hb2d3R4c24dRg+VQqHj5+Pvcf87e3Q693k7x/mH8PHh6XV
rZwuXj5dGCXYQQeHy5Pn2/x44h+P5q+D2eXTxOoWhvfXUdt58Y+uL97Ol4XZ
qNYKrOHeme0sHpe159mglxv0fKNZar90l+eWO5/uD18O7xc3vclByym27KLV
P2osc+O92skg6L/ttwY5v3dxdeRPHm6e53b/phVczI+NRrH5bB+cfw5yrfyg
9nq7aI72Ws97V9XevPhw89J/ujte3Puj4457NvFyn5v3L9WbvDO+hiHOW/cH
PcMvt/dL1cHL9PBp5F1+mjf73dHBYfjbdzm59Tx7mdf/Jx3f2smBsa7VkFa7
fVxuwKnR+NxsPLQa0Uk4uXoe9/cfbk+cy73CzVneaQ+nzxfN01LTOb2rFg4f
xid7o+FR2y3YlTsjOl+Or4rXk0+1sXM1KewdP190xrUT5/xTdJCbXd7e9c4b
e6eXn0q3Xuuy1C8ePN+MPj0v9/yb26XfmPaM4fPJ/VOw3704vXt5HI9rF/Pi
NOp5nmt3F9Pu0n1+vFqeTJeL/vL2+K744Ay9i6Pw+NPR/efh/GP1ZgzcUvCr
Yy94fVjm7k6vZqPnSWUvOn2ZXh/5C7+Yu/scLuZOrvf50W4cH9cerz4tKp9n
nbtPvbBTO/CvDXuce60F3eHbuWcdfn7xX16un0t7reOTs8anYuFz5eAsWoRn
3eLy6carvExObmYnF5/2ovDmaVxsB+eOMaqGnydw9AWvvXk5aPes8Oz05Pq+
Njt/mnjzXm58vXga5WaNyv34aXjdKxV7+eL+m199mjn527FdMC6ifNMtXc0f
m9Xu4fxlcfHa6vZfyqWpVzsu3oTX3sX1/rEVDk+vq7nZ+OT85qEz2j8ODp6b
B4tSJcgZjX7urBfmWtfl51f7ZBQGuaPS4urq5arotbz5/uFl/9PBsvkybF00
i1GrdlH2HstBa/T8lrfd09nZ3Lg7zc/PGgeTfGl+1yo09xqDM+CJVhOO3Ubj
5qhycnJZCC+Gz/3Z5bQJy1NbnLQbp/Pak3P5OpvtfTKeBw/Xy/BkMrx6Xe7v
VcvNi6prfW529krRwr58vH8MS5NGrbII/P3i9XWzefG297y3fz2qLcO3g/PG
2Lgb3LtB0bu5KD/dFZ4OTo8qYXh5fXg8DPZG4060f3LevGmdd29rtQP789Ae
lbzm88deoTGtfWo+j65to2rf1K6f946i/c97rn/6cDN0SneTj+12775/ef1a
eJlWQVo85TrW4+H55ct+7eChtvCuO7mat+w/e/fG3uLa/7QIL06DTn82gSPi
whl1wo/3jfDj+Wf38/igYg/Hl8PLj+FD9/7149vR08di5fz66aXgvD4/dE6M
4UFt6n4qL9+6h8PTq6k1uC0fFiu391fhy4m1mA9as4p91ejbjyCexpNZYO2/
PRwsw/5z6eHtzXu7MILQrgUPx5f5HJDhLteafr7ea9vn/bPjRXTYO3Hze/tv
H3OfOreH7t7IGUbVh2BxX/QHTjk47w1HfWN00/p4uB/4cNZVB5Wbt1L3rl11
pmeH1n3z7WnwVnkpeN7d/n7uuvzanA5Pj3qz8+FeZ9J7fjh/OG/5xnO1cf7x
6PXjoti62G8OSpbV6h7sV7zz+9uDhn9y0Ljwetb8qNR+mAXA3MXa415l3h5e
FPNH+7fO+ZPxWhs81i7GlbPx4/lRp3dTvTxd+letZbtUWQ761e7F3kGn750s
b84mtj8c39+F/s29d/R4W8oXrNuXZ+Nk8Dj4eHYXfp49zLrj4+e9pj97uHpz
9q+j4HRU7U4vJ/b9MPzUfixVp1P79nhydjK5ewR17Wnv80u/YviH/bC9fzV8
XFb7N6+D9qfi/M5vlt+O3KuHt/tp+7B0+RlExPjefosqD97VydGn2fzl9mna
H90Oa3ePxshtD5sH/29nZ9LsqK4k4D2/ouL1pjvc8Q5g46EjesE82AIjQAw7
JjMPHhlu3P/e4pyquqfqjtELhwMBAolU5pciU4ydutuW1NNZB4UhupeqGS03
SdTzpA5HbjAFuYtaRaNqVUvb6e0YKhx67A2RR8QgKtuaHftNGY8+BtbojGRt
1u8r7v4ojcJfOcJNpgGatFVSriaLri8Cp8XT3L014ls3EmSXyP1ROwBUbUC0
aZjNWqvrLMLKq9Ga46wVPVZv6aPxEE2bHHnXptA/bcB6vnXXgdoRD/GChyz1
auKDZw4srxm3ullVGyopn4+hefIirfmdHp2S+MZnycUgt8E6yvWqaqPbTRII
48ZtyHGkFOa53leCs1smqMxN+XJEt9qGzOquwtXN4bNYZKd+xWqiNkV1Y0RW
fsyzUCROL0ffxK9L3Pen9e2KHq+8uhq3Yh48dL9NYZKLG7ks58ed1Qq/5/s9
beRaTSfrYKs/c0gcx1bL9tkr4XdxC94K6CTMMOuMmZ69MAUN5a7UlRO8Fb4w
WVLTXkTDFhpUHXRSNKvWIugL3Z/jlvOiKZrxyLJePC++pLo8TEUl29mqRKRN
gdcwafury5lcj8qxpcR1301dlHXEdEyvDk9eU3pTPun5Puqdcbc86bZb3tnu
tpxbMGn85tgaW+KxwfrBSh7gbA/X8+se7FbEHuN7Ttpu6OjGtbg/0M1mZrox
9s9uZZQBLaTMdm0yhjyLaHVO+E14wUzzvF25+rYGj5CYlefBCJGwFWc+3p2L
u1qFWedlKrwF4tOaE7svyz1ktpfwKZSsNluhJj362D/TjlsZEsEcm6shmn1X
zemTHAMn6x2Pmu9NIT7pYJtr9FuxPXLaeStDPt/xlKoH2jSAfn24F/xuIu4c
ddmvr4Z/ZB4dsszX5SK+3atX/ZbE6xcrQjMn315uWl3QM1Of/buO0MqD8xZK
zlvMEMf47bDJmxRu7bpUdWC1pKge2lpjpMrHlNfMWcoKh7dK56KzAkt1AiFj
DLubYmxOD/JAOPv1bpoeYhw14k2fwZPLDW/VFjfPu1JCz5yAXinnddaeJ9Lj
af7JNPRLebtGUq7WUIQEJXv8yN1cY+5envQkD2SnlkY+8NH42MluoLzJwHE0
2dOi1Z3iZ1OfqWvhHdts5/X1kyWsQ4ninOmP18Z9Cb5/47ym4dOD9iRhy/GZ
oT5lp+DPpYjRctVMpwT7zOznQJw/RK/feO89P+9zHM471C1xXD8sbvFPI3Ji
gecOV+zrZyLPZuYpH7oRfApDWrwgwPujJrDFR6wMADKd9wGdrwnfqx6JjOaE
Z+pUlh6xPNanRn9FFieYNptKAzkBmyWBDfC/OQA7CN/L5o8y4lsh4LNRK9nq
2xUU9+MKf3EB3UQ6R3wOz/mz6JxrZqKOtJhNZW+w8Y648dkkihErt/5OXCOj
B8emAHW77jhKYV2aARpaZddi8wDSxdLIQhwe++o+X1zvuLmdMs2im7YPgQnY
zUAI7Lt7+NWVVAfclT+GM2V6zwpcs4S93O6P/JTAuHS38jW7y0oc2YR/6qZ4
9mtyMiTLj+O5N8sUXlMTOZUCnaJzih1/529nTp+XSnKseO6MW2yeHnO7VAnR
ApEEbUnNqxuCg3FhT2+mGz/g0GdiZllHB+rm3XOnE0N3j7PF/L/cit+J3T+R
uL+Mi5PyJCFTIZmLfrurvHFHH1dHRdZMX1P0ad9XxUnb8vFrBPKfxsX91aP9
sydL/O2jNf9ZXNx/fI9+/JRT97vPGH0cvLhOJW7ZIpv5K9axbPIdLruUPM+1
3dIjo2CzJy6rs7zKuMAEIh6SQ5YZNfF5Zo4b5AwXupyqClV7L0IXkUFB0dEa
laGMppOn1bGHlrmzbdIcKMKn8zou1G06aXm81uu4hX1Ebwqj0Ia4OWxCl+oT
BXc2r5Vxg3I83KqTe3iqZVcQoGQnUJCDPpEjkMxRn7vBELrR4DeUYWcPIJhb
gDUDPnkOPK333eERtejhN2gilhrwzgdcfrbzwPr6sWwDQV1OeEY0UwaWulVL
SCNFH2IJTCaNRrPtOwK68BW6gQ6aeDn4860+8G22oaeTcSNNJ3dpkrk0R7ec
WoAOFAiTlELfTbiErHnTTTSIatnHagaJ0slskjZ281tYHUwHSaLp9nwiUpbl
JZKJ6hNhUr0WuXXoKDWAlMRDSgtMqpqglyu4Ah9X8LKaR+87/e1E1rNbSZJb
BW2k9AGBZnRz62STSLWnK7kJRZHGJxio0jjboXRQ93QgxRTA+yMFAVfS7v6s
wwT1PhHKeeGK2uzWgAobbNzkxMUVbgMxPwJXe/h0YkV2NfoNY4Wy5OlygiK7
pgNR5wkoSY7pIjmZOcZGUEpF6up4+RlJ0tZ2oOs7wRootZ5WCIM+BkLx4Dhe
r0MpyAnbCfRURFcTSXxAH44hXedWc39Znh7iXgphkxzDunYg6nWz0RWTTh4O
2b8iZG6I0MtvJtJuiNR9u8mLCOE2VfEYytoVurWOn4Zi2hKCjrROqD783ARC
V2AFqQC3EVCRjBTYwhKu87stU0bSaI5Z4ytWlGK29QgpXdeFmgtIpJikPhLf
ChISqabNaaajHd1mRJZYDYnHviJBr93GZ5JK5/3icbdc5gUdSgposCacZn9z
pV7A9MxZNidAQWqsJjg6xaGzvJqBMqWidR2EDiP7tSZYQt2krjQFzWNLBFRG
xgK3RXK9jd3eDCtxYzv6C5LiiFx4dBzEn9YJDEiK18VEMNe40xDug0pbE7ar
415OJiwYEi6APgm5gKo1a50EJt5GTr40aQ3lJMCPxwISxzlO9jIrCRJQlNrA
kXTTPbx3wtc+4E2HwjZXa/G/ghxddxy9cqjesrAnZzuMZa77nADTg7ZJLQeC
1OmKFCaldrfovDqSsAlFlXQd2CVVMoRU8oqkvrbEfG036tr0II9HFUX6NVrj
fzUimU1E17fjOscDUSKBm/vQzQcwHXSfynvThduo7otYCkZ8zJHAktOHUo7A
HGhm09Oum3hQ9JnQC8ZU7Acoa0wykwe1pQ5YMXL3JVI43GMFKFJE9z4Vq/Ic
t/ffnvHPwamDVooV4NVl9hVvD9HnIFfij6JcVVHncJWeYKsj1mGTPosbUFYz
kDpfmFXGwCIKSjASH+HC7OCWbAxgN8js+6sKSRzFAfCUiH+SblHyoiQBj38l
FwAOyNx0lYnFXGEl/t10LZaLJVUWO8Zl4hjKfT2zfH9V2uOaPgiZregmyLm3
zBQZjkgvXCSS9yyOdLEh62IP/QF7JuzF58f+UO1Eio/6Iq3tveFeyHmlWmnp
2pwHOFImlmloITNdjoNSASa3zrhK3/FblUZVIJkq14zuzWa19/luiE1NyeIu
vuM7veOTTUfiBjHDve3+LYjZHaML5vwNGYlvzMjSGQtkhweyeqV3G/Iwvk55
smnKCrArk1YnJe3W9qCakrXfCTS9VtgbMazfjrIlh93xJTn+9rqeo7QY1JE9
aYl7yZVxRQr1tmTHbcGtroW8c/HIpqRt1E8lkVXU4xbNsx5sk/CqPS7rfa2w
59f+dI1iW8YCZC7SxOIngp/95gehIX6Wmj8TGozIF/m8awGLO8vlZYuVanyy
iWWV6wGXfX4lpbGzePrRdosD9vw+QUAlEcDcL2I4ASHGoriIYzYaUjechh8O
FIGlYmaKN6WxNdqitk8VeCMucXzomfC5YfXypb1K6N3Z43G7grH9+pniOTEe
oKnmWPg6I8lywrqtlIq+0ez5frlTK1OLQvIJL2+r2WN35BRtG8hj6D+E1tYt
9xUXu+LrdbkLz3RDEUe3I5+VwZljcpZ77ZqtZBYsCQX/hI3eM3kWovxER+c/
oKPTQkfFX9KR80d0JC10lHm/pyOjDV6Jq3eBpxYGpifswegLuJDhV+KJ5EMb
4EGiFkPhr7Xa92Ad8NQrKhZOUfH4XhgmfgCbc7D3EmP6ybbAzp76rC75AqRR
YoWET45pNIWudD+5DBW52juCqeVvOQbE5ySD5YSoOWApczDIqGRSwzlWOBtU
GG4cbRuKqMLatrGxfl+OJWK5fkbNAmrwFWEjFhVUuTRjaYLt1JpJIhEbB85t
pNb0Eg0LWms5KICNSBNuDTmL1NpgLXUh3Z8dSYLYqlzNFupOVa+xnQ4sUg8t
jFtujWlCTKBZJZbr6AEBMD5ACnKYU9qI7G+4jcdwOmgx1XNYx8sBPW5dFFMh
1XupAgM0w40jQk6vtJawcV9i+6TjdoRJAz3d5gJEj5Qt5VYkg9nxUOjKeefX
OY8rtHW3L7BGbTHOUkTaQNUqpSJy9dZpSAYT0dNp8hxfoUUuyeAKBbOCEDNa
Ddt4SB3Kwcymh7W0IWwKwrSiRNRIH4Tk9X9ASJRse7kUYjP7GfKIz5RnNX2A
RBTajlZCUm8jpB8jmnIMud6EpGRhyym4ItP5DYWbpCkEtoxFWKEe0wH3TgcO
4pJ1Ero/NoEMxMTFTRR0d6zxFumTyYaIxPFht0GBRG25og5JjYmdxLZtk8Fg
K+E7EL5vY4C1RHGwHIm3auzaYozQgIKGEz3MAeobwwsEs1FvkYiFh0Q6dJNS
p7TXkcpDcw2vplMNJmmOQdU3hFWrr1CsmdSBD0tKGNetDdholklmTNDWedwE
t7RJfF1hh7SGfdpKVweTlCFSAhGRCQcQqqxakszisHbcRDdLuPAKbqmEASfg
E5Iq31kcCwbE246rYxZPAsJyHmvX0XgHYajDbUpI2GIucZ2SMzFCqSdSwzSE
iYlGGKml1+c+ILCgY94Up4CUdEghwUaSEEh66FTdBpCU4VT61rfBLakOvG+z
YyjA0W39KRIfHRHwDzFocl6XajFUAiWWH15Ej2Hg5GpCMsUCOmal64msoYTU
dUs+GKl86MPpscHkj/0NjFWuiLpYAC8MeX7oSFXaMKHfcm5sPTZWhcIQkxKy
AW052jWp6xaRUCYMt6ZjLz/GIixSLz6cLe1wCTEBeYvNkgagKvR3CGKfCl+K
3yGI+CcU9Gf2jADc5hsFjWBWR11gR73ulrL5p7LhKIgN4M1vF/j7ZCJVpDiH
FAfXZm0ui7/OiajcMj9CfGwArLN1nmWtK8e5JTy1BTyX2greFXkbkDEzpM9m
6u/bariG6uRe0kxxYo6IomqovS1/PWHwQpgaLdXm15M164cgvhX3J1ufwjCt
u5EdhJIFX0Hn/cU+8U47P1lHlq4wr/g8MPnnRIsPSpr0qAuv/OAn40PPnqU2
64VnE+oGafk4GzWvM3LPcMgy8bg75tbpfhyO9724Bksl8llO5zo8Fcyleawg
HQ+2ORHp2TtvH0hhmT37OnDBRCl8w1qcpvYQA92YROqrDQvycKpGzCriMkPH
Lm9cbfZJ/Nk03F/OwpmqyG/iI7ZVP5tPOQvtJf/tN+vJm2Dkf8COmAPYpH4O
VMBurHh+n8Mr2TVYEuRsdgPsPAT8/gf44QSx4LCwErudmHfsFOUM3FbH/aEU
0ks/wmlvbm9CR8VtPWQvfvain/MAM4i1p+jwqilsYPv0huPLR68hbAZ0XSP/
tUu8GOyi+ZTtJM+u8pd/Pc+Dmnm2NiLEhER8AuytS5XMzi1GcxiTpc8aOMnS
nnZiS7fvov+dV76w8bKq6/san+8J0cvHYj6W5kyT//1X2/3r65L04fvb9G/L
iNZF9fVjKGH7sRjZb7mtyxdV6491fJYlqp5fl0Ht2vdVPj8yeD/SonPsW9+/
/Of7golpQkTTl2WV5/cc6f/6H+KXX35xi7ouwuYL+xi6Lvn111//eykFRZxj
Gf+i/PsLl+ZLVnt6+7ZPvFfdF6Eoq28F1iO9XNL2i7SsaPW9ME/xjWpF2Gbf
iuy8a8L7F3f5SNBS278J4v8AmTQr9Z9LAQA=

-->

</rfc>

