<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.3.8) -->
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc linkmailto="no"?>
<?rfc editing="no"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc rfcedstyle="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-anima-rfc8366bis-17" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.29.0 -->
  <front>
    <title abbrev="Voucher Artifact">A Voucher Artifact for Bootstrapping Protocols</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-anima-rfc8366bis-17"/>
    <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>
        <email>https://orcid.org/0000-0002-0773-8388</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="November" day="10"/>
    <area>Operations</area>
    <workgroup>ANIMA Working Group</workgroup>
    <keyword>voucher</keyword>
    <abstract>
      <?line 127?>

<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 removeInRFC="true">
      <name>About This Document</name>
      <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 144?>

<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 use cases).</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 may update only the YANG.</t>
      <t>This document introduces a mechanism to support future extensions without requiring the YANG module to be replaced.
This includes both a new IETF standard mechanism for extensions modeled after the mechanism present in <xref target="RFC8520"/>, 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"/>, <xref target="BRSKI"/> and <xref target="cBRSKI"/>.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>This document uses and defines the following terms.
They are used in this document and related documents.</t>
      <dl>
        <dt>(Voucher) Artifact:</dt>
        <dd>
          <t>Used throughout to represent the voucher as instantiated in the form
of a signed datastructure.</t>
        </dd>
        <dt>Bootstrapping:</dt>
        <dd>
          <t>The process where a Pledge obtains cryptographic key material to identify
 and trust future interactions within a specific domain network. Based on imprinted
 key material provided during the manufacturing process (see: Imprint).
 This term was used in <xref target="RFC8366"/>, but has been supplanted by the term Onboarding.</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 to
join a domain and obtain domain specific security credentials.
This term is not related to the similiar DNS term.</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 a Pledge
and to complete the process of bringing the Pledge into an operational state.
This data may include configuration data, but specifically deals with application-specific cryptographic
key material (application-specific security credentials).
Since <xref target="RFC8366"/>, this term has replaced the term Bootstrapping.</t>
        </dd>
        <dt>Owner:</dt>
        <dd>
          <t>The entity that controls the private key of the trust anchor conveyed by the voucher.
Typically, this is indicated by the "pinned-domain-cert" data item.</t>
        </dd>
        <dt>Pledge:</dt>
        <dd>
          <t>The prospective component/device 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. This term is not related to term DNS Registrar <xref target="RFC9499"/>.</t>
        </dd>
        <dt>TOFU (Trust on First Use):</dt>
        <dd>
          <t>When a Pledge 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 specific 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 specific 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
authorizing a zero-touch onboarding with the join registrar of the
domain. The specific information a voucher provides is influenced by the
onboarding use case.</t>
      <t>The voucher can convey the following information to
the Join Registrar and Pledge:</t>
      <dl>
        <dt>Assertion Basis:</dt>
        <dd>
          <t>Indicates the method that protects
the onboarding (this is distinct from the voucher signature that
protects the voucher itself). Methods include
manufacturer-asserted ownership verification, assured
logging operations, or reliance on Pledge behavior
such as secure or measured boot.
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 bootstrapping
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.
If successful, this would gain control over the Pledge.
The following combinations are "types" of vouchers:</t>
      <table anchor="voucher-types-table">
        <name>Overview of voucher types</name>
        <thead>
          <tr>
            <th align="left">Voucher Type</th>
            <th align="right">Assertion</th>
            <th align="right"> </th>
            <th align="right">Registrar ID</th>
            <th align="right"> </th>
            <th align="right">Validity</th>
            <th align="right"> </th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left"> </td>
            <td align="right">Logged</td>
            <td align="right">Verified</td>
            <td align="right">Trust Anchor</td>
            <td align="right">CN-ID or DNS-ID</td>
            <td align="right">RTC</td>
            <td align="right">Nonce</td>
          </tr>
          <tr>
            <td align="left">Audit voucher</td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right"> </td>
            <td align="right">X</td>
          </tr>
          <tr>
            <td align="left">Nonceless Audit</td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right"> </td>
          </tr>
          <tr>
            <td align="left">Owner Audit</td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right">X</td>
          </tr>
          <tr>
            <td align="left">Owner ID</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right"> </td>
          </tr>
          <tr>
            <td align="left">Bearer voucher</td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">wildcard</td>
            <td align="right">wildcard</td>
            <td align="right">optional</td>
            <td align="right">opt</td>
          </tr>
        </tbody>
      </table>
      <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 with a validity period statement, but no guarantee of freshness. 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 rely on 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 its 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.
This variation is included in the above table in order to clearly
show 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 Group and the Fairhair Alliance (now OCF) <xref target="fairhair"/>.
The <xref target="cBRSKI"/> document has defined a version of <xref target="BRSKI"/> that is useable over constrained IEEE 802.15.4 6LoWPAN networks using CoAP and DTLS, while <xref target="I-D.ietf-lake-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="RFC9254"/> 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 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 signing 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 OID for JSON-encoded voucher is allocated in <xref target="iana-contenttype"/>, and
it is to be placed in the eContentType field in the ContentInfo.</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><xref target="RFC5652"/> mandates that SignedAttributes <bcp14>MUST</bcp14> be present when the content type is not id-data.
This mitigates attacks on CMS as described in <xref target="I-D.vangeest-lamps-cms-euf-cma-signeddata"/>.
Decoders <bcp14>MUST</bcp14> verify that SignedAttributes are present.</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.</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 of the format version 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"/>.
Also, this document defines voucher data that is CBOR-encoded based on the same YANG model.
The CBOR-encoded (signed) voucher based on this CBOR voucher data is defined in <xref target="cBRSKI"/>.</t>
      <t>The voucher data 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 type for JOSE format vouchers is defined in <xref target="jBRSKI"/> and the media type for COSE format vouchers is defined in <xref target="cBRSKI"/>.
Both include respective filename extensions.</t>
      <t>The Media Type is used by the Pledge (requesting to the Registrar) and by the Registrar (requesting to the MASA) to signal what voucher format 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), 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>
        <artwork><![CDATA[
module: ietf-voucher

  structure voucher:
    +-- voucher
    |  +-- created-on?                        yang:date-and-time
    |  +-- extensions*                        union
    |  +-- manufacturer-private?              binary
    |  +-- 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>
      </section>
      <section anchor="voucher-examples">
        <name>Examples</name>
        <t>This section provides voucher data 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>
        <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>
        <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>
        <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>
        <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>
        <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 union {
          type uint64; // when serialized to CBOR with SID
          type string; // when serialized to CBOR or JSON
        }
        description
          "A list of extension names that are used in this Voucher
           file.  Each name is registered with the IANA.  Standard
           extensions are described in an RFC, while vendor \
                                                          proprietary
           ones are not.";
      }
      leaf manufacturer-private {
        type binary;
        description
          "In CBOR serialization, this is a CBOR bstr containing \
                                                  any valid CBOR that
           the manufacturer wishes to share with it's Pledge.  In \
                                                 JSON serializations,
           this contains additional JSON instead, and it is \
                                                 base64URL encoded.";
      }
      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>
      </section>
      <section anchor="ietf-voucher-sid-values">
        <name>ietf-voucher SID values</name>
        <t><xref target="RFC9254"/> 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 mechanism, the following values are considered normative.</t>
        <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 .../manufacturer-private
     2466 data /ietf-voucher:voucher/voucher/extensions
           
]]></artwork>
        <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 enumeration values are repeated here for convenience.
However, the YANG module should be considered authoritative.
No IANA registry is provided or necessary because the YANG module (and this document) would be extended when there are new entries required.</t>
        <table anchor="assertion-enums">
          <name>CBOR integers for the "assertion" attribute enum</name>
          <thead>
            <tr>
              <th align="left">Integer</th>
              <th align="left">Assertion Type</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0</td>
              <td align="left">verified</td>
            </tr>
            <tr>
              <td align="left">1</td>
              <td align="left">logged</td>
            </tr>
            <tr>
              <td align="left">2</td>
              <td align="left">proximity</td>
            </tr>
            <tr>
              <td align="left">3</td>
              <td align="left">agent-proximity</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="voucher-ext">
        <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 model.</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="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, 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 extension 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 easily translateable to CBOR.</t>
        <t>As the Voucher Request artifact is created by YANG augment of the voucher artifact, any extension defined for the voucher is also valid for a Voucher Request.</t>
      </section>
      <section anchor="manufacturer-private-extensions">
        <name>Manufacturer Private extensions</name>
        <t>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 voucher extensions mechanism defined in <xref target="voucher-ext"/>, it does require allocation of a SID in order to do minimal-sized encoding.
Note that <xref target="RFC9254"/> does not strictly require use of SIDs: instead of a SID value, the full string name can always
be used. But this would significantly increase the size of the voucher data.</t>
        <t>Instead, a manufacturer <bcp14>MAY</bcp14> use the manufacturer-private leaf to put any content they wish.
In CBOR serialization, if a plain CBOR map would be used, it would be subject to delta encoding: so use of this leaf requires that the contents 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>
        <artwork><![CDATA[
module: ietf-voucher-request

  structure voucher:
    +-- voucher
    |  +-- created-on?
    |  |       yang:date-and-time
    |  +-- extensions*                                union
    |  +-- manufacturer-private?                      binary
    |  +-- 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>
      </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>
        <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>
      </section>
      <section anchor="voucher-request-sid-values">
        <name>ietf-voucher-request SID values</name>
        <t><xref target="RFC9254"/> 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.</t>
        <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
     2524 data .../manufacturer-private

]]></artwork>
        <t>The "assertion" attribute is an enumerated type, and has values as defined 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 CA known by the Pledge.  Even
though the voucher itself is not revocable, it is still 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 time values for 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.  In this case, 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 modules specified in this document define the schema
for data that is subsequently encapsulated by secure signed-data structure,
such as the CMS signed-data described in <xref target="cms-voucher"/>.  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>
              <dt>reference:</dt>
              <dd>
                <t>RFC 8366</t>
              </dd>
            </dl>
          </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: application/voucher-cms+json, and this registration should be updated to point to this document.</t>
      </section>
      <section anchor="iana-contenttype">
        <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>
        <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>
        <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="CORESID"/> 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 fully-qualified domain name (FQDN) <xref target="RFC3696"/>, 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 always the YANG module name), or SID value (which is from another IANA process).
For non-standards track extensions, the Designated Expert should review whatever document is provided, if any.  The stability of the reference may be of concern.  The Designated Expert should determine if the work overlaps with 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 anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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="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="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="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="RFC9254" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9254.xml">
          <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>
        <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>
        <reference anchor="CORESID" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9595.xml">
          <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="cBRSKI" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-anima-constrained-voucher.xml">
          <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 "voucher" which enables a new device and the owner'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 "application/voucher-jws+json" 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" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8995.xml">
          <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 "call-home" 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="IDEVID" target="https://1.ieee802.org/security/802-1ar/">
          <front>
            <title>IEEE 802.1AR Secure Device Identifier</title>
            <author>
              <organization>IEEE Standard</organization>
            </author>
            <date year="2018"/>
          </front>
        </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="RFC2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <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" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <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="RFC5246" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5246.xml">
          <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="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="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="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="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="RFC8366" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8366.xml">
          <front>
            <title>A Voucher Artifact for Bootstrapping Protocols</title>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="M. Pritikin" initials="M." surname="Pritikin"/>
            <author fullname="T. Eckert" initials="T." surname="Eckert"/>
            <date month="May" year="2018"/>
            <abstract>
              <t>This document defines a strategy to securely assign a pledge to an owner using an artifact signed, directly or indirectly, by the pledge's manufacturer. This artifact is known as a "voucher".</t>
              <t>This document defines an artifact format as a YANG-defined JSON document that has been signed using a Cryptographic Message Syntax (CMS) structure. Other YANG-derived formats are possible. The voucher artifact is normally generated by the pledge's manufacturer (i.e., the Manufacturer Authorized Signing Authority (MASA)).</t>
              <t>This document only defines the voucher artifact, leaving it to other documents to describe specialized protocols for accessing it.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8366"/>
          <seriesInfo name="DOI" value="10.17487/RFC8366"/>
        </reference>
        <reference anchor="RFC8792">
          <front>
            <title>Handling Long Lines in Content of Internet-Drafts and RFCs</title>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="E. Auerswald" initials="E." surname="Auerswald"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <date month="June" year="2020"/>
            <abstract>
              <t>This document defines two strategies for handling long lines in width-bounded text content. One strategy, called the "single backslash" strategy, is based on the historical use of a single backslash ('\') character to indicate where line-folding has occurred, with the continuation occurring with the first character that is not a space character (' ') on the next line. The second strategy, called the "double backslash" strategy, extends the first strategy by adding a second backslash character to identify where the continuation begins and is thereby able to handle cases not supported by the first strategy. Both strategies use a self-describing header enabling automated reconstitution of the original content.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8792"/>
          <seriesInfo name="DOI" value="10.17487/RFC8792"/>
        </reference>
        <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="SECUREJOIN">
          <front>
            <title>6tisch Zero-Touch Secure Join protocol</title>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <date day="8" month="July" year="2019"/>
            <abstract>
              <t>   This document describes a Zero-touch Secure Join (ZSJ) mechanism to
   enroll a new device (the "pledge") 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 here is an
   augmentation to the one-touch mechanism described in
   [I-D.ietf-6tisch-minimal-security], and is a profile of the
   constrained voucher mechanism [I-D.ietf-anima-constrained-voucher].

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-6tisch-dtsecurity-zerotouch-join-04"/>
        </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/>
            </author>
            <author initials="R." surname="Anderson" fullname="Ross Anderson">
              <organization/>
            </author>
            <date year="1999"/>
          </front>
        </reference>
        <reference anchor="imprinting" target="https://en.wikipedia.org/w/index.php?title=Imprinting_(psychology)&amp;oldid=1314466188">
          <front>
            <title>Wikipedia article: Imprinting (psychology)</title>
            <author>
              <organization>Wikipedia</organization>
            </author>
            <date year="2025" month="October" day="01"/>
          </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="RFC8520" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8520.xml">
          <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="RFC9499">
          <front>
            <title>DNS Terminology</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="K. Fujiwara" initials="K." surname="Fujiwara"/>
            <date month="March" year="2024"/>
            <abstract>
              <t>The Domain Name System (DNS) is defined in literally dozens of different RFCs. The terminology used by implementers and developers of DNS protocols, and by operators of DNS systems, has changed in the decades since the DNS was first defined. This document gives current definitions for many of the terms used in the DNS in a single document.</t>
              <t>This document updates RFC 2308 by clarifying the definitions of "forwarder" and "QNAME". It obsoletes RFC 8499 by adding multiple terms and clarifications. Comprehensive lists of changed and new definitions can be found in Appendices A and B.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="219"/>
          <seriesInfo name="RFC" value="9499"/>
          <seriesInfo name="DOI" value="10.17487/RFC9499"/>
        </reference>
        <reference anchor="I-D.ietf-lake-authz">
          <front>
            <title>Lightweight Authorization using Ephemeral Diffie-Hellman Over COSE (ELA)</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="Geovane Fedrecheski" initials="G." surname="Fedrecheski">
              <organization>INRIA</organization>
            </author>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <date day="20" month="October" year="2025"/>
            <abstract>
              <t>   Ephemeral Diffie-Hellman Over COSE (EDHOC) is a lightweight
   authenticated key exchange protocol intended for use in constrained
   scenarios.  This document specifies Lightweight Authorization using
   EDHOC (ELA).  The procedure allows authorizing enrollment of new
   devices using the extension point defined in EDHOC.  ELA is
   applicable to zero-touch onboarding of new devices to a constrained
   network leveraging trust anchors installed at manufacture time.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-lake-authz-06"/>
        </reference>
        <reference anchor="I-D.vangeest-lamps-cms-euf-cma-signeddata">
          <front>
            <title>Best Practices for CMS SignedData with Regards to Signed Attributes</title>
            <author fullname="Daniel Van Geest" initials="D." surname="Van Geest">
              <organization>CryptoNext Security</organization>
            </author>
            <author fullname="Falko Strenzke" initials="F." surname="Strenzke">
              <organization>MTG AG</organization>
            </author>
            <date day="20" month="October" year="2025"/>
            <abstract>
              <t>   The Cryptographic Message Syntax (CMS) has different signature
   verification behaviour based on whether signed attributes are present
   or not.  This results in a potential existential forgery
   vulnerability in CMS and protocols which use CMS.  This document
   describes the vulnerability and lists best practices and mitigations
   for such a vulnerability.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-vangeest-lamps-cms-euf-cma-signeddata-02"/>
        </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="RFC3696">
          <front>
            <title>Application Techniques for Checking and Transformation of Names</title>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <date month="February" year="2004"/>
            <abstract>
              <t>Many Internet applications have been designed to deduce top-level domains (or other domain name labels) from partial information. The introduction of new top-level domains, especially non-country-code ones, has exposed flaws in some of the methods used by these applications. These flaws make it more difficult, or impossible, for users of the applications to access the full Internet. This memo discusses some of the techniques that have been used and gives some guidance for minimizing their negative impact as the domain name environment evolves. This document draws summaries of the applicable rules together in one place and supplies references to the actual standards. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3696"/>
          <seriesInfo name="DOI" value="10.17487/RFC3696"/>
        </reference>
      </references>
    </references>
    <?line 1636?>

<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 <xref target="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>
        <artwork><![CDATA[
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIBHNh6r8QRevRuo+tEmBJeFjQKf6bpFA/9NGoltv+9sNoAoGCCqGSM49
AwEHoUQDQgAEA6N1Q4ezfMAKmoecrfb0OBMc1AyEH+BATkF58FsTSyBxs0SbSWLx
FjDOuwB9gLGn2TsTUJumJ6VPw5Z/TP4hJw==
-----END EC PRIVATE KEY-----
]]></artwork>
        <t>The IDevID certificate (public key):</t>
        <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIBrzCCATWgAwIBAgIEHxj+5zAKBggqhkjOPQQDAjAmMSQwIgYDVQQDDBtoaWdo
d2F5LXRlc3QuZXhhbXBsZS5jb20gQ0EwIBcNMjEwNDI3MTgyOTMwWhgPMjk5OTEy
MzEwMDAwMDBaMBwxGjAYBgNVBAUTETAwLUQwLUU1LUYyLTAwLTAyMFkwEwYHKoZI
zj0CAQYIKoZIzj0DAQcDQgAEA6N1Q4ezfMAKmoecrfb0OBMc1AyEH+BATkF58FsT
SyBxs0SbSWLxFjDOuwB9gLGn2TsTUJumJ6VPw5Z/TP4hJ6NZMFcwHQYDVR0OBBYE
FEWIzJaWAGQ3sLojZWRkVAgGbFatMAkGA1UdEwQCMAAwKwYIKwYBBQUHASAEHxYd
aGlnaHdheS10ZXN0LmV4YW1wbGUuY29tOjk0NDMwCgYIKoZIzj0EAwIDaAAwZQIw
YirbvjT3G8uF3iaOQwD5DYjId6jdPAhAVLzsPbbccCvDf8oZIZqgq8VRjqrfNt6L
AjEAsl1Z+EfH7QOXqMDHqIH6qIbtZ2Q3UXpunKOCTW2tvPM1np1qom1/fyUcA+/w
uptx
-----END CERTIFICATE-----
]]></artwork>
        <t>The Certification Authority that created the IDevID:</t>
        <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>
        <t>The private key for the Certification Authority that created the IDevID:</t>
        <artwork><![CDATA[
-----BEGIN RSA PRIVATE KEY-----
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
-----END RSA PRIVATE KEY-----
]]></artwork>
        <t>The MASA certificate that signs the voucher:</t>
        <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIBcDCB9qADAgECAgQLhwoxMAoGCCqGSM49BAMCMCYxJDAiBgNVBAMMG2hpZ2h3
YXktdGVzdC5leGFtcGxlLmNvbSBDQTAeFw0yMTA0MTMyMTQwMTZaFw0yMzA0MTMy
MTQwMTZaMCgxJjAkBgNVBAMMHWhpZ2h3YXktdGVzdC5leGFtcGxlLmNvbSBNQVNB
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqgQVo0S54kT4yfkbBxumdHOcHrps
qbOpMKmiMln3oB1HAW25MJV+gqi4tMFfSJ0iEwt8kszfWXK4rLgJS2mnpaMQMA4w
DAYDVR0TAQH/BAIwADAKBggqhkjOPQQDAgNpADBmAjEArsthLdRcjW6GqgsGHcbT
YLoyczYl0yOFSYcczpQjeRqeQVUkHRUioUi7CsCrPBNzAjEAhjxns5Wi4uX5rfkd
nME0Mnj1z+rVRwOfAL/QWctRwpgEgSSKURNQsXWyL52otPS5
-----END CERTIFICATE-----
]]></artwork>
        <t>The private key for MASA certificate signs the voucher:</t>
        <artwork><![CDATA[
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIFhdd0eDdzip67kXx72K+KHGJQYJHNy8pkiLJ6CcvxMGoAoGCCqGSM49
AwEHoUQDQgAEqgQVo0S54kT4yfkbBxumdHOcHrpsqbOpMKmiMln3oB1HAW25MJV+
gqi4tMFfSJ0iEwt8kszfWXK4rLgJS2mnpQ==
-----END EC PRIVATE KEY-----
]]></artwork>
      </section>
      <section anchor="example-cms-signed-voucher-request">
        <name>Example CMS signed voucher request</name>
        <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>
      </section>
      <section anchor="example-cms-signed-voucher-from-masa">
        <name>Example CMS signed voucher from MASA</name>
        <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>
      </section>
      <section anchor="example-jws-signed-voucher-from-masa">
        <name>Example JWS signed voucher from MASA</name>
        <t>These examples are folded according to the <xref target="RFC8792"/> Single Backslash rule.</t>
        <figure anchor="ExampleVoucherJWSfigure">
          <name>Example JWS Voucher</name>
          <artwork align="left"><![CDATA[
{
  "payload": "eyJpZXRmLXZvdWNoZXI6dm91Y2hlciI6eyJhc3NlcnRpb24iOiJwcm\
94aW1pdHkiLCJzZXJpYWwtbnVtYmVyIjoiY2FmZmUtOTg3NDUiLCJub25jZSI6IjYyYT\
JlNzY5M2Q4MmZjZGEyNjI0ZGU1OGZiNjcyMmU1IiwiY3JlYXRlZC1vbiI6IjIwMjUtMT\
AtMTVUMDA6MDA6MDBaIiwicGlubmVkLWRvbWFpbi1jZXJ0IjoiTUlJQmd6Q0NBU3FnQX\
dJQkFnSUdBV09XZTBSRk1Bb0dDQ3FHU000OUJBTUNNRFV4RXpBUkJnTlZCQW9NQ2sxNV\
FuVnphVzVsYzNNeERUQUxCZ05WQkFjTUJGTnBkR1V4RHpBTkJnTlZCQU1NQmxSbGMzUk\
RRVEFlRncweE9EQTFNalV3T0RRM016QmFGdzB5T0RBMU1qVXdPRFEzTXpCYU1EVXhFek\
FSQmdOVkJBb01DazE1UW5WemFXNWxjM014RFRBTEJnTlZCQWNNQkZOcGRHVXhEekFOQm\
dOVkJBTU1CbFJsYzNSRFFUQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQU\
JIOUVCdXVXVjdJS09ya040YjdsYTVJb2J5dFduV1p3Rm5QdHVsMDlhd3dVSEZQZStOWW\
M1WjVwdUo2ZEFuK0FrVzFnY1poQlhWR0JBM0crSXlSV1VXU2pKakFrTUJJR0ExVWRFd0\
VCL3dRSU1BWUJBZjhDQVFBd0RnWURWUjBQQVFIL0JBUURBZ0lFTUFvR0NDcUdTTTQ5Qk\
FNQ0EwY0FNRVFDSURlWlc2SWZjeUsvLzBBVFk2S21NYjRNMFFJU1FTZFVGVjdQNzlLWV\
ZJWVVBaUJRMVYrd0xSM1Uzd2NJWnhHSE1ISGx0N2M3ZzFDaFdNRVkveEFoU1NZaWlnPT\
0ifX0",
  "signatures": [
    {
      "protected": "eyJ4NWMiOlsiTUlJQmNEQ0I5cUFEQWdFQ0FnUUxod294TUFv\
R0NDcUdTTTQ5QkFNQ01DWXhKREFpQmdOVkJBTU1HMmhwWjJoM1lYa3RkR1Z6ZEM1bGVH\
RnRjR3hsTG1OdmJTQkRRVEFlRncweU1UQTBNVE15TVRRd01UWmFGdzB5TXpBME1UTXlN\
VFF3TVRaYU1DZ3hKakFrQmdOVkJBTU1IV2hwWjJoM1lYa3RkR1Z6ZEM1bGVHRnRjR3hs\
TG1OdmJTQk5RVk5CTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFcWdR\
Vm8wUzU0a1Q0eWZrYkJ4dW1kSE9jSHJwc3FiT3BNS21pTWxuM29CMUhBVzI1TUpWK2dx\
aTR0TUZmU0owaUV3dDhrc3pmV1hLNHJMZ0pTMm1ucGFNUU1BNHdEQVlEVlIwVEFRSC9C\
QUl3QURBS0JnZ3Foa2pPUFFRREFnTnBBREJtQWpFQXJzdGhMZFJjalc2R3Fnc0dIY2JU\
WUxveWN6WWwweU9GU1ljY3pwUWplUnFlUVZVa0hSVWlvVWk3Q3NDclBCTnpBakVBaGp4\
bnM1V2k0dVg1cmZrZG5NRTBNbmoxeityVlJ3T2ZBTC9RV2N0UndwZ0VnU1NLVVJOUXNY\
V3lMNTJvdFBTNSJdLCJ0eXAiOiJ2b3VjaGVyLWp3cytqc29uIiwiYWxnIjoiRVMyNTYi\
fQ",
      "signature": "s_gJM_4qzz1bxDtqh6Ybip42J_0_Y4CMdrMFb8lpPsAhDHVR\
AESNRL3n6M_F8dGQHm1fu66x83cK9E5cPtEdag"
    }
  ]
}
]]></artwork>
        </figure>
      </section>
    </section>
    <section numbered="false" 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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
kUq7XDRyQbV7WG/s0DEZGgQPBNWl9y6XgdWmtClSN5c/14FPYotjgfh56+qE
DmoVw1/QHUfwwA6wSsatu746YeuHLRVh/fA9oEYwAG1tcQsbzYty22QsgOOl
WY5RcBiYZ5EmswNLRgtE4t62fb63EUQ3AVQuCHY8gfVwMD13Jvx7/aYtT3Jw
olJGZCDL2vTzD/ltyqOio8xqqVL7+nUL4359fSeoaJV2vGCMVdwRB01egObT
lfPZVCoRw5H8vlq1BO9DwUguHbgiTiAkkThG9QSqJLIyCkEQAxbvZXiNgjVI
QRktLYmadhPbsigCzL0LRhZSjeI8BHOEX7+z1PH1Nvt8WvhoTpYLZ5boWJpA
WBUj5DdbmTcDZZoXHVtxTH+hkH/Mw1shieWllGftXuv87JCJVStVEBkVx3DV
7mpfMIYmlwSKix4xuiog1q2HGdBsRBapuAaPD3BtmOeUrk4wcCZTHNZdnMmX
L3QOfHTdOWjTgQR4TnQjyJLXFMBMcgZwS8weVE8iYNydnij88azRzIdgdNfE
PMSb32JpiW8std3geZdre3uMdo/jQf9CduJ75kF1w7L+Zn9pUMK6m3yFP2y8
sK3T4N8a9vfiZll/4xYyvRgG3mL1rbrC2QoopSMd/yMv28JM1MNnO81tYUWK
zBccljg+wikrbC/pZShXTxP0HG/zMrezmdtCrIOuXs+w7+9cEBN5lNdlqa8N
S10TwxxbKBVWLdB3rQ/OnOlkIpcKMirCyGd+cAkZlUw2fnGH4nNFX/kV5d2V
a7W/hv6nGF+iK2tSymOWifv4dT0fU1CKhGiDwy6smOUJZg4si/ePtOPVZQny
TJm1458Zafe0kxpgKJC7O6ed0zbprJaQ6zgPfRpSBOCXONw35nTeObCL+VJ+
r1LIF4vlaqWeL+bhP/CX8pUCCF8v5+LdksHYQeBn4Ybl5SL8zOy0ew9S5qdx
4r6Ln4RZzoFTle9GMWP9/otY8G/cSKGMxJPEu6tu+VHvyzTg+u6GfUhJzy08
N+FfuwSWpB6XvGkk/MnZiafSux54GNe9w9yeQtxmfNpteYOIuNy3UsBgLd5L
TYZ4tqNu56DBnKjuMBB3MDjaRQcWQxqnuM2UQCiVDQq5Nba6Ub+TR/D+AK++
AluGhaNYmxhdePbcUsh4UhN4RU/kYSSeLZEvX/4b1iwWhfjRL0jgwYt5qCtk
jcsaJCiSY2RciRCL4EARRCIbgMHjKeIq1Lm6moSOUPkhdHPJdjv1H5wrfDhv
HaYgNOJmciQVbraL9hkhjXv6VPPMpSrmLy8DiH2UeXxZkZiIjmifJpuBcTEb
T/SrPxjcXl1thjEDAf8f2wTqp7iLTTARWyXIpW37IcAbmXRwak0dEED2Qtoc
IuwFfyYwDzRVxD3q+t1U+oU7ZOQxAH9qCVN0RVwPg/fEzxJlm/rmlISSQhcB
aEF42rln4CjmPO2aJHvz8PLgbEuAuJdrdbqRTjoUG4PZrO9EeXmLKaioDcu6
eWvocsZydfq+LvuIP5k1sLbuRYToED/CwxNTWBxO+CBubL9OfQxqCxmHcCL+
/BvLRPh54DfR4XZ/JsoSxYE0Fv3GsTqtT0QEH0wVVB2ddvdIPtrQgsOTUOAe
KKPMpHZsb2r3ntANY7o3Ky8E4XtsUr5MG4ktwhuEmFyMYot5BU+uszPOMssS
2TJUw0uP6K4LZeJohYZ8KcJkIULuCOWpDgrZPpNqX+x8+NzFmHQ0EU3Wvj6t
PAq4L9rueBQwAvdKxl85T9j2B4gjF//KpaYDRK6IZw8PGH8b+9EDBUXVAY6T
0YTo1Qul8A2SUMSTY6eThdEJhmEwJ7MPJEZbv82MH5PmxIRjTORA7ReHbkA9
iwnIx3pmhqiZZp7eGaBAW9M0/s6B/wK88eULuBo3LHM5z3lTiyJtifwKFe0U
YsaJNPQcidDK/OT57JRGHD2gS8BZvNCNQLMExIhwHGW/WNMNfTdEphflnO63
jzpndrtlX1x1bpq9tv2xfc/JqKfHbqt52W539o/PhrVo7/LKf7mahe+T9nj/
g3/4ePlxUOtPD5s79bOjcJS8vK/HZ2EzPGq1no+6p5W61Zy3j8Pry4PLh2a7
WTsrXlb8z4PT5sdx6LvRoF843z91i81F+/j9frP3dFjdO4x73cX+a1zo9ru3
J6/W4ePB+Wy+X384OZqUenHv+sNs/KF2czGvftrpXVSGH+a//cazaJ8drJxD
mtEmlkEP3G6mJcFbK2jSal/1OoedFnQoCNLp7EefW/DB7UNz3tlvPnTax6+P
76ufmx/3Hx6eh0+P5xeXlwfNx+b4tHs57zzcH9zA3wf7SejceqHllQ6rJ3dX
I7d8Oft0Nxz27/bjT93qY79UeLgstKFL9+z0sT0/O+iUT3sPi/Pe6fx2+HBx
+vhUPe+1F9bp5/b89KAJ/+07p/vz16PH5v3+w9nNfvO61+415yfXl/DfdfHk
+n5xgn/3movTw6d5e35//DH81LE+PxZgTe87+Af8ftC8dH9oeSx9fb65PLWz
T6eH7vz4EuhwBf3t37etw/Zt5/MH57Z5dFmOT8LHT7dXTzfNh6P+oZOcNp+O
msVrrz2/bJ02m/OPcxjp/H5///L6uNltArHvPcs5Gk2cY2/od4uFT3dnhZPx
TeX+tjjvH13P7kv15PzxqXB2cDpvPahptmG1Dhzo8NNlZ27dB1H/5bFXPtqb
HZYD5/xyflA9uH/seLVH76I5bN6cfI4v+n3Xbb0cDPagh0/PD897N1ePz9Hg
LKmdWM3HdjMeFT+9bw+Ody/P755PD46fO8e1504/+VS6LF/fTWeTj+et3m0p
ebk4LU6mxedwXNwZLK7d5vuduTWbJq8p3y7xWcq06akECsKmuMRUnEfKBLtU
yEgm/otQu7UzEb4748BJnIYqmxB1Vw27bG8WXktpmUWXjqjtMzqibtjFQrFW
rNTAGcLnym69WKr39ccVQJUqmm+Ien/MpQGh1eZIoV5b06FU74bdOrN/oxtO
QD3nEiz50Wwau5WiAMhDHaMYBExoe5/C9w27OY1su2oX641yrVHdReDIon10
2ltq0ByA5gMX+hRUpl2zC9V1DboMx/oDgxQtMpUwYcMYg/alRrAodlaQyWyT
gzYNe7Nc2C3Z/SDZWnqM7NxZ3Fj6An8KhUa/0tjtN0q7jUqpUak36oOG7zX2
qo3KbmO30hgMGgOgRKHheqt7qHqNUqlRdBq1SqO8h78P9hqFesMrNbxaY1Bu
1AoNb69R32vsDlb34Fcbe5VGFTrxG169AT5jvYaj8tyGU2tUyjiM2i6OEL5d
2UPdw8Hveo3+AEcCTeqlRr3f8IoNz2uUK/h7pYhD8sure/CqjWq90S83KoXG
wMVf3HrDLzaqezi28qCxt9sY7DYKMJ7q6h5K1UYJvnVxDE4RH9stNZxCo+A0
qv3GXo0GsNvY8xt9f80YykjAfrXhADFrjRqMBwbvNAZew6/j5/29hgPTBBJV
VvcwKDQc4Fy3UQcaFht1GDlRtQ6jKiD9YZCVGo5nt7a6h6KHQy2VkQGgSa2E
E6nCQuw1asAJ/YZL0/SJsCt7gCcHpUYNhkoP77m4lEBG+LdEKws8NoBJ+bgc
q/nBwVkUi9iJW2rseY0B9QAdlgtIE3h1ETgWeHV3LVcXacCwprCgMH0gY8lp
+BUcABCh328US9ht0VlDhyIuXw3oX0T+h8HDlF2XONlpFFxcI5gp/rtmLWA7
ALMNisgzRbfhFmhTDJCkfeih0nBhFQpI5LWrudtwnUa5insKaQLrvovbBEfi
43aA5ai5+El5zb7o72JbYGbYpEAreCNwI2zwXeCxcsOBzQJLCfsdJrhmLYDO
NafhlhsFoBiQvYrcCHwIdPCBmR0kDpCxXsc5rt4XZXx1BbZAAdkYuNch7oJX
g6CApYQF3d3FYZTXrAXwM+waeB0Mu1pDUQCyGR72eNf3cYeWBih/SmskTBHG
7yPXAbXLfWQt+GTXbzh+Y3cPhQw0hH2BHfbX8sPeHvIPvA60CbBiqdgoAUEG
KF5gQWtFlJDVIg5m9b6oNnyXiAkbs9AoFXD1gUOAhYCAhSISFviq5q+VtMAz
IJOB1MCT0BYoCasPiwiCBWYB3cIDJZJ+8OfKHmBse7T1YEHLHu5TaOvuYSsQ
WUUYDzDkLnJ7ZQ0lKz5yC0gAXEcX9zKQ3YWNtotyBjY4zAiIift9zSxgV8Iu
hh0K64jysI9qokhqor+EPYa+IBUIN+xatVreRWOjWCgUiqmau6sW6i9lzcU2
Xyu+5kLZlkQ7S+IGmFoBHjuOlt7ZajZ6V9ftVd2gfr6OnQf/reaaN4Jm0DYd
2uJvq3qU1gGZBRKlHmygpW7LZRRZII33gdT7uFj77cZhudHaxyVog2BvoZqG
XbbbatQPkF1/EjGkVkXNWymsGnZqtv6rD/yHLdG0wQ2GflJ2QqMQBOoeSi/4
BYTubhHtAtjWoCFB98LuB9lQhRk5uI1gM5U0kQb7BoQE8L4HmqHUKPUbDkg+
EGOsi1zcmiCKQACAlN0rIUGAVqo5SC+Q4rBpYKP4e40q6C7SMHt13ECwL+Fz
+B3sLFDvIJ9gl5c1oQ5bFiRNoYT6BPQqPO/WcL+CJinsoUAFWwmVTAGlNcgG
MBDKmhSBUdVJOuL2LaPqhvGAcgYhCjIVTScXxTO0Le5iV0VS/qq5ywrcR/EJ
TZBoVfwXiAACoNbHmYJCQKnmokCCFXQ13e6RJQLTB3MS7CDQqCD2CmVsC3ME
sQ08A/QvUIdIJTLc0sEXcdZAMSAvWpfw6iJaUjXWCWRwgVEAehXEYbWMM/W1
t1dozPUyvgWFbh/fCEoMaQIkJQ2G5lIFFQIYbv06Wgop25C2AUMAXgRmZp3s
CDCyqqB/dnGywC17IMU9fC+oRCAgCHjVvEyGLWwQaOuS9QdrBOOEf8FC3Cvj
cgDpgBnKZJoVScWl615u+H2ywevIurD0oEDQ2q0ilfbIrkTieEhM4Jl+EU0k
/e3wlrKP38LbgWioAYqo/4FDQOGgct7FSVVp7mB47mmDB6WHJvkechp0AlvG
c1C3wDBAY6DKLaFZAfSHVrB9YORlzUIHEwyeR6vBwz3Sr6Gagp0CvAGtUJG6
SHww9mFHAMtBbwVt8PAhmC2wlUr0UiBF1cEdB4u+SyY50BBUEPQDI4EVZwWb
vn0XLQXQxjAGYEtYAmS2EhnCHqo7MKbAoAPtB0QDfQ5f7WlvB04D2xPeCJYa
kBpUJShGkBiDKr4IlCesC+xBYGNge7Ai4d+iNnfgCtbtsDqwyuAMwZKBFQlm
LxjyKFEHDdgXyFd9dE3wFZq0AStvjzYCbk8fF7pCpjfqZ9K6YDoBZZAJB8g8
wBK6dwULiuvu0bdkbqBUIb8K1gg6EVYD+Xy4l8nqT3fcAK1dsGt8mmy5/60Y
XPuk12o1p2kM7uJDexo/Ns/2H56eh0/BUX1e2G9exofNg+U4nIWBuG/F4Y6H
Mg7XLJ72nj6fPV6Xb8Vn1lmvWTo9uOYP10T63nqBhW94eDgKTpuFo1b3+ajb
6ZcPLtsw5Otms9LZf5w38fuPzbCz/3DZKvgLr9X9tJMMr73Czs6nS+vzTSE4
Gl9WOi8PHwpJ//P9WXA/eH/bvh7ufvo8dQrlj58OvCN3UvpUbA36e85l9WO/
4BUK48Jxt1K/+WTFhYO9eG8yvO1c7gx33KOr7vW4d/J+eHX38aE1mh1dev75
S3JaSZzp2OkXajv+uDj7+KH6etEaXXyoXVmjg44/Odnf+XD9qe8NS0edyu38
/unGfT7a2X3t9odl53HhfHw5fDy5uk9atdvuIHpfmD2P2rePrcfB1b31/LlV
L1/F09G8ed8vjpqTg/C5+uF+NHs9KRwNDxf93nEpOT8+LX0IT5+fg+fpUe9x
7/LenTcng/sobFuLcmv+ejH4eNY9eX52vW7FrUzel1675303iIulu8X8eeA5
5y+Hs51xPEye5/PYOxyUKqVz/2P9pfvJOm6d33UrB1PfOT88fHn0Xu4GL+eP
i/Nq+eb20+f7Wvn6w+6wVX86eT09fx81d9tXZ++jSTA+KfS97utRx6oex5+e
F+3k+HO3du8Wr4Yf72InPrrsHB88Pr9c7u9cvs4+X14dj3uHc/928XJ597i/
35oe+J3ux534tG7tPR13Pj63LysnfqFX2B1/mIzj7m3v4ua1Mqss6vcvt3vz
5tHgLqjf9+5P9lrNebvZdM4eT4/a84P5/YF1c1XoNS+Pd/ab18Ay7f2dz81z
jAYfX+7tNwd7wFGnGOw14q+HB6fdq77bb5/sfrYWpd6od9hqDj6UOp/urpqn
+3sUf+3ML+9P952m/vDSs8C9ls6+rTmz78Nl8/BsERyefR69Dt+/unuH7U83
18/lSisa3/cOrivBLPGTuLvTeR5b/eFt62H/oHZ36z3UDi+vK5XJbW/c+jA+
nEU7j53x80On6LR3j07iSucsOX4OP7h173E4m1wnL6f1k5o1n9Tmt/3X4uh1
cHW0d9e+/VjdHYSD0XAxO3Fem7fu8efOJ3dweT8qf04unZdmJV6U7x/n+4vE
u78ZDq2zm+748/R2Pxzv1hInHFWuD3sT3zsZTM87/u2LF5ZqzkG/dJi0iuOZ
O99v7xwVi5+OT4ej2mTRfr6wep/KlcPP7cXg5uBmPhk/XDr704fPp7eHB9fj
9kH8WCsdfPp4FHwq3twMg/518e7+5X386X7h9Gon8+cP51YFdtD+weL46aY4
noRHo5fXh9nF48TplYZ3V0nHew4Pr84/ny1Ks1G9HTnDnVPXm39a1J9mD/3C
Qz+0WpXOc29x5vgv093h88Hd/Lo/2W975bZbdgaHzUVhvFM/fogGn3fbD4Ww
f355GE7ur59e3MF1Ozp/ObKa5daTu3/2MSq0iw/115t5a7TTftq53Ou/lO+v
nwePt0fzu3B01PVPJ0HhY+vuee+66I2vYIgv7bv9vhVWO7uVvYfn6cHjKLj4
8NIa9Eb7B/Fv3xXk1nP8ZU3Bnwx8a5oDz7qWj7Q6naNqE7RG82Ored9uJsfx
5PJpPNi9vzn2LnZK16dFrzOcPp23Tiot7+R2r3RwPz7eGQ0PO37Jrd1aydli
fFm+mnyoj73LSWnn6Om8O64fe2cfkv3C7OLmtn/W3Dm5+FC5CdoXlUF5/+l6
9OFpsRNe3yzC5rRvDZ+O7x6j3d75ye3zp/G4fv5Snib9IPDd3nzaW/hPny4X
x9PFfLC4Obot33vD4PwwPvpwePdx+PJ+73oM3FIK98ZB9Hq/KNyeXM5GT5Pa
TnLyPL06DOdhuXD7MZ6/eIX+x09u8+io/unyw7z2cda9/dCPu/X98Mpyx4XX
etQbfj4LnIOPz+Hz89VTZad9dHza/FAufaztnybz+LRXXjxeB7XnyfH17Pj8
w04SXz+Oy53ozLNGe/HHCai+6LX/Uo06fSc+PTm+uqvPzh4nwUu/ML6aP44K
s2btbvw4vOpXyv1iefdzuPc484o3Y7dknSfFll+5fPnU2usdvDzPz1/bvcFz
tTIN6kfl6/gqOL/aPXLi4cnVXmE2Pj67vu+Odo+i/afW/rxSiwpWc1A47ceF
9lX16dU9HsVR4bAyv7x8viwH7eBl9+Bi8GF/0Xoets9b5aRdP68Gn6pRe/T0
uej6J7PTF+v2pPhy2tyfFCsvt+1Sa6f5cAo80W6B2m02rw9rx8cXpfh8+DSY
XUxbsDz1+XGnefJSf/QuXmeznQ/W08P91SI+ngwvXxe7O3vV1vme73xsdXcq
ydy9+HT3Ka5MmvXaPAp3y1dXrdb5552nnd2rUX0Rf94/a46t24c7PyoH1+fV
x9vS4/7JYS2OL64OjobRzmjcTXaPz1rX7bPeTb2+734cuqNK0Hp63y81p/UP
rafRlWvtudf1q6edw2T3444fntxfD73K7eR9p9O/G1xcvZaep3sgLR4LXefT
wdnF8259/74+D666hXqwGDwFd9bO/Cr8MI/PT6LuYDYBFXHujbrx+7tm/P7s
o/9xvF9zh+OL4cX7+L539/r+8+Hj+3Lt7OrxueS9Pt13j63hfn3qf6guPvcO
hieXU+fhpnpQrt3cXcbPx8785aE9q7mXzYH7CcTTeDKLnN3P9/uLePBUuf/8
Ofh8bkWxW4/ujy6KBSDDbaE9/Xi103HPBqdH8+Sgf+wXd3Y/vy986N4c+Dsj
b5js3Ufzu3L44FWjs/7w/+3svJoc15EF/c5f0dHzciNqd4tG9kbMA72RCIkG
AMntjQkaid7I0kyc/37Bqq4+1cfNiX1QVZAiQQJIZH6ZAhLVmaqg/CKtry2x
dZt0BaeFi/VN0plS6IlTkU6rC5vneL2m7eUgdtleiR4ge3WaqPSBD+SWKjc8
eFGGl56TD2sxXYSh7ArrVQ48JPCtJvCHPAqfykL3H1ci3Nw2eF099ezAMcoa
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
B2NcAQA=

-->

</rfc>
