<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.3.8) -->
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc linkmailto="no"?>
<?rfc editing="no"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc rfcedstyle="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-anima-rfc8366bis-18" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.29.0 -->
  <front>
    <title abbrev="Voucher Artifact">A Voucher Artifact for Bootstrapping Protocols</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-anima-rfc8366bis-18"/>
    <author initials="K." surname="Watsen" fullname="Kent Watsen">
      <organization>Watsen Networks</organization>
      <address>
        <email>kent+ietf@watsen.net</email>
      </address>
    </author>
    <author initials="M." surname="Richardson" fullname="Michael C. Richardson">
      <organization>Sandelman Software</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
        <email>https://orcid.org/0000-0002-0773-8388</email>
        <uri>http://www.sandelman.ca/</uri>
      </address>
    </author>
    <author initials="M." surname="Pritikin" fullname="Max Pritikin">
      <organization>Cisco Systems</organization>
      <address>
        <email>pritikin@cisco.com</email>
      </address>
    </author>
    <author initials="T." surname="Eckert" fullname="Toerless Eckert">
      <organization>Futurewei Technologies Inc.</organization>
      <address>
        <postal>
          <street>2330 Central Expy</street>
          <city>Santa Clara</city>
          <code>95050</code>
          <country>United States of America</country>
        </postal>
        <email>tte@cs.fau.de</email>
      </address>
    </author>
    <author initials="Q." surname="Ma" fullname="Qiufang Ma">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>
          <city>Nanjing</city>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>maqiufang1@huawei.com</email>
      </address>
    </author>
    <date year="2025" month="November" day="25"/>
    <area>Operations</area>
    <workgroup>ANIMA Working Group</workgroup>
    <keyword>voucher</keyword>
    <abstract>
      <?line 127?>

<t>This document defines a strategy to securely assign a Pledge to an owner
using an artifact signed, directly or indirectly, by the Pledge's manufacturer.
This artifact is known as a "voucher".</t>
      <t>This document defines an artifact format as a YANG-defined JSON or CBOR document
that has been signed using a variety of cryptographic systems.</t>
      <t>The voucher artifact is normally generated by
the Pledge's manufacturer (i.e., the Manufacturer Authorized Signing
Authority (MASA)).</t>
      <t>This document updates RFC8366, includes a number of desired extensions into the YANG.
The voucher request defined in RFC8995 is also now included in this document, as well as other YANG extensions needed for variants of BRSKI/RFC8995.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-anima-rfc8366bis/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        anima Working Group mailing list (<eref target="mailto:anima@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/anima/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/anima/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/anima-wg/voucher"/>.</t>
    </note>
  </front>
  <middle>
    <?line 144?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document defines a strategy to securely assign a candidate device
(Pledge) to an owner using an artifact signed, directly or indirectly,
by the Pledge's manufacturer, i.e., the Manufacturer Authorized
Signing Authority (MASA).  This artifact is known as the "voucher".</t>
      <t>The voucher artifact is a JSON <xref target="RFC8259"/> document that
conforms with a data model described by YANG <xref target="RFC7950"/>.
It may also be serialized to CBOR <xref target="CBOR"/>.
It is encoded using the rules defined in <xref target="RFC7951"/> or <xref target="RFC9254"/>, and
is signed using (by default) a CMS structure <xref target="RFC5652"/>.</t>
      <t>The primary purpose of a voucher is to securely convey a trust anchor
that a Pledge can use to authenticate subsequent interactions.
The trust anchor may be in the form of a certificate (the "pinned-domain-cert" attribute), a hash of a certificate, or it can be a raw public key (in constrained use cases).</t>
      <t>This trust anchor represents the authority of the owner of a network.
Communicating this trust anchor securely to the Pledge is the job of the voucher artifact.
The act of communicating this trust anchor is known as pinning the trust anchor, as the Pledge can then use the resulting anchor to authenticate other actors who are part of the network.
The collection of all these actors is collectively known as the network domain.
(This is not related to the domain name system, but rather the term is of mathematical origin)</t>
      <t>A voucher may be useful in several contexts, but the driving motivation herein is to support secure onboarding mechanisms.
This is accomplished by assigning an owner to the Pledge, enabling it to authenticate the network that it is connected to.</t>
      <t><xref target="RFC8366"/> originally defined just the voucher artifact, leaving the Voucher Request artifiact that is important to BRSKI to be defined in <xref target="BRSKI"/>.
This document includes both Voucher and Voucher-Request, and therefore updates <xref target="BRSKI"/>.</t>
      <t>YANG is not easily extended except by updating the YANG definition.
Since <xref target="RFC8366"/> was written, the pattern is to publish YANG modules as two documents: one with only the YANG module, and the other one with usage, motivation and further explanation.
This allows the YANG module to be updated without replacing all of the context.
This document does not follow that pattern, but future updates may update only the YANG.</t>
      <t>This document introduces a mechanism to support future extensions without requiring the YANG module to be replaced.
This includes both a new IETF standard mechanism for extensions modeled after the mechanism present in <xref target="RFC8520"/>, as well as a facility for manufacturer private extensions.</t>
      <t>The lifetimes of vouchers may vary.
In some onboarding protocols, the vouchers may include a nonce restricting them to a single use,  whereas the vouchers in other onboarding protocols may have an
indicated lifetime.
In order to support long lifetimes, this document recommends using short lifetimes with programmatic renewal, see <xref target="renewal-over-revocation"/>.</t>
      <t>Some onboarding protocols using the voucher artifact defined in
this document include: <xref target="ZERO-TOUCH"/>, <xref target="SECUREJOIN"/>, <xref target="BRSKI"/> and <xref target="cBRSKI"/>.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>This document uses and defines the following terms.
They are used in this document and related documents.</t>
      <dl>
        <dt>(Voucher) Artifact:</dt>
        <dd>
          <t>Used throughout to represent the voucher as instantiated in the form
of a signed datastructure.</t>
        </dd>
        <dt>Bootstrapping:</dt>
        <dd>
          <t>The process where a Pledge obtains cryptographic key material to identify
 and trust future interactions within a specific domain network. Based on imprinted
 key material provided during the manufacturing process (see: Imprint).
 This term was used in <xref target="RFC8366"/>, but has been supplanted by the term Onboarding.</t>
        </dd>
        <dt>Domain:</dt>
        <dd>
          <t>The set of entities or infrastructure under common administrative
control.
The goal of the onboarding protocol is to enable a Pledge to
join a domain and obtain domain specific security credentials.
This term is not related to the similiar DNS term.</t>
        </dd>
        <dt>Imprint:</dt>
        <dd>
          <t>The process where a device obtains the cryptographic key material to
identify and trust future interactions generally as part of the manufacturing.
This term is taken from Konrad Lorenz's work in biology with new ducklings:
"during a critical period, the duckling would assume that anything
that looks like a mother duck is in fact their mother"
<xref target="Stajano99theresurrecting"/>. An equivalent for a device is to
obtain the fingerprint of the manufacturer's root certification authority (root ca)
certificate. A device that imprints on an attacker suffers a similar
fate to a duckling that imprints on a hungry wolf. Imprinting is a
term from psychology and ethology, as described in <xref target="imprinting"/>.</t>
        </dd>
        <dt>Join Registrar (and Coordinator):</dt>
        <dd>
          <t>A representative of the domain that is configured, perhaps
autonomically, to decide whether a new device is allowed to join the
domain. The administrator of the domain interfaces with a join
registrar (and Coordinator) to control this process.
Typically, a join registrar is "inside" its domain. For simplicity,
this document often refers to this as just "registrar".</t>
        </dd>
        <dt>MASA (Manufacturer Authorized Signing Authority):</dt>
        <dd>
          <t>The entity that, for the purpose of this document, issues and signs the
vouchers for a manufacturer's Pledges.
In some onboarding protocols, the MASA may have an Internet
presence and be integral to the onboarding process, whereas in
other protocols the MASA may be an offline service that has no
active role in the onboarding process.</t>
        </dd>
        <dt>Malicious Registrar:</dt>
        <dd>
          <t>An on-path active attacker that presents itself as a legitimate registrar, but which is in fact under the control of an attacker.</t>
        </dd>
        <dt>Onboarding:</dt>
        <dd>
          <t>Onboarding describes the process to provide necessary operational data to a Pledge
and to complete the process of bringing the Pledge into an operational state.
This data may include configuration data, but specifically deals with application-specific cryptographic
key material (application-specific security credentials).
Since <xref target="RFC8366"/>, this term has replaced the term Bootstrapping.</t>
        </dd>
        <dt>Owner:</dt>
        <dd>
          <t>The entity that controls the private key of the trust anchor conveyed by the voucher.
Typically, this is indicated by the "pinned-domain-cert" data item.</t>
        </dd>
        <dt>Pledge:</dt>
        <dd>
          <t>The prospective component/device attempting to find and securely join a
domain.
When shipped or in factory reset mode, it only trusts authorized representatives of the
manufacturer.</t>
        </dd>
        <dt>Registrar:</dt>
        <dd>
          <t>See Join Registrar. This term is not related to term DNS Registrar <xref target="RFC9499"/>.</t>
        </dd>
        <dt>TOFU (Trust on First Use):</dt>
        <dd>
          <t>When a Pledge makes no security decisions but rather simply
trusts the first domain entity it is contacted by.
Used similarly to <xref target="RFC7435"/>.
This is also known as the "resurrecting duckling" model.</t>
        </dd>
        <dt>Voucher:</dt>
        <dd>
          <t>A short form for Voucher Artifact.  It refers to the signed statement
from the MASA service that indicates to a Pledge
the cryptographic identity of the domain it should trust.
When clarity is needed, it may be preceeded by the type of the signature, such as CMS, JWS or COSE.</t>
        </dd>
        <dt>Voucher Data:</dt>
        <dd>
          <t>The raw (serialized) representation of the YANG without any enclosing signature.
Current formats include JSON and CBOR.</t>
        </dd>
        <dt>Voucher Request:</dt>
        <dd>
          <t>A signed artifact sent from the Pledge to the Registrar, or from the Registrar to the MASA for Voucher acquisition.</t>
        </dd>
        <dt>Pledge Voucher Request (PVR):</dt>
        <dd>
          <t>A signed artifact sent from the Pledge to the Registrar. It is a specific form of Voucher Request.</t>
        </dd>
        <dt>Registrar Voucher Request (RVR):</dt>
        <dd>
          <t>A signed artifact sent from the Registrar to the MASA. It is a specific form of Voucher Request.</t>
        </dd>
      </dl>
    </section>
    <section anchor="requirements-language">
      <name>Requirements Language</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="survey-of-voucher-types">
      <name>Survey of Voucher Types</name>
      <t>A voucher is a cryptographically protected statement to the Pledge
authorizing a zero-touch onboarding with the join registrar of the
domain. The specific information a voucher provides is influenced by the
onboarding use case.</t>
      <t>The voucher can convey the following information to
the Join Registrar and Pledge:</t>
      <dl>
        <dt>Assertion Basis:</dt>
        <dd>
          <t>Indicates the method that protects
the onboarding (this is distinct from the voucher signature that
protects the voucher itself). Methods include
manufacturer-asserted ownership verification, assured
logging operations, or reliance on Pledge behavior
such as secure or measured boot.
The join registrar uses this information to make a determination as to whether to accept the Pledge into the network.
Only some methods are normatively defined in this
document. Other methods are left for future work.</t>
        </dd>
        <dt>Authentication of Join Registrar:</dt>
        <dd>
          <t>Indicates how the Pledge
can authenticate the join registrar.  This document defines
a mechanism to pin the domain certificate, or a raw public key.
Pinning a symmetric key, or "CN-ID" (<xref target="RFC6125"/>) or "DNS-ID"
information (as defined in <xref target="RFC9125"/>) is left for future work.</t>
        </dd>
        <dt>Anti-Replay Protections:</dt>
        <dd>
          <t>Time- or nonce-based
information to constrain the voucher to time periods or bootstrapping
attempts.</t>
        </dd>
      </dl>
      <t>A number of onboarding scenarios can be met using differing
combinations of this information. All scenarios address the primary
threat of an on-path active attacker (or MiTM) impersonating the registrar.
If successful, this would gain control over the Pledge.
The following combinations are "types" of vouchers:</t>
      <table anchor="voucher-types-table">
        <name>Overview of voucher types</name>
        <thead>
          <tr>
            <th align="left">Voucher Type</th>
            <th align="right">Assertion</th>
            <th align="right"> </th>
            <th align="right">Registrar ID</th>
            <th align="right"> </th>
            <th align="right">Validity</th>
            <th align="right"> </th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left"> </td>
            <td align="right">Logged</td>
            <td align="right">Verified</td>
            <td align="right">Trust Anchor</td>
            <td align="right">CN-ID or DNS-ID</td>
            <td align="right">RTC</td>
            <td align="right">Nonce</td>
          </tr>
          <tr>
            <td align="left">Audit voucher</td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right"> </td>
            <td align="right">X</td>
          </tr>
          <tr>
            <td align="left">Nonceless Audit</td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right"> </td>
          </tr>
          <tr>
            <td align="left">Owner Audit</td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right">X</td>
          </tr>
          <tr>
            <td align="left">Owner ID</td>
            <td align="right"> </td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right">X</td>
            <td align="right"> </td>
          </tr>
          <tr>
            <td align="left">Bearer voucher</td>
            <td align="right">X</td>
            <td align="right"> </td>
            <td align="right">wildcard</td>
            <td align="right">wildcard</td>
            <td align="right">optional</td>
            <td align="right">opt</td>
          </tr>
        </tbody>
      </table>
      <t>NOTE: All voucher types include a 'Pledge ID serial-number'
      (not shown here for space reasons).</t>
      <dl>
        <dt>Audit Voucher:</dt>
        <dd>
          <t>An Audit Voucher is named after the logging assertion mechanisms
that the registrar then "audits" to enforce local policy. The
registrar mitigates a malicious registrar by auditing that an unknown
malicious registrar does not appear in the log entries.
This does not
directly prevent a malicious registrar but provides a response mechanism that
ensures the on-path-attack is unsuccessful.
An advantage is that actual ownership knowledge (i.e., sales integration providing an indication of who purchased the device) is not required on the MASA service.</t>
        </dd>
        <dt>Nonceless Audit Voucher:</dt>
        <dd>
          <t>An Audit Voucher with a validity period statement, but no guarantee of freshness. Fundamentally,
it is the same as an Audit Voucher except that it can be issued in
advance to support network partitions or to provide a permanent
voucher for remote deployments.
Being issued in advance of the Pledge being online, the Pledge can not rely on a nonce to be included for freshness.
This compromise in reducing the freshness allows for the resulting voucher can be carried across air-gapped infrastructure.
In addition, as there is no end to the validity period, the voucher can be used after the manufacturer (and its delegates) has gone out of business.</t>
        </dd>
        <dt>Ownership Audit Voucher:</dt>
        <dd>
          <t>An Audit Voucher where the MASA service has verified the registrar
as the authorized owner.
The MASA service mitigates a MiTM registrar by refusing to generate
Audit Vouchers for unauthorized registrars. The registrar uses audit
techniques to supplement the MASA. This provides an ideal sharing of
policy decisions and enforcement between the vendor and the owner.</t>
        </dd>
        <dt>Ownership ID Voucher:</dt>
        <dd>
          <t>Named after inclusion of the Pledge's CN-ID or DNS-ID within the
voucher. The MASA service mitigates a MiTM registrar by identifying
the specific Registrar (via WebPKI) authorized to own the Pledge.</t>
        </dd>
        <dt>Bearer Voucher:</dt>
        <dd>
          <t>A Bearer Voucher is named after the inclusion of a registrar ID
wildcard. Because the registrar identity is not indicated, this
voucher type must be treated as a secret and protected from exposure
as any 'bearer' of the voucher can claim the Pledge.
This variation is included in the above table in order to clearly
show how other voucher types differ.
This specification does not support bearer vouchers at this time.
There are other specifications in the industry which are equivalent though.
Publishing a nonceless bearer voucher effectively turns the
specified pledge into a "TOFU" device with minimal mitigation
against MiTM registrars. Bearer vouchers are therefore out of scope.</t>
        </dd>
      </dl>
    </section>
    <section anchor="changes-since-rfc8366">
      <name>Changes since RFC8366</name>
      <section anchor="extendfail">
        <name>Attempts and motivation to extend RFC8366</name>
        <t><xref target="RFC8366"/> was published in 2018 during the development of <xref target="BRSKI"/>,
<xref target="ZERO-TOUCH"/> and other work-in-progress efforts.
Since then the industry has matured significantly, and the in-the-field activity which this document supports has become known as <em>onboarding</em> rather than <em>bootstrapping</em>.</t>
        <t>The focus of <xref target="BRSKI"/> was onboarding of ISP and Enterprise owned wired routing and switching equipment, with IoT devices being a less important aspect.
<xref target="ZERO-TOUCH"/> has focused upon onboarding of CPE equipment like cable modems and other larger IoT devices, again with smaller IoT devices being of less import.</t>
        <t>Since <xref target="BRSKI"/> was published there is now a mature effort to do application-level onboarding of constrained IoT devices defined by the Thread Group and the Fairhair Alliance (now OCF) <xref target="fairhair"/>.
The <xref target="cBRSKI"/> document has defined a version of <xref target="BRSKI"/> that is useable over constrained IEEE 802.15.4 6LoWPAN networks using CoAP and DTLS, while <xref target="I-D.ietf-lake-authz"/> provides for using CoAP and EDHOC on even more constrained devices with very constrained networks.</t>
        <t><xref target="PRM"/> has created a new methodology for onboarding that does not depend upon a synchronous connection between the Pledge and the Registrar.
This mechanism uses a mobile Registrar Agent that works to collect and transfer signed artifacts via physical travel from one network to another.</t>
        <t>Both <xref target="cBRSKI"/> and <xref target="PRM"/> require extensions to the Voucher Request and the resulting Voucher. The new attribtes are required to carry the additional attributes and describe the extended semantics.
In addition <xref target="cBRSKI"/> uses the serialization mechanism described in <xref target="RFC9254"/> to produce significantly more compact artifacts.</t>
        <t>When the process to define <xref target="cBRSKI"/> and <xref target="PRM"/> was started, there was a belief that the appropriate process was to use the <xref target="RFC8040"/> <em>augment</em> mechanism to further extend both the voucher request <xref target="BRSKI"/> and voucher <xref target="RFC8366"/> artifacts.
However, <xref target="PRM"/> needs to extend an enumerated type with additional values and <em>augment</em> can not do this, so that was initially the impetus for this document.</t>
        <t>An attempt was then made to determine what would happen if one wanted to have a constrained version of the <xref target="PRM"/> voucher artifact.
The result was invalid YANG, with multiple definitions of the core attributes from the <xref target="RFC8366"/> voucher artifact.
After some discussion, it was determined that the <em>augment</em> mechanism did not work, nor did it work better when <xref target="RFC8040"/> yang-data was replaced with the <xref target="RFC8791"/> structure mechanisms.</t>
        <t>After significant discussion the decision was made to simply roll all of the needed extensions  into this document.</t>
      </section>
      <section anchor="informational-model-changes-since-rfc8366">
        <name>Informational Model changes since RFC8366</name>
        <t>This document therefore represents a merge of YANG definitions from <xref target="RFC8366"/>, the voucher-request from <xref target="BRSKI"/>, and extensions to each of these from <xref target="cBRSKI"/>, <xref target="CLOUD"/> and <xref target="PRM"/>.
The difficulty with this approach is that the semantics of the definitions needed for the other documents is not included in this document, but rather in the respective other documents.</t>
      </section>
    </section>
    <section anchor="signature-mechanisms">
      <name>Signature mechanisms</name>
      <t>Three signature systems have been defined for vouchers and voucher-requests.</t>
      <t><xref target="cBRSKI"/> defines a mechanism that uses COSE <xref target="RFC9052"/>, with the voucher data encoded using <xref target="RFC9254"/>.
However, as the SID process requires up-to-date YANG, the SID values for this mechanism are presented in this document.</t>
      <t><xref target="jBRSKI"/> defines a mechanism that uses JSON <xref target="RFC8259"/> and <xref target="JWS"/>.</t>
      <t>The CMS signing mechanism first defined in <xref target="RFC8366"/> continues to be defined here.</t>
      <section anchor="cms-voucher">
        <name>CMS Format Voucher Artifact</name>
        <t>The IETF evolution of PKCS#7 is CMS <xref target="RFC5652"/>.
A CMS-signed voucher, the default type, contains a ContentInfo
structure with the voucher content.
An OID for JSON-encoded voucher is allocated in <xref target="iana-contenttype"/>, and
it is to be placed in the eContentType field in the ContentInfo.</t>
        <t>The signing structure is a CMS SignedData structure, as specified by
Section 5.1 of <xref target="RFC5652"/>, encoded using ASN.1 Distinguished Encoding
Rules (DER), as specified in ITU-T X.690 <xref target="ITU-T.X690.2015"/>.</t>
        <t><xref target="RFC5652"/> mandates that SignedAttributes <bcp14>MUST</bcp14> be present when the content type is not id-data.
This mitigates attacks on CMS as described in <xref target="I-D.vangeest-lamps-cms-euf-cma-signeddata"/>.
Decoders <bcp14>MUST</bcp14> verify that SignedAttributes are present.</t>
        <t>To facilitate interoperability, <xref target="vcj"/> the media type "application/voucher-cms+json" and the filename extension ".vcj" were registered by <xref target="RFC8366"/>.</t>
        <t>The CMS structure <bcp14>MUST</bcp14> contain a 'signerInfo' structure, as
described in Section 5.1 of <xref target="RFC5652"/>, containing the
signature generated over the content using a private key
trusted by the recipient.
Normally, the recipient is the Pledge and the signer is the MASA.
In the Voucher Request, the signer is the Pledge, or the Registrar.</t>
        <t>Note that Section 5.1 of <xref target="RFC5652"/> includes a
discussion about how to validate a CMS object, which is really a
PKCS7 object (cmsVersion=1).  Intermediate systems (such the
Bootstrapping Remote Secure Key Infrastructures <xref target="BRSKI"/> registrar)
that might need to evaluate the voucher in flight <bcp14>MUST</bcp14> be prepared for
such an older format.
No signaling of the format version is necessary, as the manufacturer knows the capabilities
of the Pledge and will use an appropriate format voucher for each
Pledge.</t>
        <t>The CMS structure <bcp14>SHOULD</bcp14> also contain all of the certificates
leading up to and including the signer's trust anchor certificate
known to the recipient.  The inclusion of the trust anchor is
unusual in many applications, but third parties cannot accurately
audit the transaction without it.</t>
        <t>The CMS structure <bcp14>MAY</bcp14> also contain revocation objects for any
intermediate certificate authorities (CAs) between the
voucher issuer and the trust anchor known to the recipient.
However, the use of CRLs and other validity mechanisms is
discouraged, as the Pledge is unlikely to be able to perform
online checks and is unlikely to have a trusted clock source.
As described below, the use of short-lived vouchers and/or a
Pledge-provided nonce provides a freshness guarantee.</t>
      </section>
    </section>
    <section anchor="voucher">
      <name>Voucher Artifact</name>
      <t>The voucher's primary purpose is to securely assign a Pledge to an
owner.
The voucher informs the Pledge which entity it should consider to be
its owner.</t>
      <t>This document defines a voucher that is JSON-encoded, and CMS signed encoding of the
data defined in the YANG module <xref target="voucher-yang-module"/>.
Also, this document defines voucher data that is CBOR-encoded based on the same YANG model.
The CBOR-encoded (signed) voucher based on this CBOR voucher data is defined in <xref target="cBRSKI"/>.</t>
      <t>The voucher data format is described here as a practical basis for some uses (such
as in NETCONF), but more to clearly indicate what vouchers look like
in practice.
This description also serves to validate the YANG data model.</t>
      <t><xref target="RFC8366"/> defined a media type and a filename extension for the
CMS-encoded JSON type.
The media type for JOSE format vouchers is defined in <xref target="jBRSKI"/> and the media type for COSE format vouchers is defined in <xref target="cBRSKI"/>.
Both include respective filename extensions.</t>
      <t>The Media Type is used by the Pledge (requesting to the Registrar) and by the Registrar (requesting to the MASA) to signal what voucher format is expected.
Other aspects of the voucher, such as it being nonce-less or which kind of pinned anchor is used, is not part of the Media Type.</t>
      <t>Only the format of voucher that is expected is signaled in the form of a (MIME) Media
Content-Type in the HTTP Accept: header.</t>
      <t>For vouchers stored/transferred via methods like a USB storage device (USB key), the voucher format is usually signaled by a filename extension.</t>
      <section anchor="voucher-tree-diagram">
        <name>Tree Diagram</name>
        <t>The following tree diagram illustrates a high-level view of a voucher
document.
The notation used in this diagram is described in <xref target="RFC8340"/>.
Each node in the diagram is fully described by the YANG module in
<xref target="voucher-yang-module"/>.
Please review the YANG module for a detailed description of the
voucher format.</t>
        <artwork><![CDATA[
module: ietf-voucher

  structure voucher:
    +-- voucher
       +-- created-on?                      yang:date-and-time
       +-- extensions*                      union
       +-- manufacturer-private?            binary
       +-- assertion?                       enumeration
       +-- serial-number                    string
       +-- idevid-issuer?                   binary
       +-- 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 encoding rules
defined in <xref target="RFC8259"/>.</t>
        <t>The following example illustrates an ephemeral voucher (uses a nonce).
The MASA generated this voucher using the 'logged' assertion type, knowing
that it would be suitable for the Pledge making the request.</t>
        <artwork><![CDATA[
{
  "ietf-voucher:voucher": {
    "created-on": "2016-10-07T19:31:42Z",
    "assertion": "logged",
    "serial-number": "JADA123456789",
    "idevid-issuer": "base64encodedvalue==",
    "pinned-domain-cert": "base64encodedvalue==",
    "nonce": "base64encodedvalue=="
  }
}
]]></artwork>
        <t>The following example illustrates a non-ephemeral voucher (no nonce).
While the voucher itself expires after two weeks, it presumably can
be renewed for up to a year.   The MASA generated this voucher
using the 'verified' assertion type, which should satisfy all Pledges.</t>
        <artwork><![CDATA[
{
  "ietf-voucher:voucher": {
    "created-on": "2016-10-07T19:31:42Z",
    "expires-on": "2016-10-21T19:31:42Z",
    "assertion": "verified",
    "serial-number": "JADA123456789",
    "idevid-issuer": "base64encodedvalue==",
    "pinned-domain-cert": "base64encodedvalue==",
    "domain-cert-revocation-checks": true,
    "last-renewal-date": "2017-10-07T19:31:42Z"
  }
}
]]></artwork>
        <t><xref section="8" sectionFormat="comma" target="jBRSKI"/> contains examples of vouchers encoded in JSON, and signed with <xref target="JWS"/>.
<xref section="9" sectionFormat="comma" target="cBRSKI"/> contains examples of vouchers encoded in CBOR, and signed with <xref target="COSE"/>.</t>
      </section>
      <section anchor="voucher-yang-module">
        <name>YANG Module</name>
        <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 was introduced has been commented out in the YANG, allowing the SID values to be generated.
As a result, the SID values presented here, in sections <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.
The presented sid file is believed to be correct, but reprocessing of it could result in changes as the tooling is fixed.</t>
        <sourcecode type="yang" markers="true"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

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

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

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

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

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

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

     RFCEDITOR: please replace XXXX with the RFC number assigned.

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

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

  grouping voucher-artifact-grouping {
    description
      "Grouping to allow reuse/extensions in future work.";
    container voucher {
      description
        "A voucher assigns a pledge to an owner using
         one of the (pinned-domain-*) value.";
      leaf created-on {
        type yang:date-and-time;
        description
          "A value indicating the date this voucher was created.
           This node is primarily for human consumption and auditing.
           Future work MAY create verification requirements based on
           this node.";
      }
      leaf-list extensions {
        type union {
          type uint64; // when serialized to CBOR with SID
          type string; // when serialized to CBOR or JSON
        }
        description
          "A list of extension names that are used in this Voucher
           file.  Each name is registered with the IANA.  Standard
           extensions are described in an RFC, while vendor \
                                                          proprietary
           ones are not.";
      }
      leaf manufacturer-private {
        type binary;
        description
          "In CBOR serialization, this is a CBOR bstr containing \
                                                  any valid CBOR that
           the manufacturer wishes to share with it's Pledge.  In \
                                                 JSON serializations,
           this contains additional JSON instead, and it is \
                                                 base64URL encoded.";
      }
      leaf assertion {
        type enumeration {
          enum verified {
            value 0;
            description
              "Indicates that the ownership has been positively
               verified by the MASA (e.g., through sales channel
               integration).";
          }
          enum logged {
            value 1;
            description
              "Indicates that the voucher has been issued after
               minimal verification of ownership or control.  The
               issuance has been logged for detection of
               potential security issues (e.g., recipients of
               vouchers might verify for themselves that unexpected
               vouchers are not in the log).  This is similar to
               unsecured trust-on-first-use principles but with the
               logging providing a basis for detecting unexpected
               events.";
          }
          enum proximity {
            value 2;
            description
              "Indicates that the voucher has been issued after
               the MASA verified a proximity proof provided by the
               device and target domain.  The issuance has been
               logged for detection of potential security issues.";
          }
          enum agent-proximity {
            value 3;
            description
              "Mostly identical to proximity, but
               indicates that the voucher has been issued
               after the MASA has verified a statement that
               a registrar agent has made contact with the device.";
          }
        }
        description
          "The assertion is a statement from the MASA regarding how
           the owner was verified.  This statement enables pledges
           to support more detailed policy checks.  Pledges MUST
           ensure that the assertion provided is acceptable, per
           local policy, before processing the voucher.";
      }
      leaf serial-number {
        type string;
        mandatory true;
        description
          "The serial-number of the hardware.  When processing a
           voucher, a pledge MUST ensure that its serial-number
           matches this value.  If no match occurs, then the
           pledge MUST NOT process this voucher.";
      }
      leaf idevid-issuer {
        type binary;
        description
          "The Authority Key Identifier OCTET STRING (as defined in
           Section 4.2.1.1 of RFC 5280) from the pledge's IDevID
           certificate.  Optional since some serial-numbers are
           already unique within the scope of a MASA.
           Inclusion of the statistically unique key identifier
           ensures statistically unique identification of the
           hardware.
           When processing a voucher, a pledge MUST ensure that its
           IDevID Authority Key Identifier matches this value.  If no
           match occurs, then the pledge MUST NOT process this
           voucher.
           When issuing a voucher, the MASA MUST ensure that this
           field is populated for serial-numbers that are not
           otherwise unique within the scope of the MASA.";
      }
      // choice pinning {
      //  description "One of these attributes is used by the
      //               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 X.690.

           This certificate is used by a pledge to trust a Public Key
           Infrastructure in order to verify a domain certificate
           supplied to the pledge separately by the bootstrapping
           protocol.  The domain certificate MUST have this
           certificate somewhere in its chain of certificates.
           This certificate MAY be an end-entity certificate,
           including a self-signed entity.";
        reference
          "RFC 5280:
             Internet X.509 Public Key Infrastructure Certificate
             and Certificate Revocation List (CRL) Profile.
           ITU-T X.690:
              Information technology - ASN.1 encoding rules:
              Specification of Basic Encoding Rules (BER),
              Canonical Encoding Rules (CER) and Distinguished
              Encoding Rules (DER).";
      }
      leaf pinned-domain-pubk {
        type binary;
        description
          "The pinned-domain-pubk may replace the
           pinned-domain-cert in constrained uses of
           the voucher. The pinned-domain-pubk
           is the Raw Public Key of the Registrar.
           This field is encoded as a Subject Public Key Info block
           as specified in RFC7250, in section 3.
           The ECDSA algorithm MUST be supported.
           The EdDSA algorithm as specified in
           draft-ietf-tls-rfc4492bis-17 SHOULD be supported.
           Support for the DSA algorithm is not recommended.
           Support for the RSA algorithm is a MAY.";
      }
      leaf pinned-domain-pubk-sha256 {
        type binary;
        description
          "The pinned-domain-pubk-sha256 is a second
           alternative to pinned-domain-cert.  In many cases the
           public key of the domain has already been transmitted
           during the key agreement process, and it is wasteful
           to transmit the public key another two times.
           The use of a hash of public key info, at 32-bytes for
           sha256 is a significant savings compared to an RSA
           public key, but is only a minor savings compared to
           a 256-bit ECDSA public-key.
           Algorithm agility is provided by extensions to this
           specification which can define a new leaf for another
           hash type.";
      }
      // }  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;
        // this does not work, the XPath does not evaluate
        // must '../nonceless/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-grouping;
  }
}
]]></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.</t>
        <artwork><![CDATA[
      SID Assigned to
--------- -------------------------------------------------- 
     2451 data .../voucher
     2452 data .../assertion
     2453 data .../created-on
     2454 data .../domain-cert-revocation-checks
     2455 data .../expires-on
     2456 data .../idevid-issuer
     2457 data .../last-renewal-date
     2458 data .../nonce
     2459 data .../pinned-domain-cert
     2460 data .../pinned-domain-pubk
     2461 data .../pinned-domain-pubk-sha256
     2462 data .../serial-number
     2463 data .../additional-configuration-url
     2464 data .../est-domain
     2465 data .../manufacturer-private
     2466 data .../nonce
     2467 data .../ietf-voucher:voucher
     2468 data .../extensions
]]></artwork>
        <t>The "assertion" attribute is an enumerated type in <xref target="RFC8366"/>, but no values were provided as part of the enumeration.
This document provides enumerated values as part of the YANG module.</t>
        <t>In the JSON serialization, the literal strings from the enumerated types are used so there is no ambiguity.</t>
        <t>In the CBOR serialization, a small integer is used, and the enumeration values are repeated here for convenience.
However, the YANG module should be considered authoritative.
No IANA registry is provided or necessary because the YANG module (and this document) would be extended when there are new entries required.</t>
        <table anchor="assertion-enums">
          <name>CBOR integers for the "assertion" attribute enum</name>
          <thead>
            <tr>
              <th align="left">Integer</th>
              <th align="left">Assertion Type</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0</td>
              <td align="left">verified</td>
            </tr>
            <tr>
              <td align="left">1</td>
              <td align="left">logged</td>
            </tr>
            <tr>
              <td align="left">2</td>
              <td align="left">proximity</td>
            </tr>
            <tr>
              <td align="left">3</td>
              <td align="left">agent-proximity</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="voucher-ext">
        <name>Voucher Extensions</name>
        <t>An unstated assumption in <xref target="RFC8366"/> was that vouchers could be extended in proprietary ways by manufacturers.
This allows for manufacturers to communicate new things from the MASA to the Pledge, and since both are under control of the same entity, it seemed perfectly fine, even though it would violate the strict definition of the YANG model.</t>
        <t>The JSON serialization of vouchers implicitely accomodates the above, since the voucher is just a map (or dictionary).
Map keys are just strings, and creating unique strings is easy to do by including the manufacturer's domain name.</t>
        <t>In CBOR serialization <xref target="RFC9254"/>, the situation is not so easy.
The delta encoding for keys requires new keys to use the absolute Tag(47) for new entities.
An extension might need to use the Private Use SID values, or acquire SID values for their own use.</t>
        <t>Where the process has become complex is when making standard extensions, as has happened recently, resulting in this document.
The processes which were anticipated to be useful, (the "augment" mechanism) turned out not to be, see <xref target="extendfail"/>.</t>
        <t>Instead, a process similiar to what was done by <xref target="RFC8520"/> has been adopted.
In this, extensions are listed in a leaf named "extensions".
In JSON serialization, these extensions require a unique name, and this <bcp14>MUST</bcp14> be allocated by IANA.
The name <bcp14>MUST</bcp14> be the same as the YANG extension module name.
The "extensions" list attribute definied in this model allows for new standard extensions to be defined.
Items within that list are strings (in JSON serialization), or integers (in CBOR serialization), as defined by the Voucher Extension Registry.</t>
        <t>Extensions are full YANG modules, which are subject to the SID allocation process described in <xref target="RFC9254"/>.
When an extension is serialized,  the extension is placed in a sub-map in the value section.
In JSON serialization, the key is the name of the extension, prefixed by the string "extension:".
In CBOR serialization, the key is the SID which is allocated as the module SID.
This will typically require the absolute Tag(47) to be applied to this key.</t>
        <t>Note that this differs from the mechanism described in <xref target="RFC8520"/> in that a sub-map is not used.
Instead keys are created by combining the module name and the attribute as a string.
The <xref target="RFC8520"/> mechanism uses more bytes, but is also not easily translateable to CBOR.</t>
        <t>As the Voucher Request artifact is created by YANG augment of the voucher artifact, any extension defined for the voucher is also valid for a Voucher Request.</t>
      </section>
      <section anchor="manufacturer-private-extensions">
        <name>Manufacturer Private extensions</name>
        <t>A manufacturer might need to communicate content in the voucher (or in the voucher request), which are never subject to standardization.
While they can use the voucher extensions mechanism defined in <xref target="voucher-ext"/>, it does require allocation of a SID in order to do minimal-sized encoding.
Note that <xref target="RFC9254"/> does not strictly require use of SIDs: instead of a SID value, the full string name can always
be used. But this would significantly increase the size of the voucher data.</t>
        <t>Instead, a manufacturer <bcp14>MAY</bcp14> use the manufacturer-private leaf to put any content they wish.
In CBOR serialization, if a plain CBOR map would be used, it would be subject to delta encoding: so use of this leaf requires that the contents are bstr-encoded <xref section="3.1" sectionFormat="comma" target="RFC8949"/> (Major type 2).
In JSON serialization, delta-encoding does not get in the way, and the manufacturer <bcp14>MAY</bcp14> use any encoding that is convenient for them, but base64URL encoding <xref section="5" sectionFormat="comma" target="RFC4648"/> is <bcp14>RECOMMENDED</bcp14>.</t>
      </section>
    </section>
    <section anchor="voucher-request">
      <name>Voucher Request Artifact</name>
      <t><xref section="3" sectionFormat="comma" target="BRSKI"/> defined a Voucher-Request Artifact as an augmented artifact from the Voucher Artifact originally defined in <xref target="RFC8366"/>.
That definition has been moved to this document, and translated from YANG-DATA <xref target="RFC8040"/> to the SX:STRUCTURE extension <xref target="RFC8791"/>.</t>
      <section anchor="voucher-request-tree-diagram">
        <name>Tree Diagram</name>
        <t>The following tree diagram illustrates a high-level view of a voucher
request document.
The notation used in this diagram is described in <xref target="RFC8340"/>.
Each node in the diagram is fully described by the YANG module in
<xref target="voucher-request-yang-module"/>.</t>
        <artwork><![CDATA[
module: ietf-voucher-request

  structure voucher:
    +-- voucher
       +-- created-on?
       |       yang:date-and-time
       +-- extensions*                                union
       +-- manufacturer-private?                      binary
       +-- assertion?                                 enumeration
       +-- serial-number                              string
       +-- idevid-issuer?                             binary
       +-- 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 ietf-voucher-request YANG module is derived from the ietf-voucher module.</t>
        <sourcecode type="yang" markers="true"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

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

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

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

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

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

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

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

     RFCEDITOR: please replace XXXX with the RFC number assigned.

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

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

  grouping voucher-request-grouping {
    description
      "Grouping to allow reuse/extensions in future work.";
    uses vch:voucher-artifact-grouping {
      refine "voucher/last-renewal-date" {
        description
          "A last-renewal-date field
           is not valid in a voucher request, and
           any occurrence MUST be ignored";
      }
      refine "voucher/domain-cert-revocation-checks" {
        description
          "The domain-cert-revocation-checks field
           is not valid in a voucher request, and
           any occurrence MUST be ignored";
      }
      refine "voucher/assertion" {
        description
          "Any assertion included in registrar voucher
           requests SHOULD be ignored by the MASA.";
      }
      augment "voucher" {
        description
          "Adds leaf nodes appropriate for requesting vouchers.";
        leaf prior-signed-voucher-request {
          type binary;
          description
            "If it is necessary to change a voucher, or re-sign and
             forward a voucher 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.";
        }
        // choice registrar-identity {
        //  description "One of these attributes will be used by a
        //               Pledge to specify the proximity to, and the
        //               identity of, a Registrar it is \
                                                communicating with.";
        leaf proximity-registrar-cert {
          type binary;
          description
            "An X.509 v3 certificate structure as specified by
             RFC 5280, Section 4 encoded using the ASN.1
             distinguished encoding rules (DER), as specified
             in [ITU.X690.1994].

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

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

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

  // Top-level statement
  sx:structure voucher {
    uses voucher-request-grouping;
  }
}
]]></sourcecode>
      </section>
      <section anchor="voucher-request-sid-values">
        <name>ietf-voucher-request SID values</name>
        <t><xref target="RFC9254"/> explains how to serialize YANG into CBOR, and for this a series of SID values are required.
While <xref target="CORESID"/> defines the management process for these values, due to the immaturity  of the tooling around this YANG-SID mechanisms, the following values are considered normative.</t>
        <artwork><![CDATA[
      SID Assigned to
--------- -------------------------------------------------- 
     2501 data .../voucher
     2502 data .../assertion
     2503 data .../created-on
     2504 data .../domain-cert-revocation-checks
     2505 data .../expires-on
     2506 data .../idevid-issuer
     2507 data .../last-renewal-date
     2508 data .../nonce
     2509 data .../pinned-domain-cert
     2510 data .../prior-signed-voucher-request
     2511 data .../proximity-registrar-cert
     2512 data .../proximity-registrar-pubk-sha256
     2513 data .../proximity-registrar-pubk
     2514 data .../serial-number
     2515 data .../agent-provided-proximity-registrar-cert
     2516 data .../agent-sign-cert
     2517 data .../agent-signed-data
     2518 data .../pinned-domain-pubk
     2519 data .../pinned-domain-pubk-sha256
     2520 data .../additional-configuration-url
     2521 data .../est-domain
     2522 data .../extensions
     2523 data .../manufacturer-private
     2524 data .../ietf-voucher-request:voucher
]]></artwork>
        <t>The "assertion" attribute is an enumerated type, and has values as defined in <xref target="assertion-enums"/>.</t>
      </section>
    </section>
    <section anchor="design-con">
      <name>Design Considerations</name>
      <section anchor="renewal-over-revocation">
        <name>Renewals Instead of Revocations</name>
        <t>The lifetimes of vouchers may vary.  In some onboarding protocols,
the vouchers may be created and consumed immediately, whereas in other
onboarding solutions, there may be a significant time delay between
when a voucher is created and when it is consumed.
In cases when there is a time delay, there is a need for the Pledge
to ensure that the assertions made when the voucher was created are
still valid.</t>
        <t>A revocation artifact is generally used to verify the continued validity
of an assertion such as a PKIX certificate, web token, or a "voucher".  With
this approach, a potentially long-lived assertion is paired with a reasonably
fresh revocation status check to ensure that the assertion is still valid.
However, this approach increases solution complexity, as it introduces the
need for additional protocols and code paths to distribute and process the
revocations.</t>
        <t>Addressing the shortcomings of revocations, this document recommends
instead the use of lightweight renewals of short-lived non-revocable
vouchers.  That is, rather than issue a long-lived voucher, where the
'expires-on' leaf is set to some distant date, the expectation
is for the MASA to instead issue a short-lived voucher, where the
'expires-on' leaf is set to a relatively near date, along with a promise
(reflected in the 'last-renewal-date' field) to reissue the voucher again
when needed.  Importantly, while issuing the initial voucher may incur
heavyweight verification checks ("Are you who you say you are?" "Does the
Pledge actually belong to you?"), reissuing the voucher should be a
lightweight process, as it ostensibly only updates the voucher's
validity period.
With this approach, there is
only the one artifact, and only one code path is needed to process
it; there is no possibility of a Pledge choosing to skip the
revocation status check because, for instance, the OCSP Responder is
not reachable.</t>
        <t>While this document recommends issuing short-lived vouchers, the
voucher artifact does not restrict the ability to create long-lived
voucher, if required; however, no revocation method is described.</t>
        <t>Note that a voucher may be signed by a chain of intermediate CAs
leading up to the trust anchor CA known by the Pledge.  Even
though the voucher itself is not revocable, it is still revoked,
per se, if one of the intermediate CA certificates is revoked.</t>
      </section>
      <section anchor="voucher-per-pledge">
        <name>Voucher Per Pledge</name>
        <t>The solution described herein originally enabled a single voucher to
apply to many Pledges, using lists of regular expressions to represent
ranges of serial-numbers.  However, it was determined that blocking the
renewal of a voucher that applied to many devices would be excessive
when only the ownership for a single Pledge needed to be blocked.
Thus, the voucher format now only supports a single serial-number
to be listed.</t>
      </section>
    </section>
    <section anchor="sec-con">
      <name>Security Considerations</name>
      <section anchor="clock-sensitivity">
        <name>Clock Sensitivity</name>
        <t>An attacker could use an expired voucher to gain control over
a device that has no understanding of time.  The device cannot
trust NTP as a time reference, as an attacker could control
the NTP stream.</t>
        <t>There are three things to defend against this: 1) devices are
required to verify that the expires-on field has not yet passed,
2) devices without access to time can use nonces to
get ephemeral vouchers, and 3) vouchers without expiration times
may be used, which will appear in the audit log, informing the
security decision.</t>
        <t>This document defines a voucher format that contains time values
for expirations, which require an accurate clock
in order to be processed correctly.  Vendors planning on
issuing vouchers with expiration values must ensure that devices
have an accurate clock when shipped from manufacturing
facilities and take steps to prevent clock tampering.
If it is not possible to ensure clock accuracy, then
vouchers with time values for expirations should not be issued.</t>
      </section>
      <section anchor="protect-voucher-pki-in-hsm">
        <name>Protect Voucher PKI in HSM</name>
        <t>Pursuant the recommendation made in Section 6.1 for the MASA to be
deployed as an online voucher signing service, it is <bcp14>RECOMMENDED</bcp14> that
the MASA's private key used for signing vouchers is protected by
a hardware security module (HSM).</t>
      </section>
      <section anchor="test-domain-certificate-validity-when-signing">
        <name>Test Domain Certificate Validity When Signing</name>
        <t>If a domain certificate is compromised, then any outstanding
vouchers for that domain could be used by the attacker.  In this case, the domain
administrator is clearly expected to initiate revocation of any
domain identity certificates (as is normal in PKI solutions).</t>
        <t>Similarly, they are expected to contact the MASA to indicate that
an outstanding (presumably short lifetime) voucher should be blocked from
automated renewal.
Protocols for voucher distribution are
<bcp14>RECOMMENDED</bcp14> to check for revocation of domain identity certificates
before the signing of vouchers.</t>
      </section>
      <section anchor="yang-module-security-considerations">
        <name>YANG Module Security Considerations</name>
        <t>The YANG modules specified in this document define the schema
for data that is subsequently encapsulated by secure signed-data structure,
such as the CMS signed-data described in <xref target="cms-voucher"/>.  As such,
all of the YANG modeled data is protected from modification.</t>
        <t>Implementations should be aware that the signed data is only
protected from external modification; the data is still visible.
This potential disclosure of information doesn't affect security
so much as privacy.  In particular, adversaries can glean
information such as which devices belong to which organizations
and which CRL Distribution Point and/or OCSP Responder URLs are
accessed to validate the vouchers.  When privacy is important,
the CMS signed-data content type <bcp14>SHOULD</bcp14> be encrypted, either by
conveying it via a mutually authenticated secure transport protocol
(e.g., TLS <xref target="RFC5246"/>) or by encapsulating the signed-data
content type with an enveloped-data content type (Section 6
of <xref target="RFC5652"/>), though details for how to do this are outside
the scope of this document.</t>
        <t>The use of YANG to define data structures, via the 'yang-data'
statement, is relatively new and distinct from the traditional use of
YANG to define an API accessed by network management protocols such as
NETCONF <xref target="RFC6241"/> and RESTCONF <xref target="RFC8040"/>. For this reason, these
guidelines do not follow template described by Section 3.7 of
<xref target="YANG-GUIDE"/>.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="the-ietf-xml-registry">
        <name>The IETF XML Registry</name>
        <t>This document registers two URIs in the "IETF XML Registry" <xref target="RFC3688"/>.</t>
        <t>IANA has registered the following:</t>
        <ul empty="true">
          <li>
            <dl spacing="compact">
              <dt>URI:</dt>
              <dd>
                <t>urn:ietf:params:xml:ns:yang:ietf-voucher</t>
              </dd>
              <dt>Registrant Contact:</dt>
              <dd>
                <t>The ANIMA WG of the IETF.</t>
              </dd>
              <dt>XML:</dt>
              <dd>
                <t>N/A, the requested URI is an XML namespace.</t>
              </dd>
            </dl>
          </li>
        </ul>
        <t>This reference should be updated to point to this document.</t>
      </section>
      <section anchor="the-yang-module-names-registry">
        <name>The YANG Module Names Registry</name>
        <t>This document registers two YANG module in the "YANG Module Names"
registry <xref target="RFC6020"/>.</t>
        <t>IANA has registred the following:</t>
        <ul empty="true">
          <li>
            <dl spacing="compact">
              <dt>name:</dt>
              <dd>
                <t>ietf-voucher</t>
              </dd>
              <dt>namespace:</dt>
              <dd>
                <t>urn:ietf:params:xml:ns:yang:ietf-voucher</t>
              </dd>
              <dt>prefix:</dt>
              <dd>
                <t>vch</t>
              </dd>
              <dt>reference:</dt>
              <dd>
                <t>RFC 8366</t>
              </dd>
            </dl>
          </li>
        </ul>
        <t>This reference should be updated to point to this document.</t>
      </section>
      <section anchor="vcj">
        <name>The Media Types Registry</name>
        <t>IANA has registered the media type: application/voucher-cms+json, and this registration should be updated to point to this document.</t>
      </section>
      <section anchor="iana-contenttype">
        <name>The SMI Security for S/MIME CMS Content Type Registry</name>
        <t>IANA has registered the OID 1.2.840.113549.1.9.16.1.40, id-ct-animaJSONVoucher.
This registration should be updated to point to this document.</t>
      </section>
      <section anchor="extensions-registry">
        <name>Extensions Registry</name>
        <t>IANA is asked to create a registry of extensions as follows:</t>
        <artwork><![CDATA[
  Registry name: Voucher Extensions Registry
  Registry policy: First Come First Served
  Reference: an optional document
  Extension name: UTF-8-encoded string, not to exceed 40 characters.
  Extension SID: the module SID value as allocated
]]></artwork>
        <t>Each extension <bcp14>MUST</bcp14> follow the rules specified in this specification.
As is usual, the IANA issues early allocations in accordance with <xref target="RFC7120"/>.</t>
        <t>Note that the SID module value is allocated as part of a <xref target="CORESID"/> process.
This may be from a SID range managed by IANA, or from any other MegaRange.
Future work may allow for PEN based allocations.
IANA does not need to separately allocate a SID value for this column.</t>
        <t>Extension name strings for standards track documents are single words, given by the YANG Module Name.
They do not contain dots.
For vendor proprietary extensions, the string <bcp14>SHOULD</bcp14> be made unique by putting the extension name in the form a fully-qualified domain name (FQDN) <xref target="RFC3696"/>, such as "fuubar.example.com"</t>
        <t>Vendor proprietary extensions do not need to be registered with IANA, but vendors <bcp14>MAY</bcp14> do so.</t>
        <t>Designated Experts should review for standards track documents for clarity, but the process is essentially tied to WG and IESG process:
There are no choices in the extension names (which is always the YANG module name), or SID value (which is from another IANA process).
For non-standards track extensions, the Designated Expert should review whatever document is provided, if any.  The stability of the reference may be of concern.  The Designated Expert should determine if the work overlaps with existing efforts; and if so suggest merging.
However, as registration is optional, the Designated Expert should not block any registrations.</t>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC5652">
          <front>
            <title>Cryptographic Message Syntax (CMS)</title>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="September" year="2009"/>
            <abstract>
              <t>This document describes the Cryptographic Message Syntax (CMS). This syntax is used to digitally sign, digest, authenticate, or encrypt arbitrary message content. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="70"/>
          <seriesInfo name="RFC" value="5652"/>
          <seriesInfo name="DOI" value="10.17487/RFC5652"/>
        </reference>
        <reference anchor="RFC6020">
          <front>
            <title>YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="October" year="2010"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF), NETCONF remote procedure calls, and NETCONF notifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6020"/>
          <seriesInfo name="DOI" value="10.17487/RFC6020"/>
        </reference>
        <reference anchor="RFC7950">
          <front>
            <title>The YANG 1.1 Data Modeling Language</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols. This document describes the syntax and semantics of version 1.1 of the YANG language. YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification. There are a small number of backward incompatibilities from YANG version 1. This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7950"/>
          <seriesInfo name="DOI" value="10.17487/RFC7950"/>
        </reference>
        <reference anchor="RFC8259">
          <front>
            <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
            <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
            <date month="December" year="2017"/>
            <abstract>
              <t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format. It was derived from the ECMAScript Programming Language Standard. JSON defines a small set of formatting rules for the portable representation of structured data.</t>
              <t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="90"/>
          <seriesInfo name="RFC" value="8259"/>
          <seriesInfo name="DOI" value="10.17487/RFC8259"/>
        </reference>
        <reference anchor="RFC9148">
          <front>
            <title>EST-coaps: Enrollment over Secure Transport with the Secure Constrained Application Protocol</title>
            <author fullname="P. van der Stok" initials="P." surname="van der Stok"/>
            <author fullname="P. Kampanakis" initials="P." surname="Kampanakis"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="S. Raza" initials="S." surname="Raza"/>
            <date month="April" year="2022"/>
            <abstract>
              <t>Enrollment over Secure Transport (EST) is used as a certificate provisioning protocol over HTTPS. Low-resource devices often use the lightweight Constrained Application Protocol (CoAP) for message exchanges. This document defines how to transport EST payloads over secure CoAP (EST-coaps), which allows constrained devices to use existing EST functionality for provisioning certificates.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9148"/>
          <seriesInfo name="DOI" value="10.17487/RFC9148"/>
        </reference>
        <reference anchor="RFC9254" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9254.xml">
          <front>
            <title>Encoding of Data Modeled with YANG in the Concise Binary Object Representation (CBOR)</title>
            <author fullname="M. Veillette" initials="M." role="editor" surname="Veillette"/>
            <author fullname="I. Petrov" initials="I." role="editor" surname="Petrov"/>
            <author fullname="A. Pelov" initials="A." surname="Pelov"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>YANG (RFC 7950) is a data modeling language used to model configuration data, state data, parameters and results of Remote Procedure Call (RPC) operations or actions, and notifications.</t>
              <t>This document defines encoding rules for YANG in the Concise Binary Object Representation (CBOR) (RFC 8949).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9254"/>
          <seriesInfo name="DOI" value="10.17487/RFC9254"/>
        </reference>
        <referencegroup anchor="CBOR" target="https://www.rfc-editor.org/info/std94">
          <reference anchor="RFC8949" target="https://www.rfc-editor.org/info/rfc8949">
            <front>
              <title>Concise Binary Object Representation (CBOR)</title>
              <author fullname="C. Bormann" initials="C." surname="Bormann"/>
              <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
              <date month="December" year="2020"/>
              <abstract>
                <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
                <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
              </abstract>
            </front>
            <seriesInfo name="STD" value="94"/>
            <seriesInfo name="RFC" value="8949"/>
            <seriesInfo name="DOI" value="10.17487/RFC8949"/>
          </reference>
        </referencegroup>
        <reference anchor="CORESID" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9595.xml">
          <front>
            <title>YANG Schema Item iDentifier (YANG SID)</title>
            <author fullname="M. Veillette" initials="M." role="editor" surname="Veillette"/>
            <author fullname="A. Pelov" initials="A." role="editor" surname="Pelov"/>
            <author fullname="I. Petrov" initials="I." role="editor" surname="Petrov"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <date month="July" year="2024"/>
            <abstract>
              <t>YANG Schema Item iDentifiers (YANG SIDs) are globally unique 63-bit unsigned integers used to identify YANG items. SIDs provide a more compact method for identifying those YANG items that can be used efficiently, notably in constrained environments (RFC 7228). This document defines the semantics, registration processes, and assignment processes for YANG SIDs for IETF-managed YANG modules. To enable the implementation of these processes, this document also defines a file format used to persist and publish assigned YANG SIDs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9595"/>
          <seriesInfo name="DOI" value="10.17487/RFC9595"/>
        </reference>
        <reference anchor="cBRSKI">
          <front>
            <title>Constrained Bootstrapping Remote Secure Key Infrastructure (cBRSKI)</title>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <author fullname="Peter Van der Stok" initials="P." surname="Van der Stok">
              <organization>vanderstok consultancy</organization>
            </author>
            <author fullname="Panos Kampanakis" initials="P." surname="Kampanakis">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Esko Dijk" initials="E." surname="Dijk">
              <organization>IoTconsultancy.nl</organization>
            </author>
            <date day="18" month="October" year="2025"/>
            <abstract>
              <t>   This document defines the Constrained Bootstrapping Remote Secure Key
   Infrastructure (cBRSKI) protocol, which provides a solution for
   secure zero-touch onboarding of resource-constrained (IoT) devices
   into the network of a domain owner.  This protocol is designed for
   constrained networks, which may have limited data throughput or may
   experience frequent packet loss. cBRSKI is a variant of the BRSKI
   protocol, which uses an artifact signed by the device manufacturer
   called the "voucher" which enables a new device and the owner's
   network to mutually authenticate.  While the BRSKI voucher data is
   encoded in JSON, cBRSKI uses a compact CBOR-encoded voucher.  The
   BRSKI voucher data definition is extended with new data types that
   allow for smaller voucher sizes.  The Enrollment over Secure
   Transport (EST) protocol, used in BRSKI, is replaced with EST-over-
   CoAPS; and HTTPS used in BRSKI is replaced with DTLS-secured CoAP
   (CoAPS).  This document Updates RFC 8995 and RFC 9148.

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

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-anima-jws-voucher-16"/>
        </reference>
        <reference anchor="ITU-T.X690.2015" target="https://www.itu.int/rec/T-REC-X.690/">
          <front>
            <title>Information Technology - ASN.1 encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)</title>
            <author>
              <organization>International Telecommunication Union</organization>
            </author>
            <date year="2015" month="August"/>
          </front>
          <seriesInfo name="ITU-T Recommendation X.690," value="ISO/IEC 8825-1"/>
        </reference>
        <reference anchor="ZERO-TOUCH">
          <front>
            <title>Secure Zero Touch Provisioning (SZTP)</title>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="I. Farrer" initials="I." surname="Farrer"/>
            <author fullname="M. Abrahamsson" initials="M." surname="Abrahamsson"/>
            <date month="April" year="2019"/>
            <abstract>
              <t>This document presents a technique to securely provision a networking device when it is booting in a factory-default state. Variations in the solution enable it to be used on both public and private networks. The provisioning steps are able to update the boot image, commit an initial configuration, and execute arbitrary scripts to address auxiliary needs. The updated device is subsequently able to establish secure connections with other systems. For instance, a device may establish NETCONF (RFC 6241) and/or RESTCONF (RFC 8040) connections with deployment-specific network management systems.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8572"/>
          <seriesInfo name="DOI" value="10.17487/RFC8572"/>
        </reference>
        <reference anchor="BRSKI" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8995.xml">
          <front>
            <title>Bootstrapping Remote Secure Key Infrastructure (BRSKI)</title>
            <author fullname="M. Pritikin" initials="M." surname="Pritikin"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="T. Eckert" initials="T." surname="Eckert"/>
            <author fullname="M. Behringer" initials="M." surname="Behringer"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document specifies automated bootstrapping of an Autonomic Control Plane. To do this, a Secure Key Infrastructure is bootstrapped. This is done using manufacturer-installed X.509 certificates, in combination with a manufacturer's authorizing service, both online and offline. We call this process the Bootstrapping Remote Secure Key Infrastructure (BRSKI) protocol. Bootstrapping a new device can occur when using a routable address and a cloud service, only link-local connectivity, or limited/disconnected networks. Support for deployment models with less stringent security requirements is included. Bootstrapping is complete when the cryptographic identity of the new key infrastructure is successfully deployed to the device. The established secure connection can be used to deploy a locally issued certificate to the device as well.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8995"/>
          <seriesInfo name="DOI" value="10.17487/RFC8995"/>
        </reference>
        <reference anchor="PRM">
          <front>
            <title>BRSKI with Pledge in Responder Mode (BRSKI-PRM)</title>
            <author fullname="Steffen Fries" initials="S." surname="Fries">
              <organization>Siemens AG</organization>
            </author>
            <author fullname="Thomas Werner" initials="T." surname="Werner">
              <organization>Siemens AG</organization>
            </author>
            <author fullname="Eliot Lear" initials="E." surname="Lear">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <date day="3" month="June" year="2025"/>
            <abstract>
              <t>   This document defines enhancements to Bootstrapping Remote Secure Key
   Infrastructure (BRSKI, RFC8995) as BRSKI with Pledge in Responder
   Mode (BRSKI-PRM).  BRSKI-PRM supports the secure bootstrapping of
   devices, referred to as pledges, into a domain where direct
   communication with the registrar is either limited or not possible at
   all.  To facilitate interaction between a pledge and a domain
   registrar the registrar-agent is introduced as new component.  The
   registrar-agent supports the reversal of the interaction model from a
   pledge-initiated mode, to a pledge-responding mode, where the pledge
   is in a server role.  To establish the trust relation between pledge
   and registrar, BRSKI-PRM relies on object security rather than
   transport security.  This approach is agnostic to enrollment
   protocols that connect a domain registrar to a key infrastructure
   (e.g., domain Certification Authority).

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

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

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

   This document updates RFC 8995 (BRSKI).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-anima-brski-cloud-19"/>
        </reference>
        <reference anchor="IDEVID" target="https://1.ieee802.org/security/802-1ar/">
          <front>
            <title>IEEE 802.1AR Secure Device Identifier</title>
            <author>
              <organization>IEEE Standard</organization>
            </author>
            <date year="2018"/>
          </front>
        </reference>
        <reference anchor="RFC8791">
          <front>
            <title>YANG Data Structure Extensions</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Björklund" initials="M." surname="Björklund"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="June" year="2020"/>
            <abstract>
              <t>This document describes YANG mechanisms for defining abstract data structures with YANG.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8791"/>
          <seriesInfo name="DOI" value="10.17487/RFC8791"/>
        </reference>
        <reference anchor="RFC7951">
          <front>
            <title>JSON Encoding of Data Modeled with YANG</title>
            <author fullname="L. Lhotka" initials="L." surname="Lhotka"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>This document defines encoding rules for representing configuration data, state data, parameters of Remote Procedure Call (RPC) operations or actions, and notifications defined using YANG as JavaScript Object Notation (JSON) text.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7951"/>
          <seriesInfo name="DOI" value="10.17487/RFC7951"/>
        </reference>
        <reference anchor="RFC2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC7120">
          <front>
            <title>Early IANA Allocation of Standards Track Code Points</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <date month="January" year="2014"/>
            <abstract>
              <t>This memo describes the process for early allocation of code points by IANA from registries for which "Specification Required", "RFC Required", "IETF Review", or "Standards Action" policies apply. This process can be used to alleviate the problem where code point allocation is needed to facilitate desired or required implementation and deployment experience prior to publication of an RFC, which would normally trigger code point allocation. The procedures in this document are intended to apply only to IETF Stream documents.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="100"/>
          <seriesInfo name="RFC" value="7120"/>
          <seriesInfo name="DOI" value="10.17487/RFC7120"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC3688">
          <front>
            <title>The IETF XML Registry</title>
            <author fullname="M. Mealling" initials="M." surname="Mealling"/>
            <date month="January" year="2004"/>
            <abstract>
              <t>This document describes an IANA maintained registry for IETF standards which use Extensible Markup Language (XML) related items such as Namespaces, Document Type Declarations (DTDs), Schemas, and Resource Description Framework (RDF) Schemas.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="81"/>
          <seriesInfo name="RFC" value="3688"/>
          <seriesInfo name="DOI" value="10.17487/RFC3688"/>
        </reference>
        <reference anchor="RFC5246" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5246.xml">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.2</title>
            <author fullname="T. Dierks" initials="T." surname="Dierks"/>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2008"/>
            <abstract>
              <t>This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol. The TLS protocol provides communications security over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5246"/>
          <seriesInfo name="DOI" value="10.17487/RFC5246"/>
        </reference>
        <reference anchor="RFC6125">
          <front>
            <title>Representation and Verification of Domain-Based Application Service Identity within Internet Public Key Infrastructure Using X.509 (PKIX) Certificates in the Context of Transport Layer Security (TLS)</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
            <author fullname="J. Hodges" initials="J." surname="Hodges"/>
            <date month="March" year="2011"/>
            <abstract>
              <t>Many application technologies enable secure communication between two entities by means of Internet Public Key Infrastructure Using X.509 (PKIX) certificates in the context of Transport Layer Security (TLS). This document specifies procedures for representing and verifying the identity of application services in such interactions. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6125"/>
          <seriesInfo name="DOI" value="10.17487/RFC6125"/>
        </reference>
        <reference anchor="RFC6241">
          <front>
            <title>Network Configuration Protocol (NETCONF)</title>
            <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
            <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6241"/>
          <seriesInfo name="DOI" value="10.17487/RFC6241"/>
        </reference>
        <reference anchor="RFC7435">
          <front>
            <title>Opportunistic Security: Some Protection Most of the Time</title>
            <author fullname="V. Dukhovni" initials="V." surname="Dukhovni"/>
            <date month="December" year="2014"/>
            <abstract>
              <t>This document defines the concept "Opportunistic Security" in the context of communications protocols. Protocol designs based on Opportunistic Security use encryption even when authentication is not available, and use authentication when possible, thereby removing barriers to the widespread use of encryption on the Internet.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7435"/>
          <seriesInfo name="DOI" value="10.17487/RFC7435"/>
        </reference>
        <reference anchor="RFC8040">
          <front>
            <title>RESTCONF Protocol</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8040"/>
          <seriesInfo name="DOI" value="10.17487/RFC8040"/>
        </reference>
        <reference anchor="RFC8340">
          <front>
            <title>YANG Tree Diagrams</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document captures the current syntax used in YANG module tree diagrams. The purpose of this document is to provide a single location for this definition. This syntax may be updated from time to time based on the evolution of the YANG language.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="215"/>
          <seriesInfo name="RFC" value="8340"/>
          <seriesInfo name="DOI" value="10.17487/RFC8340"/>
        </reference>
        <reference anchor="RFC8366" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8366.xml">
          <front>
            <title>A Voucher Artifact for Bootstrapping Protocols</title>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="M. Pritikin" initials="M." surname="Pritikin"/>
            <author fullname="T. Eckert" initials="T." surname="Eckert"/>
            <date month="May" year="2018"/>
            <abstract>
              <t>This document defines a strategy to securely assign a pledge to an owner using an artifact signed, directly or indirectly, by the pledge's manufacturer. This artifact is known as a "voucher".</t>
              <t>This document defines an artifact format as a YANG-defined JSON document that has been signed using a Cryptographic Message Syntax (CMS) structure. Other YANG-derived formats are possible. The voucher artifact is normally generated by the pledge's manufacturer (i.e., the Manufacturer Authorized Signing Authority (MASA)).</t>
              <t>This document only defines the voucher artifact, leaving it to other documents to describe specialized protocols for accessing it.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8366"/>
          <seriesInfo name="DOI" value="10.17487/RFC8366"/>
        </reference>
        <reference anchor="RFC8792">
          <front>
            <title>Handling Long Lines in Content of Internet-Drafts and RFCs</title>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="E. Auerswald" initials="E." surname="Auerswald"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <date month="June" year="2020"/>
            <abstract>
              <t>This document defines two strategies for handling long lines in width-bounded text content. One strategy, called the "single backslash" strategy, is based on the historical use of a single backslash ('\') character to indicate where line-folding has occurred, with the continuation occurring with the first character that is not a space character (' ') on the next line. The second strategy, called the "double backslash" strategy, extends the first strategy by adding a second backslash character to identify where the continuation begins and is thereby able to handle cases not supported by the first strategy. Both strategies use a self-describing header enabling automated reconstitution of the original content.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8792"/>
          <seriesInfo name="DOI" value="10.17487/RFC8792"/>
        </reference>
        <referencegroup anchor="COSE" target="https://www.rfc-editor.org/info/std96">
          <reference anchor="RFC9052" target="https://www.rfc-editor.org/info/rfc9052">
            <front>
              <title>CBOR Object Signing and Encryption (COSE): Structures and Process</title>
              <author fullname="J. Schaad" initials="J." surname="Schaad"/>
              <date month="August" year="2022"/>
              <abstract>
                <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. There is a need to be able to define basic security services for this data format. This document defines the CBOR Object Signing and Encryption (COSE) protocol. This specification describes how to create and process signatures, message authentication codes, and encryption using CBOR for serialization. This specification additionally describes how to represent cryptographic keys using CBOR.</t>
                <t>This document, along with RFC 9053, obsoletes RFC 8152.</t>
              </abstract>
            </front>
            <seriesInfo name="STD" value="96"/>
            <seriesInfo name="RFC" value="9052"/>
            <seriesInfo name="DOI" value="10.17487/RFC9052"/>
          </reference>
          <reference anchor="RFC9338" target="https://www.rfc-editor.org/info/rfc9338">
            <front>
              <title>CBOR Object Signing and Encryption (COSE): Countersignatures</title>
              <author fullname="J. Schaad" initials="J." surname="Schaad"/>
              <date month="December" year="2022"/>
              <abstract>
                <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. CBOR Object Signing and Encryption (COSE) defines a set of security services for CBOR. This document defines a countersignature algorithm along with the needed header parameters and CBOR tags for COSE. This document updates RFC 9052.</t>
              </abstract>
            </front>
            <seriesInfo name="STD" value="96"/>
            <seriesInfo name="RFC" value="9338"/>
            <seriesInfo name="DOI" value="10.17487/RFC9338"/>
          </reference>
        </referencegroup>
        <reference anchor="JWS">
          <front>
            <title>JSON Web Signature (JWS)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and an IANA registry defined by that specification. Related encryption capabilities are described in the separate JSON Web Encryption (JWE) specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7515"/>
          <seriesInfo name="DOI" value="10.17487/RFC7515"/>
        </reference>
        <reference anchor="SECUREJOIN">
          <front>
            <title>6tisch Zero-Touch Secure Join protocol</title>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <date day="8" month="July" year="2019"/>
            <abstract>
              <t>   This document describes a Zero-touch Secure Join (ZSJ) mechanism to
   enroll a new device (the "pledge") into a IEEE802.15.4 TSCH network
   using the 6tisch signaling mechanisms.  The resulting device will
   obtain a domain specific credential that can be used with either
   802.15.9 per-host pair keying protocols, or to obtain the network-
   wide key from a coordinator.  The mechanism describe here is an
   augmentation to the one-touch mechanism described in
   [I-D.ietf-6tisch-minimal-security], and is a profile of the
   constrained voucher mechanism [I-D.ietf-anima-constrained-voucher].

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-6tisch-dtsecurity-zerotouch-join-04"/>
        </reference>
        <reference anchor="YANG-GUIDE">
          <front>
            <title>Guidelines for Authors and Reviewers of Documents Containing YANG Data Models</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <date month="October" year="2018"/>
            <abstract>
              <t>This memo provides guidelines for authors and reviewers of specifications containing YANG modules. Recommendations and procedures are defined, which are intended to increase interoperability and usability of Network Configuration Protocol (NETCONF) and RESTCONF protocol implementations that utilize YANG modules. This document obsoletes RFC 6087.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="216"/>
          <seriesInfo name="RFC" value="8407"/>
          <seriesInfo name="DOI" value="10.17487/RFC8407"/>
        </reference>
        <reference anchor="Stajano99theresurrecting" target="https://www.cl.cam.ac.uk/research/dtg/www/files/publications/public/files/tr.1999.2.pdf">
          <front>
            <title>The Resurrecting Duckling: Security Issues for Ad-Hoc Wireless Networks</title>
            <author initials="F." surname="Stajano" fullname="Frank Stajano">
              <organization/>
            </author>
            <author initials="R." surname="Anderson" fullname="Ross Anderson">
              <organization/>
            </author>
            <date year="1999"/>
          </front>
        </reference>
        <reference anchor="imprinting" target="https://en.wikipedia.org/w/index.php?title=Imprinting_(psychology)&amp;oldid=1314466188">
          <front>
            <title>Wikipedia article: Imprinting (psychology)</title>
            <author>
              <organization>Wikipedia</organization>
            </author>
            <date year="2025" month="October" day="01"/>
          </front>
        </reference>
        <reference anchor="fairhair" target="https://openconnectivity.org/developer/specifications/fairhair/">
          <front>
            <title>Fairhair Specification</title>
            <author>
              <organization>Open Connectivity Foundation</organization>
            </author>
            <date year="2019" month="November" day="01"/>
          </front>
        </reference>
        <reference anchor="RFC8520" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8520.xml">
          <front>
            <title>Manufacturer Usage Description Specification</title>
            <author fullname="E. Lear" initials="E." surname="Lear"/>
            <author fullname="R. Droms" initials="R." surname="Droms"/>
            <author fullname="D. Romascanu" initials="D." surname="Romascanu"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This memo specifies a component-based architecture for Manufacturer Usage Descriptions (MUDs). The goal of MUD is to provide a means for end devices to signal to the network what sort of access and network functionality they require to properly function. The initial focus is on access control. Later work can delve into other aspects.</t>
              <t>This memo specifies two YANG modules, IPv4 and IPv6 DHCP options, a Link Layer Discovery Protocol (LLDP) TLV, a URL, an X.509 certificate extension, and a means to sign and verify the descriptions.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8520"/>
          <seriesInfo name="DOI" value="10.17487/RFC8520"/>
        </reference>
        <reference anchor="RFC9499">
          <front>
            <title>DNS Terminology</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="K. Fujiwara" initials="K." surname="Fujiwara"/>
            <date month="March" year="2024"/>
            <abstract>
              <t>The Domain Name System (DNS) is defined in literally dozens of different RFCs. The terminology used by implementers and developers of DNS protocols, and by operators of DNS systems, has changed in the decades since the DNS was first defined. This document gives current definitions for many of the terms used in the DNS in a single document.</t>
              <t>This document updates RFC 2308 by clarifying the definitions of "forwarder" and "QNAME". It obsoletes RFC 8499 by adding multiple terms and clarifications. Comprehensive lists of changed and new definitions can be found in Appendices A and B.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="219"/>
          <seriesInfo name="RFC" value="9499"/>
          <seriesInfo name="DOI" value="10.17487/RFC9499"/>
        </reference>
        <reference anchor="RFC9125">
          <front>
            <title>Gateway Auto-Discovery and Route Advertisement for Site Interconnection Using Segment Routing</title>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="J. Drake" initials="J." surname="Drake"/>
            <author fullname="E. Rosen" initials="E." surname="Rosen"/>
            <author fullname="K. Patel" initials="K." surname="Patel"/>
            <author fullname="L. Jalil" initials="L." surname="Jalil"/>
            <date month="August" year="2021"/>
            <abstract>
              <t>Data centers are attached to the Internet or a backbone network by gateway routers. One data center typically has more than one gateway for commercial, load-balancing, and resiliency reasons. Other sites, such as access networks, also need to be connected across backbone networks through gateways.</t>
              <t>This document defines a mechanism using the BGP Tunnel Encapsulation attribute to allow data center gateway routers to advertise routes to the prefixes reachable in the site, including advertising them on behalf of other gateways at the same site. This allows segment routing to be used to identify multiple paths across the Internet or backbone network between different gateways. The paths can be selected for load-balancing, resilience, and quality purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9125"/>
          <seriesInfo name="DOI" value="10.17487/RFC9125"/>
        </reference>
        <reference anchor="I-D.ietf-lake-authz">
          <front>
            <title>Lightweight Authorization using Ephemeral Diffie-Hellman Over COSE (ELA)</title>
            <author fullname="Göran Selander" initials="G." surname="Selander">
              <organization>Ericsson AB</organization>
            </author>
            <author fullname="John Preuß Mattsson" initials="J. P." surname="Mattsson">
              <organization>Ericsson AB</organization>
            </author>
            <author fullname="Mališa Vučinić" initials="M." surname="Vučinić">
              <organization>INRIA</organization>
            </author>
            <author fullname="Geovane Fedrecheski" initials="G." surname="Fedrecheski">
              <organization>INRIA</organization>
            </author>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <date day="20" month="October" year="2025"/>
            <abstract>
              <t>   Ephemeral Diffie-Hellman Over COSE (EDHOC) is a lightweight
   authenticated key exchange protocol intended for use in constrained
   scenarios.  This document specifies Lightweight Authorization using
   EDHOC (ELA).  The procedure allows authorizing enrollment of new
   devices using the extension point defined in EDHOC.  ELA is
   applicable to zero-touch onboarding of new devices to a constrained
   network leveraging trust anchors installed at manufacture time.

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

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-vangeest-lamps-cms-euf-cma-signeddata-02"/>
        </reference>
        <reference anchor="RFC4648">
          <front>
            <title>The Base16, Base32, and Base64 Data Encodings</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <date month="October" year="2006"/>
            <abstract>
              <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4648"/>
          <seriesInfo name="DOI" value="10.17487/RFC4648"/>
        </reference>
        <reference anchor="RFC3696">
          <front>
            <title>Application Techniques for Checking and Transformation of Names</title>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <date month="February" year="2004"/>
            <abstract>
              <t>Many Internet applications have been designed to deduce top-level domains (or other domain name labels) from partial information. The introduction of new top-level domains, especially non-country-code ones, has exposed flaws in some of the methods used by these applications. These flaws make it more difficult, or impossible, for users of the applications to access the full Internet. This memo discusses some of the techniques that have been used and gives some guidance for minimizing their negative impact as the domain name environment evolves. This document draws summaries of the applicable rules together in one place and supplies references to the actual standards. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3696"/>
          <seriesInfo name="DOI" value="10.17487/RFC3696"/>
        </reference>
      </references>
    </references>
    <?line 1619?>

<section anchor="examples">
      <name>Examples</name>
      <section anchor="key-pairs-associated-with-examples">
        <name>Key pairs associated with examples</name>
        <t>The following voucher request has been produced using the IDevID <xref target="IDEVID"/> public (certificate) and private key.
They are included so that other developers can match the same output.</t>
        <t>The private RSA key:</t>
        <artwork><![CDATA[
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIBHNh6r8QRevRuo+tEmBJeFjQKf6bpFA/9NGoltv+9sNoAoGCCqGSM49
AwEHoUQDQgAEA6N1Q4ezfMAKmoecrfb0OBMc1AyEH+BATkF58FsTSyBxs0SbSWLx
FjDOuwB9gLGn2TsTUJumJ6VPw5Z/TP4hJw==
-----END EC PRIVATE KEY-----
]]></artwork>
        <t>The IDevID certificate (public key):</t>
        <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIBrzCCATWgAwIBAgIEHxj+5zAKBggqhkjOPQQDAjAmMSQwIgYDVQQDDBtoaWdo
d2F5LXRlc3QuZXhhbXBsZS5jb20gQ0EwIBcNMjEwNDI3MTgyOTMwWhgPMjk5OTEy
MzEwMDAwMDBaMBwxGjAYBgNVBAUTETAwLUQwLUU1LUYyLTAwLTAyMFkwEwYHKoZI
zj0CAQYIKoZIzj0DAQcDQgAEA6N1Q4ezfMAKmoecrfb0OBMc1AyEH+BATkF58FsT
SyBxs0SbSWLxFjDOuwB9gLGn2TsTUJumJ6VPw5Z/TP4hJ6NZMFcwHQYDVR0OBBYE
FEWIzJaWAGQ3sLojZWRkVAgGbFatMAkGA1UdEwQCMAAwKwYIKwYBBQUHASAEHxYd
aGlnaHdheS10ZXN0LmV4YW1wbGUuY29tOjk0NDMwCgYIKoZIzj0EAwIDaAAwZQIw
YirbvjT3G8uF3iaOQwD5DYjId6jdPAhAVLzsPbbccCvDf8oZIZqgq8VRjqrfNt6L
AjEAsl1Z+EfH7QOXqMDHqIH6qIbtZ2Q3UXpunKOCTW2tvPM1np1qom1/fyUcA+/w
uptx
-----END CERTIFICATE-----
]]></artwork>
        <t>The Certification Authority that created the IDevID:</t>
        <artwork><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 1016146354 (0x3c9129b2)
        Signature Algorithm: sha256WithRSAEncryption
        Issuer: CN = highway-test.example.com CA
        Validity
            Not Before: Apr  5 19:36:57 2021 GMT
            Not After : May  6 05:36:57 2021 GMT
        Subject: CN = highway-test.example.com CA
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (3072 bit)
                Modulus:
                    00:b4:7b:27:42:49:9f:ed:85:47:74:ff:f6:50:cd:
                    5d:22:1a:64:38:22:f8:09:d2:d6:f3:60:d8:98:7f:
                    e5:84:52:1e:d9:ce:96:b4:dc:a6:43:74:67:27:d9:
                    9d:42:7d:bf:1a:43:92:9b:d1:dd:34:9b:41:d2:e3:
                    d5:59:b3:40:fc:b3:c9:e1:58:84:3f:87:f7:06:45:
                    25:26:4c:bf:a1:45:72:a0:0a:5b:86:41:d7:8e:be:
                    d3:38:b5:aa:66:69:bd:3a:fd:e9:b5:b8:a2:79:c4:
                    f0:a5:3c:9e:91:94:32:1e:9c:b0:7f:25:46:5b:76:
                    1d:86:23:85:b0:62:45:5c:a8:6f:fb:c5:26:e1:dd:
                    a8:f2:68:ab:c5:8c:b4:58:b4:2e:96:49:fa:fe:d2:
                    ea:a5:11:68:c2:8d:f4:58:ab:30:bd:dd:1b:29:97:
                    00:18:6f:59:40:9c:3a:2a:e4:96:25:bb:12:f4:1a:
                    11:72:6d:31:f6:b4:e1:cc:d8:9a:0c:aa:a8:aa:a4:
                    64:e3:f1:06:1c:c0:09:df:62:ba:04:cb:70:b0:c4:
                    f7:ca:35:22:ea:a9:c7:52:e1:ce:27:fb:6c:52:39:
                    b7:22:b3:5d:97:cb:0a:9f:75:a3:af:16:ef:e6:b2:
                    1b:6a:c3:0b:1d:15:fd:b8:d8:e7:8a:f6:f4:99:1c:
                    23:97:4b:80:e9:79:a3:85:16:f8:dd:bd:77:ef:3a:
                    3c:8e:e7:75:56:67:36:3a:dd:42:7b:84:2f:64:2f:
                    13:0e:fa:b0:3b:11:13:7e:ae:78:a6:2f:46:dd:4b:
                    11:88:e4:7b:19:ab:21:2d:1f:34:ba:61:cd:51:84:
                    a5:ec:6a:c1:90:20:70:e3:aa:f4:01:fd:0c:6e:cd:
                    04:47:99:31:70:79:6c:af:41:78:c1:04:2a:43:78:
                    84:8a:fe:c3:3d:f2:41:c8:2a:a1:10:e0:b7:b4:4f:
                    4e:e6:26:79:ac:49:64:cf:57:1e:2e:e3:2f:58:bd:
                    6f:30:00:67:d7:8b:d6:13:60:bf
                Exponent: 65537 (0x10001)
        X509v3 extensions:
            X509v3 Basic Constraints: critical
                CA:TRUE
            X509v3 Key Usage: critical
                Certificate Sign, CRL Sign
            X509v3 Subject Key Identifier: 
                33:12:45:B7:1B:10:BE:F3:CB:64:E5:4C:50:80:7C:9D:88:\
                                                             65:74:40
            X509v3 Authority Key Identifier: 
                33:12:45:B7:1B:10:BE:F3:CB:64:E5:4C:50:80:7C:9D:88:\
                                                             65:74:40
    Signature Algorithm: sha256WithRSAEncryption
    Signature Value:
        05:37:28:85:37:39:71:87:ec:5c:f0:51:19:55:4a:b7:e0:2a:
        e6:61:30:d4:e2:2b:ad:7a:db:12:fc:8a:a6:6e:15:82:80:10:
        fa:5d:67:60:e8:54:14:e3:89:d6:4e:60:89:98:5b:ab:fe:32:
        26:aa:02:35:68:4e:c6:2e:ce:08:36:d1:ea:a0:97:3d:76:38:
        6e:9d:4b:6f:33:d2:fa:c2:7e:b0:59:bc:75:97:17:d1:1b:c5:
        c4:58:ae:7b:7e:87:e5:87:2b:8b:6b:10:16:70:7c:c8:65:c7:
        d0:62:5d:f3:b5:06:af:03:8b:32:dd:88:f0:07:2b:5d:61:58:
        61:35:54:a6:ce:95:81:a2:6e:fa:b5:aa:25:e1:41:53:9d:e7:
        4b:7e:93:88:79:6b:dd:a3:6e:9a:0d:bd:85:b4:2d:66:b9:cc:
        01:13:f1:b5:d5:91:cc:86:5e:a7:c8:4a:8f:4d:9d:f8:17:31:
        32:7d:50:d5:c2:79:a0:41:a0:69:83:33:16:14:35:26:10:3b:
        23:eb:60:d9:28:68:99:d5:55:61:89:b5:35:5d:8b:fe:b1:96:
        32:69:3e:8b:c2:a2:4e:e1:d8:76:04:3c:87:91:5d:66:9e:81:
        a5:bf:18:2e:3e:39:da:4f:68:57:46:d2:1d:aa:81:51:3b:33:
        72:da:e9:7d:12:b6:a1:fc:c7:1d:c1:9c:bd:92:e8:1b:d2:06:
        e8:0b:82:2a:4f:23:5a:7a:fa:7b:86:a0:d7:c1:46:e7:04:47:
        77:11:cd:da:7c:50:32:d2:6f:fd:1e:0a:df:cf:b1:20:d2:86:
        ce:40:5a:27:61:49:2f:71:f5:04:ac:eb:c6:03:70:a4:70:13:
        4a:af:41:35:83:dc:55:c0:29:7f:12:4f:d0:f1:bb:f7:61:4a:
        9f:8d:61:b0:5e:89:46:49:e3:27:8b:42:82:5e:af:14:d5:d9:
        91:69:3d:af:11:70:5b:a3:92:3b:e3:c8:2a:a4:38:e5:88:f2:
        6f:09:f4:e5:04:3b
-----BEGIN CERTIFICATE-----
MIIELTCCApWgAwIBAgIEPJEpsjANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBto
aWdod2F5LXRlc3QuZXhhbXBsZS5jb20gQ0EwHhcNMjEwNDA1MTkzNjU3WhcNMjEw
NTA2MDUzNjU3WjAmMSQwIgYDVQQDDBtoaWdod2F5LXRlc3QuZXhhbXBsZS5jb20g
Q0EwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQC0eydCSZ/thUd0//ZQ
zV0iGmQ4IvgJ0tbzYNiYf+WEUh7Zzpa03KZDdGcn2Z1Cfb8aQ5Kb0d00m0HS49VZ
s0D8s8nhWIQ/h/cGRSUmTL+hRXKgCluGQdeOvtM4tapmab06/em1uKJ5xPClPJ6R
lDIenLB/JUZbdh2GI4WwYkVcqG/7xSbh3ajyaKvFjLRYtC6WSfr+0uqlEWjCjfRY
qzC93RsplwAYb1lAnDoq5JYluxL0GhFybTH2tOHM2JoMqqiqpGTj8QYcwAnfYroE
y3CwxPfKNSLqqcdS4c4n+2xSObcis12XywqfdaOvFu/mshtqwwsdFf242OeK9vSZ
HCOXS4DpeaOFFvjdvXfvOjyO53VWZzY63UJ7hC9kLxMO+rA7ERN+rnimL0bdSxGI
5HsZqyEtHzS6Yc1RhKXsasGQIHDjqvQB/QxuzQRHmTFweWyvQXjBBCpDeISK/sM9
8kHIKqEQ4Le0T07mJnmsSWTPVx4u4y9YvW8wAGfXi9YTYL8CAwEAAaNjMGEwDwYD
VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFDMSRbcbEL7z
y2TlTFCAfJ2IZXRAMB8GA1UdIwQYMBaAFDMSRbcbEL7zy2TlTFCAfJ2IZXRAMA0G
CSqGSIb3DQEBCwUAA4IBgQAFNyiFNzlxh+xc8FEZVUq34CrmYTDU4iutetsS/Iqm
bhWCgBD6XWdg6FQU44nWTmCJmFur/jImqgI1aE7GLs4INtHqoJc9djhunUtvM9L6
wn6wWbx1lxfRG8XEWK57foflhyuLaxAWcHzIZcfQYl3ztQavA4sy3YjwBytdYVhh
NVSmzpWBom76taol4UFTnedLfpOIeWvdo26aDb2FtC1mucwBE/G11ZHMhl6nyEqP
TZ34FzEyfVDVwnmgQaBpgzMWFDUmEDsj62DZKGiZ1VVhibU1XYv+sZYyaT6LwqJO
4dh2BDyHkV1mnoGlvxguPjnaT2hXRtIdqoFROzNy2ul9Erah/McdwZy9kugb0gbo
C4IqTyNaevp7hqDXwUbnBEd3Ec3afFAy0m/9Hgrfz7Eg0obOQFonYUkvcfUErOvG
A3CkcBNKr0E1g9xVwCl/Ek/Q8bv3YUqfjWGwXolGSeMni0KCXq8U1dmRaT2vEXBb
o5I748gqpDjliPJvCfTlBDs=
-----END CERTIFICATE-----
]]></artwork>
        <t>The private key for the Certification Authority that created the IDevID:</t>
        <artwork><![CDATA[
-----BEGIN RSA PRIVATE KEY-----
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
-----END RSA PRIVATE KEY-----
]]></artwork>
        <t>The MASA certificate that signs the voucher:</t>
        <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIBcDCB9qADAgECAgQLhwoxMAoGCCqGSM49BAMCMCYxJDAiBgNVBAMMG2hpZ2h3
YXktdGVzdC5leGFtcGxlLmNvbSBDQTAeFw0yMTA0MTMyMTQwMTZaFw0yMzA0MTMy
MTQwMTZaMCgxJjAkBgNVBAMMHWhpZ2h3YXktdGVzdC5leGFtcGxlLmNvbSBNQVNB
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqgQVo0S54kT4yfkbBxumdHOcHrps
qbOpMKmiMln3oB1HAW25MJV+gqi4tMFfSJ0iEwt8kszfWXK4rLgJS2mnpaMQMA4w
DAYDVR0TAQH/BAIwADAKBggqhkjOPQQDAgNpADBmAjEArsthLdRcjW6GqgsGHcbT
YLoyczYl0yOFSYcczpQjeRqeQVUkHRUioUi7CsCrPBNzAjEAhjxns5Wi4uX5rfkd
nME0Mnj1z+rVRwOfAL/QWctRwpgEgSSKURNQsXWyL52otPS5
-----END CERTIFICATE-----
]]></artwork>
        <t>The private key for MASA certificate signs the voucher:</t>
        <artwork><![CDATA[
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIFhdd0eDdzip67kXx72K+KHGJQYJHNy8pkiLJ6CcvxMGoAoGCCqGSM49
AwEHoUQDQgAEqgQVo0S54kT4yfkbBxumdHOcHrpsqbOpMKmiMln3oB1HAW25MJV+
gqi4tMFfSJ0iEwt8kszfWXK4rLgJS2mnpQ==
-----END EC PRIVATE KEY-----
]]></artwork>
      </section>
      <section anchor="example-cms-signed-voucher-request">
        <name>Example CMS signed voucher request</name>
        <artwork><![CDATA[
MIIGjQYJKoZIhvcNAQcCoIIGfjCCBnoCAQExDTALBglghkgBZQMEAgEwggOl
BgkqhkiG9w0BBwGgggOWBIIDknsiaWV0Zi12b3VjaGVyLXJlcXVlc3Q6dm91
Y2hlciI6eyJhc3NlcnRpb24iOiJwcm94aW1pdHkiLCJjcmVhdGVkLW9uIjoi
MjAyMi0wNy0xMFQxNzowODoxOC41OTgtMDQ6MDAiLCJzZXJpYWwtbnVtYmVy
IjoiMDAtRDAtRTUtRjItMDAtMDIiLCJub25jZSI6IjR2VHNwcFMyQ2VxQnpo
RWRvaWZNMmciLCJwcm94aW1pdHktcmVnaXN0cmFyLWNlcnQiOiJNSUlDRURD
Q0FaYWdBd0lCQWdJRVlGYTZaVEFLQmdncWhrak9QUVFEQWpCdE1SSXdFQVlL
Q1pJbWlaUHlMR1FCR1JZQ1kyRXhHVEFYQmdvSmtpYUprL0lzWkFFWkZnbHpZ
VzVrWld4dFlXNHhQREE2QmdOVkJBTU1NMlp2ZFc1MFlXbHVMWFJsYzNRdVpY
aGhiWEJzWlM1amIyMGdWVzV6ZEhKMWJtY2dSbTkxYm5SaGFXNGdVbTl2ZENC
RFFUQWVGdzB5TVRFeE1qUXhPVFF6TURWYUZ3MHlNekV4TWpReE9UUXpNRFZh
TUZNeEVqQVFCZ29Ka2lhSmsvSXNaQUVaRmdKallURVpNQmNHQ2dtU0pvbVQ4
aXhrQVJrV0NYTmhibVJsYkcxaGJqRWlNQ0FHQTFVRUF3d1pabTkxYm5SaGFX
NHRkR1Z6ZEM1bGVHRnRjR3hsTG1OdmJUQlpNQk1HQnlxR1NNNDlBZ0VHQ0Nx
R1NNNDlBd0VIQTBJQUJKWmxVSEkwdXAvbDNlWmY5dkNCYitsSW5vRU1FZ2M3
Um8rWFpDdGpBSTBDRDFmSmZKUi9oSXl5RG1IV3lZaU5GYlJDSDlmeWFyZmt6
Z1g0cDB6VGl6cWpQakE4TUNvR0ExVWRKUUVCL3dRZ01CNEdDQ3NHQVFVRkJ3
TWNCZ2dyQmdFRkJRY0RBZ1lJS3dZQkJRVUhBd0V3RGdZRFZSMFBBUUgvQkFR
REFnZUFNQW9HQ0NxR1NNNDlCQU1DQTJnQU1HVUNNUUNkU1pSSjgzTU5SQ3ph
Myt2T0JhMDFoNHFadjJsS2hkK0RmaEI0WURodkdwa1dvbFplSEh3TmI3QXRC
Q010YlV3Q01Ib054b2lrK3hXN0F0MWhYRWhwMy9NY1hpQWR6blpicFZxK3hK
RVppaFhVMzZJQmp2WWdXREY5aXZxeEpwRGJ5dz09In19oIIBszCCAa8wggE1
oAMCAQICBB8Y/ucwCgYIKoZIzj0EAwIwJjEkMCIGA1UEAwwbaGlnaHdheS10
ZXN0LmV4YW1wbGUuY29tIENBMCAXDTIxMDQyNzE4MjkzMFoYDzI5OTkxMjMx
MDAwMDAwWjAcMRowGAYDVQQFExEwMC1EMC1FNS1GMi0wMC0wMjBZMBMGByqG
SM49AgEGCCqGSM49AwEHA0IABAOjdUOHs3zACpqHnK329DgTHNQMhB/gQE5B
efBbE0sgcbNEm0li8RYwzrsAfYCxp9k7E1CbpielT8OWf0z+ISejWTBXMB0G
A1UdDgQWBBRFiMyWlgBkN7C6I2VkZFQIBmxWrTAJBgNVHRMEAjAAMCsGCCsG
AQUFBwEgBB8WHWhpZ2h3YXktdGVzdC5leGFtcGxlLmNvbTo5NDQzMAoGCCqG
SM49BAMCA2gAMGUCMGIq27409xvLhd4mjkMA+Q2IyHeo3TwIQFS87D223HAr
w3/KGSGaoKvFUY6q3zbeiwIxALJdWfhHx+0Dl6jAx6iB+qiG7WdkN1F6bpyj
gk1trbzzNZ6daqJtf38lHAPv8LqbcTGCAQQwggEAAgEBMC4wJjEkMCIGA1UE
AwwbaGlnaHdheS10ZXN0LmV4YW1wbGUuY29tIENBAgQfGP7nMAsGCWCGSAFl
AwQCAaBpMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkF
MQ8XDTIyMDcxMDIxMDgxOFowLwYJKoZIhvcNAQkEMSIEIFc4jO6OnilTLkM/
fcc9p5au4ANjvJvjRXsAKK6+RcTvMAoGCCqGSM49BAMCBEcwRQIhAOjoOdgh
Sr+Hk2r2APsfs1+QJba0uRf/+zXA70yb6mRCAiB9aS6Wj8kBcWEvvfsDue41
KWo0ukOBQxdPGpJqg+GAMw==
]]></artwork>
      </section>
      <section anchor="example-cms-signed-voucher-from-masa">
        <name>Example CMS signed voucher from MASA</name>
        <artwork><![CDATA[
MIIGPQYJKoZIhvcNAQcCoIIGLjCCBioCAQExDTALBglghkgBZQMEAgEwggOU
BgkqhkiG9w0BBwGgggOFBIIDgXsiaWV0Zi12b3VjaGVyOnZvdWNoZXIiOnsi
YXNzZXJ0aW9uIjoibG9nZ2VkIiwiY3JlYXRlZC1vbiI6IjIwMjItMDctMTBU
MTc6MDg6MTguNzIwLTA0OjAwIiwic2VyaWFsLW51bWJlciI6IjAwLUQwLUU1
LUYyLTAwLTAyIiwibm9uY2UiOiI0dlRzcHBTMkNlcUJ6aEVkb2lmTTJnIiwi
cGlubmVkLWRvbWFpbi1jZXJ0IjoiTUlJQ0VEQ0NBWmFnQXdJQkFnSUVZRmE2
WlRBS0JnZ3Foa2pPUFFRREFqQnRNUkl3RUFZS0NaSW1pWlB5TEdRQkdSWUNZ
MkV4R1RBWEJnb0praWFKay9Jc1pBRVpGZ2x6WVc1a1pXeHRZVzR4UERBNkJn
TlZCQU1NTTJadmRXNTBZV2x1TFhSbGMzUXVaWGhoYlhCc1pTNWpiMjBnVlc1
emRISjFibWNnUm05MWJuUmhhVzRnVW05dmRDQkRRVEFlRncweU1URXhNalF4
T1RRek1EVmFGdzB5TXpFeE1qUXhPVFF6TURWYU1GTXhFakFRQmdvSmtpYUpr
L0lzWkFFWkZnSmpZVEVaTUJjR0NnbVNKb21UOGl4a0FSa1dDWE5oYm1SbGJH
MWhiakVpTUNBR0ExVUVBd3daWm05MWJuUmhhVzR0ZEdWemRDNWxlR0Z0Y0d4
bExtTnZiVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSlps
VUhJMHVwL2wzZVpmOXZDQmIrbElub0VNRWdjN1JvK1haQ3RqQUkwQ0QxZkpm
SlIvaEl5eURtSFd5WWlORmJSQ0g5ZnlhcmZremdYNHAwelRpenFqUGpBOE1D
b0dBMVVkSlFFQi93UWdNQjRHQ0NzR0FRVUZCd01jQmdnckJnRUZCUWNEQWdZ
SUt3WUJCUVVIQXdFd0RnWURWUjBQQVFIL0JBUURBZ2VBTUFvR0NDcUdTTTQ5
QkFNQ0EyZ0FNR1VDTVFDZFNaUko4M01OUkN6YTMrdk9CYTAxaDRxWnYybEto
ZCtEZmhCNFlEaHZHcGtXb2xaZUhId05iN0F0QkNNdGJVd0NNSG9OeG9payt4
VzdBdDFoWEVocDMvTWNYaUFkem5aYnBWcSt4SkVaaWhYVTM2SUJqdllnV0RG
OWl2cXhKcERieXc9PSJ9faCCAXQwggFwMIH2oAMCAQICBAuHCjEwCgYIKoZI
zj0EAwIwJjEkMCIGA1UEAwwbaGlnaHdheS10ZXN0LmV4YW1wbGUuY29tIENB
MB4XDTIxMDQxMzIxNDAxNloXDTIzMDQxMzIxNDAxNlowKDEmMCQGA1UEAwwd
aGlnaHdheS10ZXN0LmV4YW1wbGUuY29tIE1BU0EwWTATBgcqhkjOPQIBBggq
hkjOPQMBBwNCAASqBBWjRLniRPjJ+RsHG6Z0c5weumyps6kwqaIyWfegHUcB
bbkwlX6CqLi0wV9InSITC3ySzN9ZcrisuAlLaaeloxAwDjAMBgNVHRMBAf8E
AjAAMAoGCCqGSM49BAMCA2kAMGYCMQCuy2Et1FyNboaqCwYdxtNgujJzNiXT
I4VJhxzOlCN5Gp5BVSQdFSKhSLsKwKs8E3MCMQCGPGezlaLi5fmt+R2cwTQy
ePXP6tVHA58Av9BZy1HCmASBJIpRE1CxdbIvnai09LkxggEEMIIBAAIBATAu
MCYxJDAiBgNVBAMMG2hpZ2h3YXktdGVzdC5leGFtcGxlLmNvbSBDQQIEC4cK
MTALBglghkgBZQMEAgGgaTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwG
CSqGSIb3DQEJBTEPFw0yMjA3MTAyMTA4MThaMC8GCSqGSIb3DQEJBDEiBCBA
77EhoAybh5R6kK89jDefpxRy8Q6rDo1cnlwgvCzXbzAKBggqhkjOPQQDAgRH
MEUCIQD4RnuXwKvYVvwamwVq3VYv7dXcM7bzLg7FXTkhvYqPzwIgXTJxVV5a
cLMAroeHgThS5JU5QA2PJMLGF82UcSNTsEY=
]]></artwork>
      </section>
      <section anchor="example-jws-signed-voucher-from-masa">
        <name>Example JWS signed voucher from MASA</name>
        <t>These examples are folded according to the <xref target="RFC8792"/> Single Backslash rule.</t>
        <figure anchor="ExampleVoucherJWSfigure">
          <name>Example JWS Voucher</name>
          <artwork align="left"><![CDATA[
{
  "payload": "eyJpZXRmLXZvdWNoZXI6dm91Y2hlciI6eyJhc3NlcnRpb24iOiJwcm\
94aW1pdHkiLCJzZXJpYWwtbnVtYmVyIjoiY2FmZmUtOTg3NDUiLCJub25jZSI6IjYyYT\
JlNzY5M2Q4MmZjZGEyNjI0ZGU1OGZiNjcyMmU1IiwiY3JlYXRlZC1vbiI6IjIwMjUtMT\
AtMTVUMDA6MDA6MDBaIiwicGlubmVkLWRvbWFpbi1jZXJ0IjoiTUlJQmd6Q0NBU3FnQX\
dJQkFnSUdBV09XZTBSRk1Bb0dDQ3FHU000OUJBTUNNRFV4RXpBUkJnTlZCQW9NQ2sxNV\
FuVnphVzVsYzNNeERUQUxCZ05WQkFjTUJGTnBkR1V4RHpBTkJnTlZCQU1NQmxSbGMzUk\
RRVEFlRncweE9EQTFNalV3T0RRM016QmFGdzB5T0RBMU1qVXdPRFEzTXpCYU1EVXhFek\
FSQmdOVkJBb01DazE1UW5WemFXNWxjM014RFRBTEJnTlZCQWNNQkZOcGRHVXhEekFOQm\
dOVkJBTU1CbFJsYzNSRFFUQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQU\
JIOUVCdXVXVjdJS09ya040YjdsYTVJb2J5dFduV1p3Rm5QdHVsMDlhd3dVSEZQZStOWW\
M1WjVwdUo2ZEFuK0FrVzFnY1poQlhWR0JBM0crSXlSV1VXU2pKakFrTUJJR0ExVWRFd0\
VCL3dRSU1BWUJBZjhDQVFBd0RnWURWUjBQQVFIL0JBUURBZ0lFTUFvR0NDcUdTTTQ5Qk\
FNQ0EwY0FNRVFDSURlWlc2SWZjeUsvLzBBVFk2S21NYjRNMFFJU1FTZFVGVjdQNzlLWV\
ZJWVVBaUJRMVYrd0xSM1Uzd2NJWnhHSE1ISGx0N2M3ZzFDaFdNRVkveEFoU1NZaWlnPT\
0ifX0",
  "signatures": [
    {
      "protected": "eyJ4NWMiOlsiTUlJQmNEQ0I5cUFEQWdFQ0FnUUxod294TUFv\
R0NDcUdTTTQ5QkFNQ01DWXhKREFpQmdOVkJBTU1HMmhwWjJoM1lYa3RkR1Z6ZEM1bGVH\
RnRjR3hsTG1OdmJTQkRRVEFlRncweU1UQTBNVE15TVRRd01UWmFGdzB5TXpBME1UTXlN\
VFF3TVRaYU1DZ3hKakFrQmdOVkJBTU1IV2hwWjJoM1lYa3RkR1Z6ZEM1bGVHRnRjR3hs\
TG1OdmJTQk5RVk5CTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFcWdR\
Vm8wUzU0a1Q0eWZrYkJ4dW1kSE9jSHJwc3FiT3BNS21pTWxuM29CMUhBVzI1TUpWK2dx\
aTR0TUZmU0owaUV3dDhrc3pmV1hLNHJMZ0pTMm1ucGFNUU1BNHdEQVlEVlIwVEFRSC9C\
QUl3QURBS0JnZ3Foa2pPUFFRREFnTnBBREJtQWpFQXJzdGhMZFJjalc2R3Fnc0dIY2JU\
WUxveWN6WWwweU9GU1ljY3pwUWplUnFlUVZVa0hSVWlvVWk3Q3NDclBCTnpBakVBaGp4\
bnM1V2k0dVg1cmZrZG5NRTBNbmoxeityVlJ3T2ZBTC9RV2N0UndwZ0VnU1NLVVJOUXNY\
V3lMNTJvdFBTNSJdLCJ0eXAiOiJ2b3VjaGVyLWp3cytqc29uIiwiYWxnIjoiRVMyNTYi\
fQ",
      "signature": "s_gJM_4qzz1bxDtqh6Ybip42J_0_Y4CMdrMFb8lpPsAhDHVR\
AESNRL3n6M_F8dGQHm1fu66x83cK9E5cPtEdag"
    }
  ]
}
]]></artwork>
        </figure>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors would like to thank for following for
lively discussions on list and in the halls (ordered
by last name):
<contact fullname="William Atwood"/>,
<contact fullname="Michael H. Behringer"/>,
<contact fullname="Esko Dijk"/>,
<contact fullname="Steffen Fries"/>,
<contact fullname="Sheng Jiang"/>,
<contact fullname="Thomas Werner"/>.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
+aS+1YC8KrdTPVdbA6iaBuZVJdvquT39NKXLR6uD18qvNYYcxKtanJt9btVN
ZoJcqJumUpec2OgBpGUv5jOtxVTzB+11kgLNSbTKD6BH0ZNyOblzWyjZCZXu
c1aG1mA8s6s4TTWm+qT0+i5n3IejxRCQetmqzFmHb+Xg3EVfa4Uki4z0zE2D
tUz57oahvMCQ7kGeBBhgyrTY02teRKWuWZYqW/2Ru4FaQ2LSs4y5mt4/vKxV
NoVUenX2LZu8eu2gttJeFOqyAtl2VlwZhE4ScdOgzjk7AjLGzaNYC2n9kYN/
rIIUa3+ozCKrmH7GCWdWKf1EJXRZ5fTDTB4ZXVCpkDuHhxDLyynpGMV5pffB
rSYFHIh3Vv6StvJra6n3Wm+T5Bt15p9NSM56dHOzqBfIdIjmpv168zF3CbTU
oE3li2MJdozWjs4tYkFK2r12xtd8x8Z4PJuwvjihZkomNcgofapdyVJ/NDKp
opzoY+L5KpNVJZpQKyuKklJzixg9+B51a+QbJQd0xx9dd8J3QqUdTZ6DcKR0
WLzUONG6r2cJnrrM9VYSu9G0AOvVAzegcDXY+yEMVfd/0y1b22JfepIfAPCB
Y+tjMLs26TIAMksB7Ft56xQ+fPQXTLP0oOAoDCeSuJxgSskYkt1goM2JF0IX
xMvWjLal+jm9i6UXGNUkZjbLjEbvrS4b7yYzdakYeYhDeqdog++PZHt2fCki
B21DdV5HbKBPtAs3nH6MTcZ9u+fcb1Z2t2iYoGrqI0q9v9OCDbO1rZzlQhQo
XMd6lT573Fy+fmWpw7sfRHSf3IxuiL8Z+qn9TZk52kVSaJ6P/BcKDPHNF4/c
/JvLO7TQBmVhDOlfvP/Cx5p51+dLrdJrXZY7yPfSF6NgI/ODxBtdFxBMZR0Z
G2Z0g/MmcxC+a2Ij7YywRTeaic4HeEg0bJuqDr9+1e4E+0YHL0sN1L4pezqg
9GlxoQcmlqC9QN2q8f7uvWqpIK4DooCb44VTCnd2eGPb2SoX4X+iDtbsUaIb
+TbSxzZo8BrRGhu358gLdRxJATiZFH5B2qk8bQgPC6eKHG5AhzxEPqOYimhk
QPSvYRuLJqYSUl60FXM5Ucq3mZtoBUTER3ReiXi9AmnMrv0ACGoMrZKsnES8
KUqJfTNYBawtwnglZjaDVWS9ZWQKiRybJUEjXQyoirTNw6QSVU1yK387LVDV
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
qRGL/WYroNX9f8w51rb3Wd3b58909/nh/j4/2eHnJ3v8fG+XH04v8Wa6355/
KHuI0gpiN5zh9dF/BsOXmwP9tYhuFELJH67/yTQJwmKAJb10NZqiPFvRU8gc
vdRf6LuaCmV1WrPD0KtthUiHzjQmW24y9B2dhTIkvbLN0F/QaOhnWw39dLOh
72439NMNh1a3HMIA13e3HFrZdCijA6aNh5a7UZrkuBSk/mkCXJ6RWbJWDk6f
qqyvnzQlJfAzBJNRA3LNey0UInRV0sNVW9mfXAdV3S4JrTXxFPnDdU1a3q+w
b9csH6n4J5cpjyEjgeBEtrUGWH1/6ZIDYR5Lm/anlhGt7SSAcgSxQ2FL+up3
mZ7OfDvNzy0kW0gsf3SLTrDoJbxeqRpzOE9WyXPGjJa0iDmJHG2R/tNltUl5
tKWiL1NXKcOV+wqxdawyjX/WG0M/62X2dyaj/HMNple72a60mLb/k0wmsJhk
y1vjq1dtpegnbKUfMZU4iETRDTCVli0lc2C6KsEp0xN2FAdS4i4rRVNa/QHT
apoxrVZ7uuaiQid7i8LbFtbqdrboPZXH1jC6xfbWd4vNwIpax/5Es9if6xX7
VovmlCQa392kN7M+DWu/q0mvOVx07F1eEyJig6ijh/onGR8nzgLdufJGjU1A
6eXp2Dn8SSVold9iWSoF7r9Z0wqC1PeSaX+VUvL2MokrnpB6uGV5tdYdUrmB
zQnCFTpnXua4TNJGWKiqhxNu4qL9SCOVF5dbnTFj7HIN21GbeJdRhbLO3Tc5
z5JJ+d9syHjivwYbWsEq/uoeQtko+l/UQkjO+/c0h+CVVkIKb1e2FFpxAfx/
XmshrtT7+rV1ftWGh1SxUCyLn4DE9NbIkthjX5XWs/+Jc4bHY2QvSIpSRZcX
wjsRdQZTOTk5XJIKicWihk7V3GiL1VqNTGRX039+T6RqYW1PpGrhlZ5I1cJr
PZGqhR/siVQtvNYTqVp4oydStfAdPZGqhTU9kZAhvN0TqVrUeyK9GSeF5/Xu
SGvsFvVs6fVnl/spVYvlt4eoZyuv916qFjXwf6fJpYbWskOV6qMe2V31iJDA
6qG972g5VS2uPaoVICoVfqijVLVUfKWjVLVUWtnoSX5b/q5+U9VSZXVbKYk9
qr3Un2ogxbyRrklT/Z2MqsVMux6uG7QPfEo6aOnZuci7PZ/PMpxwe54rpqrY
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
rj/Mxh9qny7m1c87vYvK8MP8t994F+2zg5V7SDPaxDHojtvNtJB2awVMWu2r
Xuew04IJBUA6nf3oSws+uLlvzjv7zftO+/jl4X31S/Pj/v390/Dx4fzi8vKg
+dAcn3Yv5537u4NP8PfBfhI6N15oeaXD6snt1cgtX84+3w6H/dv9+HO3+tAv
Fe4vC22Y0j07fWjPzw465dPe/eK8dzq/Gd5fnD48Vs977YV1+qU9Pz1owr/7
zun+/OXooXm3f3/2ab953Wv3mvOT60v497p4cn23OMG/e83F6eHjvD2/O/4Y
fu5YXx4KcKZ3HfwDfj9oXro/dDyWfj5vHk/t7PPpoTs/vgQ4XMF8+3dt67B9
0/nywblpHl2W45Pw4fPN1eOn5v1R/9BJTpuPR83itdeeX7ZOm835xzmsdH63
v395fdzsNgHYd57lHI0mzrE39LvFwufbs8LJ+FPl7qY47x9dz+5K9eT84bFw
dnA6b92rbbbhtA4cmPDzZWdu3QVR//mhVz7amx2WA+f8cn5QPbh76Hi1B++i
OWx+OvkSX/T7rtt6PhjswQyfn+6f9j5dPTxFg7OkdmI1H9rNeFT8/L49ON69
PL99Oj04fuoc1546/eRz6bJ8fTudTT6et3o3peT54rQ4mRafwnFxZ7C4dpvv
d+bWbJq8pHi7hGcp0qZRCWSETXEdpIhHygS7lMlIJP6LGkhrMRG+heDASZyG
KiwQlUkNu2xvFl5KaSFCl0LU9hmFqBt2sVCsFSs1MIbwubJbL5bqff1x1UFJ
lZs3RI085tIA02qzp1CvPulQLnbDbp3Zv9FdESCecwkWxWg6jd1KK+dlUMco
lwAV2t4n933Dbk4j267axXqjXGtUd7GHYdE+Ou0tDWgOQPKBCX0KItOu2YXq
ugFd7gz6A4sUIzK1ImHDWIP2pQawKHZWgMkck4MxDXuzXNgt2f0g2Vp6jPTc
WdxY+gJ/CoVGv9LY7TdKu41KqVGpN+qDhu819qqNym5jt9IYDBoDgESh4Xqr
Z6h6jVKpUXQatUqjvIe/D/YahXrDKzW8WmNQbtQKDW+vUd9r7A5Wz+BXG3uV
RhUm8RtevQE2Y72Gq/LchlNrVMq4jNourhC+XTlD3cPF73qN/gBXAkPqpUa9
3/CKDc9rlCv4e6WIS/LLq2fwqo1qvdEvNyqFxsDFX9x6wy82qnu4tvKgsbfb
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
RgeBMfZmx21vubgeqZvAnDfc5eDvlvcWOdbzfJZfb+Wzek1i7snLtpXRr098
Ks/okeqP7k1HGMUWvoYKfI2X1C5+3S6y+mSv3KrQgek0tKxvm8pYKqVPKK+e
0hMvbV9LIERHzS700QyXh3591Q6L/Z3eUnDDrcfxLsdRLV/BZD6E7OC9NPnV
8y6M1C33Jii1I5c2x5H2RFZ8LGv2qb1eIiXTK1u2KUb1xEG44sPUPj3lQW/p
Vi8OWS9Gw32t4kB7VU0IDdUzopcbI04WmJhL7u2adO111YOnnG2B4mzZ7S41
fkq+fxW8uhZPW+NB240gpgf9ocJcPBYyQcuXetwnxGfmP0/E+UP0+pX33lYD
fp6H8wZ185Sun3Jr/N0ZObEkCtsL8fVTWeRTa5/17WB+moY0e0Gm6A+GxOfv
c2VMU2WzLmAzjvK98p6oaErEZXVSlXusDtW+Bs/IESTL5U9KT4+my9Oma5L/
Vm+6Qfh2bno/R32cNMV0MAq+/HiCht+f8BcPABYCAvV5es6fzc65pBZqaWe5
KN0FMd6RMDzqRDvE2rW7UZfo0Jm7OjerhmsFRuMxuzQN9JJe8sXdVM6OQedy
f9+Ut+mMvd3iuk8Nh62bLjQtk1/0lMS/uYffXUm9J03583SmFHS8JNTztJfr
7Z7tEzsu8Eq9pDdViyOX8vftGE9+RY8HxfHjeOqs4mRfThaCpWbDvIX5WryJ
16MAprmQjCie2xLni4e3vJ7LhGpMmTabgplersjuD2d+/2rh+G73XSqnjrOD
NrBuHh73S7a9H53l/5db8Tux+zsS95fz4pQsSeiTlEx5t1qX3rBmdy87TTUs
39DAuOnKfG+sxPg5mOqfzov7q679s56l/mPXWn9vXtw/fkyE/LRm73eb/rxf
PLtOBanZLJvZMwZENsWWnDsXoig07dwig+TyeyGt0qxMhcAyZTIk+zQ9VNTn
yJzQqyk5iQVdl8rmlocY0UHOsBGHilBF494zqthDc+xsldRbhvLZrIpzfXUa
jSzmQBU3dhexi/yQG31cbxchZrpEI40tGkVco4wMt3KPtw+9aHPKLPjRzOke
jPRgKtYAprY/SO1wEBfMwU3vpmStTKIZyM1T4Bmdj/t71KC7X6ORmksgX97t
+ePCO9HX9/nYlPT5hkfELovA0Vd6YbNIA32smKPFosFqupaysf0McQDMOp4v
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
h7cveN7Fby6N4M7/AOhz9wasWgEA

-->

</rfc>
