<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.3 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-rats-msg-wrap-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.18.2 -->
  <front>
    <title abbrev="RATS CMW">RATS Conceptual Messages Wrapper</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-rats-msg-wrap-01"/>
    <author initials="H." surname="Birkholz" fullname="Henk Birkholz">
      <organization>Fraunhofer SIT</organization>
      <address>
        <email>henk.birkholz@sit.fraunhofer.de</email>
      </address>
    </author>
    <author initials="N." surname="Smith" fullname="Ned Smith">
      <organization>Intel</organization>
      <address>
        <email>ned.smith@intel.com</email>
      </address>
    </author>
    <author initials="T." surname="Fossati" fullname="Thomas Fossati">
      <organization>Linaro</organization>
      <address>
        <email>thomas.fossati@linaro.org</email>
      </address>
    </author>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig">
      <organization/>
      <address>
        <email>hannes.tschofenig@gmx.net</email>
      </address>
    </author>
    <date year="2023" month="December" day="21"/>
    <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'2347da55'
]
]]></sourcecode>
        <t>with the following wire representation:</t>
        <artwork><![CDATA[
82             # array(2)
   19 7531     # unsigned(30001)
   44          # bytes(4)
      2347da55 # "#G\xDAU"
]]></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="cmw-coll">
      <name>CMW Collections</name>
      <t>Layered attesters and composite devices (Sections <xref target="RFC9334" section="3.2" sectionFormat="bare"/> and <xref target="RFC9334" section="3.3" sectionFormat="bare"/> of <xref target="RFC9334"/>) generate evidence that consists of multiple parts.</t>
      <t>For example, in data center servers, it is not uncommon for separate attesting environments (AE) to serve a subsection of the entire machine.
One AE might measure and attest to what was booted on the main CPU, while another AE might measure and attest to what was booted on a SmartNIC plugged into a PCIe slot, and a third AE might measure and attest to what was booted on the machine's GPU.</t>
      <t>To address the composite Attester use case, this document defines a CMW "collection" as a container that holds several CMW evidence conceptual messages, each with a label that is unique within the scope of the collection.</t>
      <t>The CMW collection (<xref target="fig-cddl-collection"/>) is defined as a CBOR map or JSON object with CMW values.
The position of a <tt>cmw</tt> entry in the <tt>cmw-collection</tt> is not significant.
Instead, the labels identify a conceptual message that corresponds to a component of a system.
Labels can be strings or integers that serve as a mnemonic for different conceptual messages in the collection.</t>
      <figure anchor="fig-cddl-collection">
        <name>CDDL definition of the CMW collection format</name>
        <artwork type="cddl" align="left"><![CDATA[
cmw-collection = {
  + cmw-collection-entry-label => cmw
}

cmw-collection-entry-label = text / int .feature "cbor"

; cmw = cmw-array / cmw-cbor-tag<bytes> .feature "cbor"
]]></artwork>
      </figure>
      <t>Although initially designed for the composite attester use case, the CMW collection can be repurposed for other use cases requiring CMW aggregation.</t>
    </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="seccons">
      <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 anchor="media-types">
        <name>Media Types</name>
        <t>IANA is requested to add the following media types to the "Media Types" registry <xref target="IANA.media-types"/>.</t>
        <table anchor="tab-mt-regs">
          <name>CMW Media Types</name>
          <thead>
            <tr>
              <th align="left">Name</th>
              <th align="left">Template</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">
                <tt>cmw+cbor</tt></td>
              <td align="left">
                <tt>application/cmw+cbor</tt></td>
              <td align="left">
                <xref target="type-n-val"/> and <xref target="cbor-tag"/> of RFCthis</td>
            </tr>
            <tr>
              <td align="left">
                <tt>cmw+json</tt></td>
              <td align="left">
                <tt>application/cmw+json</tt></td>
              <td align="left">
                <xref target="type-n-val"/> of RFCthis</td>
            </tr>
            <tr>
              <td align="left">
                <tt>cmw-collection+cbor</tt></td>
              <td align="left">
                <tt>application/cmw-collection+cbor</tt></td>
              <td align="left">
                <xref target="cmw-coll"/> of RFCthis</td>
            </tr>
            <tr>
              <td align="left">
                <tt>cmw-collection+json | </tt>application/cmw-collection+json`</td>
              <td align="left">
                <xref target="cmw-coll"/> of RFCthis</td>
              <td align="left"> </td>
            </tr>
          </tbody>
        </table>
        <section anchor="applicationcmwcbor">
          <name><tt>application/cmw+cbor</tt></name>
          <dl spacing="compact">
            <dt>Type name:</dt>
            <dd>
              <t>application</t>
            </dd>
            <dt>Subtype name:</dt>
            <dd>
              <t>cmw+cbor</t>
            </dd>
            <dt>Required parameters:</dt>
            <dd>
              <t>n/a</t>
            </dd>
            <dt>Optional parameters:</dt>
            <dd>
              <t>n/a</t>
            </dd>
            <dt>Encoding considerations:</dt>
            <dd>
              <t>binary (CBOR)</t>
            </dd>
            <dt>Security considerations:</dt>
            <dd>
              <t><xref target="seccons"/> of RFCthis</t>
            </dd>
            <dt>Interoperability considerations:</dt>
            <dd>
              <t>n/a</t>
            </dd>
            <dt>Published specification:</dt>
            <dd>
              <t>RFCthis</t>
            </dd>
            <dt>Applications that use this media type:</dt>
            <dd>
              <t>Attesters, Verifiers, Endorsers and Reference-Value providers, Relying Parties that need to transfer CMW payloads over HTTP(S), CoAP(S), and other transports.</t>
            </dd>
            <dt>Fragment identifier considerations:</dt>
            <dd>
              <t>The syntax and semantics of fragment identifiers are as specified for "application/cbor". (No fragment identification syntax is currently defined for "application/cbor".)</t>
            </dd>
            <dt>Person &amp; email address to contact for further information:</dt>
            <dd>
              <t>RATS WG mailing list (rats@ietf.org)</t>
            </dd>
            <dt>Intended usage:</dt>
            <dd>
              <t>COMMON</t>
            </dd>
            <dt>Restrictions on usage:</dt>
            <dd>
              <t>none</t>
            </dd>
            <dt>Author/Change controller:</dt>
            <dd>
              <t>IETF</t>
            </dd>
            <dt>Provisional registration:</dt>
            <dd>
              <t>no</t>
            </dd>
          </dl>
        </section>
        <section anchor="applicationcmwjson">
          <name><tt>application/cmw+json</tt></name>
          <dl spacing="compact">
            <dt>Type name:</dt>
            <dd>
              <t>application</t>
            </dd>
            <dt>Subtype name:</dt>
            <dd>
              <t>cmw+json</t>
            </dd>
            <dt>Required parameters:</dt>
            <dd>
              <t>n/a</t>
            </dd>
            <dt>Optional parameters:</dt>
            <dd>
              <t>n/a</t>
            </dd>
            <dt>Encoding considerations:</dt>
            <dd>
              <t>binary (JSON is UTF-8-encoded text)</t>
            </dd>
            <dt>Security considerations:</dt>
            <dd>
              <t><xref target="seccons"/> of RFCthis</t>
            </dd>
            <dt>Interoperability considerations:</dt>
            <dd>
              <t>n/a</t>
            </dd>
            <dt>Published specification:</dt>
            <dd>
              <t>RFCthis</t>
            </dd>
            <dt>Applications that use this media type:</dt>
            <dd>
              <t>Attesters, Verifiers, Endorsers and Reference-Value providers, Relying Parties that need to transfer CMW payloads over HTTP(S), CoAP(S), and other transports.</t>
            </dd>
            <dt>Fragment identifier considerations:</dt>
            <dd>
              <t>The syntax and semantics of fragment identifiers are as specified for "application/json". (No fragment identification syntax is currently defined for "application/json".)</t>
            </dd>
            <dt>Person &amp; email address to contact for further information:</dt>
            <dd>
              <t>RATS WG mailing list (rats@ietf.org)</t>
            </dd>
            <dt>Intended usage:</dt>
            <dd>
              <t>COMMON</t>
            </dd>
            <dt>Restrictions on usage:</dt>
            <dd>
              <t>none</t>
            </dd>
            <dt>Author/Change controller:</dt>
            <dd>
              <t>IETF</t>
            </dd>
            <dt>Provisional registration:</dt>
            <dd>
              <t>no</t>
            </dd>
          </dl>
        </section>
      </section>
      <section anchor="applicationcmw-collectioncbor">
        <name><tt>application/cmw-collection+cbor</tt></name>
        <dl spacing="compact">
          <dt>Type name:</dt>
          <dd>
            <t>application</t>
          </dd>
          <dt>Subtype name:</dt>
          <dd>
            <t>cmw-collection+cbor</t>
          </dd>
          <dt>Required parameters:</dt>
          <dd>
            <t>n/a</t>
          </dd>
          <dt>Optional parameters:</dt>
          <dd>
            <t>n/a</t>
          </dd>
          <dt>Encoding considerations:</dt>
          <dd>
            <t>binary (CBOR)</t>
          </dd>
          <dt>Security considerations:</dt>
          <dd>
            <t><xref target="seccons"/> of RFCthis</t>
          </dd>
          <dt>Interoperability considerations:</dt>
          <dd>
            <t>n/a</t>
          </dd>
          <dt>Published specification:</dt>
          <dd>
            <t>RFCthis</t>
          </dd>
          <dt>Applications that use this media type:</dt>
          <dd>
            <t>Attesters, Verifiers, Endorsers and Reference-Value providers, Relying Parties that need to transfer collections of CMW payloads over HTTP(S), CoAP(S), and other transports.</t>
          </dd>
          <dt>Fragment identifier considerations:</dt>
          <dd>
            <t>The syntax and semantics of fragment identifiers are as specified for "application/cbor". (No fragment identification syntax is currently defined for "application/cbor".)</t>
          </dd>
          <dt>Person &amp; email address to contact for further information:</dt>
          <dd>
            <t>RATS WG mailing list (rats@ietf.org)</t>
          </dd>
          <dt>Intended usage:</dt>
          <dd>
            <t>COMMON</t>
          </dd>
          <dt>Restrictions on usage:</dt>
          <dd>
            <t>none</t>
          </dd>
          <dt>Author/Change controller:</dt>
          <dd>
            <t>IETF</t>
          </dd>
          <dt>Provisional registration:</dt>
          <dd>
            <t>no</t>
          </dd>
        </dl>
        <section anchor="applicationcmw-collectionjson">
          <name><tt>application/cmw-collection+json</tt></name>
          <dl spacing="compact">
            <dt>Type name:</dt>
            <dd>
              <t>application</t>
            </dd>
            <dt>Subtype name:</dt>
            <dd>
              <t>cmw-collection+json</t>
            </dd>
            <dt>Required parameters:</dt>
            <dd>
              <t>n/a</t>
            </dd>
            <dt>Optional parameters:</dt>
            <dd>
              <t>n/a</t>
            </dd>
            <dt>Encoding considerations:</dt>
            <dd>
              <t>binary (JSON is UTF-8-encoded text)</t>
            </dd>
            <dt>Security considerations:</dt>
            <dd>
              <t><xref target="seccons"/> of RFCthis</t>
            </dd>
            <dt>Interoperability considerations:</dt>
            <dd>
              <t>n/a</t>
            </dd>
            <dt>Published specification:</dt>
            <dd>
              <t>RFCthis</t>
            </dd>
            <dt>Applications that use this media type:</dt>
            <dd>
              <t>Attesters, Verifiers, Endorsers and Reference-Value providers, Relying Parties that need to transfer collections of CMW payloads over HTTP(S), CoAP(S), and other transports.</t>
            </dd>
            <dt>Fragment identifier considerations:</dt>
            <dd>
              <t>The syntax and semantics of fragment identifiers are as specified for "application/json". (No fragment identification syntax is currently defined for "application/json".)</t>
            </dd>
            <dt>Person &amp; email address to contact for further information:</dt>
            <dd>
              <t>RATS WG mailing list (rats@ietf.org)</t>
            </dd>
            <dt>Intended usage:</dt>
            <dd>
              <t>COMMON</t>
            </dd>
            <dt>Restrictions on usage:</dt>
            <dd>
              <t>none</t>
            </dd>
            <dt>Author/Change controller:</dt>
            <dd>
              <t>IETF</t>
            </dd>
            <dt>Provisional registration:</dt>
            <dd>
              <t>no</t>
            </dd>
          </dl>
        </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>
        <reference anchor="IANA.media-types" target="http://www.iana.org/assignments/media-types">
          <front>
            <title>Media Types</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">
         </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="16" month="December" 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-24"/>
        </reference>
        <reference anchor="I-D.ietf-rats-eat-media-type">
          <front>
            <title>EAT Media Types</title>
            <author fullname="Laurence Lundblade" initials="L." surname="Lundblade">
              <organization>Security Theory LLC</organization>
            </author>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer Institute for Secure Information Technology</organization>
            </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <date day="7" month="November" year="2023"/>
            <abstract>
              <t>   Payloads used in Remote Attestation Procedures may require an
   associated media type for their conveyance, for example when used in
   RESTful APIs.

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

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

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

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

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

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

<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.
The definition of a CMW collection has been modelled on a proposal originally made by Simon Frost for an EAT-based Evidence collection type.  The CMW collection intentionally attains binary compatibility with Simon's design and aims at superseding it by also generalizing on the allowed Evidence formats.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
