<?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.39 (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-35" category="std" consensus="true" obsoletes="8366" updates="8995" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="Voucher Artifact">A Voucher Artifact for Onboarding Protocols</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-anima-rfc8366bis-35"/>
    <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" role="editor">
      <organization>Sandelman Software</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
        <email>https://orcid.org/0000-0002-0773-8388</email>
        <uri>https://www.sandelman.ca/</uri>
      </address>
    </author>
    <author initials="E." surname="Dijk" fullname="Esko Dijk">
      <organization>IoTconsultancy.nl</organization>
      <address>
        <email>esko.dijk@iotconsultancy.nl</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="2026" month="August" day="12"/>
    <area>Operations</area>
    <workgroup>ANIMA Working Group</workgroup>
    <keyword>voucher</keyword>
    <abstract>
      <?line 138?>

<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.
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 obsoletes RFC8366: it includes a number of desired extensions into the YANG module.
The Voucher Request YANG module defined in RFC8995 is also updated and now included in this document, as well as other YANG extensions needed for variants of 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 155?>

<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>When <xref target="RFC8366"/> was first published the industry had not yet concluded on a term to describe this process.
A number of terms were used, and the term used by the previous document was "bootstrapping", but the industry has preferred the term "onboarding", and this
document uses that term.</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 '<tt>pinned-domain-cert</tt>' 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.
<xref target="RFC8994"/> explains how this anchor is used to form an overlay management Autononomic Control Plane (ACP) network, using authenticated IPsec (or other) tunnels.
IoT devices can now do mutually authenticated (D)TLS or EDHOC connections, although authorization is best left to mechanisms such as <xref target="RFC9200"/>.
The collection of all these devices, with the same trust anchor is collectively known as the 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>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.
When longer validity periods are important, this document recommends using short lifetimes with programmatic renewal, see <xref target="renewal-over-revocation"/>.
How short the lifetimes can be depends upon the means of conveyance of the voucher, so the exact times is specified in the onboarding protocol itself.</t>
      <t>Some Onboarding protocols using the Voucher Artifact defined in
this document include: <xref target="SZTP"/>, <xref target="RFC8995"/> and <xref target="cBRSKI"/>.</t>
      <section anchor="extensions-needed">
        <name>Extensions Needed</name>
        <t><xref target="RFC8366"/> originally defined the Voucher as the only Voucher Artifact, leaving the Voucher Request that is used in BRSKI to be defined in <xref target="RFC8995"/>.
This document includes both Voucher and Voucher Request obsoleting <xref target="RFC8366"/>, and updating <xref target="RFC8995"/>.</t>
        <t>A number of variations of <xref target="RFC8995"/> have been developed since the publication of <xref target="RFC8366"/>, and these variations require new attributes be added to the Voucher and Voucher Requrest.
At the low-level, JSON (or CBOR) mechanical level, this was thought to be trivial as the artifacts are JSON (or CBOR) maps, and adding new keys seemed easy.</t>
        <t>However, the use of YANG for the information model does not make it as trivial as was thought.   In the end, YANG is not easily extended except by updating the YANG module definition, and that is the major reason for the publication of this document.
The process is further explained in <xref target="extendfail"/>.</t>
        <t>This document introduces a mechanism to support future extensions without requiring the YANG module to be revised.
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 proprietary extensions.</t>
      </section>
    </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 this document to represent a Voucher or Voucher Request as instantiated in the form
of a signed datastructure. The payload of the signed datastructure is called the Voucher Data.</t>
        </dd>
        <dt>Attribute:</dt>
        <dd>
          <t>A single named data element that can be stored in Voucher Data. The element's name and data type are defined by
one of the YANG models as defined in this document.</t>
        </dd>
        <dt>Bootstrapping:</dt>
        <dd>
          <t>See Onboarding.
 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 "DNS domain" <xref target="RFC9499"/> although a Domain might be associated to a specific DNS domain.</t>
        </dd>
        <dt>Join Registrar (and Coordinator):</dt>
        <dd>
          <t>A representative of the Domain that is configured
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 and keeps logs of Pledge ownership.
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.</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, the Owner is indicated by the '<tt>pinned-domain-cert</tt>' Attribute.</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 the 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 <xref target="Stajano99theresurrecting"/>.</t>
        </dd>
        <dt>Voucher:</dt>
        <dd>
          <t>A Voucher Artifact that is a 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 preceded 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 data elements of a Voucher (Request) without any enclosing signature.
Current serialization 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.
When clarity is needed, it may be preceded by the type of the signature, such as CMS, JWS or COSE.</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 to the 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 (<xref target="RFC6125"/>) or DNS-ID
information (as defined in <xref target="RFC9525"/>) is left for future work.</t>
        </dd>
        <dt>Anti-Replay Protections:</dt>
        <dd>
          <t>Time- or nonce-based
information to constrain the Voucher to specific time periods or Onboarding
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 Voucher</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: The "RTC" column denotes Voucher validation using a Real-Time Clock.</t>
      <t>NOTE: All Voucher types include a "Pledge ID <tt>serial-number</tt>" (column not shown 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 its local policy. The
Registrar mitigates the risk of a Malicious Registrar by auditing that no unknown Registrar, or
known Malicious Registrar, appears in the MASA's log entries for the Pledge.
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 to be carried across air-gapped infrastructure.
In addition, if the validity period has been set sufficiently long, 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 PKIX <xref target="RFC5280"/>) 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>
      <t>This document obsoletes <xref target="RFC8366"/>.</t>
      <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="RFC8995"/>,
<xref target="SZTP"/> 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="RFC8995"/> was Onboarding of ISP and Enterprise owned wired routing and switching equipment, with IoT devices being a less important aspect.
<xref target="SZTP"/> has focused upon Onboarding of CPE equipment like cable modems and other larger IoT devices, again with smaller IoT devices being of lesser importance.</t>
        <t>Since <xref target="RFC8995"/> 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="RFC8995"/> that is usable 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><xref target="cBRSKI"/> uses the serialization mechanism described in <xref target="RFC9254"/> to produce significantly more compact artifacts.</t>
      </section>
      <section anchor="challenges-with-revisions-to-yang">
        <name>Challenges with revisions to YANG</name>
        <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="RFC7950"/> <em>augment</em> mechanism to further extend both the Voucher Request <xref target="RFC8995"/> 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 for this use case,
nor did it work better when the <xref target="RFC8040"/> "yang-data" extension was replaced with the <xref target="RFC8791"/> "structure" extension.</t>
        <t>After significant discussion the decision was made to simply roll all of the needed extensions into this document.</t>
      </section>
      <section anchor="detailed-changes-since-rfc8366">
        <name>Detailed changes since RFC8366</name>
        <t><xref target="cBRSKI"/>, <xref target="CLOUD"/> and <xref target="PRM"/> require extensions to the Voucher Request and the resulting Voucher.
New attributes are required to carry the additional data and describe the extended semantics.
The following attributes are new and the document to which they support is noted:</t>
        <t>To the Voucher Request:</t>
        <dl>
          <dt>assertion(agent-proximity):</dt>
          <dd>
            <t><xref target="PRM"/></t>
          </dd>
          <dt>pinned-domain-pubk:</dt>
          <dd>
            <t><xref target="cBRSKI"/></t>
          </dd>
          <dt>pinned-domain-pubk-sha256:</dt>
          <dd>
            <t><xref target="cBRSKI"/></t>
          </dd>
          <dt>proximity-registrary-pubk:</dt>
          <dd>
            <t><xref target="cBRSKI"/></t>
          </dd>
          <dt>proximity-registrar-pubk-sha256:</dt>
          <dd>
            <t><xref target="cBRSKI"/></t>
          </dd>
        </dl>
        <t>To the Voucher:</t>
        <dl>
          <dt>additional-configuration-url:</dt>
          <dd>
            <t><xref target="CLOUD"/></t>
          </dd>
          <dt>agent-signed-data:</dt>
          <dd>
            <t><xref target="PRM"/></t>
          </dd>
          <dt>agent-provided-proximity-registrar-cert:</dt>
          <dd>
            <t><xref target="PRM"/></t>
          </dd>
          <dt>agent-sign-cert:</dt>
          <dd>
            <t><xref target="PRM"/></t>
          </dd>
          <dt>est-domain:</dt>
          <dd>
            <t><xref target="CLOUD"/></t>
          </dd>
          <dt>extensions:</dt>
          <dd>
            <t>Added to aid in future extensions</t>
          </dd>
          <dt>manufacturer-proprietary:</dt>
          <dd>
            <t>Added to allow for controlled experiments and custom extensions</t>
          </dd>
        </dl>
      </section>
    </section>
    <section anchor="updates-to-rfc8995">
      <name>Updates to RFC8995</name>
      <t>This document represents a merge of YANG definitions of the Voucher from <xref target="RFC8366"/>, the Voucher Request from <xref target="RFC8995"/>, 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 are not included in this document, but rather in the respective other documents.</t>
      <section anchor="updates-idevid-issuer">
        <name>Updates to the use of <tt>idevid-issuer</tt></name>
        <t>The <tt>voucher-request</tt> module definition that was in <xref target="RFC8995"/> Sections 3.2 (tree diagram) and 3.4 (YANG module) is now included in this document.
There is a change to it: the '<tt>idevid-issuer</tt>' Attribute <bcp14>MUST</bcp14> be included in a Registrar Voucher Request (RVR).
Like the '<tt>serial-number</tt>' value in the RVR, the '<tt>idevid-issuer</tt>' value in the RVR is to be taken from the Pledge's (IDevID) client certificate.
In some variations of BRSKI, such as <xref target="PRM"/>, there is no direct TLS connection between Pledge and Registrar.  Therefore, the Pledge's IDevID certificate cannot be extracted from the TLS connection, so those variations define a different channel binding process and may deviate from the above requirement.</t>
        <t>A Registrar <bcp14>MUST</bcp14> apply the following rules for the value of the '<tt>idevid-issuer</tt>' Attribute in the given order:</t>
        <ol spacing="normal" type="1"><li>
            <t>If the Authority Key Identifier (AKI) field is present in the Pledge's (IDevID) client certificate, the Registrar
copies the full data element as specified in <xref target="idevid-issuer-format"/>.</t>
          </li>
          <li>
            <t>Otherwise, the Registrar generates the full data element in the format specified in <xref target="idevid-issuer-format"/>, using the
SHA-1 hash of the public key of the Pledge's IDevID client certificate.
This is defined as method 1 in <xref section="4.2.1.2" sectionFormat="of" target="RFC5280"/>.</t>
          </li>
        </ol>
      </section>
      <section anchor="clarifications-on-the-use-of-idevid-issuer">
        <name>Clarifications on the use of <tt>idevid-issuer</tt></name>
        <t><xref target="RFC8366"/> and <xref target="RFC8995"/> define the '<tt>idevid-issuer</tt>' attribute for the '<tt>voucher</tt>' and '<tt>voucher-request</tt>' modules (respectively), but they summarily explain when to use it, and why it is used.</t>
        <t>The '<tt>idevid-issuer</tt>' Attribute is provided so that the serial number to which the issued Voucher pertains can be relative to the entity that issued the Pledge's IDevID.
In most cases there is a one to one relationship between the trust anchor that signs Vouchers (and is trusted by the Pledge), and the Certification Authority that signs the IDevID.
In that case, the '<tt>serial-number</tt>' in the Voucher Data must refer to the same device as the serial number that is in the IDevID certificate (in the '<tt>serialNumber</tt>' element of type '<tt>X520SerialNumber</tt>' per <xref section="2.3.1" sectionFormat="of" target="RFC8995"/>).</t>
        <t>However, there are situations where the one to one relationship may be broken.
This occurs whenever a manufacturer has a common MASA, but different products (on different assembly lines) are produced with identical serial numbers.
A system of serial numbers which is just a simple counter is a good example of this.
A system of serial numbers where there is some prefix relating the product type does not fit into this, even if the lower digits are a counter.</t>
        <t>Another situation occurs when multiple manufacturers share a common MASA.
In this case, any given serial number in the IDevID certificate may not be unique across all manufacturers.</t>
        <t>It is not possible for the Pledge or the Registrar to know which situation applies.
And because one of the above situations may apply, or may occur in the future, there needs to be a contingency to allow uniquely identifying a Pledge regardless of the current or future situation.
This is realized by the '<tt>idevid-issuer</tt>' Attribute.</t>
        <t>It is clarified next, whether or not to include the '<tt>idevid-issuer</tt>' in the PVR, in the RVR and in the Voucher.</t>
        <t>Analysis of the situation shows that the Pledge never needs to include '<tt>idevid-issuer</tt>' Attribute in its PVR, because the Pledge's IDevID certificate is available to the Registrar, and the Authority Key Identifier needed to fill this Attribute is contained within that IDevID certificate.
The Pledge therefore has no need to repeat this.</t>
        <t>For the RVR, <xref target="updates-idevid-issuer"/> now normatively requires that the '<tt>idevid-issuer</tt>' Attribute be included.</t>
        <t>For the Voucher, as detailed in <xref target="voucher-yang-module"/>, the '<tt>idevid-issuer</tt>' Attribute <bcp14>MUST</bcp14> be included by a MASA in case the MASA issues a Voucher with a serial number that is known to be not unique within the scope of all the serial numbers represented by the MASA.
If this rule does not apply, the MASA <bcp14>SHOULD NOT</bcp14> include the '<tt>idevid-issuer</tt>' Attribute in order to achieve a smaller Voucher size.</t>
      </section>
      <section anchor="idevid-issuer-format">
        <name>Clarifications on the format of <tt>idevid-issuer</tt></name>
        <t><xref target="RFC8366"/> and <xref target="RFC8995"/> were not fully clear on the required binary format of the '<tt>idevid-issuer</tt>' Attribute.
This gave rise to incompatible implementations.</t>
        <t>This section clarifies the format of the '<tt>idevid-issuer</tt>' Attribute, which contains the full Authority Key Identifier from an IDevID certificate.
The entire Authority Key Identifier object from the certificate i.e. the '<tt>extnValue</tt>' OCTET STRING is to be included, comprising the ASN.1 DER encoding of the '<tt>AuthorityKeyIdentifier</tt>' structure as defined in <xref section="4.2.1.1" sectionFormat="of" target="RFC5280"/>.
This includes the ASN.1 DER encoding of the SEQUENCE as well as the OCTET STRING element (tagged 0) that is named '<tt>keyIdentifier</tt>' with type '<tt>KeyIdentifier</tt>'.</t>
        <t>Note that per <xref target="IDEVID"/>, only the first optional element named '<tt>keyIdentifier</tt>' is expected to be found in an IDevID certificate, not the '<tt>authorityCertIssuer</tt>' or the '<tt>authorityCertSerialNumber</tt>'.
However, because of the above requirement to include the full '<tt>extnValue</tt>' OCTET STRING, even if the non-expected elements would be present, they would be included in the '<tt>idevid-issuer</tt>' value in a Voucher Request or Voucher.</t>
      </section>
      <section anchor="errata-closed">
        <name>Errata closed</name>
        <t>The above updates to <xref target="RFC8995"/> addresses errata <xref target="eid7263"/>.</t>
      </section>
    </section>
    <section anchor="signature-mechanisms">
      <name>Signature mechanisms</name>
      <t>Three signature systems have been defined for Voucher Artifacts.</t>
      <t><xref target="cBRSKI"/> defines a mechanism that uses COSE <xref target="COSE"/>, with the Voucher Data encoded using YANG-CBOR <xref target="RFC9254"/>.
However, as the SID <xref target="RFC9254"/> allocation 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 in this document.</t>
      <section anchor="cms-voucher">
        <name>CMS Format Voucher Artifact</name>
        <t>The CMS data structure consists of the <tt>ContentInfo</tt> defined in <xref section="3" sectionFormat="of" target="RFC5652"/>, which contains a single
<tt>SignedData</tt> structure. The <tt>SignedData</tt> structure is 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"/>.</t>
        <t>The <tt>SignedData</tt> structure contains a single <tt>EncapsulatedContentInfo</tt> structure, defined in <xref section="5.2" sectionFormat="of" target="RFC5652"/>.
An object identifier (OID) <xref target="ITU-T.X680"/> for JSON-encoded Voucher Data
is allocated in <xref target="iana-contenttype"/>.
This OID is placed in the <tt>'eContentType'</tt> field in the <tt>EncapsulatedContentInfo</tt>, with the OID defined as follows:</t>
        <artwork><![CDATA[
id-smime OBJECT IDENTIFIER ::= { iso(1) member-body(2)
             us(840) rsadsi(113549) pkcs(1) pkcs9(9) 16 }

id-ct OBJECT IDENTIFIER ::= { id-smime 1 }

id-ct-animaJSONVoucher OBJECT IDENTIFIER ::= { id-ct 40 }
]]></artwork>
        <t>The use of PKCS#7 (<tt>CMSVersion</tt>=1) in the <tt>SignedData</tt> structure is deprecated by this document.</t>
        <t><xref section="9.1" sectionFormat="of" target="RFC5652"/> mandates that <tt>SignedAttributes</tt> <bcp14>MUST</bcp14> be present when the content type is not '<tt>id-data</tt>'.
This mitigates attacks on CMS as described in <xref target="I-D.vangeest-lamps-cms-euf-cma-signeddata"/>.
Decoders <bcp14>MUST</bcp14> verify that <tt>SignedAttributes</tt> is present.</t>
        <t>To facilitate interoperability, per <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 <tt>SignedData</tt> structure <bcp14>MUST</bcp14> contain a '<tt>signerInfo</tt>' structure, as
described in <xref section="5.1" sectionFormat="of" target="RFC5652"/>, containing the
signature generated over the content using a private key
trusted by the recipient.
In a Voucher, the recipient is the Pledge and the signer is the MASA.
In the Voucher Request, the signer is the Pledge (in the PVR), or the Registrar (in the RVR).</t>
        <t>Note that <xref section="5.1" sectionFormat="of" target="RFC5652"/> includes a discussion about how to validate a CMS object.
This object may have a particular CMSVersion (see <xref section="10.2.5" sectionFormat="of" target="RFC5652"/>).
Intermediate systems (such as the
Bootstrapping Remote Secure Key Infrastructures <xref target="RFC8995"/> Registrar)
that might need to evaluate the object in flight <bcp14>MUST</bcp14> be prepared for
any version of this format.
No signaling of the format version (CMSVersion) 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 Artifact that is a CMS-signed encoding of the
JSON-encoded Voucher Data as defined by 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 nonceless or which kind of pinned anchor is used, are 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
type in the HTTP "Accept" header <xref target="RFC9110"/>.</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>
      <t>The attributes <tt>pinned-domain-pubk</tt> (<tt>proximity-registrar-pubk</tt> for a PVR) and <tt>pinned-domain-pubk-sha256</tt> (<tt>proximity-registrar-pubk-sha256</tt> for a PVR) are involved in the process of pinning/identifying a raw public key, instead of a certificate, for such devices.</t>
      <t>Should SHA256 need to be replaced, then a new YANG module will be published with a new leaf, obsoleting
<tt>pinned-domain-pubk-sha256</tt> and <tt>proximity-registrar-pubk-sha256</tt>.</t>
      <t>In the event that more than one of <tt>pinned-domain-pubk-sha256</tt>, <tt>pinned-domain-pubk</tt> or <tt>pinned-domain-cert</tt> are present in a voucher, then the Pledge <bcp14>SHALL</bcp14> prioritize the <tt>proximity</tt> entry which it used in its voucher-request artifact, ignoring the others.</t>
      <t>If the voucher is nonce-less (and thus not the result of a voucher-request), then the Pledge <bcp14>SHALL</bcp14> consider the first of the above attributes that it understands, in the order given above.</t>
      <section anchor="algorithm-choices-for-voucher-requests-and-vouchers">
        <name>Algorithm Choices for Voucher Requests and Vouchers</name>
        <t>When designing Pledge devices, manufacturers choose algorithms and signature formats - which they also need to support in their MASA.
Should a manufacturer decide to stop supporting some algorithm, they will likely need to recall any inventory that exists in warehouses or within the supply chain in order to replace the firmware and update the IDevID certificates present.</t>
        <t>As explained in <xref section="2.5" sectionFormat="comma" target="RFC8995"/>, the Pledge is a creation of the manufacturer, and thus the manufacturer (in the form of the Manufacturer Authorized Signing Authority (MASA)) has knowledge of the capabilities of the Pledge.
Specifically, the manufacturer knows what signature algoritm the Pledge is going to use (to sign a PVR or to validate a Voucher), and can verify this, thus there is no need (or opportunity) to negotiate the algorithm or signature (CMS, JWS, COSE) scheme.</t>
        <t>When designing Pledge devices, manufacturers therefor have to choose algorithms and signature formats
to support, and whatever choices they make, they need to also support in their MASA.
Should a manufacturer decide to stop supporting some algorithm, they will likely need to recall any inventory that exists in warehouses or within the supply chain in order to replace the firmware and update the IDevID certificates present in the recalled devices.</t>
        <t>The exact choice of format (CMS, JWS or CBOR) and algorithm depends upon the target operational community for the Voucher.
<xref section="6.2" sectionFormat="comma" target="RFC8994"/> specifies mandatory to implement algorithms for current ANI uses.
<xref target="I-D.richardson-anima-quantum-safe-4ani"/> is future work for quantum safe (PQ) <xref target="RFC9958"/> algorithms for ANI work.</t>
        <t><xref target="cBRSKI"/> and <xref target="I-D.ietf-uta-tls13-iot-profile"/> specifies mandatory to implement algorithms for IoT use cases.</t>
        <t>A certain class of constrained devices minimizes the code size of the code for ASN.1 processing, PKIX <xref target="RFC5280"/> processing and Voucher/PVR processing, while another class of constrained devices can minimize just the sizes of Voucher and PVR.</t>
        <t>The public keys are to be encoded according to <xref section="3" sectionFormat="comma" target="RFC7250"/> for RSA and ECDSA keys, noting that <xref target="RFC8032"/> extends this to include an OID for EdDSA.
The old (1024-bit) DSA algorithm is not supported.</t>
      </section>
      <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:
    +-- created-on?                      yang:date-and-time
    +-- extensions*                      union
    +-- manufacturer-proprietary?        binary
    +-- assertion?                       enumeration
    +-- serial-number                    string
    +-- idevid-issuer?                   binary
    +-- pinned-domain-cert?              binary
    +-- pinned-domain-pubk?              binary
    +-- pinned-domain-pubk-sha256?       binary
    +-- domain-cert-revocation-checks?   boolean
    +-- last-renewal-date?               yang:date-and-time
    +-- expires-on?                      yang:date-and-time
    +-- 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 JSON 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 '<tt>logged</tt>' 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 (containing no nonce, or "nonceless").
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 '<tt>verified</tt>' 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>The final two examples illustrate a Voucher that includes an (example) extension per <xref target="voucher-ext"/>.
The hypothetical YANG module name of the extension is '<tt>example-my-extension</tt>'.
First, a JSON serialization is shown.</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==",
    "extensions": ["example-my-extension"],
    "extension:example-my-extension": {
      "my-ext-leaf1": "my-ext-leaf1-data"
    }
  }
}
]]></artwork>
        <t>Next, a CBOR serialization is shown in CBOR diagnostic notation.
This uses again the extension module '<tt>example-my-extension</tt>' and refers to it using its SID value 305823299950.
Note that for this example, long binary strings are abbreviated using the ellipsis (<tt>...</tt>) notation.</t>
        <artwork><![CDATA[
{
  2451: {                          / ietf-voucher:voucher  /
    2:  "2016-10-07T19:31:42Z",    / created-on            /
    1:  1,                         / assertion (logged)    /
    11: "JADA123456789",           / serial-number         /
    5:  h'04183016 ... 1736C3E0',  / idevid-issuer         /
    8:  h'30820122 ... 12328CFF',  / pinned-domain-cert    /
    7:  h'831D5198A6CA2C7F',       / nonce                 /
    17: [305823299950],            / extensions            /
    47(305823299950): {            / example-my-extension  /
      1: "my-ext-leaf1-data"       / my-ext-leaf1          /
    }
  }
}
]]></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>
        <t>During development of this merged YANG module, advice was given to better organize mutually exclusive Attributes such as '<tt>pinned-domain-cert</tt>' vs '<tt>pinned-domain-pubk</tt>', or '<tt>expires-on</tt>' vs '<tt>nonce</tt>'.
Unfortunately, <xref target="CORESID"/> does not explain how and why choice statements are assigned SID values,
and the tooling as of the end of 2025 is inconsistent with both the document, and the intuitive notions as to how this should work.
As the simplest way forward, the choice mechanisms that were introduced have been commented out in the YANG, allowing the SID values to be generated correctly.
As a result, the SID values presented in <xref target="voucher-sid-values"/> and <xref target="voucher-request-sid-values"/> are to be considered normative, rather than relying exclusively on the
".sid" file <xref target="CORESID"/> generated from the YANG modules.
The presented SID values are believed to be correct, but future reprocessing of the YANG module to a ".sid" file could result in changes as the tooling is fixed.
Any such changes will be recorded as errata on this document.</t>
        <sourcecode type="yang" markers="true" name="ietf-voucher@2025-12-18.yang"><![CDATA[
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 9911: Common YANG Data Types";
  }
  import ietf-inet-types {
    prefix ietf;
    reference
      "RFC 9911: Common YANG Data Types";
  }
  import ietf-yang-structure-ext {
    prefix sx;
    reference
      "RFC 8791: YANG Data Structure Extensions";
  }

  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:   Toerless Eckert
               <mailto:tte@cs.fau.de>
     Author:   Qiufang Ma
               <mailto:maqiufang1@huawei.com>
     Author:   Esko Dijk
               <mailto:esko.dijk@iotconsultancy.nl>";
  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) 2023-2026 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.

     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.";

  // RFCEDITOR: please replace XXXX in this entire code fragment
  // with the RFC number assigned and remove this notice.
  // Please also update references in the description {{}} to the
  // RFC numbers for the documents.

  revision 2025-12-18 {
    description
      "Updates and additions described by RFC XXXX,
       includes mechanism for constrained BRSKI
       {{I-D.ietf-anima-constrained-voucher}},
       Pledge in Responder Mode {{I-D.ietf-anima-brski-prm}},
       and BRSKI-CLOUD {{I-D.ietf-anima-brski-cloud}}";
    reference
      "RFC XXXX: A Voucher Artifact for Bootstrapping Protocols";
  }
  revision 2018-05-09 {
    description
      "Initial version";
    reference
      "RFC 8366: Voucher Profile for Bootstrapping Protocols";
  }

  grouping voucher-artifact {
    description
      "Grouping to allow reuse/extensions in future work.";
    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-proprietary {
      type binary;
      description
        "In CBOR serialization, this is a CBOR bstr containing any
         valid CBOR that the manufacturer wishes to share with its
         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.  In the voucher, it is optional
         as some manufacturers know that all serial-numbers
         are unique within the scope of a MASA.
         In the voucher request, whether it is mandatory or optional depends
         upon which protocol is used, such as RFC8995 and variations.
         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
    //               MASA to pin the registrar identity";
    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.X690].

         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.X690:
         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.";
    }
    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.";
    }
    // }  choice pinning removed
    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.";
    }
    // } choice nonceless
    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;
  }
}
]]></sourcecode>
      </section>
      <section anchor="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.
The below SID values are assigned to the '<tt>ietf-voucher</tt>' YANG module elements and are considered normative.</t>
        <t>The right column shows the schema-node path expression for the YANG data node to which the SID value is assigned.</t>
        <artwork><![CDATA[
SID  Assigned to
---- --------------------------------------------------
2450 module ietf-voucher
2451 data   /ietf-voucher:voucher
2452 data   /ietf-voucher:voucher/assertion
2453 data   /ietf-voucher:voucher/created-on
2454 data   /ietf-voucher:voucher/domain-cert-revocation-checks
2455 data   /ietf-voucher:voucher/expires-on
2456 data   /ietf-voucher:voucher/idevid-issuer
2457 data   /ietf-voucher:voucher/last-renewal-date
2458 data   /ietf-voucher:voucher/nonce
2459 data   /ietf-voucher:voucher/pinned-domain-cert
2460 data   /ietf-voucher:voucher/pinned-domain-pubk
2461 data   /ietf-voucher:voucher/pinned-domain-pubk-sha256
2462 data   /ietf-voucher:voucher/serial-number
2463 data   /ietf-voucher:voucher/additional-configuration-url
2464 data   /ietf-voucher:voucher/est-domain
2465 data   /ietf-voucher:voucher/manufacturer-proprietary
2466 data   /ietf-voucher:voucher/extensions
]]></artwork>
        <t>The '<tt>assertion</tt>' 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 value</name>
          <thead>
            <tr>
              <th align="left">CBOR 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 implicitly accommodates 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 DNS domain name.</t>
        <t>In CBOR serialization <xref target="RFC9254"/>, the situation is not so easy when SID keys are used.
An extension might need to use "Private range" <xref target="CORESID"/> 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 YANG "augment" mechanism), turned out not to be, see <xref target="extendfail"/>.</t>
        <t>Instead, a process similar to what was done by <xref target="RFC8520"/> has been adopted.
In the Voucher Data, any extensions are listed in a list Attribute named '<tt>extensions</tt>'.
In JSON serialization, these extensions each require a unique name, and therefore this name <bcp14>MUST</bcp14> be allocated by IANA.
The name <bcp14>MUST</bcp14> be the same as the YANG extension module name.
The '<tt>extensions</tt>' list Attribute allows for new standard extensions to be defined without changes to the '<tt>ietf-voucher</tt>' YANG module.
Items within that list are either strings (in JSON serialization), or integers (in CBOR serialization using SIDs);
both are always defined in the entries of the Voucher Extensions registry (see <xref target="voucher-ext-reg"/>).</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 of a new key/value pair in the '<tt>voucher</tt>' container element.
In JSON serialization, the corresponding key is the name of the extension, prefixed by the string "extension:".
In CBOR serialization, the corresponding key is the SID which is allocated as the YANG extension module SID.
This will typically require the absolute SID value Tag(47) to be applied to this key (see <xref section="4.2.1" sectionFormat="of" target="RFC9254"/>
or the final example in <xref target="voucher-examples"/>).</t>
        <t>Note that this differs from the mechanism described in <xref target="RFC8520"/>: there, a sub-map is not used.
Instead, keys are created by combining the module name and the Attribute as a string, as a result of using the YANG
"augment" mechanism.
The <xref target="RFC8520"/> mechanism uses more bytes, but is also not easily translatable to CBOR.</t>
        <t>As the Voucher Request YANG module is created by YANG augment of the Voucher YANG module, any extension defined for the Voucher is also valid for a Voucher Request.</t>
      </section>
      <section anchor="manufacturer-proprietary-extensions">
        <name>Manufacturer Proprietary 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 value in order to do minimal-sized encoding in case of CBOR Voucher Data.
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 '<tt>manufacturer-private</tt>' Attribute 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 Attribute requires that the contents are bstr-encoded
Section <xref target="RFC8949" section="3.1" sectionFormat="bare"/> of RFC 8949 <xref target="CBOR"/> (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="RFC8995"/> 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 the "yang-data" extension <xref target="RFC8040"/> to the "sx:structure" extension <xref target="RFC8791"/>.</t>
      <t>In the event that more than one of <tt>proximity-domain-pubk-sha256</tt>, <tt>proximity-domain-pubk</tt> or <tt>proximity-domain-cert</tt> are present in a voucher request, then the Registrar and MASA <bcp14>SHALL</bcp14> consider them in the order presented here.</t>
    </section>
    <section anchor="head">
      <name>&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD</name>
      <t>The presence of more than one of these attributes is legal as it may allow a Pledge to operate in both constrained and non-constrained networks.
However, on constrained networks it wastes significant amounts of space, and it is discouraged in those environments.
&gt;&gt;&gt;&gt;&gt;&gt;&gt; e40163a (feat: provide instructions for situation where more than one pinned- or proximity- are present)</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:
    +-- created-on?                                yang:date-and-time
    +-- extensions*                                union
    +-- manufacturer-proprietary?                  binary
    +-- assertion?                                 enumeration
    +-- serial-number                              string
    +-- idevid-issuer?                             binary
    +-- pinned-domain-cert?                        binary
    +-- pinned-domain-pubk?                        binary
    +-- pinned-domain-pubk-sha256?                 binary
    +-- domain-cert-revocation-checks?             boolean
    +-- last-renewal-date?                         yang:date-and-time
    +-- expires-on?                                yang:date-and-time
    +-- nonce?                                     binary
    +-- est-domain?                                ietf:uri
    +-- additional-configuration-url?              ietf:uri
    +-- prior-signed-voucher-request?              binary
    +-- proximity-registrar-cert?                  binary
    +-- proximity-registrar-pubk?                  binary
    +-- proximity-registrar-pubk-sha256?           binary
    +-- agent-signed-data?                         binary
    +-- agent-provided-proximity-registrar-cert?   binary
    +-- agent-sign-cert?                           binary
]]></artwork>
      </section>
      <section anchor="voucher-request-yang-module">
        <name>"ietf-voucher-request" Module</name>
        <t>The '<tt>ietf-voucher-request</tt>' YANG module is derived from the '<tt>ietf-voucher</tt>' module.</t>
        <sourcecode type="yang" markers="true" name="ietf-voucher-request@2025-12-18.yang"><![CDATA[
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;
    reference
      "RFC 8791: YANG Data Structure Extensions";
  }
  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: A 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:   Toerless Eckert
               <mailto:tte@cs.fau.de>
     Author:   Qiufang Ma
               <mailto:maqiufang1@huawei.com>
     Author:   Esko Dijk
               <mailto:esko.dijk@iotconsultancy.nl>";
  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 procedure and subsequent
     Voucher creation.

     Copyright (c) 2023-2026 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.

     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.";

  // RFCEDITOR: please replace XXXX in this entire code fragment
  // with the RFC number assigned and remove this notice.
  // Please also update references in the description {{}} to the
  // RFC numbers for the documents.

  revision 2025-12-18 {
    description
      "Updates and additions described by RFC XXXX,
       includes mechanism for constrained BRSKI
       {{I-D.ietf-anima-constrained-voucher}},
       Pledge in Responder Mode {{I-D.ietf-anima-brski-prm}},
       and BRSKI-CLOUD {{I-D.ietf-anima-brski-cloud}}";
    reference
      "RFC XXXX: A Voucher Artifact for Bootstrapping Protocols";
  }
  revision 2021-05-20 {
    description
      "Initial version";
    reference
      "RFC 8995: Bootstrapping Remote Secure Key Infrastructure
       (BRSKI)";
  }

  grouping voucher-request {
    description
      "Grouping to allow reuse/extensions in future work.";
    uses vch:voucher-artifact {
      refine "last-renewal-date" {
        description
          "A last-renewal-date field
           is not valid in a voucher request, and
           any occurrence MUST be ignored";
      }
      refine "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 "assertion" {
        description
          "Any assertion included in registrar voucher
           requests SHOULD be ignored by the MASA.";
      }
      refine "idevid-issuer" {
        description
          "The idevid-issuer field MUST be included in
           a Registrar Voucher Request (RVR) (unless
           specified otherwise) per Section 6.1 of
           RFC XXXX.";
      }
    }
    leaf prior-signed-voucher-request {
      type binary;
      description
        "If it is necessary to change a voucher, or re-sign and
         forward a voucher request 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. The MASA SHOULD remove
         all prior-signed-voucher-request information when
         signing a voucher for imprinting so as to minimize
         the final voucher size.";
    }
    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-T.X690].

         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.";
    }
    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-T.X690].
         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-T.X690: 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-T.X690].
         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-T.X690: 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: called "voucher" to match RFC8995
  sx:structure voucher {
    uses voucher-request;
  }
}
]]></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.
The below SID values are assigned to the '<tt>ietf-voucher-request</tt>' YANG module elements and are considered normative.</t>
        <t>The right column shows the schema-node path expression for the YANG data node to which the SID value is assigned.</t>
        <artwork><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

SID  Assigned to
---- --------------------------------------------------
2500 module ietf-voucher-request
2501 data   /ietf-voucher-request:voucher
2502 data   /ietf-voucher-request:voucher/assertion
2503 data   /ietf-voucher-request:voucher/created-on
2504 data   /ietf-voucher-request:voucher/domain-cert-revocation-\
                                                               checks
2505 data   /ietf-voucher-request:voucher/expires-on
2506 data   /ietf-voucher-request:voucher/idevid-issuer
2507 data   /ietf-voucher-request:voucher/last-renewal-date
2508 data   /ietf-voucher-request:voucher/nonce
2509 data   /ietf-voucher-request:voucher/pinned-domain-cert
2510 data   /ietf-voucher-request:voucher/prior-signed-voucher-\
                                                              request
2511 data   /ietf-voucher-request:voucher/proximity-registrar-cert
2512 data   /ietf-voucher-request:voucher/proximity-registrar-pubk-\
                                                               sha256
2513 data   /ietf-voucher-request:voucher/proximity-registrar-pubk
2514 data   /ietf-voucher-request:voucher/serial-number
2515 data   /ietf-voucher-request:voucher/agent-provided-proximity-\
                                                       registrar-cert
2516 data   /ietf-voucher-request:voucher/agent-sign-cert
2517 data   /ietf-voucher-request:voucher/agent-signed-data
2518 data   /ietf-voucher-request:voucher/pinned-domain-pubk
2519 data   /ietf-voucher-request:voucher/pinned-domain-pubk-sha256
2520 data   /ietf-voucher-request:voucher/additional-configuration-\
                                                                  url
2521 data   /ietf-voucher-request:voucher/est-domain
2522 data   /ietf-voucher-request:voucher/extensions
2523 data   /ietf-voucher-request:voucher/manufacturer-proprietary
]]></artwork>
        <t>The '<tt>assertion</tt>' 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 (such as an OCSP <xref target="RFC6960"/> staple <xref target="RFC9910"/>, or CRL <xref target="RFC5280"/>) is generally used to verify the continued validity
of an assertion such as a PKIX certificate <xref target="RFC5280"/>, web token, or 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
'<tt>expires-on</tt>' Attribute is set to some distant date, the expectation
is for the MASA to instead issue a short-lived Voucher, where the
'<tt>expires-on</tt>' Attribute is set to a relatively near date, along with a promise
(reflected in the '<tt>last-renewal-date</tt>' Attribute) 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.</t>
        <t>The renewal request is created by the Registrar, using a freshly signed Registrar Voucher Request (RVR), including the old voucher in the <tt>prior-signed-voucher-request</tt>
attribute.
The Registrar signs the new request.</t>
        <t>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 (<xref target="RFC5280"/>) is
not reachable.</t>
        <t>The exact details of how is "short-lived" is up to the different onboarding mechanisms.</t>
        <t>So, while this document recommends issuing short-lived Vouchers, the
Voucher Artifact does not restrict the ability to create long-lived
Vouchers, 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 '<tt>expires-on</tt>' Attribute 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 need to ensure that
the devices targetted 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
the expiration time values in Vouchers will have no meaning.</t>
      </section>
      <section anchor="protect-masa-signing-key-in-hsm">
        <name>Protect MASA Signing Key in HSM</name>
        <t>As the MASA needs to be able to respond to voucher signing requests,
it is <bcp14>RECOMMENDED</bcp14> that the MASA's private key used for signing Vouchers is protected by
a hardware security module (HSM).</t>
        <t>There are many ways to organize the PKI that is used to sign vouchers.
<xref section="2" sectionFormat="comma" target="I-D.ietf-anima-masa-considerations"/> describes a number of different scenarios.
In some of them, there are long-term keys kept offline, implementing a certification authority.
This can be as complicated as an FIPS-certified resin filled HSM, or as simple as a USB key stored in a locked cabinet.</t>
        <t>The actual End-Entity certificate used to sign the Vouchers is online, and is a short-lived certificate, re-generated frequently.
The trust anchor configured into the Pledge is the long-term offline anchor.</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 PKIX <xref target="RFC5280"/> 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 structures,
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.</t>
        <t>When used with <xref target="RFC8995"/>, or <xref target="cBRSKI"/> then voucher requests and vouchers are conveyed using TLS <xref target="RFC9846"/>, so there is no exposure.</t>
        <t>When used with <xref target="PRM"/>, then the contents can be exposed in the last hop,
where HTTP is used, due the lack of any way to validate the certificate needed to enable HTTPS.</t>
        <t>When the voucher is in CMS format, it can contain certificate chains that can disclose 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.
Note that <xref target="PRM"/> specifies use of <xref target="JWS"/> format artifacts rather than CMS, so there are no CRLs to disclose.</t>
        <t><xref target="SZTP"/> uses a wide variety of transports, some of which offer physical privacy for data, and others which do not.
To mitigate this, <xref section="3.4" sectionFormat="comma" target="SZTP"/> specifies a way to encrypt using CMS.</t>
        <t>The use of YANG to define data structures, via the "sx:structure"
extension <xref target="RFC8791"/>, is relatively new and distinct from the conventional
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, this
security considerations section does not follow the 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 updates two URIs in the "IETF XML Registry" <xref target="RFC3688"/>: <tt>urn:ietf:params:xml:ns:yang:ietf-voucher</tt> and
<tt>urn:ietf:params:xml:ns:yang:ietf-voucher-request</tt>:</t>
        <t>IANA is requested to update this registration to point to THIS-DOCUMENT.</t>
      </section>
      <section anchor="the-yang-module-names-registry">
        <name>The YANG Module Names Registry</name>
        <t>IANA is requested to update the <tt>ietf-voucher</tt> and <tt>ietf-voucher-request</tt> registrations
in the "YANG  Module Names" registry <xref target="RFC6020"/> <xref target="RFC9890"/> within the "YANG Parameters" registry group to point to this document.
For the <tt>ietf-voucher-request</tt> entry, the prefix should be updated to "vcr".</t>
      </section>
      <section anchor="vcj">
        <name>The Media Types Registry</name>
        <t>IANA is requested to update the registration of media type: <tt>application/voucher-cms+json</tt> to change the Published Specification to THIS-DOCUMENT.</t>
      </section>
      <section anchor="iana-contenttype">
        <name>The SMI Security for S/MIME CMS Content Type Registry</name>
        <t>IANA is requested to update the registration for the OID 1.2.840.113549.1.9.16.1.40, '<tt>id-ct-animaJSONVoucher</tt>'.
This registration should be updated to point to this document.</t>
      </section>
      <section anchor="voucher-ext-reg">
        <name>The Voucher Extensions Registry</name>
        <t>IANA is asked to create a registry of Voucher extensions within the <em>Bootstrapping Remote Secure Key Infrastructures (BRSKI) Parameters</em> as follows.</t>
        <t>The name is: Voucher Extensions, and the Registration Policy is Expert Review.</t>
        <ul empty="true">
          <li>
            <dl spacing="compact">
              <dt>Reference:</dt>
              <dd>
                <t>an optional document</t>
              </dd>
              <dt>Extension name:</dt>
              <dd>
                <t>UTF-8-encoded string, not to exceed 40 characters.</t>
              </dd>
              <dt>Extension SID:</dt>
              <dd>
                <t>the YANG module SID value that defines the extension per <xref target="voucher-ext"/>.</t>
              </dd>
            </dl>
          </li>
        </ul>
        <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.
<xref target="RFC9997"/> allows for PEN based allocations.
IANA does not need to separately allocate a SID value for this column.</t>
        <t>Extension name strings for IETF process (standards track, experimental, IRTF) documents are single words, given by the YANG Module Name: They do not contain dots.</t>
        <t>For vendor proprietary extensions, (including ISE submissions), the resulting string still needs to be unique.
This can be done by making the YANG module unique, basing it on a fully-qualified domain name (FQDN) <xref target="RFC3696"/>, such as "fuubar.example.com-mud-thing" rather than "fuubar-mud-thing"</t>
        <t>Vendor proprietary extensions do not need to be registered with IANA, but vendors are encouraged to do so.</t>
        <t>Designated Experts should review the documents for clarity, but the choices are tied to WG and IESG processes:</t>
        <ul spacing="normal">
          <li>
            <t>There are no choices in the extension names (for standards track extensions) which is always the YANG module name), or SID value (which is from another IANA process).</t>
          </li>
          <li>
            <t>For non-standards track extensions, the Designated Expert should review the provided document for clarity of purpose.
The stability of the reference may be of concern.</t>
          </li>
        </ul>
        <t>The Designated Expert should determine if the work overlaps with an existing IETF WG effort, suggesting ways that the work could become part of a standard.
However, as registration is optional, the Designated Expert should not block any vendor registrations if no consolidated extension is possible.</t>
      </section>
      <section anchor="the-ietf-yang-sid-ranges-registry">
        <name>The IETF YANG-SID Ranges Registry</name>
        <t>IANA is requested to register the following entries in the IETF YANG-SID Ranges registry:</t>
        <table anchor="ietf-yang-sid-ranges-table">
          <name>Registered SID ranges</name>
          <thead>
            <tr>
              <th align="center">Entry Point</th>
              <th align="center">Size</th>
              <th align="left">Module Name</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">2450</td>
              <td align="center">50</td>
              <td align="left">ietf-voucher</td>
              <td align="left">[This-Document]</td>
            </tr>
            <tr>
              <td align="center">2500</td>
              <td align="center">50</td>
              <td align="left">ietf-voucher-request</td>
              <td align="left">[This-Document]</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="the-ietf-yang-sid-modules-registry">
        <name>The IETF YANG-SID Modules Registry</name>
        <t>IANA is requested to register the following YANG module in the IETF YANG-SID Modules registry, per
<xref section="6.5.1" sectionFormat="of" target="CORESID"/>:</t>
        <ul spacing="normal">
          <li>
            <t>YANG module name: <tt>ietf-voucher</tt></t>
          </li>
          <li>
            <t>URI for the ".yang" file: a pointer to the file defined in <xref target="voucher-yang-module"/></t>
          </li>
          <li>
            <t>URI for the ".sid" file: a pointer to the file defined in <xref target="voucher-sid-allocations"/></t>
          </li>
          <li>
            <t>Number of SIDs: 17</t>
          </li>
        </ul>
        <t>and also the following YANG module:</t>
        <ul spacing="normal">
          <li>
            <t>YANG module name: <tt>ietf-voucher-request</tt></t>
          </li>
          <li>
            <t>URI for the ".yang" file: a pointer to the file defined in <xref target="voucher-request-yang-module"/></t>
          </li>
          <li>
            <t>URI for the ".sid" file: a pointer to the file defined in <xref target="voucher-request-sid-allocations"/></t>
          </li>
          <li>
            <t>Number of SIDs: 24</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="yang-references">
      <name>YANG references</name>
      <t>RFC-editor, please remove.
This section just lists references present in YANG modules which otherwise do not get included in the references, like <xref target="RFC7250"/>.</t>
      <t>Also <xref target="RFC9911"/>, Common YANG Data Types.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC5280">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author fullname="D. Cooper" initials="D." surname="Cooper"/>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="W. Polk" initials="W." surname="Polk"/>
            <date month="May" year="2008"/>
            <abstract>
              <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5280"/>
          <seriesInfo name="DOI" value="10.17487/RFC5280"/>
        </reference>
        <reference anchor="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="RFC9890">
          <front>
            <title>An Update to YANG Module Names Registration</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <date month="October" year="2025"/>
            <abstract>
              <t>This document amends the IANA guidance on the uniqueness of YANG module and submodule names.</t>
              <t>The document updates RFC 6020 to clarify how modules and their revisions are handled by IANA.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9890"/>
          <seriesInfo name="DOI" value="10.17487/RFC9890"/>
        </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="RFC9254">
          <front>
            <title>Encoding of Data Modeled with YANG in the Concise Binary Object Representation (CBOR)</title>
            <author fullname="M. Veillette" initials="M." role="editor" surname="Veillette"/>
            <author fullname="I. Petrov" initials="I." role="editor" surname="Petrov"/>
            <author fullname="A. Pelov" initials="A." surname="Pelov"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>YANG (RFC 7950) is a data modeling language used to model configuration data, state data, parameters and results of Remote Procedure Call (RPC) operations or actions, and notifications.</t>
              <t>This document defines encoding rules for YANG in the Concise Binary Object Representation (CBOR) (RFC 8949).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9254"/>
          <seriesInfo name="DOI" value="10.17487/RFC9254"/>
        </reference>
        <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">
          <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">
          <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="8" month="June" year="2026"/>
            <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-31"/>
        </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.X680" target="https://www.itu.int/rec/T-REC-X.680/">
          <front>
            <title>Information Technology - Abstract Syntax Notation One (ASN.1): Specification of basic notation</title>
            <author>
              <organization>International Telecommunication Union</organization>
            </author>
            <date year="2021" month="February"/>
          </front>
          <seriesInfo name="ITU-T Recommendation X.680," value="ISO/IEC 8824-1"/>
        </reference>
        <reference anchor="ITU-T.X690" 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="2021" month="February"/>
          </front>
          <seriesInfo name="ITU-T Recommendation X.690," value="ISO/IEC 8825-1"/>
        </reference>
        <reference anchor="RFC8995">
          <front>
            <title>Bootstrapping Remote Secure Key Infrastructure (BRSKI)</title>
            <author fullname="M. Pritikin" initials="M." surname="Pritikin"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="T. Eckert" initials="T." surname="Eckert"/>
            <author fullname="M. Behringer" initials="M." surname="Behringer"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document specifies automated bootstrapping of an Autonomic Control Plane. To do this, a Secure Key Infrastructure is bootstrapped. This is done using manufacturer-installed X.509 certificates, in combination with a manufacturer's authorizing service, both online and offline. We call this process the Bootstrapping Remote Secure Key Infrastructure (BRSKI) protocol. Bootstrapping a new device can occur when using a routable address and a cloud service, only link-local connectivity, or limited/disconnected networks. Support for deployment models with less stringent security requirements is included. Bootstrapping is complete when the cryptographic identity of the new key infrastructure is successfully deployed to the device. The established secure connection can be used to deploy a locally issued certificate to the device as well.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8995"/>
          <seriesInfo name="DOI" value="10.17487/RFC8995"/>
        </reference>
        <reference anchor="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="RFC8994">
          <front>
            <title>An Autonomic Control Plane (ACP)</title>
            <author fullname="T. Eckert" initials="T." role="editor" surname="Eckert"/>
            <author fullname="M. Behringer" initials="M." role="editor" surname="Behringer"/>
            <author fullname="S. Bjarnason" initials="S." surname="Bjarnason"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>Autonomic functions need a control plane to communicate, which depends on some addressing and routing. This Autonomic Control Plane should ideally be self-managing and be as independent as possible of configuration. This document defines such a plane and calls it the "Autonomic Control Plane", with the primary use as a control plane for autonomic functions. It also serves as a "virtual out-of-band channel" for Operations, Administration, and Management (OAM) communications over a network that provides automatically configured, hop-by-hop authenticated and encrypted communications via automatically configured IPv6 even when the network is not configured or is misconfigured.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8994"/>
          <seriesInfo name="DOI" value="10.17487/RFC8994"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="I-D.ietf-uta-tls13-iot-profile">
          <front>
            <title>TLS/DTLS 1.3 Profiles for the Internet of Things</title>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of the Bundeswehr Munich</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>NVIDIA</organization>
            </author>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <author fullname="Daniel Migault" initials="D." surname="Migault">
              <organization>Ericsson</organization>
            </author>
            <date day="21" month="July" year="2026"/>
            <abstract>
              <t>   RFC 7925 offers guidance to developers on using TLS/DTLS 1.2 for
   Internet of Things (IoT) devices with resource constraints.  This
   document is a companion to RFC 7925, defining TLS/DTLS 1.3 profiles
   for IoT devices.  Additionally, it updates RFC 7925 with respect to
   the X.509 certificate profile and ciphersuite requirements.

Discussion Venues

   This note is to be removed before publishing as an RFC.

   Source for this draft and an issue tracker can be found at
   https://github.com/thomas-fossati/draft-tls13-iot.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-uta-tls13-iot-profile-23"/>
        </reference>
        <reference anchor="RFC7250">
          <front>
            <title>Using Raw Public Keys in Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
            <author fullname="P. Wouters" initials="P." role="editor" surname="Wouters"/>
            <author fullname="H. Tschofenig" initials="H." role="editor" surname="Tschofenig"/>
            <author fullname="J. Gilmore" initials="J." surname="Gilmore"/>
            <author fullname="S. Weiler" initials="S." surname="Weiler"/>
            <author fullname="T. Kivinen" initials="T." surname="Kivinen"/>
            <date month="June" year="2014"/>
            <abstract>
              <t>This document specifies a new certificate type and two TLS extensions for exchanging raw public keys in Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS). The new certificate type allows raw public keys to be used for authentication.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7250"/>
          <seriesInfo name="DOI" value="10.17487/RFC7250"/>
        </reference>
        <reference anchor="RFC8032">
          <front>
            <title>Edwards-Curve Digital Signature Algorithm (EdDSA)</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <author fullname="I. Liusvaara" initials="I." surname="Liusvaara"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes elliptic curve signature scheme Edwards-curve Digital Signature Algorithm (EdDSA). The algorithm is instantiated with recommended parameters for the edwards25519 and edwards448 curves. An example implementation and test vectors are provided.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8032"/>
          <seriesInfo name="DOI" value="10.17487/RFC8032"/>
        </reference>
        <reference anchor="RFC9911">
          <front>
            <title>Common YANG Data Types</title>
            <author fullname="J. Schönwälder" initials="J." role="editor" surname="Schönwälder"/>
            <date month="December" year="2025"/>
            <abstract>
              <t>This document defines a collection of common data types to be used with the YANG data modeling language. It includes several new type definitions and obsoletes RFC 6991.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9911"/>
          <seriesInfo name="DOI" value="10.17487/RFC9911"/>
        </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="RFC9846">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="July" year="2026"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document obsoletes RFC 8446, which specified TLS 1.3. This document obsoletes RFC 5246 (specifying TLS 1.2) and RFCs 5077, 6961, 7627, and 8422, all of which pertain to TLS 1.2 or earlier, and updates RFCs 5705 and 6066. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9846"/>
          <seriesInfo name="DOI" value="10.17487/RFC9846"/>
        </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">
          <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="SZTP">
          <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="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>
        <reference anchor="RFC9525">
          <front>
            <title>Service Identity in TLS</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
            <author fullname="R. Salz" initials="R." surname="Salz"/>
            <date month="November" year="2023"/>
            <abstract>
              <t>Many application technologies enable secure communication between two entities by means of Transport Layer Security (TLS) with Internet Public Key Infrastructure using X.509 (PKIX) certificates. This document specifies procedures for representing and verifying the identity of application services in such interactions.</t>
              <t>This document obsoletes RFC 6125.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9525"/>
          <seriesInfo name="DOI" value="10.17487/RFC9525"/>
        </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="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="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="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="eid7263" target="https://www.rfc-editor.org/errata/eid7263">
          <front>
            <title>Errata 7263, RFC8995</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="RFC9200">
          <front>
            <title>Authentication and Authorization for Constrained Environments Using the OAuth 2.0 Framework (ACE-OAuth)</title>
            <author fullname="L. Seitz" initials="L." surname="Seitz"/>
            <author fullname="G. Selander" initials="G." surname="Selander"/>
            <author fullname="E. Wahlstroem" initials="E." surname="Wahlstroem"/>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>This specification defines a framework for authentication and authorization in Internet of Things (IoT) environments called ACE-OAuth. The framework is based on a set of building blocks including OAuth 2.0 and the Constrained Application Protocol (CoAP), thus transforming a well-known and widely used authorization solution into a form suitable for IoT devices. Existing specifications are used where possible, but extensions are added and profiles are defined to better serve the IoT use cases.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9200"/>
          <seriesInfo name="DOI" value="10.17487/RFC9200"/>
        </reference>
        <reference anchor="RFC8520">
          <front>
            <title>Manufacturer Usage Description Specification</title>
            <author fullname="E. Lear" initials="E." surname="Lear"/>
            <author fullname="R. Droms" initials="R." surname="Droms"/>
            <author fullname="D. Romascanu" initials="D." surname="Romascanu"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This memo specifies a component-based architecture for Manufacturer Usage Descriptions (MUDs). The goal of MUD is to provide a means for end devices to signal to the network what sort of access and network functionality they require to properly function. The initial focus is on access control. Later work can delve into other aspects.</t>
              <t>This memo specifies two YANG modules, IPv4 and IPv6 DHCP options, a Link Layer Discovery Protocol (LLDP) TLV, a URL, an X.509 certificate extension, and a means to sign and verify the descriptions.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8520"/>
          <seriesInfo name="DOI" value="10.17487/RFC8520"/>
        </reference>
        <reference anchor="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="6" month="July" year="2026"/>
            <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-08"/>
        </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="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="I-D.richardson-anima-quantum-safe-4ani">
          <front>
            <title>Quantum Safe (PQ) Considerations for Autonomic Network Infrastructure (ANI)</title>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software</organization>
            </author>
            <date day="12" month="August" year="2026"/>
            <abstract>
              <t>   The imminent arrival of a Cryptographically Relevant Quantum Computer
   (CRQC) makes algorithms such as RSA, ECDSA and EdDSA vulnerable to
   attack.  A transition to Quantum-Safe (PQ) algorithms is occurring.

   This document provides specific requirements (Mandatory to Implement)
   for Autonomic Network Infrastructure (ANI/ACP) and AgenticAI
   manufacturers and operators to be able to seamlessly transition to
   Quantum Safe algorithms.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-richardson-anima-quantum-safe-4ani-00"/>
        </reference>
        <reference anchor="RFC9958">
          <front>
            <title>Post-Quantum Cryptography for Engineers</title>
            <author fullname="A. Banerjee" initials="A." surname="Banerjee"/>
            <author fullname="T. Reddy.K" initials="T." surname="Reddy.K"/>
            <author fullname="D. Schoinianakis" initials="D." surname="Schoinianakis"/>
            <author fullname="T. Hollebeek" initials="T." surname="Hollebeek"/>
            <author fullname="M. Ounsworth" initials="M." surname="Ounsworth"/>
            <date month="June" year="2026"/>
            <abstract>
              <t>The advent of a cryptographically relevant quantum computer (CRQC) would render state-of-the-art, traditional public key algorithms deployed today obsolete, as the mathematical assumptions underpinning their security would no longer hold. To address this, protocols and infrastructure must transition to post-quantum algorithms, which are designed to resist both traditional and quantum attacks. This document explains why engineers need to be aware of and understand post-quantum cryptography (PQC), and it details the impact of CRQCs on existing systems and the challenges involved in transitioning to post-quantum algorithms. Unlike previous cryptographic updates, this shift may require significant protocol redesign due to the unique properties of post-quantum algorithms.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9958"/>
          <seriesInfo name="DOI" value="10.17487/RFC9958"/>
        </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="RFC6960">
          <front>
            <title>X.509 Internet Public Key Infrastructure Online Certificate Status Protocol - OCSP</title>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="M. Myers" initials="M." surname="Myers"/>
            <author fullname="R. Ankney" initials="R." surname="Ankney"/>
            <author fullname="A. Malpani" initials="A." surname="Malpani"/>
            <author fullname="S. Galperin" initials="S." surname="Galperin"/>
            <author fullname="C. Adams" initials="C." surname="Adams"/>
            <date month="June" year="2013"/>
            <abstract>
              <t>This document specifies a protocol useful in determining the current status of a digital certificate without requiring Certificate Revocation Lists (CRLs). Additional mechanisms addressing PKIX operational requirements are specified in separate documents. This document obsoletes RFCs 2560 and 6277. It also updates RFC 5912.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6960"/>
          <seriesInfo name="DOI" value="10.17487/RFC6960"/>
        </reference>
        <reference anchor="RFC9910">
          <front>
            <title>Registration Data Access Protocol (RDAP) Regional Internet Registry (RIR) Search</title>
            <author fullname="T. Harrison" initials="T." surname="Harrison"/>
            <author fullname="J. Singh" initials="J." surname="Singh"/>
            <date month="January" year="2026"/>
            <abstract>
              <t>The Registration Data Access Protocol (RDAP) is used by Regional Internet Registries (RIRs) and Domain Name Registries (DNRs) to provide access to their resource registration information. The core specifications for RDAP define basic search functionality, but there are various search options related to IP addresses, IP prefixes, and Autonomous System Numbers (ASNs), which are provided by RIRs via their WHOIS services, but for which there is no corresponding RDAP functionality. This document extends RDAP to support those search options.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9910"/>
          <seriesInfo name="DOI" value="10.17487/RFC9910"/>
        </reference>
        <reference anchor="I-D.ietf-anima-masa-considerations">
          <front>
            <title>Operational Considerations for Voucher infrastructure for BRSKI MASA</title>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <author fullname="Thomas Werner" initials="T." surname="Werner">
              <organization>Siemens AG</organization>
            </author>
            <date day="9" month="August" year="2026"/>
            <abstract>
              <t>   This document describes a number of operational modes that a BRSKI
   Manufacturer Authorized Signing Authority (MASA) may take on.

   Each mode is defined, and then each mode is given a relevance within
   an over applicability of what kind of organization the MASA is
   deployed into.  This document does not change any protocol
   mechanisms.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-anima-masa-considerations-03"/>
        </reference>
        <reference anchor="RFC9997">
          <front>
            <title>YANG-CBOR: Allocating SID Ranges for Private Enterprise Number (PEN) Holders</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="July" year="2026"/>
            <abstract>
              <t>YANG-CBOR (RFC 9254, "Encoding of Data Modeled with YANG in the Concise Binary Object Representation (CBOR)") defines YANG Schema Item iDentifiers (YANG SIDs), globally unique 63-bit unsigned integers used to identify YANG items. RFC 9595 ("YANG Schema Item iDentifier (YANG SID)") defines ways to allocate these SIDs using IANA registries.</t>
              <t>The present specification employs these SID allocation mechanisms to allocate ranges of 100 000 SIDs (representation size 64 bits) to each holder of an IANA Private Enterprise Number (PEN) of a value below 1 000 000. Holders of PENs of values smaller than 100 000 are also allocated ranges of 10 000 SIDs (representation size 32 bits).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9997"/>
          <seriesInfo name="DOI" value="10.17487/RFC9997"/>
        </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 1878?>

<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 removeInRFC="true" anchor="sid-allocations">
      <name>SID Allocations</name>
      <t>It is temporarily included for review purposes, following the guidelines in <xref section="6.4.3" sectionFormat="of" target="CORESID"/>.</t>
      <section anchor="voucher-sid-allocations">
        <name>SID Allocations for Voucher</name>
        <sourcecode type="yang-sid+json" markers="true" name="ietf-voucher@2025-12-18.sid"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

{
  "ietf-sid-file:sid-file": {
    "module-name": "ietf-voucher",
    "module-revision": "2025-12-18",
    "sid-file-version": 5,
    "sid-file-status": "unpublished",
    "dependency-revision": [
      {
        "module-name": "ietf-yang-types",
        "module-revision": "2013-07-15"
      },
      {
        "module-name": "ietf-inet-types",
        "module-revision": "2013-07-15"
      },
      {
        "module-name": "ietf-yang-structure-ext",
        "module-revision": "2020-06-17"
      }
    ],
    "assignment-range": [
      {
        "entry-point": "2450",
        "size": "50"
      }
    ],
    "item": [
      {
        "namespace": "module",
        "identifier": "ietf-voucher",
        "sid": "2450"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher",
        "sid": "2451"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/assertion",
        "sid": "2452"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/created-on",
        "sid": "2453"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/domain-cert-revocation-\
                                                             checks",
        "sid": "2454"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/expires-on",
        "status": "unstable",
        "sid": "2455"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/idevid-issuer",
        "sid": "2456"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/last-renewal-date",
        "sid": "2457"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/nonce",
        "sid": "2458"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/pinned-domain-cert",
        "status": "unstable",
        "sid": "2459"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/pinned-domain-pubk",
        "status": "unstable",
        "sid": "2460"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/pinned-domain-pubk-\
                                                             sha256",
        "status": "unstable",
        "sid": "2461"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/serial-number",
        "sid": "2462"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/additional-\
                                                  configuration-url",
        "status": "unstable",
        "sid": "2463"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/est-domain",
        "status": "unstable",
        "sid": "2464"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/manufacturer-\
                                                        proprietary",
        "status": "unstable",
        "sid": "2465"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher:voucher/extensions",
        "status": "unstable",
        "sid": "2466"
      }
    ]
  }
}
]]></sourcecode>
      </section>
      <section anchor="voucher-request-sid-allocations">
        <name>SID Allocations for Voucher Request</name>
        <sourcecode type="yang-sid+json" markers="true" name="ietf-voucher-request@2025-12-18.sid"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

{
  "ietf-sid-file:sid-file": {
    "module-name": "ietf-voucher-request",
    "module-revision": "2025-12-18",
    "sid-file-version": 12,
    "sid-file-status": "unpublished",
    "dependency-revision": [
      {
        "module-name": "ietf-yang-structure-ext",
        "module-revision": "2020-06-17"
      },
      {
        "module-name": "ietf-voucher",
        "module-revision": "2025-12-18"
      },
      {
        "module-name": "ietf-yang-structure-ext",
        "module-revision": "2020-06-17"
      },
      {
        "module-name": "ietf-voucher",
        "module-revision": "2025-12-18"
      }
    ],
    "assignment-range": [
      {
        "entry-point": "2500",
        "size": "50"
      }
    ],
    "item": [
      {
        "namespace": "module",
        "identifier": "ietf-voucher-request",
        "sid": "2500"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher",
        "sid": "2501",
        "status": "unstable"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/assertion",
        "sid": "2502"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/created-on",
        "sid": "2503"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/domain-cert-\
                                                  revocation-checks",
        "sid": "2504"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/expires-on",
        "sid": "2505"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/idevid-issuer",
        "sid": "2506"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/last-renewal-\
                                                               date",
        "sid": "2507"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/nonce",
        "sid": "2508"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/pinned-domain-\
                                                               cert",
        "status": "unstable",
        "sid": "2509"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/prior-signed-\
                                                    voucher-request",
        "sid": "2510"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/proximity-\
                                                     registrar-cert",
        "status": "unstable",
        "sid": "2511"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/proximity-\
                                              registrar-pubk-sha256",
        "status": "unstable",
        "sid": "2512"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/proximity-\
                                                     registrar-pubk",
        "sid": "2513"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/serial-number",
        "sid": "2514"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/agent-provided-\
                                           proximity-registrar-cert",
        "status": "unstable",
        "sid": "2515"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/agent-sign-cert\
                                                                   ",
        "sid": "2516"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/agent-signed-\
                                                               data",
        "sid": "2517"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/pinned-domain-\
                                                               pubk",
        "status": "unstable",
        "sid": "2518"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/pinned-domain-\
                                                        pubk-sha256",
        "status": "unstable",
        "sid": "2519"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/additional-\
                                                  configuration-url",
        "status": "unstable",
        "sid": "2520"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/est-domain",
        "status": "unstable",
        "sid": "2521"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/extensions",
        "status": "unstable",
        "sid": "2522"
      },
      {
        "namespace": "data",
        "identifier": "/ietf-voucher-request:voucher/manufacturer-\
                                                        proprietary",
        "status": "unstable",
        "sid": "2523"
      }
    ]
  }
}
]]></sourcecode>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors would like to thank the following people for
lively discussions on list and in the halls (ordered
by last name):
<contact fullname="William Atwood"/>,
<contact fullname="Michael H. Behringer"/>,
<contact fullname="Steffen Fries"/>,
<contact fullname="Sheng Jiang"/>,
<contact fullname="Thomas Werner"/>.</t>
      <t>This document received directorate reviews from <contact fullname="Tim Wicinkski"/>,
<contact fullname="Thomas Fossati"/>, and <contact fullname="Michal Vaško"/>.
It was shepherded by <contact fullname="Sheng Jiang"/>.</t>
      <t><contact fullname="Max Pritikin"/> and <contact fullname="Kent Watsen"/> were instrumental in creating the original <xref target="RFC8366"/>.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
Q9jMLK/PZu4OWeeFZPkHAFslB0c/745JRTwaaGMeoyFQymRSpZs4B8V0Rsko
bEFeiGJrUp+VN1gS0uiyMLUwrCGVyPeJVGtNitNx1m79ejou0HqJoB+k49Ix
K04KybgwI81ASzNyezSFM5IFY6JxarBDBkadAzHJUptyqW3xEGWogbiHEPRP
8TFLIrOcQfjcsX9tnGs88MzJN3XT+3Vb54fmj/erTpUqFma2zRUVkSxfyhf6
sf9Ts9s69O92HIQYBwnLhQvUg1XHXxXxqMYF9C1cQPs24m/rBejYfxhowH8q
EzL+cK16F31brabtSxGQGi6VPEZqtw+47QVxMttEFg9EWHNggnR7youL2O5g
HYAMIZoo/EKpWyPbsGUxfmEEIgqWX8WUz5mJDsk7OwP8kPH/JQub8/QwpcnK
uSuak5y39H8mDB0s/jhpCPSLnWpv2hpIJXQ5zaYGxQUbGSmqaPkT2x9SR8/e
AJDwYhCJmeTMHhW35qhq+ZFLWl+gf0YBH6H71a8dXb7aUgZGm69rinKGwk4/
8pxhgXuu4NqQxDM3vN9qN3TqgWP1JdB+xiVif4YgmKbVURAnMcnOxQePBpLP
6Bwe07LqFFUIB+XYoT8kIVR0g45HK+/TouYy84lix6TOqaWWEmzLiH71+yzS
Y9/sZXBvE4qw59QUw3XpXF8OOgEPRfWhuP9cikv8EcJAudKGDVqqk/XQN6ny
9Z60+pIE9CdtguqN1Y4Q1tiikGCGh0pX0ClvC4tbhFGmS+VY21gqsCR8ieqo
zLCS9Ip1NkI9YQeraW7VTMcugus0ZDVGpAHb1AZ6Tx5Ol5Z4Rwybe2WOagaj
EjYxLh0N7i5H09hcga4WZbVFxyW8OPd3Oo3RKudsH4uP26tpFSjNgjuK2SUE
eSnUiRbZYb9quTi2CaVWdPAFaJBCKaTch7VVPrwXkzAly5M7a0Bn1uQMxkRw
TYCaTsml0apUl9S+KDKHPQlmcKAwqS14E8GIozU2zWktCX6nKPp89ovSD3sM
J+YUPJitUDgJnOT2iBPFEnzRcIuXgxXooO58SWaiq7OGSqMlZSSpEU9r02CW
hVsGpCC0ofNQ/9ZViktcruKuZjE5d3gOJdKGHABoaU4UozfjBOZRCNd7hGvP
pWQsTAULcYJfV608ldlPKffjqc4rKiq12Wxum/jSzUfZk3ixxIpAAitsFAMP
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
WSSYYOoqliliQZKTVMnDQGUtl/liqbyiqt/LYR/77klyIrHdZ4MXJ2f+4Mi/
uDx5278a+D8OfuZcwdOX46P+68Hg5NnLs5u99OA1KHOXy+TrfDB/9kP4/MPr
H6d7o8Xz/vbh2Ytklt99fZidJf3kxdHRry+Gp7uHXv9+8DJ58/r49XV/0N87
a7/eDX+bnvZ/nCfhOJ2OWufPTsft/mrw8utn/avb592D59nVcPXsY9Yajobv
Xn30nn84Pl/ePzu8fvUi7lxlV29+WM5/2Ht7cd/9ZfvqYvfmh/tvv+VZDM6O
K+dgUkJkG2xbe83g8mxVrMnR4PLq5PnJEXQoC3Jy8iz97Qg+eHfdvz951r8+
Gbz8+OHr7m/9H59dX/96c/vh/OL16+P+h/78dPj6/uT65+O38PfxszwJ3k0S
b9J53n310+VsvPN6+ctPNzejn55lvwy7H0ad1vXr1gC6HJ+dfhjcnx2f7Jxe
Xa/Or07v391cX5x+uO2eXw1W3ulvg/vT4z789yw4fXb/8cWH/s/Prs/ePuu/
uRpc9e9fvXkN/71pv3rz8+oV/n3VX50+v70f3P/88sfklxPvtw8t2NOfT/AP
+P24/3r8Rdvj2fvz6Pbsnf1y+nx8//I1rMMl9Pfs54H3fPDu5Lcfgnf9F693
slfJh1/eXd6+7V+/GD0P8tP+7Yt++81kcP/66LTfv//xHkZ6//OzZ6/fvOwP
+7DYP0+84MUsDl5ObsJhu/XLT2etV/O3uz+/a9+PXrxZ/tw5zM8/3LbOjk/v
j671NAewW8cBdPjL65N77+coHd19uNp5cbB8vhMF56/vj7vHP384mex9mFz0
b/pvX/2WXYxG4/HR3fH0AHr45dfrXw/eXn74NZ2e5XuvvP6HQT+btX/5ejB9
uf/6/KdfT49f/nrycu/Xk1H+S+f1zpufFsv4x/Ojq3ed/O7itB0v2r8m8/b2
dPVm3P96+95bLvKPhm5LdGaI9sgJsuirIAtxD0m8tGEyvT8369iKOOBSVMhO
ezqzTAAzev6OX2t97Jic+yGHDvIdA9dvq73X3t3b6e7iczvjw3bncGQ/rpEm
NYpVT/IgMZ4amNaAPSc2ksIJZcn2/KMz/1sqGAbifyPHKGxLr/WPDAiXCplw
EuPO4Np5Rv7wnt9fgHDZ9duHvZ29XnefMJ79F6dXpQb9KV6/Pf8UlB1/z291
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
7CAWNlbVjVDe7sfrPq8DE09d/SLFp4bXd6M64NdyzZ2DdKZEce8P6+J6DNFj
2CDMXDqZgxokt3aZnli3t8Ka5mKCi4jgwFMDWs3W4vF8GJfcEW3CncY3tWcV
t+hgcefdTUAogikiWt2cUQ47ru92z5Qzrphpq/BGeNbpkDtC7zalYCRKnaEb
xj2tLCyudBDxxrl0iDSktJyvjqeWzctsL9+Yg1nSbPe3P5Tkfvs45st3nj+Y
+H6DHNN3XV9+pSVJAkkBalAbhvI46iJ2tVZUh6Vni/F+hlsKFktpW+yY7ZyJ
t84KZ71KnJUpLyV4tHCQizpUGqHX8rqKtRqfCcXOqNZirMoXGr3ubSdUqdl2
L8/tjNvPDwRdWKVcDLPGsoeGakMkLUQ3Py/N3dY5+VW13t2I9hJmWRKZfWsO
SeFrg9gO/WGwBYfw4jTb8Z0g8+4mvT2trAqsBW9WVXa+ewPqbLVrWdSL2WV7
anW+6RsCdTZdf4vRcONHlCCsfU3uF5ur4chhZ6zpRkeiCr2vz2Y6qlnAbk7N
6aQX8xkniAolE/hmQSuXvlNMYsitbHGqResq7uTZpbPyipDOaoyUq25TA/Sd
7+GNPEth0ClbUXfXVzWvs1uIVnqfl+iVWrhVnurhnAgxYjk2q/waY3YV4cju
gjHJXLv5zMpkb6d+d+fMw4mct9laIKxOz3b6Ugi6dKuv0GslqpZnlEvhTBcM
3c8XZxShDqgSdiink8U9EsvujPLzXtNOGpFx2W3J7g8yPTCnlNsxxIVb78jM
J89cWYxYlGyvyg1xtthNoegam98cDmdm1FEBm+AYgF2KsviFKO7xbpcWh+u+
ZWB61r0oUdvbOo/39+t1JiPF0dOHTqxT7T4sZyuS2a2SYMMYs/mlj/a+63fz
mlov+nOzJHSdYXbjrJgt9XI9dCOtUhXiHN3kTGTWjswdPKe3/KLr9jorpOdZ
WRmXpagyFqea9npNR5s0KucZUzyFONWuZaYo9QhZRdZaL2b8ZbmZJc3Ws9J4
7tRPkhS6h71+x0/tCrxFjhqBz6r703JNe+s+0w10nQ2HInORWa83ct/ttmfj
cK0BInZxaXRPLtU9qZtkU9GLKK326f6p80z3/jTy+ROxUPX8hMf3wjNEJKXX
bSKTw2iy6VZrg6NNssTCdrXuJAb97chdF5FGHSIf3FNVX8/BcvTooTsUc28c
s3GHnLtoffaEPYaCGhyUazf6TIrUgyL0FzYUE2y2HJ9Q2bDZZFbG6WXlnXuX
aI4xeVbDtDwgpcU9sctzA1i3Oi6scW460ipuFTZwmTE/josTnmXOconq5J1p
0y0fXtV0ZtRh4ameyjVIsaLUJ/7+1BPcbskc50HAmfRykamuTVONSFO7LAxu
/FzyrmcwbmLtzxY3Kd0RGL+0YzVH7uujv95VC6XyVd4IrdV+OzQaN0jzxXA8
rMzdjDYOmThYSh01aeU6XWO5Ge/bcwwP7FOBiEf/+KQ43ebqXc1KKGZMc/W0
MV7ql/O2XJntvo7ctJMlf75q28gWakWsHR/oWj7bnA4LpGEPnbTUUn9YHaz7
UZKJm9Mw5Mgnmje6rcTO9xtwEZUbjZeFl2kiL19vJztvD6Wdrh0fKRMpZeh7
Iy0XOXa1CD/bcc6hqO6GE8fSfpD6Dd1rrNCEtShjpSQn9TDbBCJtX1Y7jrGR
nhMXJXVv53l094CwhntbkEe1e6K7S77LvCeLPQu4Yg/yU5w/DQZeHlhajoax
mVXcrLkjaBML7UZeK3YxV8J5Rc4JuSyPITivSq42o5y14N6SS+XaOK7RaCcP
gbedK8R4bk49tkQu3AGWLHarorWr9RQj785l9VTMsTi/XvrqynC47DVquI2j
M3OMDzt04RNhqhZFHZ7PPIvszvQcvd8xkbwSq4K1llOCSpvnN4tzikVAPnWS
/nS2mGPEUUP7RMmcPIRltQuNdJMeAw7Z3ix1Ht0OUdtuifPJvtzS4rQ7Z2Pv
2t15COKUmwt5Pl46Ss68lmlX+C6VSzwm/IV6TXVkc6/l4+p4i5llVCuzTLdi
sh9VUkv2bpAoFeY8SU+WP8s8djD4qj5wO5Ot7GKtopxW1AaCH/B2H9W0Gw7h
CCvLuDEMd+PLfD1khWAen3IbNTHl1g/y6uTQGt3a+b3GOKJthiY8NsiwSU4W
g54SfJ5f8bG7q82uM1z+vJy+s10uaCcjk2hmmTKVw9qgPP9J6PXR7E/7W+cv
n5AV0PcUNZ3AUnenrLvYZ5Mc8Wq3ujZPu9zH2YRcEBq5E0bOftrHzDw4AKe5
nk90eSaUS4CM4nW9C2x2wY1MtNxnnVQEx8Y9SvrZ567GGJttnq90cnEIrmxO
yaMRyPyljbw9bjnFjkfITXXacVrbFGNyRe++dWwtFxu7KuOuuL9IZXyWLTa0
vF8IOpMuGUxSfXnolZZYdxmzHJCOxg4r4rTzNuSlsQ3tdjhws664lbM4Im4U
p2spOrs5SXGwr0fp2j58hJyvrVnAW7OIRDbRbD1Pq0RfmGUuqYpRo5y0rkuZ
5AsPWF41HhOKXc8KlQ73op5LgxKQu355Fnfz7QVdI9aKWA7DhYvCijuro3Kl
0537VGdn1z1hbEtuFbUQ98Sx3g+oy+DMlazwmzg7hXwqlTqnI5jgMnf67OzG
5ubyV3SNNlK+S3smvF+WguOLM0GxLFlw5fCpw5hRU0fslLmb+rh02/JKIcY6
t6OUbDenyrmxnnem3apikrV8RfWaZo476SpYGbPPOaCWT9WwjSFmpt5uxPkq
9Xrle4/H69/uw3mQutcj1T5srvqjO3IilqHXJ4j1jxxDHbVt2jd35c02pCkK
UhjvLrNU9rxXRlEEPG19PCUQzy0usWCPMUOWicBfIuFebiv1Fho0q5lUwvfo
oJgUqpgK/NZ6xfSDx7Xx+RryclFhjnc5p4qXHkTnuYfvdKBqtkojb7fnfGt3
zumo2Q1qkPPCnAN4h/T9WsXiLhLPbYecwl2rbKpMKWuioTGRcnBSke2n4ymb
XxT+YMhoxvWXVdGNB8fdzM/bo2zgVd0GiqZQ8x5hqUd4+CGUlHpQ5afbmY5q
S7F0NW17OXeXdBvrUe4shNOxE8QoNBFv2wzR6JXosOMNL4rGVssT/ZRotlWI
upU1VrZkOua8p9VxaiQFx9ORTja/uuT5UMRIrXCoUufY+HS29X53oLYzzYku
et8euaNhbCxd1TrXGbYk3lz2BvlDYcUXZvdHLO67++L4NI7RhI3HrF0sC/e+
xDdPG1GQNU8W1WHVFtlWXjDR7a4I39wX972p/dbMIr87tdof2xf3bx83Qk4P
5304BvHzzY0flDKFTjmMbLLN9BapYJtMA9cOOcPQdTNp5M6a1JY+lse0ONK+
pnCwJPvjcVcibzNzdC8c4aJDSxJb1F0WODbqZxgeEnYeCPawdeUycu0pd7aI
qzWGeHhaRpm0SAY5jQi1jGq9DfF5tsvkPqrW88DB2lgEZTNyHlV2Csut2Drr
q5Q3GaLk1KBkaK8O6F3htbs6Nv2Obe47Zo7tzONFYbWFAp4Bbh59V249p7+E
tX3xKntAphbgzYs+/ZjWBfz1ZXqtsNJ0wzXEydw3pIWU67gtqn3EK4OG23et
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

-->

</rfc>
