<?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.1 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ftbs-rats-msg-wrap-04" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.18.1 -->
  <front>
    <title abbrev="RATS CMW">RATS Conceptual Messages Wrapper</title>
    <seriesInfo name="Internet-Draft" value="draft-ftbs-rats-msg-wrap-04"/>
    <author initials="H." surname="Birkolz" fullname="Henk Birkolz">
      <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="October" day="06"/>
    <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 tokens, 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="30" month="June" 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 how much
   it wishes to trust 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-21"/>
        </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="13" month="March" 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-03"/>
        </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>
