<?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.3 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-rats-msg-wrap-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.18.2 -->
  <front>
    <title abbrev="RATS CMW">RATS Conceptual Messages Wrapper</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-rats-msg-wrap-00"/>
    <author initials="H." surname="Birkholz" fullname="Henk Birkholz">
      <organization>Fraunhofer SIT</organization>
      <address>
        <email>henk.birkholz@sit.fraunhofer.de</email>
      </address>
    </author>
    <author initials="N." surname="Smith" fullname="Ned Smith">
      <organization>Intel</organization>
      <address>
        <email>ned.smith@intel.com</email>
      </address>
    </author>
    <author initials="T." surname="Fossati" fullname="Thomas Fossati">
      <organization>Linaro</organization>
      <address>
        <email>thomas.fossati@linaro.org</email>
      </address>
    </author>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig">
      <organization/>
      <address>
        <email>hannes.tschofenig@gmx.net</email>
      </address>
    </author>
    <date year="2023" month="December" day="01"/>
    <area>Security</area>
    <workgroup>Remote ATtestation ProcedureS</workgroup>
    <keyword>evidence</keyword>
    <keyword>attestation result</keyword>
    <keyword>endorsement</keyword>
    <keyword>reference value</keyword>
    <abstract>
      <?line 68?>

<t>This document defines two encapsulation formats for RATS conceptual
messages (i.e., evidence, attestation results, endorsements and
reference values.)</t>
      <t>The first format uses a CBOR or JSON array with two mandatory members,
one for the type, another for the value, and a third optional member
complementing the type field that says which kind of conceptual
message(s) are carried in the value.
The other format wraps the value in a CBOR byte string and prepends a
CBOR tag to convey the type information.</t>
      <t>This document also defines a corresponding CBOR tag, as well as JSON Web Tokens (JWT) and CBOR Web Tokens (CWT) claims.  These allow embedding the wrapped conceptual messages into CBOR-based protocols and web APIs, respectively.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Remote ATtestation ProcedureS Working Group mailing list (rats@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/rats/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/thomas-fossati/draft-ftbs-rats-msg-wrap"/>.</t>
    </note>
  </front>
  <middle>
    <?line 83?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The RATS architecture defines a handful of conceptual messages
(see <xref section="8" sectionFormat="of" target="RFC9334"/>), such as evidence and attestation results.
Each conceptual message can have multiple claims encoding and serialization
formats (<xref section="9" sectionFormat="of" target="RFC9334"/>).
Throughout their lifetime, RATS conceptual messages are typically transported
over different protocols.
For example, EAT <xref target="I-D.ietf-rats-eat"/> evidence in a "background check" topological
arrangement first flows from Attester to Relying Party, and then from Relying
Party to Verifier, over separate protocol legs.
Attestation Results for Secure Interactions (AR4SI) <xref target="I-D.ietf-rats-ar4si"/> payloads in
"passport" mode would go first from Verifier to Attester and then, at a later
point in time and over a different channel, from Attester to Relying Party.</t>
      <t>It is desirable to reuse any typing information associated with the messages
across such protocol boundaries in order to minimize the cost associated with
type registrations and maximize interoperability.</t>
      <t>This document defines two encapsulation formats for RATS conceptual
messages that aim to achieve the goals stated above.</t>
      <t>These encapsulation formats are designed to be:</t>
      <ul spacing="normal">
        <li>
          <t>Self-describing - which removes the dependency on the framing provided
by the embedding protocol (or the storage system) to convey exact
typing information.</t>
        </li>
        <li>
          <t>Based on media types <xref target="RFC6838"/> - which allows amortising their
registration cost across many different usage scenarios.</t>
        </li>
      </ul>
      <t>A protocol designer could use these formats, for example, to convey
evidence, endorsements or reference values in certificates and CRLs
extensions (<xref target="DICE-arch"/>), to embed attestation results or evidence as
first class authentication credentials in TLS handshake messages
<xref target="I-D.fossati-tls-attestation"/>, to transport attestation-related payloads in RESTful APIs,
or for stable storage of attestation results in form of file system
objects.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</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?>

<t>In this document, CDDL <xref target="RFC8610"/> <xref target="RFC9165"/> is used to describe the
data formats.</t>
      <t>The reader is assumed to be familiar with the vocabulary and concepts
defined in <xref target="RFC9334"/>.</t>
      <t>This document reuses the terms defined in <xref section="2" sectionFormat="of" target="RFC9193"/>
(e.g., "Content-Type").</t>
    </section>
    <section anchor="conceptual-message-wrapper-encodings">
      <name>Conceptual Message Wrapper Encodings</name>
      <t>Two types of RATS Conceptual Message Wrapper (CMW) are specified in this
document:</t>
      <ol spacing="normal" type="1"><li>
          <t>A CMW using a CBOR or JSON array (<xref target="type-n-val"/>);</t>
        </li>
        <li>
          <t>A CMW based on CBOR tags (<xref target="cbor-tag"/>).</t>
        </li>
      </ol>
      <section anchor="type-n-val">
        <name>CMW Array</name>
        <t>The CMW array format is defined in <xref target="fig-cddl-array"/>.  (To improve clarity,
the <tt>Content-Type</tt> ABNF is defined separately in <xref target="rfc9193-abnf"/>.)</t>
        <t>The CDDL generic <tt>JC&lt;&gt;</tt> is used where there is a variance between CBOR
and JSON. The first argument is the CDDL for JSON and the second is the
CDDL for CBOR.</t>
        <figure anchor="fig-cddl-array">
          <name>CDDL definition of the Array format</name>
          <artwork type="cddl" align="left"><![CDATA[
cmw-array = [
  type: coap-content-format / media-type
  value: JC<base64-string, bytes>
  ? ind: uint .bits cm-type
]

coap-content-format = uint .size 2
media-type = text .abnf ("Content-Type" .cat Content-Type-ABNF)

base64-string = text .regexp "[A-Za-z0-9_-]+"

cm-type = &(
  reference-values: 0
  endorsements: 1
  evidence: 2
  attestation-results: 3
)
]]></artwork>
        </figure>
        <t>It is composed of three members:</t>
        <dl newline="true">
          <dt><tt>type</tt>:</dt>
          <dd>
            <t>Either a text string representing a Content-Type (e.g., an EAT media type
<xref target="I-D.ietf-rats-eat-media-type"/>) or an unsigned integer corresponding to a CoAP Content-Format
number (<xref section="12.3" sectionFormat="of" target="RFC7252"/>).</t>
          </dd>
          <dt><tt>value</tt>:</dt>
          <dd>
            <t>The RATS conceptual message serialized according to the
value defined in the type member.</t>
          </dd>
          <dt><tt>ind</tt>:</dt>
          <dd>
            <t>An optional bitmap that indicates which conceptual message types are
carried in the <tt>value</tt> field.  Any combination (i.e., any value between
1 and 15, included) is allowed.  This is useful only if the <tt>type</tt> is
potentially ambiguous and there is no further context available to the
CMW consumer to decide.  For example, this might be the case if the base
media type is not profiled (e.g., <tt>application/eat+cwt</tt>), if the <tt>value</tt>
field contains multiple conceptual messages with different types (e.g.,
both reference values and endorsements within the same <tt>application/signed-corim+cbor</tt>), or if the same profile identifier is
shared by different conceptual messages.
Future specifications may add new values to the <tt>ind</tt> field; see <xref target="iana-ind-ext"/>.</t>
          </dd>
        </dl>
        <t>A CMW array can be encoded as CBOR <xref target="STD94"/> or JSON <xref target="RFC8259"/>.</t>
        <t>When using JSON, the value field is encoded as Base64 using the URL and
filename safe alphabet (<xref section="5" sectionFormat="of" target="RFC4648"/>) without padding.</t>
        <t>When using CBOR, the value field is encoded as a CBOR byte string.</t>
      </section>
      <section anchor="cbor-tag">
        <name>CMW CBOR Tags</name>
        <t>CBOR Tags used as CMW may be derived from CoAP Content-Format numbers.
If a CoAP content format exists for a RATS conceptual message, the
<tt>TN()</tt> transform defined in <xref section="B" sectionFormat="of" target="RFC9277"/> can be used to
derive a corresponding CBOR tag in range [1668546817, 1668612095].</t>
        <t>The RATS conceptual message is first serialized according to the
Content-Format number associated with the CBOR tag and then encoded as a
CBOR byte string, to which the tag is prepended.</t>
        <t>The CMW CBOR Tag is defined in <xref target="fig-cddl-cbor-tag"/>.</t>
        <figure anchor="fig-cddl-cbor-tag">
          <name>CDDL definition of the CBOR Tag format</name>
          <artwork type="cddl" align="left"><![CDATA[
cmw-cbor-tag<bytes> = #6.<cbor-tag-numbers>(bytes)

cbor-tag-numbers = 0..18446744073709551615
]]></artwork>
        </figure>
        <section anchor="use-of-pre-existing-cbor-tags">
          <name>Use of Pre-existing CBOR Tags</name>
          <t>If a CBOR tag has been registered in association with a certain RATS
conceptual message independently of a CoAP content format (i.e., it is
not obtained by applying the <tt>TN()</tt> transform), it can be readily used
as an encapsulation without the extra processing described in
<xref target="cbor-tag"/>.</t>
          <t>A consumer can always distinguish tags that have been derived via
<tt>TN()</tt>, which all fall in the [1668546817, 1668612095] range, from
tags that are not, and therefore apply the right decapsulation on
receive.</t>
        </section>
      </section>
      <section anchor="decapsulation-algorithm">
        <name>Decapsulation Algorithm</name>
        <t>After removing any external framing (for example, the ASN.1 OCTET STRING
if the CMW is carried in a certificate extension <xref target="DICE-arch"/>), the CMW
decoder does a 1-byte lookahead, as illustrated in the following pseudo
code, to decide how to decode the remainder of the byte buffer:</t>
        <artwork><![CDATA[
func CMWTypeSniff(b []byte) (CMW, error) {
  if len(b) == 0 {
    return Unknown
  }

  if b[0] == 0x82 || b[0] == 0x83 {
    return CBORArray
  } else if b[0] >= 0xc0 && b[0] <= 0xdb {
    return CBORTag
  } else if b[0] == 0x5b {
    return JSONArray
  }

  return Unknown
}
]]></artwork>
      </section>
    </section>
    <section anchor="examples">
      <name>Examples</name>
      <t>The (equivalent) examples in <xref target="ex-ja"/>, <xref target="ex-ca"/>, and <xref target="ex-ct"/> assume that
the Media-Type-Name <tt>application/vnd.example.rats-conceptual-msg</tt> has been
registered alongside a corresponding CoAP Content-Format number <tt>30001</tt>.  The
CBOR tag <tt>1668576818</tt> is derived applying the <tt>TN()</tt> transform as described in
<xref target="cbor-tag"/>.</t>
      <t>The example in <xref target="ex-ca-ind"/> is a signed CoRIM payload with an explicit CM
indicator <tt>0b0000_0011</tt> (3), meaning that the wrapped message contains both
Reference Values and Endorsements.</t>
      <section anchor="ex-ja">
        <name>JSON Array</name>
        <sourcecode type="cbor-diag"><![CDATA[
[
  "application/vnd.example.rats-conceptual-msg",
  "q82rzQ"
]
]]></sourcecode>
        <t>Note that a CoAP Content-Format number can also be used with the JSON array
form.  That may be the case when it is known that the receiver can handle CoAP
Content-Formats and it is crucial to save bytes.</t>
      </section>
      <section anchor="ex-ca">
        <name>CBOR Array</name>
        <sourcecode type="cbor-diag"><![CDATA[
[
  30001,
  h'abcdabcd'
]
]]></sourcecode>
        <t>with the following wire representation:</t>
        <artwork><![CDATA[
82             # array(2)
   19 7531     # unsigned(30001)
   44          # bytes(4)
      abcdabcd # "\xABͫ\xCD"
]]></artwork>
        <t>Note that a Media-Type-Name can also be used with the CBOR array form,
for example if it is known that the receiver cannot handle CoAP
Content-Formats, or (unlike the case in point) if a CoAP Content-Format
number has not been registrered.</t>
        <sourcecode type="cbor-diag"><![CDATA[
[
  "application/vnd.example.rats-conceptual-msg",
  h'abcdabcd'
]
]]></sourcecode>
      </section>
      <section anchor="ex-ct">
        <name>CBOR Tag</name>
        <sourcecode type="cbor-diag"><![CDATA[
1668576818(h'abcdabcd')
]]></sourcecode>
        <t>with the following wire representation:</t>
        <artwork><![CDATA[
da 63747632    # tag(1668576818)
   44          # bytes(4)
      abcdabcd # "\xABͫ\xCD"
]]></artwork>
      </section>
      <section anchor="ex-ca-ind">
        <name>CBOR Array with explicit CM indicator</name>
        <sourcecode type="cbor-diag"><![CDATA[
[
  "application/signed-corim+cbor",
  h'd28443a10126a1',
  3
]
]]></sourcecode>
        <t>with the following wire representation:</t>
        <artwork><![CDATA[
83                                    # array(3)
   78 1d                              # text(29)
      6170706c69636174696f6e2f7369676e65642d636f72696d2b63626f72
                                      # "application/signed-corim+cbor"
   47                                 # bytes(7)
      d28443a10126a1                  # "҄C\xA1\u0001&\xA1"
   03                                 # unsigned(3)
]]></artwork>
      </section>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>This section records the status of known implementations of the protocol
defined by this specification at the time of posting of this Internet-Draft,
and is based on a proposal described in <xref target="RFC7942"/>.
The description of implementations in this section is intended to assist the
IETF in its decision processes in progressing drafts to RFCs.
Please note that the listing of any individual implementation here does not
imply endorsement by the IETF.
Furthermore, no effort has been spent to verify the information presented here
that was supplied by IETF contributors.
This is not intended as, and must not be construed to be, a catalog of
available implementations or their features.
Readers are advised to note that other implementations may exist.</t>
      <t>According to <xref target="RFC7942"/>, "this will allow reviewers and working groups to
assign due consideration to documents that have the benefit of running code,
which may serve as evidence of valuable experimentation and feedback that have
made the implemented protocols more mature.
It is up to the individual working groups to use this information as they see
fit".</t>
      <section anchor="project-veraison">
        <name>Project Veraison</name>
        <t>The organization responsible for this implementation is Project Veraison, a
Linux Foundation project hosted at the Confidential Computing Consortium.</t>
        <t>The software, hosted at <eref target="https://github.com/veraison/cmw"/>, provides a Golang
package that allows encoding and decoding of CMW payloads.
The implementation covers all the features presented in this draft.
The maturity level is alpha.
The license is Apache 2.0.
The developers can be contacted on the Zulip channel:
<eref target="https://veraison.zulipchat.com/#narrow/stream/383526-CMW/"/>.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document defines two encapsulation formats for RATS conceptual
messages. The messages themselves and their encoding ensure security
protection. For this reason there are no further security requirements
raised by the introduction of this encapsulation.</t>
      <t>Changing the encapsulation of a payload by an adversary will result in
incorrect processing of the encapsulated messages and this will
subsequently lead to a processing error.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t><cref anchor="rfced">RFC Editor:</cref> replace "RFCthis" with the RFC number assigned to this document.</t>
      <section anchor="cwt-cmw-claim-registration">
        <name>CWT <tt>cmw</tt> Claim Registration</name>
        <t>IANA is requested to add a new <tt>cmw</tt> claim to the "CBOR Web Token (CWT) Claims" registry <xref target="IANA.cwt"/> as follows:</t>
        <ul spacing="normal">
          <li>
            <t>Claim Name: cmw</t>
          </li>
          <li>
            <t>Claim Description: A RATS Conceptual Message Wrapper</t>
          </li>
          <li>
            <t>Claim Key: TBD</t>
          </li>
          <li>
            <t>Claim Value Type(s): CBOR Array, or CBOR Tag</t>
          </li>
          <li>
            <t>Change Controller: IETF</t>
          </li>
          <li>
            <t>Specification Document(s): <xref target="type-n-val"/> and <xref target="cbor-tag"/> of RFCthis</t>
          </li>
        </ul>
        <t>The suggested value for the Claim Key is 299.</t>
      </section>
      <section anchor="jwt-cmw-claim-registration">
        <name>JWT <tt>cmw</tt> Claim Registration</name>
        <t>IANA is requested to add a new <tt>cmw</tt> claim to the "JSON Web Token Claims" sub-registry of the "JSON Web Token (JWT)" registry <xref target="IANA.jwt"/> as follows:</t>
        <ul spacing="normal">
          <li>
            <t>Claim Name: cmw</t>
          </li>
          <li>
            <t>Claim Description: A RATS Conceptual Message Wrapper</t>
          </li>
          <li>
            <t>Claim Value Type(s): JSON Array</t>
          </li>
          <li>
            <t>Change Controller: IETF</t>
          </li>
          <li>
            <t>Specification Document(s): <xref target="type-n-val"/> of RFCthis</t>
          </li>
        </ul>
      </section>
      <section anchor="cbor-tag-registration">
        <name>CBOR Tag Registration</name>
        <t>IANA is requested to add the following tag to the "CBOR Tags" <xref target="IANA.cbor-tags"/> registry.</t>
        <table>
          <thead>
            <tr>
              <th align="left">CBOR Tag</th>
              <th align="left">Data Item</th>
              <th align="left">Semantics</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">TBD</td>
              <td align="left">CBOR array, CBOR tag</td>
              <td align="left">RATS Conceptual Message Wrapper</td>
              <td align="left">
                <xref target="type-n-val"/> and <xref target="cbor-tag"/> of RFCthis</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="iana-ind-ext">
        <name>RATS Conceptual Message Wrapper (CMW) Indicators Registry</name>
        <t>This specification defines a new "RATS Conceptual Message Wrapper (CMW) Indicators" registry, with the policy "Expert Review" (<xref section="4.5" sectionFormat="of" target="BCP26"/>).</t>
        <t>The objective is to have Indicators values registered for all RATS Conceptual Messages (<xref section="8" sectionFormat="of" target="RFC9334"/>).</t>
        <section anchor="de-instructions">
          <name>Instructions for the Designated Expert</name>
          <t>The expert is instructed to add the values incrementally.</t>
          <t>Acceptable values are those corresponding to RATS Conceptual Messages defined by the RATS architecture <xref target="RFC9334"/> and any of its updates.</t>
        </section>
        <section anchor="structure-of-entries">
          <name>Structure of Entries</name>
          <t>Each entry in the registry must include:</t>
          <dl newline="true">
            <dt>Indicator value:</dt>
            <dd>
              <t>A number corresponding to the bit position in the <tt>cm-ind</tt> bitmap.</t>
            </dd>
            <dt>Conceptual Message name:</dt>
            <dd>
              <t>A text string describing the RATS conceptual message this indicator corresponds to.</t>
            </dd>
            <dt>Reference:</dt>
            <dd>
              <t>A reference to a document, if available, or the registrant.</t>
            </dd>
          </dl>
          <t>The initial registrations for the registry are detailed in <xref target="tab-ind-regs"/>.</t>
          <table anchor="tab-ind-regs">
            <name>CMW Indicators Registry Initial Contents</name>
            <thead>
              <tr>
                <th align="left">Indicator value</th>
                <th align="left">Conceptual Message name</th>
                <th align="left">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">0</td>
                <td align="left">Reference Values</td>
                <td align="left">RFCthis</td>
              </tr>
              <tr>
                <td align="left">1</td>
                <td align="left">Endorsements</td>
                <td align="left">RFCthis</td>
              </tr>
              <tr>
                <td align="left">2</td>
                <td align="left">Evidence</td>
                <td align="left">RFCthis</td>
              </tr>
              <tr>
                <td align="left">3</td>
                <td align="left">Attestation Results</td>
                <td align="left">RFCthis</td>
              </tr>
            </tbody>
          </table>
        </section>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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="RFC6838">
          <front>
            <title>Media Type Specifications and Registration Procedures</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <date month="January" year="2013"/>
            <abstract>
              <t>This document defines procedures for the specification and registration of media types for use in HTTP, MIME, and other Internet protocols. This memo documents an Internet Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="13"/>
          <seriesInfo name="RFC" value="6838"/>
          <seriesInfo name="DOI" value="10.17487/RFC6838"/>
        </reference>
        <reference anchor="RFC7252">
          <front>
            <title>The Constrained Application Protocol (CoAP)</title>
            <author fullname="Z. Shelby" initials="Z." surname="Shelby"/>
            <author fullname="K. Hartke" initials="K." surname="Hartke"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2014"/>
            <abstract>
              <t>The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with constrained nodes and constrained (e.g., low-power, lossy) networks. The nodes often have 8-bit microcontrollers with small amounts of ROM and RAM, while constrained networks such as IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) often have high packet error rates and a typical throughput of 10s of kbit/s. The protocol is designed for machine- to-machine (M2M) applications such as smart energy and building automation.</t>
              <t>CoAP provides a request/response interaction model between application endpoints, supports built-in discovery of services and resources, and includes key concepts of the Web such as URIs and Internet media types. CoAP is designed to easily interface with HTTP for integration with the Web while meeting specialized requirements such as multicast support, very low overhead, and simplicity for constrained environments.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7252"/>
          <seriesInfo name="DOI" value="10.17487/RFC7252"/>
        </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="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"/>
            <author fullname="C. Vigano" initials="C." surname="Vigano"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <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="RFC9165">
          <front>
            <title>Additional Control Operators for the Concise Data Definition Language (CDDL)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="December" year="2021"/>
            <abstract>
              <t>The Concise Data Definition Language (CDDL), standardized in RFC 8610, provides "control operators" as its main language extension point.</t>
              <t>The present document defines a number of control operators that were not yet ready at the time RFC 8610 was completed:,, and for the construction of constants; / for including ABNF (RFC 5234 and RFC 7405) in CDDL specifications; and for indicating the use of a non-basic feature in an instance.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9165"/>
          <seriesInfo name="DOI" value="10.17487/RFC9165"/>
        </reference>
        <reference anchor="RFC9277">
          <front>
            <title>On Stable Storage for Items in Concise Binary Object Representation (CBOR)</title>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>This document defines a stored ("file") format for Concise Binary Object Representation (CBOR) data items that is friendly to common systems that recognize file types, such as the Unix file(1) command.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9277"/>
          <seriesInfo name="DOI" value="10.17487/RFC9277"/>
        </reference>
        <reference anchor="STD94">
          <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>
        <reference anchor="IANA.cwt" target="http://www.iana.org/assignments/cwt">
          <front>
            <title>CBOR Web Token (CWT) Claims</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="IANA.jwt" target="http://www.iana.org/assignments/jwt">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="BCP26">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="IANA.cbor-tags" target="http://www.iana.org/assignments/cbor-tags">
          <front>
            <title>Concise Binary Object Representation (CBOR) Tags</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC7942">
          <front>
            <title>Improving Awareness of Running Code: The Implementation Status Section</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>This document describes a simple process that allows authors of Internet-Drafts to record the status of known implementations by including an Implementation Status section. This will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature.</t>
              <t>This process is not mandatory. Authors of Internet-Drafts are encouraged to consider using the process for their documents, and working groups are invited to think about applying the process to all of their protocol specifications. This document obsoletes RFC 6982, advancing it to a Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="205"/>
          <seriesInfo name="RFC" value="7942"/>
          <seriesInfo name="DOI" value="10.17487/RFC7942"/>
        </reference>
        <reference anchor="RFC9193">
          <front>
            <title>Sensor Measurement Lists (SenML) Fields for Indicating Data Value Content-Format</title>
            <author fullname="A. Keränen" initials="A." surname="Keränen"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Sensor Measurement Lists (SenML) media types support multiple types of values, from numbers to text strings and arbitrary binary Data Values. In order to facilitate processing of binary Data Values, this document specifies a pair of new SenML fields for indicating the content format of those binary Data Values, i.e., their Internet media type, including parameters as well as any content codings applied.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9193"/>
          <seriesInfo name="DOI" value="10.17487/RFC9193"/>
        </reference>
        <reference anchor="RFC9334">
          <front>
            <title>Remote ATtestation procedureS (RATS) Architecture</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="D. Thaler" initials="D." surname="Thaler"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="N. Smith" initials="N." surname="Smith"/>
            <author fullname="W. Pan" initials="W." surname="Pan"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>In network protocol exchanges, it is often useful for one end of a communication to know whether the other end is in an intended operating state. This document provides an architectural overview of the entities involved that make such tests possible through the process of generating, conveying, and evaluating evidentiary Claims. It provides a model that is neutral toward processor architectures, the content of Claims, and protocols.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9334"/>
          <seriesInfo name="DOI" value="10.17487/RFC9334"/>
        </reference>
        <reference anchor="I-D.ietf-rats-eat">
          <front>
            <title>The Entity Attestation Token (EAT)</title>
            <author fullname="Laurence Lundblade" initials="L." surname="Lundblade">
              <organization>Security Theory LLC</organization>
            </author>
            <author fullname="Giridhar Mandyam" initials="G." surname="Mandyam">
              <organization>Qualcomm Technologies Inc.</organization>
            </author>
            <author fullname="Jeremy O'Donoghue" initials="J." surname="O'Donoghue">
              <organization>Qualcomm Technologies Inc.</organization>
            </author>
            <author fullname="Carl Wallace" initials="C." surname="Wallace">
              <organization>Red Hound Software, Inc.</organization>
            </author>
            <date day="14" month="October" year="2023"/>
            <abstract>
              <t>   An Entity Attestation Token (EAT) provides an attested claims set
   that describes state and characteristics of an entity, a device like
   a smartphone, IoT device, network equipment or such.  This claims set
   is used by a relying party, server or service to determine the type
   and degree of trust placed in the entity.

   An EAT is either a CBOR Web Token (CWT) or JSON Web Token (JWT) with
   attestation-oriented claims.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rats-eat-22"/>
        </reference>
        <reference anchor="I-D.ietf-rats-eat-media-type">
          <front>
            <title>EAT Media Types</title>
            <author fullname="Laurence Lundblade" initials="L." surname="Lundblade">
              <organization>Security Theory LLC</organization>
            </author>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer Institute for Secure Information Technology</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <date day="7" month="November" year="2023"/>
            <abstract>
              <t>   Payloads used in Remote Attestation Procedures may require an
   associated media type for their conveyance, for example when used in
   RESTful APIs.

   This memo defines media types to be used for Entity Attestation
   Tokens (EAT).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rats-eat-media-type-05"/>
        </reference>
        <reference anchor="I-D.ietf-rats-ar4si">
          <front>
            <title>Attestation Results for Secure Interactions</title>
            <author fullname="Eric Voit" initials="E." surname="Voit">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer SIT</organization>
            </author>
            <author fullname="Thomas Hardjono" initials="T." surname="Hardjono">
              <organization>MIT</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Vincent Scarlata" initials="V." surname="Scarlata">
              <organization>Intel</organization>
            </author>
            <date day="30" month="August" year="2023"/>
            <abstract>
              <t>   This document defines reusable Attestation Result information
   elements.  When these elements are offered to Relying Parties as
   Evidence, different aspects of Attester trustworthiness can be
   evaluated.  Additionally, where the Relying Party is interfacing with
   a heterogeneous mix of Attesting Environment and Verifier types,
   consistent policies can be applied to subsequent information exchange
   between each Attester and the Relying Party.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rats-ar4si-05"/>
        </reference>
        <reference anchor="I-D.fossati-tls-attestation">
          <front>
            <title>Using Attestation in Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
         </author>
            <author fullname="Yaron Sheffer" initials="Y." surname="Sheffer">
              <organization>Intuit</organization>
            </author>
            <author fullname="Paul Howard" initials="P." surname="Howard">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Ionuț Mihalcea" initials="I." surname="Mihalcea">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Yogesh Deshpande" initials="Y." surname="Deshpande">
              <organization>Arm Limited</organization>
            </author>
            <date day="23" month="October" year="2023"/>
            <abstract>
              <t>   Attestation is the process by which an entity produces evidence about
   itself that another party can use to evaluate the trustworthiness of
   that entity.

   In use cases that require the use of remote attestation, such as
   confidential computing or device onboarding, an attester has to
   convey evidence or attestation results to a relying party.  This
   information exchange may happen at different layers in the protocol
   stack.

   This specification provides a generic way of passing evidence and
   attestation results in the TLS handshake.  Functionality-wise this is
   accomplished with the help of key attestation.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-fossati-tls-attestation-04"/>
        </reference>
        <reference anchor="DICE-arch" target="https://trustedcomputinggroup.org/wp-content/uploads/DICE-Attestation-Architecture-r23-final.pdf">
          <front>
            <title>DICE Attestation Architecture</title>
            <author>
              <organization>Trusted Computing Group</organization>
            </author>
            <date year="2021" month="March"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 493?>

<section anchor="rfc9193-abnf">
      <name>RFC9193 Content-Type ABNF</name>
      <sourcecode type="cddl"><![CDATA[
; from RFC9193
Content-Type-ABNF = '

Content-Type   = Media-Type-Name *( *SP ";" *SP parameter )
parameter      = token "=" ( token / quoted-string )

token          = 1*tchar
tchar          = "!" / "#" / "$" / "%" / "&" / "\'" / "*"
               / "+" / "-" / "." / "^" / "_" / "`" / "|" / "~"
               / DIGIT / ALPHA
quoted-string  = %x22 *( qdtext / quoted-pair ) %x22
qdtext         = SP / %x21 / %x23-5B / %x5D-7E
quoted-pair    = "\" ( SP / VCHAR )

Media-Type-Name = type-name "/" subtype-name

type-name = restricted-name
subtype-name = restricted-name

restricted-name = restricted-name-first *126restricted-name-chars
restricted-name-first  = ALPHA / DIGIT
restricted-name-chars  = ALPHA / DIGIT / "!" / "#" /
                         "$" / "&" / "-" / "^" / "_"
restricted-name-chars =/ "." ; Characters before first dot always
                             ; specify a facet name
restricted-name-chars =/ "+" ; Characters after last plus always
                             ; specify a structured syntax suffix

DIGIT     =  %x30-39           ; 0 - 9
POS-DIGIT =  %x31-39           ; 1 - 9
ALPHA     =  %x41-5A / %x61-7A ; A - Z / a - z
SP        =  %x20
VCHAR     =  %x21-7E           ; printable ASCII (no SP)
'
]]></sourcecode>
    </section>
    <section anchor="registering-and-using-cmws">
      <name>Registering and Using CMWs</name>
      <t><xref target="fig-howto-cmw"/> describes the registration preconditions for using
CMWs in either array or CBOR tag forms.</t>
      <figure anchor="fig-howto-cmw">
        <name>How To CMW</name>
        <artset>
          <artwork type="svg" align="left"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="496" width="400" viewBox="0 0 400 496" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
              <path d="M 40,48 L 40,80" fill="none" stroke="black"/>
              <path d="M 56,176 L 56,424" fill="none" stroke="black"/>
              <path d="M 80,96 L 80,152" fill="none" stroke="black"/>
              <path d="M 80,168 L 80,424" fill="none" stroke="black"/>
              <path d="M 96,144 L 96,176" fill="none" stroke="black"/>
              <path d="M 104,256 L 104,288" fill="none" stroke="black"/>
              <path d="M 120,96 L 120,144" fill="none" stroke="black"/>
              <path d="M 168,192 L 168,232" fill="none" stroke="black"/>
              <path d="M 168,304 L 168,376" fill="none" stroke="black"/>
              <path d="M 184,48 L 184,80" fill="none" stroke="black"/>
              <path d="M 200,48 L 200,80" fill="none" stroke="black"/>
              <path d="M 224,96 L 224,144" fill="none" stroke="black"/>
              <path d="M 240,256 L 240,288" fill="none" stroke="black"/>
              <path d="M 248,144 L 248,176" fill="none" stroke="black"/>
              <path d="M 264,96 L 264,152" fill="none" stroke="black"/>
              <path d="M 264,168 L 264,328" fill="none" stroke="black"/>
              <path d="M 264,344 L 264,424" fill="none" stroke="black"/>
              <path d="M 288,176 L 288,328" fill="none" stroke="black"/>
              <path d="M 288,344 L 288,424" fill="none" stroke="black"/>
              <path d="M 296,48 L 296,80" fill="none" stroke="black"/>
              <path d="M 304,256 L 304,288" fill="none" stroke="black"/>
              <path d="M 344,304 L 344,320" fill="none" stroke="black"/>
              <path d="M 392,256 L 392,288" fill="none" stroke="black"/>
              <path d="M 56,32 L 168,32" fill="none" stroke="black"/>
              <path d="M 216,32 L 280,32" fill="none" stroke="black"/>
              <path d="M 56,96 L 168,96" fill="none" stroke="black"/>
              <path d="M 216,96 L 280,96" fill="none" stroke="black"/>
              <path d="M 112,128 L 232,128" fill="none" stroke="black"/>
              <path d="M 72,160 L 104,160" fill="none" stroke="black"/>
              <path d="M 240,160 L 272,160" fill="none" stroke="black"/>
              <path d="M 112,192 L 232,192" fill="none" stroke="black"/>
              <path d="M 120,240 L 224,240" fill="none" stroke="black"/>
              <path d="M 320,240 L 376,240" fill="none" stroke="black"/>
              <path d="M 120,304 L 224,304" fill="none" stroke="black"/>
              <path d="M 320,304 L 376,304" fill="none" stroke="black"/>
              <path d="M 184,336 L 328,336" fill="none" stroke="black"/>
              <path d="M 112,384 L 248,384" fill="none" stroke="black"/>
              <path d="M 96,416 L 232,416" fill="none" stroke="black"/>
              <path d="M 24,432 L 336,432" fill="none" stroke="black"/>
              <path d="M 8,464 L 320,464" fill="none" stroke="black"/>
              <path d="M 8,464 L 24,432" fill="none" stroke="black"/>
              <path d="M 96,416 L 112,384" fill="none" stroke="black"/>
              <path d="M 232,416 L 248,384" fill="none" stroke="black"/>
              <path d="M 320,464 L 336,432" fill="none" stroke="black"/>
              <path d="M 56,32 C 47.16936,32 40,39.16936 40,48" fill="none" stroke="black"/>
              <path d="M 168,32 C 176.83064,32 184,39.16936 184,48" fill="none" stroke="black"/>
              <path d="M 216,32 C 207.16936,32 200,39.16936 200,48" fill="none" stroke="black"/>
              <path d="M 280,32 C 288.83064,32 296,39.16936 296,48" fill="none" stroke="black"/>
              <path d="M 56,96 C 47.16936,96 40,88.83064 40,80" fill="none" stroke="black"/>
              <path d="M 168,96 C 176.83064,96 184,88.83064 184,80" fill="none" stroke="black"/>
              <path d="M 216,96 C 207.16936,96 200,88.83064 200,80" fill="none" stroke="black"/>
              <path d="M 280,96 C 288.83064,96 296,88.83064 296,80" fill="none" stroke="black"/>
              <path d="M 112,128 C 103.16936,128 96,135.16936 96,144" fill="none" stroke="black"/>
              <path d="M 232,128 C 240.83064,128 248,135.16936 248,144" fill="none" stroke="black"/>
              <path d="M 72,160 C 63.16936,160 56,167.16936 56,176" fill="none" stroke="black"/>
              <path d="M 104,160 C 112.83064,160 120,152.83064 120,144" fill="none" stroke="black"/>
              <path d="M 240,160 C 231.16936,160 224,152.83064 224,144" fill="none" stroke="black"/>
              <path d="M 272,160 C 280.83064,160 288,167.16936 288,176" fill="none" stroke="black"/>
              <path d="M 112,192 C 103.16936,192 96,184.83064 96,176" fill="none" stroke="black"/>
              <path d="M 232,192 C 240.83064,192 248,184.83064 248,176" fill="none" stroke="black"/>
              <path d="M 120,240 C 111.16936,240 104,247.16936 104,256" fill="none" stroke="black"/>
              <path d="M 224,240 C 232.83064,240 240,247.16936 240,256" fill="none" stroke="black"/>
              <path d="M 320,240 C 311.16936,240 304,247.16936 304,256" fill="none" stroke="black"/>
              <path d="M 376,240 C 384.83064,240 392,247.16936 392,256" fill="none" stroke="black"/>
              <path d="M 120,304 C 111.16936,304 104,296.83064 104,288" fill="none" stroke="black"/>
              <path d="M 224,304 C 232.83064,304 240,296.83064 240,288" fill="none" stroke="black"/>
              <path d="M 320,304 C 311.16936,304 304,296.83064 304,288" fill="none" stroke="black"/>
              <path d="M 376,304 C 384.83064,304 392,296.83064 392,288" fill="none" stroke="black"/>
              <path d="M 184,336 C 175.16936,336 168,343.16936 168,352" fill="none" stroke="black"/>
              <path d="M 328,336 C 336.83064,336 344,328.83064 344,320" fill="none" stroke="black"/>
              <polygon class="arrowhead" points="296,424 284,418.4 284,429.6" fill="black" transform="rotate(90,288,424)"/>
              <path class="jump" d="M 288,344 C 282,344 282,328 288,328" fill="none" stroke="black"/>
              <polygon class="arrowhead" points="272,424 260,418.4 260,429.6" fill="black" transform="rotate(90,264,424)"/>
              <path class="jump" d="M 264,344 C 258,344 258,328 264,328" fill="none" stroke="black"/>
              <path class="jump" d="M 264,168 C 258,168 258,152 264,152" fill="none" stroke="black"/>
              <polygon class="arrowhead" points="176,376 164,370.4 164,381.6" fill="black" transform="rotate(90,168,376)"/>
              <polygon class="arrowhead" points="176,232 164,226.4 164,237.6" fill="black" transform="rotate(90,168,232)"/>
              <polygon class="arrowhead" points="88,424 76,418.4 76,429.6" fill="black" transform="rotate(90,80,424)"/>
              <path class="jump" d="M 80,168 C 74,168 74,152 80,152" fill="none" stroke="black"/>
              <polygon class="arrowhead" points="64,424 52,418.4 52,429.6" fill="black" transform="rotate(90,56,424)"/>
              <g class="text">
                <text x="72" y="52">Reuse</text>
                <text x="136" y="52">EAT/CoRIM</text>
                <text x="244" y="52">Register</text>
                <text x="72" y="68">media</text>
                <text x="128" y="68">type(s)</text>
                <text x="224" y="68">new</text>
                <text x="264" y="68">media</text>
                <text x="56" y="84">+</text>
                <text x="96" y="84">profile</text>
                <text x="228" y="84">type</text>
                <text x="172" y="148">Register</text>
                <text x="152" y="164">new</text>
                <text x="188" y="164">CoAP</text>
                <text x="172" y="180">Content-Format</text>
                <text x="168" y="260">Automatically</text>
                <text x="348" y="260">Existing</text>
                <text x="140" y="276">derive</text>
                <text x="188" y="276">CBOR</text>
                <text x="332" y="276">CBOR</text>
                <text x="128" y="292">tag</text>
                <text x="184" y="292">[RFC9277]</text>
                <text x="328" y="292">tag</text>
                <text x="140" y="404">CBOR</text>
                <text x="176" y="404">tag</text>
                <text x="208" y="404">CMW</text>
                <text x="144" y="452">Array</text>
                <text x="184" y="452">CMW</text>
              </g>
            </svg>
          </artwork>
          <artwork type="ascii-art" align="left"><![CDATA[
       .---------------.   .---------.
      | Reuse EAT/CoRIM | | Register  |
      | media type(s)   | | new media |
      | + profile       | | type      |
       `---+----+------'   `-+----+--'
           |    |            |    |
           |  .-+------------+-.  |
           | |  |  Register  |  | |
         .-(-+-'   new CoAP   `-+-(-.
        |  | |  Content-Format  | |  |
        |  |  `-------+--------'  |  |
        |  |          |           |  |
        |  |          v           |  |
        |  |   .--------------.   |  |  .--------.
        |  |  | Automatically  |  |  | | Existing |
        |  |  | derive CBOR    |  |  | | CBOR     |
        |  |  | tag [RFC9277]  |  |  | | tag      |
        |  |   `------+-------'   |  |  `---+----'
        |  |          |           |  |      |
        |  |          |.----------(--(-----'
        |  |          |           |  |
        |  |          v           |  |
        |  |   .----------------. |  |
        |  |  /  CBOR tag CMW  /  |  |
        v  v `----------------'   v  v
    .--------------------------------------.
   /             Array CMW                /
  `--------------------------------------'
]]></artwork>
        </artset>
      </figure>
    </section>
    <section anchor="open-issues">
      <name>Open Issues</name>
      <t>The list of currently open issues for this documents can be found at
<eref target="https://github.com/thomas-fossati/draft-ftbs-rats-msg-wrap/issues"/>.</t>
      <t><cref>Note to RFC Editor: please remove before publication.</cref></t>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank Carl Wallace and Carsten Bormann for their
reviews and suggestions.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
