<?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.6.22 (Ruby 3.2.0) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-rats-uccs-05" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.16.0 -->
  <front>
    <title abbrev="Unprotected CWT Claims Sets">A CBOR Tag for Unprotected CWT Claims Sets</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-rats-uccs-05"/>
    <author initials="H." surname="Birkholz" fullname="Henk Birkholz">
      <organization abbrev="Fraunhofer SIT">Fraunhofer SIT</organization>
      <address>
        <postal>
          <street>Rheinstrasse 75</street>
          <city>Darmstadt</city>
          <code>64295</code>
          <country>Germany</country>
        </postal>
        <email>henk.birkholz@sit.fraunhofer.de</email>
      </address>
    </author>
    <author initials="J." surname="O'Donoghue" fullname="Jeremy O'Donoghue">
      <organization abbrev="Qualcomm Technologies Inc.">Qualcomm Technologies Inc.</organization>
      <address>
        <postal>
          <street>279 Farnborough Road</street>
          <city>Farnborough</city>
          <code>GU14 7LS</code>
          <country>United Kingdom</country>
        </postal>
        <email>jodonogh@qti.qualcomm.com</email>
      </address>
    </author>
    <author initials="N." surname="Cam-Winget" fullname="Nancy Cam-Winget">
      <organization>Cisco Systems</organization>
      <address>
        <postal>
          <street>3550 Cisco Way</street>
          <city>San Jose</city>
          <region>CA</region>
          <code>95134</code>
          <country>USA</country>
        </postal>
        <email>ncamwing@cisco.com</email>
      </address>
    </author>
    <author initials="C." surname="Bormann" fullname="Carsten Bormann">
      <organization>Universität Bremen TZI</organization>
      <address>
        <postal>
          <street>Postfach 330440</street>
          <city>Bremen</city>
          <code>D-28359</code>
          <country>Germany</country>
        </postal>
        <phone>+49-421-218-63921</phone>
        <email>cabo@tzi.org</email>
      </address>
    </author>
    <date year="2023" month="February" day="01"/>
    <area>Security</area>
    <workgroup>RATS Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>CBOR Web Token (CWT, RFC 8392) Claims Sets sometimes do not need the
protection afforded by wrapping them into COSE, as is required for a true
CWT.  This specification defines a CBOR tag for such unprotected CWT
Claims Sets (UCCS) and discusses conditions for its proper use.</t>
      <!--
[^status]

[^status]:
    The present version (-03)
 -->



    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-rats-uccs/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Remote ATtestation procedureS (rats) Working Group mailing list (<eref target="mailto:rats@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/rats/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/rats/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-rats-wg/draft-ietf-rats-uccs"/>.</t>
    </note>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>A CBOR Web Token (CWT) as specified by <xref target="RFC8392"/> is always wrapped in a
CBOR Object Signing and Encryption (COSE, <xref target="RFC9052"/>) envelope.
COSE provides -- amongst other things -- end-to-end data origin
authentication and integrity protection employed by RFC 8392 as well as
optional encryption for CWTs.
Under the right circumstances (<xref target="secchan"/>),
though, a signature providing proof for authenticity and integrity can be
provided through the transfer protocol and thus omitted from the
information in a CWT without compromising the intended goal of authenticity
and integrity.
In other words, if communicating parties have a pre-existing security
association, they can reuse it to provide authenticity and integrity
for their messages, enabling the basic principle of using resources
parsimoniously.
Specifically, if a mutually secured channel is established between two
remote peers, and if that secure channel provides the required
properties (as discussed below), it is possible to omit the protection
provided by COSE, creating a use case for unprotected CWT Claims Sets.
Similarly, if there is one-way authentication, the party that did not
authenticate may be in a position to send authentication information through
this channel that allows the already authenticated party to authenticate the
other party.</t>
      <t>This specification allocates a CBOR tag to mark Unprotected CWT Claims Sets
(UCCS) as such and discusses conditions for its proper use in the scope of
Remote Attestation Procedures (RATS <xref target="RFC9334"/>) in the usage scenario that is the
conveyance of Evidence from an Attester to a Verifier.</t>
      <t>This specification does not change <xref target="RFC8392"/>: A true CWT does not make use of
the tag allocated here; the UCCS tag is an alternative to using COSE
protection and a CWT tag.
Consequently, within the well-defined scope of a secure channel, it
can be acceptable and economic to use the contents of a CWT without
its COSE container and tag it with a UCCS CBOR tag for further
processing within that scope -- or to use the contents of a UCCS CBOR
tag for building a CWT to be signed by some entity that can vouch for
those contents.</t>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>The term Claim is used as in <xref target="RFC7519"/>.</t>
        <t>The terms Claim Key, Claim Value, and CWT Claims Set are used as in
<xref target="RFC8392"/>.</t>
        <t>The terms Attester, Attesting Environment, Evidence, Relying Party and Verifier are used as in <xref target="RFC9334"/>.</t>
        <dl>
          <dt>UCCS:</dt>
          <dd>
            <t>Unprotected CWT Claims Set(s); CBOR map(s) of Claims as defined by the CWT
Claims Registry that are composed of pairs of Claim Keys and Claim Values.</t>
          </dd>
          <dt>Secure Channel:</dt>
          <dd>
            <t><xref target="NIST-SP800-90Ar1"/> defines a Secure Channel as follows:
</t>
            <aside>
              <!-- This really is a block quote, but RFCXMLv3 doesn't allow that -->
      <t>"A path for transferring data between two entities or components that
ensures confidentiality, integrity and replay protection, as well as
mutual authentication between the entities or components. The secure
channel may be provided using approved cryptographic, physical or
procedural methods, or a combination thereof"</t>
            </aside>
            <t>For the purposes of the present document, we focus on a protected communication
channel used for conveyance that can ensure the same qualities
associated for UCCS conveyance as CWT conveyance without any
additional protection.
Note that this means that, in specific cases, the Secure Channel as defined here
does not itself provide mutual authentication.  See <xref target="secchan"/>.</t>
          </dd>
        </dl>
        <t>All terms referenced or defined in this section are capitalized in the remainder of
this document.</t>
        <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>
      </section>
    </section>
    <section anchor="deployment-and-usage-of-uccs">
      <name>Deployment and Usage of UCCS</name>
      <t>Usage scenarios involving the conveyance of Claims, in particular
RATS, require a standardized data definition and encoding format that
can be transferred
and transported using different communication channels.  As these are Claims, <xref target="RFC8392"/> is
a suitable format.  However, the way these Claims are secured depends on the deployment, the security
capabilities of the device, as well as their software stack.  For example, a Claim may be securely
stored and conveyed using a device's Trusted Execution Environment (TEE, see <xref target="I-D.ietf-teep-architecture"/>) or
a Trusted Platform Module (TPM, see <xref target="TPM2"/>).
Especially in some resource constrained environments, the same process that provides the secure communication
transport is also the delegate to compose the Claim to be conveyed.  Whether it is a transfer
or transport, a Secure Channel is presumed to be used for conveying such UCCS.  The following sections
elaborate on Secure Channel characteristics in general and further describe RATS usage scenarios and
corresponding requirements for UCCS deployment.</t>
    </section>
    <section anchor="secchan">
      <name>Characteristics of a Secure Channel</name>
      <t>A Secure Channel for the conveyance of UCCS needs to provide the security
properties that would otherwise be provided by COSE for a CWT.
In this regard, UCCS is similar in security considerations to JWTs <xref target="RFC8725"/>
using the algorithm "none".  RFC 8725 states:</t>
      <blockquote>
        <t>[...] if a JWT is cryptographically
protected end-to-end by a transport layer, such as TLS using
cryptographically current algorithms, there may be no need to apply another
layer of cryptographic protections to the JWT.  In such cases, the use of
the "none" algorithm can be perfectly acceptable.</t>
      </blockquote>
      <t>The security considerations discussed, e.g., in Sections <xref target="RFC8725" section="2.1" sectionFormat="bare"/>, <xref target="RFC8725" section="3.1" sectionFormat="bare"/>, and <xref target="RFC8725" section="3.2" sectionFormat="bare"/> of <xref target="RFC8725"/> apply in an analogous way to the use of UCCS as
elaborated on in this document.</t>
      <t>Secure Channels are often set up in a handshake protocol that mutually
derives a session key, where the handshake protocol establishes the
(identity and thus) authenticity of one or both ends of the communication.
The session key can
then be used to provide confidentiality and integrity of the transfer of
information inside the Secure Channel.  A well-known example of a such a
Secure Channel setup protocol is the TLS <xref target="RFC8446"/> handshake; the
TLS record protocol can then be used for secure conveyance.</t>
      <t>As UCCS were initially created for use in RATS Secure Channels, the following
section provides a discussion of
their use in these channels.  Where other environments are intended to be
used to convey UCCS, similar considerations need to be documented before
UCCS can be used.</t>
    </section>
    <section anchor="uccs-and-remote-attestation-procedures-rats">
      <name>UCCS and Remote Attestation Procedures (RATS)</name>
      <t>This section describes three detailed usage scenarios for UCCS in the context of RATS.</t>
      <section anchor="evidence-conveyance">
        <name>Evidence Conveyance</name>
        <t>For the purposes of this section, the Verifier is the receiver of the UCCS
and the Attester is the provider of the UCCS.</t>
        <t>Secure Channels can be transient in nature.  For the purposes of this
specification, the mechanisms used to establish a Secure Channel are out of
scope.</t>
        <t>As a minimum requirement in the scope of RATS Claims, the Verifier <bcp14>MUST</bcp14>
authenticate the Attester as part of the establishment of the Secure Channel.
Furthermore, the channel <bcp14>MUST</bcp14> provide integrity of the communication from the
Attester to the Verifier.
If confidentiality is also required, the receiving side <bcp14>MUST</bcp14> be
authenticated as well; this can be achieved if the Verifier and the Attester
mutually authenticate when establishing the Secure Channel.</t>
        <t>The extent to which a Secure Channel can provide assurances that UCCS
originate from a trustworthy Attesting Environment depends on the
characteristics of both the cryptographic mechanisms used to establish the
channel and the characteristics of the Attesting Environment itself.</t>
        <t>A Secure Channel established or maintained using weak cryptography
may not provide the assurance required by a Relying Party of the authenticity
and integrity of the UCCS.</t>
        <t>Ultimately, it is up to the Verifier's policy to determine whether to accept
a UCCS from the Attester and to the type of Secure Channel it must negotiate.
While the security considerations of the cryptographic algorithms used are similar
to COSE, the considerations of the Secure Channel should also adhere to the policy
configured at each of the Attester and the Verifier.  However, the policy controls
and definitions are out of scope for this document.</t>
        <t>Where the security assurance required of an Attesting Environment by a
Relying Party requires it, the Attesting Environment <bcp14>SHOULD</bcp14> be implemented
using techniques designed to provide enhanced protection from an attacker
wishing to tamper with or forge UCCS.  A possible approach might be to
implement the Attesting Environment in a hardened environment such as a
TEE <xref target="I-D.ietf-teep-architecture"/> or a TPM <xref target="TPM2"/>.</t>
        <t>When UCCS emerge from the Secure Channel and into the Verifier, the security
properties of the secure channel no longer protect the UCCS, which now are subject to the same security properties
as any other unprotected data in the Verifier environment.
If the Verifier subsequently forwards UCCS, they are treated as though they originated within the Verifier.</t>
        <t>As with EATs nested in other EATs (Section <xref target="I-D.ietf-rats-eat" section="4.2.18.3" sectionFormat="bare">Nested Tokens</xref> of <xref target="I-D.ietf-rats-eat"/>), the Secure
Channel does not endorse fully formed CWTs transferred through it.
Effectively, the COSE envelope of a CWT (or a nested EAT) shields the CWT Claims Set from the
endorsement of the secure channel.  (Note that EAT might add a nested UCCS
Claim, and this statement does not apply to UCCS nested into UCCS, only to
fully formed CWTs.)</t>
      </section>
      <section anchor="delegated-attestation">
        <name>Delegated Attestation</name>
        <t>Another usage scenario is that of a sub-Attester that has no signing keys (for example, to keep the implementation complexity to a minimum) and has a Secure Channel, such as a local IPC, to interact with a lead Attester (see Composite Device, <xref section="3.3" sectionFormat="of" target="RFC9334"/>).
The sub-Attester produces a UCCS with the required CWT Claims Set and sends the UCCS through the Secure Channel to the lead Attester.
The lead Attester then computes a cryptographic hash of the UCCS and
protects that hash using its signing key for Evidence, for example,
using a Detached-Submodule-Digest or Detached EAT Bundle (<xref section="5" sectionFormat="of" target="I-D.ietf-rats-eat"/>).</t>
      </section>
      <section anchor="privacy-preservation">
        <name>Privacy Preservation</name>
        <t>A Secure Channel which preserves the privacy of the Attester may provide
security properties equivalent to COSE, but only inside the life-span of the
session established.  In general, a Verifier cannot correlate UCCS received
in different sessions from the same Attesting Environment based on the
cryptographic mechanisms used when a privacy preserving Secure Channel is
employed.</t>
        <t>In the case of Remote Attestation, the Attester must consider whether any UCCS it returns over a privacy
preserving Secure Channel compromises the privacy in unacceptable ways.  As
an example, the use of the EAT UEID Claim <xref section="4.2.1" sectionFormat="of" target="I-D.ietf-rats-eat"/> in UCCS over a privacy
preserving secure channel allows a verifier to correlate UCCS from a single
Attesting Environment across many Secure Channel sessions. This may be
acceptable in some use-cases (e.g., if the Attesting Environment is a
physical sensor in a factory) and unacceptable in others (e.g., if the
Attesting Environment is a user device belonging to a child).</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>In the CBOR Tags registry <xref target="IANA.cbor-tags"/> as defined in <xref section="9.2" sectionFormat="of" target="RFC8949"/>, IANA is requested to allocate the tag in <xref target="tab-tag-values"/> from
the Specification Required space (1+2 size), with the present document
as the specification reference.</t>
      <table anchor="tab-tag-values">
        <name>Values for Tags</name>
        <thead>
          <tr>
            <th align="right">Tag</th>
            <th align="left">Data Item</th>
            <th align="left">Semantics</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="right">TBD601</td>
            <td align="left">map (Claims-Set as per <xref target="cddl"/> of [RFCthis])</td>
            <td align="left">Unprotected CWT Claims Set [RFCthis]</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security considerations of <xref target="RFC8949"/> apply.
The security considerations of <xref target="RFC8392"/> need to be applied analogously,
replacing the function of COSE with that of the Secure Channel.</t>
      <t><xref target="secchan"/> discusses security considerations for Secure Channels, in which
UCCS might be used.
This document provides the CBOR tag definition for UCCS and a discussion
on security consideration for the use of UCCS in RATS.  Uses of UCCS outside the scope of
RATS are not covered by this document.  The UCCS specification -- and the
use of the UCCS CBOR tag, correspondingly -- is not intended for use in a
scope where a scope-specific security consideration discussion has not
been conducted, vetted and approved for that use.</t>
      <section anchor="general-considerations">
        <name>General Considerations</name>
        <t>Implementations of Secure Channels are often separate from the application
logic that has security requirements on them.  Similar security
considerations to those described in <xref target="RFC9052"/> for obtaining the
required levels of assurance include:</t>
        <ul spacing="normal">
          <li>Implementations need to provide sufficient protection for private or
secret key material used to establish or protect the Secure Channel.</li>
          <li>Using a key for more than one algorithm can leak information about the
key and is not recommended.</li>
          <li>An algorithm used to establish or protect the Secure Channel may have
limits on the number of times that a key can be used without leaking
information about the key.</li>
          <li>Evidence in a UCCS conveyed in a Secure Channel generally cannot be
used to support trust in the credentials that were used to establish
that secure channel, as this would create a circular dependency.</li>
        </ul>
        <t>The Verifier needs to ensure that the management of key material used to
establish or protect the Secure Channel is acceptable. This may include
factors such as:</t>
        <ul spacing="normal">
          <li>Ensuring that any permissions associated with key ownership are respected
in the establishment of the Secure Channel.</li>
          <li>Using cryptographic algorithms appropriately.</li>
          <li>Using key material in accordance with any usage restrictions such as
freshness or algorithm restrictions.</li>
          <li>Ensuring that appropriate protections are in place to address potential
traffic analysis attacks.</li>
        </ul>
      </section>
      <section anchor="aes-cbcmac">
        <name>AES-CBC_MAC</name>
        <ul spacing="normal">
          <li>A given key should only be used for messages of fixed or known length.</li>
          <li>Different keys should be used for authentication and encryption operations.</li>
          <li>A mechanism to ensure that IV cannot be modified is required.</li>
        </ul>
        <t><xref section="3.2.1" sectionFormat="of" target="RFC9053"/> contains a detailed explanation of these considerations.</t>
      </section>
      <section anchor="aes-gcm">
        <name>AES-GCM</name>
        <ul spacing="normal">
          <li>The key and nonce pair is unique for every encrypted message.</li>
          <li>The maximum number of messages to be encrypted for a given key is not exceeded.</li>
        </ul>
        <t><xref section="4.1.1" sectionFormat="of" target="RFC9053"/> contains a detailed explanation of these considerations.</t>
      </section>
      <section anchor="aes-ccm">
        <name>AES-CCM</name>
        <ul spacing="normal">
          <li>The key and nonce pair is unique for every encrypted message.</li>
          <li>The maximum number of messages to be encrypted for a given block cipher is not exceeded.</li>
          <li>The number of messages both successfully and unsuccessfully decrypted is used to
determine when rekeying is required.</li>
        </ul>
        <t><xref section="4.2.1" sectionFormat="of" target="RFC9053"/> contains a detailed explanation of these considerations.</t>
      </section>
      <section anchor="chacha20-and-poly1305">
        <name>ChaCha20 and Poly1305</name>
        <ul spacing="normal">
          <li>The nonce is unique for every encrypted message.</li>
          <li>The number of messages both successfully and unsuccessfully decrypted is used to
determine when rekeying is required.</li>
        </ul>
        <t><xref section="4.3.1" sectionFormat="of" target="RFC9053"/> contains a detailed explanation of these considerations.</t>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC8949">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann">
              <organization/>
            </author>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman">
              <organization/>
            </author>
            <date month="December" year="2020"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049.  It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="RFC7519">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones">
              <organization/>
            </author>
            <author fullname="J. Bradley" initials="J." surname="Bradley">
              <organization/>
            </author>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura">
              <organization/>
            </author>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties.  The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7519"/>
          <seriesInfo name="DOI" value="10.17487/RFC7519"/>
        </reference>
        <reference anchor="RFC8725">
          <front>
            <title>JSON Web Token Best Current Practices</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer">
              <organization/>
            </author>
            <author fullname="D. Hardt" initials="D." surname="Hardt">
              <organization/>
            </author>
            <author fullname="M. Jones" initials="M." surname="Jones">
              <organization/>
            </author>
            <date month="February" year="2020"/>
            <abstract>
              <t>JSON Web Tokens, also known as JWTs, are URL-safe JSON-based security tokens that contain a set of claims that can be signed and/or encrypted. JWTs are being widely used and deployed as a simple security token format in numerous protocols and applications, both in the area of digital identity and in other application areas.  This Best Current Practices document updates RFC 7519 to provide actionable guidance leading to secure implementation and deployment of JWTs.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="225"/>
          <seriesInfo name="RFC" value="8725"/>
          <seriesInfo name="DOI" value="10.17487/RFC8725"/>
        </reference>
        <reference anchor="RFC8392">
          <front>
            <title>CBOR Web Token (CWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones">
              <organization/>
            </author>
            <author fullname="E. Wahlstroem" initials="E." surname="Wahlstroem">
              <organization/>
            </author>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman">
              <organization/>
            </author>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig">
              <organization/>
            </author>
            <date month="May" year="2018"/>
            <abstract>
              <t>CBOR Web Token (CWT) is a compact means of representing claims to be transferred between two parties.  The claims in a CWT are encoded in the Concise Binary Object Representation (CBOR), and CBOR Object Signing and Encryption (COSE) is used for added application-layer security protection.  A claim is a piece of information asserted about a subject and is represented as a name/value pair consisting of a claim name and a claim value.  CWT is derived from JSON Web Token (JWT) but uses CBOR rather than JSON.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8392"/>
          <seriesInfo name="DOI" value="10.17487/RFC8392"/>
        </reference>
        <reference anchor="IANA.cbor-tags" target="https://www.iana.org/assignments/cbor-tags">
          <front>
            <title>Concise Binary Object Representation (CBOR) Tags</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
          <format target="http://www.iana.org/assignments/cbor-tags" type="TXT"/>
        </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">
              <organization/>
            </author>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba">
              <organization/>
            </author>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC9334">
          <front>
            <title>Remote ATtestation procedureS (RATS) Architecture</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz">
              <organization/>
            </author>
            <author fullname="D. Thaler" initials="D." surname="Thaler">
              <organization/>
            </author>
            <author fullname="M. Richardson" initials="M." surname="Richardson">
              <organization/>
            </author>
            <author fullname="N. Smith" initials="N." surname="Smith">
              <organization/>
            </author>
            <author fullname="W. Pan" initials="W." surname="Pan">
              <organization/>
            </author>
            <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-teep-architecture">
          <front>
            <title>Trusted Execution Environment Provisioning (TEEP) Architecture</title>
            <author fullname="Mingliang Pei" initials="M." surname="Pei">
              <organization>Broadcom</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Dave Thaler" initials="D." surname="Thaler">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Dave Wheeler" initials="D. M." surname="Wheeler">
              <organization>Amazon</organization>
            </author>
            <date day="24" month="October" year="2022"/>
            <abstract>
              <t>   A Trusted Execution Environment (TEE) is an environment that enforces
   that any code within that environment cannot be tampered with, and
   that any data used by such code cannot be read or tampered with by
   any code outside that environment.  This architecture document
   motivates the design and standardization of a protocol for managing
   the lifecycle of trusted applications running inside such a TEE.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-teep-architecture-19"/>
        </reference>
        <reference anchor="TPM2">
          <front>
            <title>Trusted Platform Module Library Specification, Family “2.0”, Level 00, Revision 01.59 ed., Trusted Computing Group</title>
            <author>
              <organization/>
            </author>
            <date year="2019"/>
          </front>
        </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="19" month="December" year="2022"/>
            <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-19"/>
        </reference>
        <reference anchor="RFC9052">
          <front>
            <title>CBOR Object Signing and Encryption (COSE): Structures and Process</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad">
              <organization/>
            </author>
            <date month="August" year="2022"/>
            <abstract>
              <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size.  There is a need to be able to define basic security services for this data format.  This document defines the CBOR Object Signing and Encryption (COSE) protocol.  This specification describes how to create and process signatures, message authentication codes, and encryption using CBOR for serialization.  This specification additionally describes how to represent cryptographic keys using CBOR.  </t>
              <t>This document, along with RFC 9053, obsoletes RFC 8152.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="96"/>
          <seriesInfo name="RFC" value="9052"/>
          <seriesInfo name="DOI" value="10.17487/RFC9052"/>
        </reference>
        <reference anchor="RFC9053">
          <front>
            <title>CBOR Object Signing and Encryption (COSE): Initial Algorithms</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad">
              <organization/>
            </author>
            <date month="August" year="2022"/>
            <abstract>
              <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. There is a need to be able to define basic security services for this data format. This document defines a set of algorithms that can be used with the CBOR Object Signing and Encryption (COSE) protocol (RFC 9052). </t>
              <t>This document, along with RFC 9052, obsoletes RFC 8152.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9053"/>
          <seriesInfo name="DOI" value="10.17487/RFC9053"/>
        </reference>
        <reference anchor="RFC8747">
          <front>
            <title>Proof-of-Possession Key Semantics for CBOR Web Tokens (CWTs)</title>
            <author fullname="M. Jones" initials="M." surname="Jones">
              <organization/>
            </author>
            <author fullname="L. Seitz" initials="L." surname="Seitz">
              <organization/>
            </author>
            <author fullname="G. Selander" initials="G." surname="Selander">
              <organization/>
            </author>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman">
              <organization/>
            </author>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig">
              <organization/>
            </author>
            <date month="March" year="2020"/>
            <abstract>
              <t>This specification describes how to declare in a CBOR Web Token (CWT) (which is defined by RFC 8392) that the presenter of the CWT possesses a particular proof-of-possession key. Being able to prove possession of a key is also sometimes described as being the holder-of-key. This specification provides equivalent functionality to "Proof-of-Possession Key Semantics for JSON Web Tokens (JWTs)" (RFC 7800) but using Concise Binary Object Representation (CBOR) and CWTs rather than JavaScript Object Notation (JSON) and JSON Web Tokens (JWTs).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8747"/>
          <seriesInfo name="DOI" value="10.17487/RFC8747"/>
        </reference>
        <reference anchor="RFC8693">
          <front>
            <title>OAuth 2.0 Token Exchange</title>
            <author fullname="M. Jones" initials="M." surname="Jones">
              <organization/>
            </author>
            <author fullname="A. Nadalin" initials="A." surname="Nadalin">
              <organization/>
            </author>
            <author fullname="B. Campbell" initials="B." role="editor" surname="Campbell">
              <organization/>
            </author>
            <author fullname="J. Bradley" initials="J." surname="Bradley">
              <organization/>
            </author>
            <author fullname="C. Mortimore" initials="C." surname="Mortimore">
              <organization/>
            </author>
            <date month="January" year="2020"/>
            <abstract>
              <t>This specification defines a protocol for an HTTP- and JSON-based Security Token Service (STS) by defining how to request and obtain security tokens from OAuth 2.0 authorization servers, including security tokens employing impersonation and delegation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8693"/>
          <seriesInfo name="DOI" value="10.17487/RFC8693"/>
        </reference>
        <reference anchor="RFC6749">
          <front>
            <title>The OAuth 2.0 Authorization Framework</title>
            <author fullname="D. Hardt" initials="D." role="editor" surname="Hardt">
              <organization/>
            </author>
            <date month="October" year="2012"/>
            <abstract>
              <t>The OAuth 2.0 authorization framework enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowing the third-party application to obtain access on its own behalf.  This specification replaces and obsoletes the OAuth 1.0 protocol described in RFC 5849.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6749"/>
          <seriesInfo name="DOI" value="10.17487/RFC6749"/>
        </reference>
        <reference anchor="RFC9200">
          <front>
            <title>Authentication and Authorization for Constrained Environments Using the OAuth 2.0 Framework (ACE-OAuth)</title>
            <author fullname="L. Seitz" initials="L." surname="Seitz">
              <organization/>
            </author>
            <author fullname="G. Selander" initials="G." surname="Selander">
              <organization/>
            </author>
            <author fullname="E. Wahlstroem" initials="E." surname="Wahlstroem">
              <organization/>
            </author>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman">
              <organization/>
            </author>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig">
              <organization/>
            </author>
            <date month="August" year="2022"/>
            <abstract>
              <t>This specification defines a framework for authentication and authorization in Internet of Things (IoT) environments called ACE-OAuth. The framework is based on a set of building blocks including OAuth 2.0 and the Constrained Application Protocol (CoAP), thus transforming a well-known and widely used authorization solution into a form suitable for IoT devices.  Existing specifications are used where possible, but extensions are added and profiles are defined to better serve the IoT use cases.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9200"/>
          <seriesInfo name="DOI" value="10.17487/RFC9200"/>
        </reference>
        <reference anchor="NIST-SP800-90Ar1">
          <front>
            <title>Recommendation for Random Number Generation Using Deterministic Random Bit Generators</title>
            <author fullname="Elaine B. Barker" initials="E." surname="Barker">
              <organization/>
            </author>
            <author fullname="John M. Kelsey" initials="J." surname="Kelsey">
              <organization/>
            </author>
            <date month="June" year="2015"/>
          </front>
          <seriesInfo name="National Institute of Standards and Technology" value="report"/>
          <seriesInfo name="DOI" value="10.6028/nist.sp.800-90ar1"/>
        </reference>
      </references>
    </references>
    <section anchor="cddl">
      <name>CDDL</name>
      <t><xref target="RFC8392"/> does not define CDDL for CWT Claims Sets.</t>
      <t>This specification proposes using the definitions in <xref target="fig-claims-set"/>
for the CWT Claims Set defined in <xref target="RFC8392"/>.  Note that these definitions
have been built such that they also can describe <xref target="RFC7519"/> Claims sets by
disabling feature "cbor" and enabling feature "json", but this
flexibility is not the subject of the present specification.</t>
      <figure anchor="fig-claims-set">
        <name>CDDL definition for Claims-Set</name>
        <sourcecode type="cddl"><![CDATA[
UCCS = #6.601(Claims-Set)

Claims-Set = {
 * $$Claims-Set-Claims
 * Claim-Label .feature "extended-claims-label" => any
}
Claim-Label = CBOR-ONLY<int> / text
string-or-uri = text

$$Claims-Set-Claims //= ( iss-claim-label => string-or-uri )
$$Claims-Set-Claims //= ( sub-claim-label => string-or-uri )
$$Claims-Set-Claims //= ( aud-claim-label => string-or-uri )
$$Claims-Set-Claims //= ( exp-claim-label => ~time )
$$Claims-Set-Claims //= ( nbf-claim-label => ~time )
$$Claims-Set-Claims //= ( iat-claim-label => ~time )
$$Claims-Set-Claims //= ( cti-claim-label => bytes )

iss-claim-label = JC<"iss", 1>
sub-claim-label = JC<"sub", 2>
aud-claim-label = JC<"aud", 3>
exp-claim-label = JC<"exp", 4>
nbf-claim-label = JC<"nbf", 5>
iat-claim-label = JC<"iat", 6>
cti-claim-label = CBOR-ONLY<7>  ; jti in JWT: different name and text

JSON-ONLY<J> = J .feature "json"
CBOR-ONLY<C> = C .feature "cbor"
JC<J,C> = JSON-ONLY<J> / CBOR-ONLY<C>
]]></sourcecode>
      </figure>
      <t>Specifications that define additional Claims should also supply
additions to the $$Claims-Set-Claims socket, e.g.:</t>
      <sourcecode type="cddl" name="uccs-additional-examples.cddl"><![CDATA[
; [RFC8747]
$$Claims-Set-Claims //= ( 8: CWT-cnf ) ; cnf
CWT-cnf = {
  (1: CWT-COSE-Key) //
  (2: CWT-Encrypted_COSE_Key) //
  (3: CWT-kid)
}

CWT-COSE-Key = COSE_Key
CWT-Encrypted_COSE_Key = COSE_Encrypt / COSE_Encrypt0
CWT-kid = bytes

;;; insert CDDL from RFC9052 to complete these CDDL definitions.
;# include RFC9052
]]></sourcecode>
    </section>
    <section anchor="example">
      <name>Example</name>
      <t>The example CWT Claims Set from <xref section="A.1" sectionFormat="of" target="RFC8392"/> can be turned into
an UCCS by enclosing it with a tag number TBD601:</t>
      <sourcecode type="cbor-diag"><![CDATA[
 601(
   {
     / iss / 1: "coap://as.example.com",
     / sub / 2: "erikw",
     / aud / 3: "coap://light.example.com",
     / exp / 4: 1444064944,
     / nbf / 5: 1443944944,
     / iat / 6: 1443944944,
     / cti / 7: h'0b71'
   }
 )
]]></sourcecode>
      <!--  LocalWords:  Attester Verifier UCCS decrypted rekeying JWT EATs
 -->
<!--  LocalWords:  Verifier's CWTs Attester Verifier FCFS
 -->

</section>
    <section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t><contact fullname="Laurence Lundblade"/> suggested some improvements to the CDDL.
<contact fullname="Carl Wallace"/> provided a very useful review.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
