<?xml version='1.0' encoding='utf-8'?>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.3.35 -->
<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent">
<?rfc toc="yes"?>
<?rfc tocdepth="1"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc compact="yes"?>
<?rfc comments="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-cbor-tags-oid-05" category="std" consensus="true" obsoletes="" updates="" submissionType="IETF" xml:lang="en" tocInclude="true" tocDepth="1" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.5.0 -->
  <front>
    <title abbrev="CBOR Tags for OIDs">Concise Binary Object Representation (CBOR) Tags for Object&nbsp;Identifiers</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-cbor-tags-oid-05"/>
    <author initials="C." surname="Bormann" fullname="Carsten Bormann">
      <organization>Universität Bremen TZI</organization>
      <address>
        <postal>
          <street>Postfach 330440</street>
          <city>Bremen</city>
          <code>D-28359</code>
          <country>Germany</country>
        </postal>
        <phone>+49-421-218-63921</phone>
        <email>cabo@tzi.org</email>
      </address>
    </author>
    <date year="2021" month="February" day="19"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>The Concise Binary Object Representation (CBOR, RFC 8949) 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.</t>
      <t>The present document defines CBOR tags for
object identifiers (OIDs).  It is intended
as the reference document for the IANA registration of the CBOR tags
so defined.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="intro" toc="default">
      <name>Introduction</name>
      <t>The Concise Binary Object Representation (CBOR, <xref target="RFC8949" format="default"/>) provides
for the interchange of structured data without a requirement for a
pre-agreed schema.
<xref target="RFC8949" format="default"/> defines a basic set of data types, as well as a tagging
mechanism that enables extending the set of data types supported via
an IANA registry.</t>
      <t>The present document defines CBOR tags for object identifiers
(OIDs, <xref target="X.660" format="default"/>), which many IETF protocols carry.
The ASN.1 Basic Encoding Rules
(BER, <xref target="X.690" format="default"/>) specify binary encodings of both (absolute) object identifiers
and relative object identifiers.
The contents of these encodings (the "value" part of BER's
type-length-value structure) can be carried in a CBOR byte string.
This document defines two CBOR tags that cover the two kinds of
ASN.1 object identifiers encoded in this way.
The tags can also be applied to arrays and maps to efficiently tag all
elements of an array or all keys of a map.
It is intended as the reference document for the IANA registration of
the tags so defined.</t>
      <section anchor="terms" toc="default">
        <name>Terminology</name>
        <t>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&nbsp;14 <xref target="RFC2119" format="default"/> <xref target="RFC8174" format="default"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <t>The terminology of <xref target="RFC8949" format="default"/> applies; in particular
the term "byte" is used in its now customary sense as a synonym for
"octet".
The term "SDNV" is used as defined in <xref target="RFC6256" format="default"/>.</t>
      </section>
    </section>
    <section anchor="oids" toc="default">
      <name>Object Identifiers</name>
      <t>The International Object Identifier tree <xref target="X.660" format="default"/> is
a hierarchically managed space of
identifiers, each of which is uniquely represented as a sequence of
unsigned integer values
<xref target="X.680" format="default"/>.
(These integer values are called "primary integer values" in X.660
because they can be accompanied by (not necessarily unambiguous)
secondary identifiers.  We ignore the latter and simply use the term
"integer values" here, occasionally calling out their unsignedness.
We also use the term "arc" when the focus is on the edge of the tree
labeled by such an integer value, as well as in the sense of a "long
arc", i.e. a (sub)sequence of such integer values.)</t>
      <t>While these sequences can easily be represented in CBOR arrays of
unsigned integers, a more compact representation can often be achieved
by adopting the widely used representation of object identifiers
defined in BER; this representation may also be more amenable to
processing by other software that makes use of object identifiers.</t>
      <t>BER represents the sequence of unsigned integers by concatenating
self-delimiting <xref target="RFC6256" format="default"/> representations of each of the integer values in sequence.</t>
      <t>ASN.1 distinguishes absolute object identifiers (ASN.1 Type <tt>OBJECT IDENTIFIER</tt>),
which begin at a root arc (<xref target="X.660" format="default"/> Clause 3.5.21), from relative object
identifiers (ASN.1 Type <tt>RELATIVE-OID</tt>), which begin
relative to some object identifier known from context (<xref target="X.680" format="default"/>
Clause 3.8.63).
As a special optimization,
BER combines the first two integers in an absolute object identifier
into one numeric identifier by making use of the property of the
hierarchy that the first arc has only three integer values (0, 1, and 2),
and the second arcs under 0 and 1 are limited to the integer values between
0 and 39.  (The root arc <tt>joint-iso-itu-t(2)</tt> has
no such limitations on its second arc.)
If X and Y are the first two integer values,
the single integer value actually encoded is computed as:</t>
      <ul empty="true" spacing="normal">
        <li>X * 40 + Y</li>
      </ul>
      <t>The inverse transformation (again making use of the known ranges of X
and Y) is applied when decoding the object identifier.</t>
      <t>Since the semantics of absolute and relative object identifiers
differ, this specification defines two tags, collectively called the
"OID tags" here:</t>
      <t>Tag TBD111: tags a byte string as the <xref target="X.690" format="default"/> encoding of an
absolute object identifier (simply "object identifier" or "OID").</t>
      <t>Tag TBD110: tags a byte string as the <xref target="X.690" format="default"/> encoding of a relative
object identifier (also "relative OID").  Since the encoding of each
number is the same as for <xref target="RFC6256" format="default"/> Self-Delimiting Numeric Values
(SDNVs), this tag can also be used for tagging a byte string that
contains a sequence of zero or more SDNVs.</t>
      <t>Tag TBD112: structurally like TBD110, but understood to be relative to
<tt>1.3.6.1.4.1</tt> (IANA Private Enterprise Number OID, <xref target="IANA.enterprise-numbers" format="default"/>).  Hence, the
semantics of the result are that of an absolute object identifier.</t>
      <section anchor="reqts" toc="default">
        <name>Requirements on the byte string being tagged</name>
        <t>To form a valid tag, a byte string tagged by TBD111, TBD110, or TBD112 MUST be a syntactically valid BER
representation of an object identifier: A concatenation of zero or
more SDNV values, where each SDNV value is a sequence of one or more bytes that
all have their most significant bit set, except for the last byte,
where it is unset.
Also, the first byte of each SDNV cannot be a
leading zero in SDNV's base-128 arithmetic, so it cannot take the
value 0x80 (bullet (c) in Section 8.1.2.4.2 of <xref target="X.690" format="default"/>).</t>
        <t>In other words:</t>
        <ul spacing="normal">
          <li>the byte string's first byte, and any byte that follows a byte that has the most significant
bit unset, MUST NOT be 0x80 (this requirement requires expressing the
integer values in their shortest form, with no leading zeroes)</li>
          <li>the byte string's last byte MUST NOT have the most significant bit set (this
requirement excludes an incomplete final integer value)</li>
        </ul>
        <t>If either of these invalid conditions are encountered, the tag is
invalid.</t>
        <t><xref target="X.680" format="default"/> restricts RELATIVE-OID values to have at least
one arc, i.e., their encoding would have at least one SDNV.
This specification permits
empty relative object identifiers; they may
still be excluded by application semantics.</t>
        <t>To facilitate the search for specific object ID values, it is RECOMMENDED
that definite length encoding (see Section 3.2.3 of <xref target="RFC8949" format="default"/>) is used
for the byte strings used as tag content for these tags.</t>
        <t>The valid set of byte strings can also be expressed using regular
expressions on bytes, using no specific notation but resembling
<xref target="PCRE" format="default"/>.  Unlike typical regular expressions that operate on
character sequences, the following regular expressions take bytes as
their domain, so they can be applied directly to CBOR byte strings.</t>
        <t>For byte strings with tag TBD111:</t>
        <ul empty="true" spacing="normal">
          <li>
            <tt>/^(([\x81-\xFF][\x80-\xFF]*)?[\x00-\x7F])+$/</tt></li>
        </ul>
        <t>For byte strings with tag TBD110 or TBD112:</t>
        <ul empty="true" spacing="normal">
          <li>
            <tt>/^(([\x81-\xFF][\x80-\xFF]*)?[\x00-\x7F])*$/</tt></li>
        </ul>
        <t>A tag with tagged content that does not conform to the applicable
regexp is invalid.</t>
      </section>
      <section anchor="discussion" toc="default">
        <name>Discussion</name>
        <t>Staying close to the way object identifiers are encoded in ASN.1
BER makes back-and-forth translation easy; otherwise we would choose a
more efficient encoding.  Object
identifiers in IETF protocols
are serialized in dotted decimal form or BER form, so
there is an advantage in not inventing a third form.  Also,
expectations of the cost of encoding object identifiers are
based on BER; using a different encoding might not be aligned with
these expectations. If additional information about an OID is desired,
lookup services such as
the <xref target="X.672" format="default">OID Resolution Service (ORS)</xref>
and the <xref target="OID-INFO" format="default">OID Repository</xref> are available.</t>
      </section>
    </section>
    <section anchor="examples" toc="default">
      <name>Basic Examples</name>
      <t>This section gives simple examples of an absolute and a relative
object identifier, represented via tag number TBD111 and TBD110,
respectively.</t>
      <!-- <note removeinrfc="true" markdown="1"> -->
<t>RFC editor: These and other examples assume the allocation of 111 for
TBD111 and 110 for TBD110 and need to be changed if that isn't the
actual allocation.  Please remove this paragraph.
<!-- </note> -->
      </t>
      <section anchor="encoding-of-the-sha-256-oid" toc="default">
        <name>Encoding of the SHA-256 OID</name>
        <dl>
          <dt>
ASN.1 Value Notation:  </dt>
          <dd>
            <t>{ joint-iso-itu-t(2) country(16) us(840) organization(1) gov(101)
  csor(3) nistalgorithm(4) hashalgs(2) sha256(1) }</t>
          </dd>
          <dt>
Dotted Decimal Notation:  </dt>
          <dd>
            <t>2.16.840.1.101.3.4.2.1</t>
          </dd>
        </dl>
        <figure anchor="fig-sha-ber">
          <name>SHA-256 OID in BER</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
06                                # UNIVERSAL TAG 6
   09                             # 9 bytes, primitive
      60 86 48 01 65 03 04 02 01  # X.690 Clause 8.19
#      |   840  1  |  3  4  2  1    show component encoding
#   2.16         101
]]></artwork>
        </figure>
        <figure anchor="fig-sha-cbor">
          <name>SHA-256 OID in CBOR</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
D8 6F                             # tag(111)
   49                             # 0b010_01001: mt 2, 9 bytes
      60 86 48 01 65 03 04 02 01  # X.690 Clause 8.19
]]></artwork>
        </figure>
      </section>
      <section anchor="encoding-of-a-mib-relative-oid" toc="default">
        <name>Encoding of a MIB Relative OID</name>
        <t>Given some OID (e.g., <tt>lowpanMib</tt>, assumed to be <tt>1.3.6.1.2.1.226</tt> <xref target="RFC7388" format="default"/>),
to which the following is added:</t>
        <dl>
          <dt>
ASN.1 Value Notation:  </dt>
          <dd>
            <t>{ lowpanObjects(1) lowpanStats(1) lowpanOutTransmits(29) }</t>
          </dd>
          <dt>
Dotted Decimal Notation:  </dt>
          <dd>
            <t>.1.1.29</t>
          </dd>
        </dl>
        <figure anchor="fig-mib-ber">
          <name>MIB relative object identifier, in BER</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
0D                                # UNIVERSAL TAG 13
   03                             # 3 bytes, primitive
      01 01 1D                    # X.690 Clause 8.20
#      1  1 29                      show component encoding
]]></artwork>
        </figure>
        <figure anchor="fig-mib-cbor">
          <name>MIB relative object identifier, in CBOR</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
D8 6E                             # tag(110)
   43                             # 0b010_01001: mt 2 (bstr), 3 bytes
      01 01 1D                    # X.690 Clause 8.20
]]></artwork>
        </figure>
        <t>This relative OID saves seven bytes compared to the full OID encoding.</t>
      </section>
    </section>
    <section anchor="tfs" toc="default">
      <name>Tag Factoring with Arrays and Maps</name>
      <t>OID tags can tag byte strings (as discussed above), but also CBOR arrays and maps.
The idea in the latter case is that
the tag is factored out from each individual item in the container;
the tag is placed on the array or map instead.</t>
      <t>When an OID tag is applied to an array, it means
that the respective tag is imputed to all elements of the array that are
byte strings, arrays, or maps.  (There is no effect on other elements,
including text strings or tags.)
For example, when an array is tagged with TBD111,
every array element that is a byte string
is an OID, and every element that is an array or map is in turn
treated as discussed here.</t>
      <t>When an OID tag is applied to a map, it means that
the respective tag is imputed to all keys in the map that are byte
strings, arrays, or maps; again, there is no effect on keys of other major types.
Note that there is also no effect on the values in the map.</t>
      <t>As a result of these rules, tag factoring in nested arrays and maps is supported.
For example,
a 3-dimensional array of OIDs can be composed by using
a single TBD111 tag containing an array of arrays of arrays
of byte strings. All such byte strings are then considered OIDs.</t>
      <section anchor="tag-factoring-example-x500-distinguished-name" toc="default">
        <name>Tag Factoring Example: X.500 Distinguished Name</name>
        <t>Consider the X.500 distinguished name:</t>
        <table anchor="tab-dn-data" align="center">
          <name>Example X.500 Distinguished Name</name>
          <thead>
            <tr>
              <th align="left">Attribute Types</th>
              <th align="left">Attribute Values</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">c (2.5.4.6)</td>
              <td align="left">US</td>
            </tr>
            <tr>
              <td align="left">l (2.5.4.7)<br/>s (2.5.4.8)<br/>postalCode (2.5.4.17)</td>
              <td align="left">Los Angeles<br/>CA<br/>90013</td>
            </tr>
            <tr>
              <td align="left">street (2.5.4.9)</td>
              <td align="left">532 S Olive St</td>
            </tr>
            <tr>
              <td align="left">businessCategory (2.5.4.15)<br/>buildingName (0.9.2342.19200300.100.1.48)</td>
              <td align="left">Public Park<br/>Pershing Square</td>
            </tr>
          </tbody>
        </table>
        <t><xref target="tab-dn-data" format="default"/> has four "relative distinguished names" (RDNs). The country and street RDNs are single-valued.
The second and fourth RDNs are multi-valued.</t>
        <t>The equivalent representations in CBOR diagnostic notation (<xref section="8" sectionFormat="of" target="RFC8949" format="default"/>) and CBOR are:</t>
        <figure anchor="fig-dn-cbor-diag">
          <name>Distinguished Name, in CBOR Diagnostic Notation</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
111([{ h'550406': "US" },
     { h'550407': "Los Angeles", h'550408': "CA",
       h'550411': "90013" },
     { h'550409': "532 S Olive St" },
     { h'55040f': "Public Park",
       h'0992268993f22c640130': "Pershing Square" }])
]]></artwork>
        </figure>
        <figure anchor="fig-dn-cbor">
          <name>Distinguished Name, in CBOR (109 bytes)</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
d8 6f                                      # tag(111)
   84                                      # array(4)
      a1                                   # map(1)
         43 550406                         # 2.5.4.6 (4)
         62                                # text(2)
            5553                           # "US"
      a3                                   # map(3)
         43 550407                         # 2.5.4.7 (4)
         6b                                # text(11)
            4c6f7320416e67656c6573         # "Los Angeles"
         43 550408                         # 2.5.4.8 (4)
         62                                # text(2)
            4341                           # "CA"
         43 550411                         # 2.5.4.17 (4)
         65                                # text(5)
            3930303133                     # "90013"
      a1                                   # map(1)
         43 550409                         # 2.5.4.9 (4)
         6e                                # text(14)
            3533322053204f6c697665205374   # "532 S Olive St"
      a2                                   # map(2)
         43 55040f                         # 2.5.4.15 (4)
         6b                                # text(11)
            5075626c6963205061726b         # "Public Park"
         4a 0992268993f22c640130    # 0.9.2342.19200300.100.1.48 (11)
         6f                                # text(15)
            5065727368696e6720537175617265 # "Pershing Square"
]]></artwork>
        </figure>
        <t>(This example encoding assumes that all attribute values are UTF-8 strings,
or can be represented as UTF-8 strings with no loss of information.)</t>
      </section>
    </section>
    <section anchor="control" toc="default">
      <name>CDDL Control Operators</name>
      <t>CDDL specifications may want to specify the use of SDNVs or SDNV
sequences (as defined for the tag content for TBD110).  This document
introduces two new control operators that can be applied to a target
value that is a byte string:</t>
      <ul spacing="normal">
        <li>
          <tt>.sdnv</tt>, with a control type that contains unsigned integers.  The
byte string is specified to be encoded as an <xref target="RFC6256" format="default"/> SDNV (BER
encoding) for the matching values of the control type.</li>
        <li>
          <tt>.sdnvseq</tt>, with a control type that contains arrays of unsigned
integers.  The byte string is specified to be encoded as a sequence
of <xref target="RFC6256" format="default"/> SDNVs (BER encoding) that decodes to an array of
unsigned integers matching the control type.</li>
        <li>
          <tt>.oid</tt>, like <tt>.sdnvseq</tt>, except that the X*40+Y translation for
absolute OIDs is included (see <xref target="fig-dn-cddl-oid" format="default"/>).</li>
      </ul>
      <t><xref target="fig-dn-cddl" format="default"/> shows an example for the use of <tt>.sdnvseq</tt> for a part
of a structure using OIDs that could be used in <xref target="fig-dn-cbor" format="default"/>;
<xref target="fig-dn-cddl-oid" format="default"/> shows the same with the <tt>.oid</tt> operator.</t>
      <figure anchor="fig-dn-cddl">
        <name>Using .sdnvseq</name>
        <sourcecode type="cddl">
country-rdn = {country-oid =&gt; country-value}
country-oid = bytes .sdnvseq [85, 4, 6]
country-value = text .size 2
</sourcecode>
      </figure>
      <figure anchor="fig-dn-cddl-oid">
        <name>Using .oid</name>
        <sourcecode type="cddl">
country-rdn = {country-oid =&gt; country-value}
country-oid = bytes .oid [2, 5, 4, 6]
country-value = text .size 2
</sourcecode>
      </figure>
      <t>Note that the control type need not be a literal; e.g., <tt>bytes .oid
[2, 5, 4, *uint]</tt> matches all OIDs inside OID arc 2.5.4,
<tt>attributeType</tt>.</t>
    </section>
    <section anchor="cddl-typenames" toc="default">
      <name>CDDL typenames</name>
      <t>For the use with CDDL <xref target="RFC8610" format="default"/>, the
typenames defined in <xref target="tag-cddl" format="default"/> are recommended:</t>
      <figure anchor="tag-cddl">
        <name>Recommended typenames for CDDL</name>
        <sourcecode type="CDDL">
oid = #6.111(bstr)
roid = #6.110(bstr)
pen = #6.112(bstr)
</sourcecode>
      </figure>
    </section>
    <section anchor="iana" toc="default">
      <name>IANA Considerations</name>
      <section anchor="cbor-tags" toc="default">
        <name>CBOR Tags</name>
        <t>IANA is requested to assign the CBOR tags in <xref target="tab-tag-values-new" format="default"/>, with the
present document as the specification reference.</t>
        <table anchor="tab-tag-values-new" align="center">
          <name>Values for New Tags</name>
          <thead>
            <tr>
              <th align="left">Tag</th>
              <th align="left">Data Item</th>
              <th align="right">Semantics</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">TBD111</td>
              <td align="left">byte string or array or map</td>
              <td align="right">object identifier (BER encoding)</td>
            </tr>
            <tr>
              <td align="left">TBD110</td>
              <td align="left">byte string or array or map</td>
              <td align="right">relative object identifier (BER encoding); <br/>SDNV <xref target="RFC6256" format="default"/> sequence</td>
            </tr>
            <tr>
              <td align="left">TBD112</td>
              <td align="left">byte string or array or map</td>
              <td align="right">object identifier (BER encoding), relative to 1.3.6.1.4.1</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="cddl-control-operators" toc="default">
        <name>CDDL Control Operators</name>
        <t>IANA is requested to assign the CDDL Control Operators in
<xref target="tab-operators-new" format="default"/>, with the present document as the specification
reference.</t>
        <table anchor="tab-operators-new" align="center">
          <name>New CDDL Operators</name>
          <thead>
            <tr>
              <th align="left">Name</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">.sdnv</td>
              <td align="left">[this document, <xref target="control" format="default"/>]</td>
            </tr>
            <tr>
              <td align="left">.sdnvseq</td>
              <td align="left">[this document, <xref target="control" format="default"/>]</td>
            </tr>
            <tr>
              <td align="left">.oid</td>
              <td align="left">[this document, <xref target="control" format="default"/>]</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="security-considerations" toc="default">
      <name>Security Considerations</name>
      <t>The security considerations of <xref target="RFC8949" format="default"/> apply.</t>
      <t>The encodings in Clauses 8.19 and 8.20 of <xref target="X.690" format="default"/> are quite compact and unambiguous,
but MUST be followed precisely to avoid security pitfalls.
In particular, the requirements set out in <xref target="reqts" format="default"/> of this document need to be
followed; otherwise, an attacker may be able to subvert a checking
process by submitting alternative representations that are later taken
as the original (or even something else entirely) by another decoder
supposed to be protected by the checking process.</t>
      <t>OIDs and relative OIDs can always be treated as opaque byte strings.
Actually understanding the structure that was used for generating them
is not necessary, and, except for checking the structure requirements,
it is strongly NOT RECOMMENDED to perform any
processing of this kind (e.g., converting into dotted notation and
back) unless absolutely necessary.
If the OIDs are translated into other representations, the usual
security considerations for non-trivial representation conversions
apply; the integer values are unlimited in range.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC6256" target="https://www.rfc-editor.org/info/rfc6256">
          <front>
            <title>Using Self-Delimiting Numeric Values in Protocols</title>
            <author fullname="W. Eddy" initials="W." surname="Eddy">
              <organization/>
            </author>
            <author fullname="E. Davies" initials="E." surname="Davies">
              <organization/>
            </author>
            <date month="May" year="2011"/>
            <abstract>
              <t>Self-Delimiting Numeric Values (SDNVs) have recently been introduced as a field type in proposed Delay-Tolerant Networking protocols. SDNVs encode an arbitrary-length non-negative integer or arbitrary- length bitstring with minimum overhead.  They are intended to provide protocol flexibility without sacrificing economy and to assist in future-proofing protocols under development.  This document describes formats and algorithms for SDNV encoding and decoding, along with notes on implementation and usage.  This document is a product of the Delay-Tolerant Networking Research Group and has been reviewed by that group.  No objections to its publication as an RFC were raised.  This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6256"/>
          <seriesInfo name="DOI" value="10.17487/RFC6256"/>
        </reference>
        <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">
              <organization/>
            </author>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman">
              <organization/>
            </author>
            <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>
        <reference anchor="RFC8610" target="https://www.rfc-editor.org/info/rfc8610">
          <front>
            <title>Concise Data Definition Language (CDDL): A Notational Convention to Express Concise Binary Object Representation (CBOR) and JSON Data Structures</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz">
              <organization/>
            </author>
            <author fullname="C. Vigano" initials="C." surname="Vigano">
              <organization/>
            </author>
            <author fullname="C. Bormann" initials="C." surname="Bormann">
              <organization/>
            </author>
            <date month="June" year="2019"/>
            <abstract>
              <t>This document proposes a notational convention to express Concise Binary Object Representation (CBOR) data structures (RFC 7049).  Its main goal is to provide an easy and unambiguous way to express structures for protocol messages and data formats that use CBOR or JSON.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8610"/>
          <seriesInfo name="DOI" value="10.17487/RFC8610"/>
        </reference>
        <reference anchor="X.660" target="https://www.itu.int/rec/T-REC-X.660">
          <front>
            <title>Information technology — Procedures for the operation of object identifier registration authorities: General procedures and top arcs of the international object identifier tree</title>
            <author>
              <organization>International Telecommunications Union</organization>
            </author>
            <date year="2011" month="July"/>
          </front>
          <seriesInfo name="ITU-T" value="Recommendation X.660"/>
        </reference>
        <reference anchor="X.680" target="https://www.itu.int/rec/T-REC-X.680">
          <front>
            <title>Information technology — Abstract Syntax Notation One (ASN.1): Specification of basic notation</title>
            <author>
              <organization>International Telecommunications Union</organization>
            </author>
            <date year="2015" month="August"/>
          </front>
          <seriesInfo name="ITU-T" value="Recommendation X.680"/>
        </reference>
        <reference anchor="X.690" 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 Telecommunications Union</organization>
            </author>
            <date year="2015" month="August"/>
          </front>
          <seriesInfo name="ITU-T" value="Recommendation X.690"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner">
              <organization/>
            </author>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba">
              <organization/>
            </author>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="X.672" target="https://www.itu.int/rec/T-REC-X.672">
          <front>
            <title>Information technology — Open systems interconnection — Object identifier resolution system</title>
            <author>
              <organization>International Telecommunications Union</organization>
            </author>
            <date year="2010" month="August"/>
          </front>
          <seriesInfo name="ITU-T" value="Recommendation X.672"/>
        </reference>
        <reference anchor="PCRE" target="http://www.pcre.org/">
          <front>
            <title>PCRE - Perl Compatible Regular Expressions</title>
            <author initials="A." surname="Ho" fullname="Andrew Ho">
              <organization/>
            </author>
            <date year="2018"/>
          </front>
        </reference>
        <reference anchor="OID-INFO" target="http://www.oid-info.com/">
          <front>
            <title>OID Repository</title>
            <author>
              <organization>Orange SA</organization>
            </author>
            <date year="2016"/>
          </front>
        </reference>
        <reference anchor="IANA.enterprise-numbers" target="http://www.iana.org/assignments/enterprise-numbers">
          <front>
            <title>enterprise-numbers</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="RFC7388" target="https://www.rfc-editor.org/info/rfc7388">
          <front>
            <title>Definition of Managed Objects for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs)</title>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder">
              <organization/>
            </author>
            <author fullname="A. Sehgal" initials="A." surname="Sehgal">
              <organization/>
            </author>
            <author fullname="T. Tsou" initials="T." surname="Tsou">
              <organization/>
            </author>
            <author fullname="C. Zhou" initials="C." surname="Zhou">
              <organization/>
            </author>
            <date month="October" year="2014"/>
            <abstract>
              <t>This document defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community.  In particular, it defines objects for managing IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7388"/>
          <seriesInfo name="DOI" value="10.17487/RFC7388"/>
        </reference>
      </references>
    </references>
    <section removeInRFC="true" anchor="change-log" toc="default">
      <name>Change Log</name>
      <section anchor="changes-from-04-to-05" toc="default">
        <name>Changes from -04 to -05</name>
        <ul spacing="normal">
          <li>Update acknowledgements, contributor list, and author list</li>
        </ul>
      </section>
      <section anchor="changes-from-03-to-04" toc="default">
        <name>Changes from -03 to -04</name>
        <t>Process WGLC and shepherd comments:</t>
        <ul spacing="normal">
          <li>Update references (RFC 8949, URIs for ITU-T)</li>
          <li>Define arc for this document, reference SDN definition</li>
          <li>Restructure, small editorial clarifications</li>
        </ul>
      </section>
      <section anchor="changes-from-02-to-03" toc="default">
        <name>Changes from -02 to -03</name>
        <ul spacing="normal">
          <li>Add tag TBD112 for PEN-relative OIDs</li>
          <li>Add suggested CDDL typenames; reference RFC8610</li>
        </ul>
      </section>
      <section anchor="changes-from-01-to-02" toc="default">
        <name>Changes from -01 to -02</name>
        <t>Minor editorial changes, remove some remnants, ready for WGLC.</t>
      </section>
      <section anchor="changes-from-00-to-01" toc="default">
        <name>Changes from -00 to -01</name>
        <t>Clean up OID tag factoring.</t>
      </section>
      <section anchor="changes-from-07-bormann-to-00-ietf" toc="default">
        <name>Changes from -07 (bormann) to -00 (ietf)</name>
        <t>Resubmitted as WG draft after adoption.</t>
      </section>
      <section anchor="changes-from-06-to-07" toc="default">
        <name>Changes from -06 to -07</name>
        <t>Reduce the draft back to its basic mandate: Describe CBOR tags for
what is colloquially know as ASN.1 Object IDs.</t>
      </section>
      <section anchor="changes-from-05-to-06" toc="default">
        <name>Changes from -05 to -06</name>
        <t>Refreshed the draft to the current date ("keep-alive").</t>
      </section>
      <section anchor="changes-from-04-to-05-1" toc="default">
        <name>Changes from -04 to -05</name>
        <t>Discussed UUID usage in CBOR, and incorporated fixes
proposed by Olivier Dubuisson, including fixes regarding OID nomenclature.</t>
      </section>
      <section anchor="changes-from-03-to-04-1" toc="default">
        <name>Changes from -03 to -04</name>
        <t>Changes occurred based on limited feedback, mainly centered around
the abstract and introduction, rather than substantive
technical changes. These changes include:</t>
        <ul spacing="normal">
          <li>Changed the title so that it is about tags and techniques.</li>
          <li>Rewrote the abstract to describe the content more accurately,
and to point out that no changes to the wire protocol are being proposed.</li>
          <li>Removed "ASN.1" from "object identifiers", as OIDs are independent of ASN.1.</li>
          <li>Rewrote the introduction to be more about the present text.</li>
          <li>Proposed a concise OID arc.</li>
          <li>Provided binary regular expression forms for OID validation.</li>
          <li>Updated IANA registration tables.</li>
        </ul>
      </section>
      <section anchor="changes-from-02-to-03-1" toc="default">
        <name>Changes from -02 to -03</name>
        <t>Many significant changes occurred in this version. These changes include:</t>
        <ul spacing="normal">
          <li>Expanded the draft scope to be a comprehensive CBOR update.</li>
          <li>Added OID-related sections: OID Enumerations,
OID Maps and Arrays, and
Applications and Examples of OIDs.</li>
          <li>Added Tag 36 update (binary MIME, better definitions).</li>
          <li>Added stub/experimental sections for X.690 Series Tags (tag &lt;&lt;X&gt;&gt;)
and Regular Expressions (tag 35).</li>
          <li>Added technique for representing sets and multisets.</li>
          <li>Added references and fixed typos.</li>
        </ul>
        <!--  LocalWords:  CBOR extensibility IANA uint sint IEEE endian IETF
 -->
<!--  LocalWords:  signedness endianness ASN BER encodings OIDs OID
 -->
<!--  LocalWords:  Implementers SDNV SDNVs repurpose SDNV's UTF
 -->

</section>
    </section>
    <section numbered="false" anchor="acknowledgments" toc="default">
      <name>Acknowledgments</name>
      <t><contact fullname="Sean Leonard"/> started the work on this document in 2014 with an
elaborate proposal.
<contact fullname="Jim Schaad"/> provided a significant review of this document.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="S." surname="Leonard" fullname="Sean Leonard">
        <organization>Penango, Inc.</organization>
        <address>
          <postal>
            <street>5900 Wilshire Boulevard</street>
            <street>21st Floor</street>
            <city>Los Angeles, CA</city>
            <code>90036</code>
            <country>USA</country>
          </postal>
          <email>dev+ietf@seantek.com</email>
          <uri>http://www.penango.com/</uri>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAE67L2AAA8Vc63YbR3L+30/RAXOOARuAcCHAi9bOUiRlc49EKbys7XiV
cDDTAGYFzMAzA1I0xZw8RB4gP/Ivj5B/zpvkSfJVVfdcAJCUvD4nOKYFzPSl
uu5VXd2tVktlYTYz+/obpfVhHPlhavSLMPKSW/1m9FfjZ/rMLBKTmijzsjCO
dP3wxZuzhr7wJqkex4lt9et/nARoEo5Dk6TKG40Sc72vqWmp5clRqoLYj7w5
JgwSb5y1QpONW/4oTloZmrXiMGjNvMykmQrwz77udXrdVqfX6u4plWZeFPyL
N4sjvMiSpVEqXCT8Nc16nc5ep6fem9ubOAn29UmUmSQyWeuI5lG+l+3rNAuU
H0dYS7pM3RCLcF//lMV+k/8fmEU2beruu6ZO4yRLzDjFt9u5fPHj+cLzM/4y
x3LTd0p5y2waJ/tAXwt/WocRhj5s6xdxMveiiJ/Jig+9JM1MVHkTJ5N9fRmF
10BbmP3Pf2b6RWIwtL74pxNukAIGA9jfxmk29vyp7vc729sdfueH2e2+7SAP
4gDzHLV6u/3Bnn2yjLIErb41NOktP1xMGYVfbe+1toHeXne3Nezv9br80sy9
cLavfW8U/zH7JWwDQkVYy5JwtMzWVnre1q9MDH4JSis9N15UeWwHDcz1V0Tx
P6ZokJn3beCR3y8TUGGaZYv9Z89ubm7aCxN50SSm988KPL2Vp00Q12+XscPf
AZYe7HU6+vtwlk7DBHwcL2fm2sFA73vdNNMvZ3GclBD4Kk71QTQxMwMSHx6U
MInR+sMqHi/PD5RSEZEwA9Vo6rOXh8PeYAj+CqJr+b27t70HHI54Hvo97Hbw
Owhm+P1DezjsCMwl4aPPSTSWgSFnmfGnUTyLJ7f6f//t322Dt0nsm2AJeWSJ
yqZGxwuTSI94rGMR2TCXRZ2YSQgsSQvh1TALTepw9q2J0H+mF8XIkDKdxQvt
JX5Kg9IsIYsTj4LG69MQHXjEQhxysp1U+l4AzyQ+yyj0+VlK/B8LAzuh70Lo
d4TCJgG0IRDjxjy5uGxd7EMtiRAGsjRGquDUSyYkMcROqeWnMFu2sYRnifGf
XbTOjg9b0l6osfu51NAHI8IpUHB+C734QZ/GVju+iYyuH5yftrsNB+/5wvhA
kp8TaeSloa8j2+X3xNqg1dn9XKztfibWdh3W9j4fa4QXbSIIVxhNdALpTB/E
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
S+WQkmV1/OpyIsQeckcEocMjk0q7v3KVp15QZbe9FMSjgwo5qO4kCV2X6o5p
SAmSsb4P09oCQ1on0DXm/JoQbf0sNG12Qzxy8w0HwSwowRBx4RB3XltcGfPW
I5PljOxVJnlIQ5kk7v7W8SEnZflGM5u9ca/purLAXYq1fqCJD4rkVxPLgS53
DZwzZ8GGy5Yyvldsg7g/ZVzK7PuaTmSWDyf6q/zs7j6yPsljTHb8YeFJBidX
HakfL9xVSR4HGImZUnXVtVVyS15f2xo8qWkSG2cCd5oj3WfMHPMtENbPkgsK
pWST2OvAVqeRc6f1QXH4T14fl46A2KopNyFlZ/pDCwisidDp9cnr4ybd2JCx
s+4Mf9oo9Uyz5egZHapJqGIsgyQ6gJmaUhV7zldIyvXTdTJmv/7XD7/+d8NK
xYY7G6VVf1CeKZdHHjh3GEk2EEDZ0jaqSqFfpX4lL4gLWaAKOb8Wp+58CrxD
qJDv+QyvFpJULy1kxqN0JRXJwMIcHx9rusjOk1NVio97bBiquO/HNuevEDtd
ToRYAaVa+IcGOiHCzVlnprKhIjsPwMIyIdFzB58vHTQIbpxDyn7h6h4YucBy
iscEX9eiWCqM7srXRd9T3ifz+D4+1kxx8l7KEsthKWSj1+lu202ZSIFtR2yk
rMbyZnSh4N2fwrk+h8B4POzCaQSvIniJgQm7WQt92+r/ACxF8iMeXQAA

-->

</rfc>
