<?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.2 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ftbs-rats-msg-wrap-05" 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-ftbs-rats-msg-wrap-05"/>
    <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="November" day="07"/>
    <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>arm</organization>
            </author>
            <date day="23" month="July" 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-04"/>
        </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>
