<?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.21 (Ruby 3.3.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-oauth-status-list-06" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.25.0 -->
  <front>
    <title>Token Status List</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-status-list-06"/>
    <author fullname="Tobias Looker">
      <organization>MATTR</organization>
      <address>
        <email>tobias.looker@mattr.global</email>
      </address>
    </author>
    <author fullname="Paul Bastian">
      <organization/>
      <address>
        <email>paul.bastian@posteo.de</email>
      </address>
    </author>
    <author fullname="Christian Bormann">
      <organization>Robert Bosch GmbH</organization>
      <address>
        <email>chris.bormann@gmx.de</email>
      </address>
    </author>
    <date year="2024" month="December" day="03"/>
    <abstract>
      <?line 87?>

<t>This specification defines a mechanism, data structures and processing rules for representing the status of tokens secured by JSON Object Signing and Encryption (JOSE) or CBOR Object Signing and Encryption (COSE), such as JWT, SD-JWT VC, CBOR Web Token and ISO mdoc. It also defines an extension point and a registry for future status mechanisms.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://oauth-wg.github.io/draft-ietf-oauth-status-list/draft-ietf-oauth-status-list.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-oauth-status-list/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/oauth-wg/draft-ietf-oauth-status-list"/>.</t>
    </note>
  </front>
  <middle>
    <?line 91?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Token formats secured by JOSE <xref target="IANA.JOSE"/> or COSE <xref target="RFC9052"/>, such as JWTs <xref target="RFC7519"/>, SD-JWT VCs <xref target="SD-JWT.VC"/>, CWTs <xref target="RFC8392"/> and ISO mdoc <xref target="ISO.mdoc"/>, have vast possible applications. Some of these applications can involve issuing a token whereby certain semantics about the token or its validity may change over time. Communicating these changes to relying parties in an interoperable manner, such as whether the token is considered invalidated or suspended by its issuer, is important for many of these applications.</t>
      <t>This document defines a Status List data structure that describes the individual statuses of multiple Referenced Tokens. A Referenced Token may be of any format, but is most commonly a data structures secured by JOSE or COSE. The Referenced Token is referenced by the Status List, which described the status of the Referenced Token. The statuses of all Referenced Tokens are conveyed via a bit array in the Status List. Each Referenced Token is allocated an index during issuance that represents its position within this bit array. The value of the bit(s) at this index correspond to the Referenced Token's status. A Status List is provided within a Status List Token protected by cryptographic signature or MAC and this document defines its representations in JWT and CWT format.</t>
      <t>The following diagram depicts the relationship between the artifacts:</t>
      <artwork type="ascii-art"><![CDATA[
┌────────────────┐  describes status ┌──────────────────┐
│  Status List   ├──────────────────►│ Referenced Token │
│ (JSON or CBOR) │◄──────────────────┤  (JOSE or COSE)  │
└─────┬──────────┘    references     └──────────────────┘
      │
      │ embedded in
      ▼
┌───────────────────┐
│ Status List Token │
│  (JWT or CWT)     │
└───────────────────┘

]]></artwork>
      <t>An Issuer issues Referenced Tokens to a Holder, the Holder uses and presents those Referenced Tokens to a Relying Party. The Issuer gives updated status information to the Status Issuer, who creates a Status List Token. The Status Issuer provides the Status List Token to the Status Provider, who serves the Status List Token on a public, resolvable endpoint. The roles of the Issuer (of the Referenced Token), the Status Issuer and the Status Provider may be fulfilled by the same entity. If not further specified, the term Issuer may refer to an entity acting for all three roles. This document describes how an Issuer references a Status List Token and how a Relying Party fetches and validates Status Lists.</t>
      <t>The following diagram depicts the relationship between the involved roles (Relying Party is equivalent to Verifier of <xref target="SD-JWT.VC"/>):</t>
      <artwork type="ascii-art"><![CDATA[
           issue                 present
           Referenced            Referenced
┌────────┐ Token      ┌────────┐ Token      ┌───────────────┐
│ Issuer ├───────────►│ Holder ├───────────►│ Relying Party │
└─┬──────┘            └────────┘            └──┬────────────┘
  ▼ update status                              │
┌───────────────┐                              │
│ Status Issuer │                              │
└─┬─────────────┘                              │
  ▼ provide Status List                        │
┌─────────────────┐         fetch Status List  │
│ Status Provider │◄───────────────────────────┘
└─────────────────┘

]]></artwork>
      <t>Status Lists may be composed for expressing a range of Status Types. This document defines basic Status Types for the most common use cases as well as an extensibility mechanism for custom Status Types.</t>
      <t>Furthermore, the document defines an extension point that enables other specifications to describe additional status mechanisms and creates an IANA registry.</t>
      <section anchor="example-use-cases">
        <name>Example Use Cases</name>
        <t>An example for the usage of a Status List is to manage the status of issued access tokens as defined in section 1.4 of <xref target="RFC6749"/>. Token Introspection <xref target="RFC7662"/> defines another way to determine the status of an issued access token, but it requires the party trying to validate an access tokens status to directly contact the token issuer, whereas the mechanism defined in this specification does not have this limitation.</t>
        <t>Another possible use case for the Status List is to express the status of verifiable credentials (Referenced Tokens) issued by an Issuer in the Issuer-Holder-Verifier model <xref target="SD-JWT.VC"/>.</t>
      </section>
      <section anchor="rationale">
        <name>Rationale</name>
        <t>Revocation mechanisms are an essential part for most identity ecosystems. In the past, revocation of X.509 TLS certificates has been proven difficult. Traditional certificate revocation lists (CRLs) have limited scalability; Online Certificate Status Protocol (OCSP) has additional privacy risks, since the client is leaking the requested website to a third party. OCSP stapling is addressing some of these problems at the cost of less up-to-date data. Modern approaches use accumulator-based revocation registries and Zero-Knowledge-Proofs to accommodate for this privacy gap, but face scalability issues again.</t>
        <t>This specification seeks to find a balance between scalability, security, and privacy by minimizing the status information to mere bits (often a single bit) and compressing the resulting binary data. Thereby, a Status List may contain statuses of many thousands or millions Referenced Tokens while remaining as small as possible. Placing large amounts of Referenced Tokens into the same list also enables herd privacy relative to the Status Provider.</t>
        <t>This specification establishes the IANA "Status Mechanism Methods" registry for status mechanism and registers the members defined by this specification. Other specifications can register other members used for status retrieval.</t>
      </section>
      <section anchor="design-considerations">
        <name>Design Considerations</name>
        <t>The decisions taken in this specification aim to achieve the following design goals:</t>
        <ul spacing="normal">
          <li>
            <t>the specification shall favor a simple and easy to understand concept</t>
          </li>
          <li>
            <t>the specification shall be easy, fast and secure to implement in all major programming languages</t>
          </li>
          <li>
            <t>the specification shall be optimized to support the most common use cases and avoid unnecessary complexity of corner cases</t>
          </li>
          <li>
            <t>the Status List shall scale up to millions of tokens to support large scale government or enterprise use cases</t>
          </li>
          <li>
            <t>the Status List shall enable caching policies and offline support</t>
          </li>
          <li>
            <t>the specification shall support JSON and CBOR based tokens</t>
          </li>
          <li>
            <t>the specification shall not specify key resolution or trust frameworks</t>
          </li>
          <li>
            <t>the specification shall design an extension point to convey information about the status of a token that can be re-used by other mechanisms</t>
          </li>
        </ul>
      </section>
    </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?>

</section>
    <section anchor="terminology">
      <name>Terminology</name>
      <dl>
        <dt>Issuer:</dt>
        <dd>
          <t>An entity that issues the Referenced Token.</t>
        </dd>
        <dt>Status Issuer:</dt>
        <dd>
          <t>An entity that issues the Status List Token about the status information of the Referenced Token. This role may be fulfilled by the Issuer.</t>
        </dd>
        <dt>Status Provider:</dt>
        <dd>
          <t>An entity that provides the Status List Token on a public endpoint. This role may be fulfilled by the Status Issuer.</t>
        </dd>
        <dt>Holder:</dt>
        <dd>
          <t>An entity that receives Referenced Tokens form the Issuer and presents them to Relying Parties.</t>
        </dd>
        <dt>Relying Party:</dt>
        <dd>
          <t>An entity that relies on the Status List Token to validate the status of the Referenced Token. Also known as Verifier.</t>
        </dd>
        <dt>Status List:</dt>
        <dd>
          <t>An object in JSON or CBOR representation containing a bit array that lists the statuses of many Referenced Tokens.</t>
        </dd>
        <dt>Status List Token:</dt>
        <dd>
          <t>A token in JWT or CWT representation that contains a cryptographically secured Status List.</t>
        </dd>
        <dt>Referenced Token:</dt>
        <dd>
          <t>A cryptographically secured data structure which contains a reference to a Status List Token. It is <bcp14>RECOMMENDED</bcp14> to use JSON <xref target="RFC8259"/> with JOSE as defined in <xref target="RFC7515"/> or CBOR <xref target="RFC8949"/> with COSE as defined in <xref target="RFC9052"/>. The information from the contained Status List gives the Relying Party additional information about the current status of the Referenced Token. Examples for Referenced Tokens are SD-JWT VC and ISO mdoc.</t>
        </dd>
        <dt>base64url:</dt>
        <dd>
          <t>Denotes the URL-safe base64 encoding without padding as defined in Section 2 of <xref target="RFC7515"/> as "Base64url Encoding".</t>
        </dd>
      </dl>
    </section>
    <section anchor="status-list">
      <name>Status List</name>
      <t>A Status List is a byte array that contains the statuses of many Referenced Tokens represented by one or multiple bits. A common representation of a Status List is composed by the following algorithm:</t>
      <ol spacing="normal" type="1"><li>
          <t>Each status of a Referenced Token <bcp14>MUST</bcp14> be represented with a bit-size of 1,2,4, or 8. Therefore up to 2,4,16, or 256 statuses for a Referenced Token are possible, depending on the bit-size. This limitation is intended to limit bit manipulation necessary to a single byte for every operation and thus keeping implementations simpler and less error prone.</t>
        </li>
        <li>
          <t>The overall Status List is encoded as a byte array. Depending on the bit-size, each byte corresponds to 8/(#bit-size) statuses (8,4,2, or 1). The status of each Referenced Token is identified using the index that maps to one or more specific bits within the byte array. The index starts counting at 0 and ends with "size" - 1 (being the last valid entry). The bits within an array are counted from least significant bit "0" to the most significant bit ("7"). All bits of the byte array at a particular index are set to a status value.</t>
        </li>
        <li>
          <t>The byte array is compressed using DEFLATE <xref target="RFC1951"/> with the ZLIB <xref target="RFC1950"/> data format. Implementations are <bcp14>RECOMMENDED</bcp14> to use the highest compression level available.</t>
        </li>
      </ol>
      <t>The following example illustrates a Status List that represents the statuses of 16 Referenced Tokens, requiring 16 bits (2 bytes) for the uncompressed byte array:</t>
      <artwork type="ascii-art"><![CDATA[
status[0] = 1
status[1] = 0
status[2] = 0
status[3] = 1
status[4] = 1
status[5] = 1
status[6] = 0
status[7] = 1
status[8] = 1
status[9] = 1
status[10] = 0
status[11] = 0
status[12] = 0
status[13] = 1
status[14] = 0
status[15] = 1
]]></artwork>
      <t>These bits are concatenated:</t>
      <artwork type="ascii-art"><![CDATA[
byte             0                  1               2
bit       7 6 5 4 3 2 1 0    7 6 5 4 3 2 1 0    7
         +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+  +-+...
values   |1|0|1|1|1|0|0|1|  |1|0|1|0|0|0|1|1|  |0|...
         +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+  +-+...
index     7 6 5 4 3 2 1 0   15   ...  10 9 8   23
         \_______________/  \_______________/
                0xB9               0xA3

]]></artwork>
      <section anchor="status-list-json">
        <name>Status List in JSON Format</name>
        <t>This section defines the data structure for a JSON-encoded Status List:</t>
        <ul spacing="normal">
          <li>
            <t><tt>status_list</tt>: <bcp14>REQUIRED</bcp14>. JSON Object that contains a Status List. It <bcp14>MUST</bcp14> contain at least the following claims:
            </t>
            <ul spacing="normal">
              <li>
                <t><tt>bits</tt>: <bcp14>REQUIRED</bcp14>. JSON Integer specifying the number of bits per Referenced Token in the Status List (<tt>lst</tt>). The allowed values for <tt>bits</tt> are 1,2,4 and 8.</t>
              </li>
              <li>
                <t><tt>lst</tt>: <bcp14>REQUIRED</bcp14>. JSON String that contains the status values for all the Referenced Tokens it conveys statuses for. The value <bcp14>MUST</bcp14> be the base64url-encoded Status List as specified in <xref target="status-list"/>.</t>
              </li>
              <li>
                <t><tt>aggregation_uri</tt>: <bcp14>OPTIONAL</bcp14>. JSON String that contains a URI to retrieve the Status List Aggregation for this type of Referenced Token. See section <xref target="aggregation"/> for further detail.</t>
              </li>
            </ul>
          </li>
        </ul>
        <t>The following example illustrates the JSON representation of the Status List:</t>
        <artwork><![CDATA[
byte_array = [0xb9, 0xa3] 
encoded:
{
  "bits": 1,
  "lst": "eNrbuRgAAhcBXQ"
}
]]></artwork>
      </section>
      <section anchor="status-list-cbor">
        <name>Status List in CBOR Format</name>
        <t>This section defines the data structure for a CBOR-encoded Status List:</t>
        <ul spacing="normal">
          <li>
            <t>The <tt>StatusList</tt> structure is a map (Major Type 5) and defines the following entries:
            </t>
            <ul spacing="normal">
              <li>
                <t><tt>bits</tt>: <bcp14>REQUIRED</bcp14>. Unsigned integer (Major Type 0) that contains the number of bits per Referenced Token in the Status List. The allowed values for <tt>bits</tt> are 1, 2, 4 and 8.</t>
              </li>
              <li>
                <t><tt>lst</tt>: <bcp14>REQUIRED</bcp14>. Byte string (Major Type 2) that contains the Status List as specified in <xref target="status-list"/>.</t>
              </li>
              <li>
                <t><tt>aggregation_uri</tt>: <bcp14>OPTIONAL</bcp14>. Text string (Major Type 3) that contains a URI to retrieve the Status List Aggregation for this type of Referenced Token. See section <xref target="aggregation"/> for further detail.</t>
              </li>
            </ul>
          </li>
        </ul>
        <t>The following example illustrates the CBOR representation of the Status List in Hex:</t>
        <artwork><![CDATA[
byte_array = [0xb9, 0xa3] 
encoded:
a2646269747301636c73744a78dadbb918000217015d
]]></artwork>
        <t>The following is the CBOR Annotated Hex output of the example above:</t>
        <artwork><![CDATA[
a2                              # map(2)
  64                            #   string(4)
    62697473                    #     "bits"
  01                            #   uint(1)
  63                            #   string(3)
    6c7374                      #     "lst"
  4a                            #   bytes(10)
    78dadbb918000217015d        #     "xÚÛ¹\x18\x00\x02\x17\x01]"
]]></artwork>
      </section>
    </section>
    <section anchor="status-list-token">
      <name>Status List Token</name>
      <t>A Status List Token embeds the Status List into a token that is cryptographically signed and protects the integrity of the Status List. This allows for the Status List Token to be hosted by third parties or be transferred for offline use cases.</t>
      <t>This section specifies Status List Tokens in JSON Web Token (JWT) and CBOR Web Token (CWT) format.</t>
      <section anchor="status-list-token-jwt">
        <name>Status List Token in JWT Format</name>
        <t>The Status List Token <bcp14>MUST</bcp14> be encoded as a "JSON Web Token (JWT)" according to <xref target="RFC7519"/>.</t>
        <t>The following content applies to the JWT Header:</t>
        <ul spacing="normal">
          <li>
            <t><tt>typ</tt>: <bcp14>REQUIRED</bcp14>. The JWT type <bcp14>MUST</bcp14> be <tt>statuslist+jwt</tt>.</t>
          </li>
        </ul>
        <t>The following content applies to the JWT Claims Set:</t>
        <ul spacing="normal">
          <li>
            <t><tt>sub</tt>: <bcp14>REQUIRED</bcp14>. As generally defined in <xref target="RFC7519"/>. The <tt>sub</tt> (subject) claim <bcp14>MUST</bcp14> specify the URI of the Status List Token. The value <bcp14>MUST</bcp14> be equal to that of the <tt>uri</tt> claim contained in the <tt>status_list</tt> claim of the Referenced Token.</t>
          </li>
          <li>
            <t><tt>iat</tt>: <bcp14>REQUIRED</bcp14>. As generally defined in <xref target="RFC7519"/>. The <tt>iat</tt> (issued at) claim <bcp14>MUST</bcp14> specify the time at which the Status List Token was issued.</t>
          </li>
          <li>
            <t><tt>exp</tt>: <bcp14>OPTIONAL</bcp14>. As generally defined in <xref target="RFC7519"/>. The <tt>exp</tt> (expiration time) claim, if present, <bcp14>MUST</bcp14> specify the time at which the Status List Token is considered expired by the Status Issuer.</t>
          </li>
          <li>
            <t><tt>ttl</tt>: <bcp14>OPTIONAL</bcp14>. The <tt>ttl</tt> (time to live) claim, if present, <bcp14>MUST</bcp14> specify the maximum amount of time, in seconds, that the Status List Token can be cached by a consumer before a fresh copy <bcp14>SHOULD</bcp14> be retrieved. The value of the claim <bcp14>MUST</bcp14> be a positive number encoded in JSON as a number.</t>
          </li>
          <li>
            <t><tt>status_list</tt>: <bcp14>REQUIRED</bcp14>. The <tt>status_list</tt> (status list) claim <bcp14>MUST</bcp14> specify the Status List conforming to the rules outlined in <xref target="status-list-json"/>.</t>
          </li>
        </ul>
        <t>The following additional rules apply:</t>
        <ol spacing="normal" type="1"><li>
            <t>The JWT <bcp14>MAY</bcp14> contain other claims.</t>
          </li>
          <li>
            <t>The JWT <bcp14>MUST</bcp14> be secured using a cryptographic signature or MAC algorithm. Relying Parties <bcp14>MUST</bcp14> reject JWTs with an invalid signature.</t>
          </li>
          <li>
            <t>Relying Parties <bcp14>MUST</bcp14> reject JWTs that are not valid in all other respects per "JSON Web Token (JWT)" <xref target="RFC7519"/>.</t>
          </li>
          <li>
            <t>Application of additional restrictions and policy are at the discretion of the Relying Party.</t>
          </li>
        </ol>
        <t>The following is a non-normative example for a Status List Token in JWT format:</t>
        <artwork><![CDATA[
{
  "alg": "ES256",
  "kid": "12",
  "typ": "statuslist+jwt"
}
.
{
  "exp": 2291720170,
  "iat": 1686920170,
  "status_list": {
    "bits": 1,
    "lst": "eNrbuRgAAhcBXQ"
  },
  "sub": "https://example.com/statuslists/1",
  "ttl": 43200
}
]]></artwork>
      </section>
      <section anchor="status-list-token-cwt">
        <name>Status List Token in CWT Format</name>
        <t>The Status List Token <bcp14>MUST</bcp14> be encoded as a "CBOR Web Token (CWT)" according to <xref target="RFC8392"/>.</t>
        <t>The following content applies to the CWT protected header:</t>
        <ul spacing="normal">
          <li>
            <t><tt>16</tt> (type): <bcp14>REQUIRED</bcp14>. The type of the CWT <bcp14>MUST</bcp14> be <tt>statuslist+cwt</tt> as defined in <xref target="RFC9596"/>.</t>
          </li>
        </ul>
        <t>The following content applies to the CWT Claims Set:</t>
        <ul spacing="normal">
          <li>
            <t><tt>2</tt> (subject): <bcp14>REQUIRED</bcp14>. As generally defined in <xref target="RFC8392"/>. The subject claim <bcp14>MUST</bcp14> specify the URI of the Status List Token. The value <bcp14>MUST</bcp14> be equal to that of the <tt>uri</tt> claim contained in the <tt>status_list</tt> claim of the Referenced Token.</t>
          </li>
          <li>
            <t><tt>6</tt> (issued at): <bcp14>REQUIRED</bcp14>. As generally defined in <xref target="RFC8392"/>. The issued at claim <bcp14>MUST</bcp14> specify the time at which the Status List Token was issued.</t>
          </li>
          <li>
            <t><tt>4</tt> (expiration time): <bcp14>OPTIONAL</bcp14>. As generally defined in <xref target="RFC8392"/>. The expiration time claim, if present, <bcp14>MUST</bcp14> specify the time at which the Status List Token is considered expired by its issuer.</t>
          </li>
          <li>
            <t><tt>65534</tt> (time to live): <bcp14>OPTIONAL</bcp14>. Unsigned integer (Major Type 0). The time to live claim, if present, <bcp14>MUST</bcp14> specify the maximum amount of time, in seconds, that the Status List Token can be cached by a consumer before a fresh copy <bcp14>SHOULD</bcp14> be retrieved. The value of the claim <bcp14>MUST</bcp14> be a positive number.</t>
          </li>
          <li>
            <t><tt>65533</tt> (status list): <bcp14>REQUIRED</bcp14>. The status list claim <bcp14>MUST</bcp14> specify the Status List conforming to the rules outlined in <xref target="status-list-cbor"/>.</t>
          </li>
        </ul>
        <t>The following additional rules apply:</t>
        <ol spacing="normal" type="1"><li>
            <t>The CWT <bcp14>MAY</bcp14> contain other claims.</t>
          </li>
          <li>
            <t>The CWT <bcp14>MUST</bcp14> be secured using a cryptographic signature or MAC algorithm. Relying Parties <bcp14>MUST</bcp14> reject CWTs with an invalid signature.</t>
          </li>
          <li>
            <t>Relying Parties <bcp14>MUST</bcp14> reject CWTs that are not valid in all other respects per "CBOR Web Token (CWT)" <xref target="RFC8392"/>.</t>
          </li>
          <li>
            <t>Application of additional restrictions and policy are at the discretion of the Relying Party.</t>
          </li>
        </ol>
        <t>The following is a non-normative example for a Status List Token in CWT format in Hex:</t>
        <artwork><![CDATA[
d28453a20126106e7374617475736c6973742b637774a1044231325850a502782168
747470733a2f2f6578616d706c652e636f6d2f7374617475736c697374732f31061a
648c5bea041a8898dfea19fffe19a8c019fffda2646269747301636c73744a78dadb
b918000217015d5840a58e97949e926d4d0e5340a7d103f0181aa35ed5ba1aaab42b
9c058335de2cdf833dce0e7ebbc032b05615f1d2e70b53eb7275966ce834ddc42b76
549d8a68b5
]]></artwork>
        <t>The following is the CBOR Annotated Hex output of the example above:</t>
        <artwork><![CDATA[
d2                              # tag(18)
  84                            #   array(4)
    53                          #     bytes(19)
      a20126106e7374617475736c  #       "¢\x01&\x10nstatusl"
      6973742b637774            #       "ist+cwt"
    a1                          #     map(1)
      04                        #       uint(4)
      42                        #       bytes(2)
        3132                    #         "12"
    58 50                       #     bytes(80)
      a502782168747470733a2f2f  #       "¥\x02x!https://"
      6578616d706c652e636f6d2f  #       "example.com/"
      7374617475736c697374732f  #       "statuslists/"
      31061a648c5bea041a8898df  #       "1\x06\x1ad\x8c[ê\x04\x1a\x88\x98ß"
      ea19fffe19a8c019fffda264  #       "ê\x19ÿþ\x19¨À\x19ÿý¢d"
      6269747301636c73744a78da  #       "bits\x01clstJxÚ"
      dbb918000217015d          #       "Û¹\x18\x00\x02\x17\x01]"
    58 40                       #     bytes(64)
      a58e97949e926d4d0e5340a7  #       "¥\x8e\x97\x94\x9e\x92mM\x0eS@§"
      d103f0181aa35ed5ba1aaab4  #       "Ñ\x03ð\x18\x1a£^Õº\x1aª´"
      2b9c058335de2cdf833dce0e  #       "+\x9c\x05\x835Þ,ß\x83=Î\x0e"
      7ebbc032b05615f1d2e70b53  #       "~»À2°V\x15ñÒç\x0bS"
      eb7275966ce834ddc42b7654  #       "ëru\x96lè4ÝÄ+vT"
      9d8a68b5                  #       "\x9d\x8ahµ"
]]></artwork>
      </section>
    </section>
    <section anchor="referenced-token">
      <name>Referenced Token</name>
      <section anchor="status-claim">
        <name>Status Claim</name>
        <t>By including a "status" claim in a Referenced Token, the Issuer is referencing a mechanism to retrieve status information about this Referenced Token. The claim contains members used to reference to a Status List Token as defined in this specification. Other members of the "status" object may be defined by other specifications. This is analogous to "cnf" claim in Section 3.1 of <xref target="RFC7800"/> in which different authenticity confirmation methods can be included.</t>
      </section>
      <section anchor="referenced-token-jose">
        <name>Referenced Token in JOSE</name>
        <t>The Referenced Token <bcp14>MAY</bcp14> be encoded as a "JSON Web Token (JWT)" according to <xref target="RFC7519"/> or other formats based on JOSE.</t>
        <t>The following content applies to the JWT Claims Set:</t>
        <ul spacing="normal">
          <li>
            <t><tt>status</tt>: <bcp14>REQUIRED</bcp14>. The <tt>status</tt> (status) claim <bcp14>MUST</bcp14> specify a JSON Object that contains at least one reference to a status mechanism.
            </t>
            <ul spacing="normal">
              <li>
                <t><tt>status_list</tt>: <bcp14>REQUIRED</bcp14> when the status mechanism defined in this specification is used. It contains a reference to a Status List Token. It <bcp14>MUST</bcp14> at least contain the following claims:
                </t>
                <ul spacing="normal">
                  <li>
                    <t><tt>idx</tt>: <bcp14>REQUIRED</bcp14>. The <tt>idx</tt> (index) claim <bcp14>MUST</bcp14> specify an Integer that represents the index to check for status information in the Status List for the current Referenced Token. The value of <tt>idx</tt> <bcp14>MUST</bcp14> be a non-negative number, containing a value of zero or greater.</t>
                  </li>
                  <li>
                    <t><tt>uri</tt>: <bcp14>REQUIRED</bcp14>. The <tt>uri</tt> (URI) claim <bcp14>MUST</bcp14> specify a String value that identifies the Status List Token containing the status information for the Referenced Token. The value of <tt>uri</tt> <bcp14>MUST</bcp14> be a URI conforming to <xref target="RFC3986"/>.</t>
                  </li>
                </ul>
              </li>
            </ul>
          </li>
        </ul>
        <t>Application of additional restrictions and policy are at the discretion of the Relying Party.</t>
        <t>The following is a non-normative example for a decoded header and payload of a Referenced Token:</t>
        <artwork type="ascii-art"><![CDATA[
{
  "alg": "ES256",
  "kid": "11"
}
.
{
  "status": {
    "status_list": {
      "idx": 0,
      "uri": "https://example.com/statuslists/1"
    }
  }
}
]]></artwork>
        <t>SD-JWT-based Verifiable Credentials <xref target="SD-JWT.VC"/> introduce the usage of status mechanism in Section 3.2.2.2. The "status" object uses the same encoding as a JWT as defined in <xref target="referenced-token-jose"/>.</t>
        <t>The following is a non-normative example for a Referenced Token in SD-JWT-VC serialized form as received from an Issuer:</t>
        <artwork type="ascii-art"><![CDATA[
eyJhbGciOiAiRVMyNTYiLCAidHlwIjogImV4YW1wbGUrc2Qtand0In0.eyJfc2QiOiBb
Ikh2cktYNmZQVjB2OUtfeUNWRkJpTEZIc01heGNEXzExNEVtNlZUOHgxbGciXSwgImlz
cyI6ICJodHRwczovL2V4YW1wbGUuY29tL2lzc3VlciIsICJpYXQiOiAxNjgzMDAwMDAw
LCAiZXhwIjogMTg4MzAwMDAwMCwgInN1YiI6ICI2YzVjMGE0OS1iNTg5LTQzMWQtYmFl
Ny0yMTkxMjJhOWVjMmMiLCAic3RhdHVzIjogeyJzdGF0dXNfbGlzdCI6IHsiaWR4Ijog
MCwgInVyaSI6ICJodHRwczovL2V4YW1wbGUuY29tL3N0YXR1c2xpc3RzLzEifX0sICJf
c2RfYWxnIjogInNoYS0yNTYifQ.-kgS-R-Z4DEDlqb8kb6381_gHHNatsoF1fcVKZk3M
06CrnV8F8k9d2w2V_YAOvgcb0f11FqDFezXBXH30d4vcw~WyIyR0xDNDJzS1F2ZUNmR2
ZyeU5STjl3IiwgInN0cmVldF9hZGRyZXNzIiwgIlNjaHVsc3RyLiAxMiJd~WyJlbHVWN
U9nM2dTTklJOEVZbnN4QV9BIiwgImxvY2FsaXR5IiwgIlNjaHVscGZvcnRhIl0~WyI2S
Wo3dE0tYTVpVlBHYm9TNXRtdlZBIiwgInJlZ2lvbiIsICJTYWNoc2VuLUFuaGFsdCJd~
WyJlSThaV205UW5LUHBOUGVOZW5IZGhRIiwgImNvdW50cnkiLCAiREUiXQ~WyJRZ19PN
jR6cUF4ZTQxMmExMDhpcm9BIiwgImFkZHJlc3MiLCB7Il9zZCI6IFsiNnZoOWJxLXpTN
EdLTV83R3BnZ1ZiWXp6dTZvT0dYcm1OVkdQSFA3NVVkMCIsICI5Z2pWdVh0ZEZST0NnU
nJ0TmNHVVhtRjY1cmRlemlfNkVyX2o3NmttWXlNIiwgIktVUkRQaDRaQzE5LTN0aXotR
GYzOVY4ZWlkeTFvVjNhM0gxRGEyTjBnODgiLCAiV045cjlkQ0JKOEhUQ3NTMmpLQVN4V
GpFeVc1bTV4NjVfWl8ycm8yamZYTSJdfV0~
]]></artwork>
        <t>Resulting payload of the example above:</t>
        <artwork type="ascii-art"><![CDATA[
{
  "_sd": [
    "HvrKX6fPV0v9K_yCVFBiLFHsMaxcD_114Em6VT8x1lg"
  ],
  "iss": "https://example.com/issuer",
  "iat": 1683000000,
  "exp": 1883000000,
  "sub": "6c5c0a49-b589-431d-bae7-219122a9ec2c",
  "status": {
    "status_list": {
      "idx": 0,
      "uri": "https://example.com/statuslists/1"
    }
  },
  "_sd_alg": "sha-256"
}
]]></artwork>
      </section>
      <section anchor="referenced-token-cose">
        <name>Referenced Token in COSE</name>
        <t>The Referenced Token <bcp14>MAY</bcp14> be encoded as a "COSE Web Token (CWT)" object according to <xref target="RFC8392"/> or other formats based on COSE.</t>
        <t>The following content applies to the CWT Claims Set:</t>
        <ul spacing="normal">
          <li>
            <t><tt>65535</tt> (status): <bcp14>REQUIRED</bcp14>. The status claim is encoded as a <tt>Status</tt> CBOR structure and <bcp14>MUST</bcp14> include at least one data item that refers to a status mechanism. Each data item in the <tt>Status</tt> CBOR structure comprises a key-value pair, where the key must be a CBOR text string (Major Type 3) specifying the identifier of the status mechanism, and the corresponding value defines its contents. This specification defines the following data items:
            </t>
            <ul spacing="normal">
              <li>
                <t><tt>status_list</tt> (status list): <bcp14>REQUIRED</bcp14> when the status mechanism defined in this specification is used. It has the same definition as the <tt>status_list</tt> claim in <xref target="referenced-token-jose"/> but <bcp14>MUST</bcp14> be encoded as a <tt>StatusListInfo</tt> CBOR structure with the following fields:
                </t>
                <ul spacing="normal">
                  <li>
                    <t><tt>idx</tt>: <bcp14>REQUIRED</bcp14>. Unsigned integer (Major Type 0) The <tt>idx</tt> (index) claim <bcp14>MUST</bcp14> specify an Integer that represents the index to check for status information in the Status List for the current Referenced Token. The value of <tt>idx</tt> <bcp14>MUST</bcp14> be a non-negative number, containing a value of zero or greater.</t>
                  </li>
                  <li>
                    <t><tt>uri</tt>: <bcp14>REQUIRED</bcp14>. Text string (Major Type 3). The <tt>uri</tt> (URI) claim <bcp14>MUST</bcp14> specify a String value that identifies the Status List Token containing the status information for the Referenced Token. The value of <tt>uri</tt> <bcp14>MUST</bcp14> be a URI conforming to <xref target="RFC3986"/>.</t>
                  </li>
                </ul>
              </li>
            </ul>
          </li>
        </ul>
        <t>Application of additional restrictions and policy are at the discretion of the Relying Party.</t>
        <t>The following is a non-normative example of a Referenced Token in CWT format in Hex:</t>
        <artwork><![CDATA[
d28443a10126a1044231325866a502653132333435017368747470733a2f2f657861
6d706c652e636f6d061a648c5bea041a8898dfea19ffffa16b7374617475735f6c69
7374a2636964780063757269782168747470733a2f2f6578616d706c652e636f6d2f
7374617475736c697374732f31584012be6202bd38a240e6f7b70e9fdd1456091580
d64f51995f449bcc6010388f04c00dec0e123a1e8df06343b70f7ed109dc53be2bd3
8a8535aa60cbe6ead87e9d
]]></artwork>
        <t>The following is the CBOR Annotated Hex output of the example above:</t>
        <artwork><![CDATA[
d2                              # tag(18)
  84                            #   array(4)
    43                          #     bytes(3)
      a10126                    #       "¡\x01&"
    a1                          #     map(1)
      04                        #       uint(4)
      42                        #       bytes(2)
        3132                    #         "12"
    58 66                       #     bytes(102)
      a50265313233343501736874  #       "¥\x02e12345\x01sht"
      7470733a2f2f6578616d706c  #       "tps://exampl"
      652e636f6d061a648c5bea04  #       "e.com\x06\x1ad\x8c[ê\x04"
      1a8898dfea19ffffa16b7374  #       "\x1a\x88\x98ßê\x19ÿÿ¡kst"
      617475735f6c697374a26369  #       "atus_list¢ci"
      647800637572697821687474  #       "dx\x00curix!htt"
      70733a2f2f6578616d706c65  #       "ps://example"
      2e636f6d2f7374617475736c  #       ".com/statusl"
      697374732f31              #       "ists/1"
    58 40                       #     bytes(64)
      12be6202bd38a240e6f7b70e  #       "\x12¾b\x02½8¢@æ÷·\x0e"
      9fdd1456091580d64f51995f  #       "\x9fÝ\x14V\x09\x15\x80ÖOQ\x99_"
      449bcc6010388f04c00dec0e  #       "D\x9bÌ`\x108\x8f\x04À\x0dì\x0e"
      123a1e8df06343b70f7ed109  #       "\x12:\x1e\x8dðcC·\x0f~Ñ\x09"
      dc53be2bd38a8535aa60cbe6  #       "ÜS¾+Ó\x8a\x855ª`Ëæ"
      ead87e9d                  #       "êØ~\x9d"
]]></artwork>
        <t>ISO mdoc <xref target="ISO.mdoc"/> may utilize the Status List mechanism by introducing the <tt>status</tt> parameter in the Mobile Security Object (MSO) as specified in Section 9.1.2. The <tt>status</tt> parameter uses the same encoding as a CWT as defined in <xref target="referenced-token-cose"/>.</t>
        <t>It is <bcp14>RECOMMENDED</bcp14> to use <tt>status</tt> for the label of the field that contains the <tt>Status</tt> CBOR structure.</t>
        <t>Application of additional restrictions and policy are at the discretion of the Relying Party.</t>
        <t>The following is a non-normative example for an IssuerAuth as specified in ISO mDL (also referred to as signed MSO) in Hex:</t>
        <artwork type="ascii-art"><![CDATA[
8443a10126a118215901f3308201ef30820195a00302010202140bfec7da97e048e
15ac3dacb9eafe82e64fd07f5300a06082a8648ce3d040302302331143012060355
04030c0b75746f7069612069616361310b3009060355040613025553301e170d323
4313030313030303030305a170d3235313030313030303030305a30213112301006
035504030c0975746f706961206473310b300906035504061302555330593013060
72a8648ce3d020106082a8648ce3d03010703420004ace7ab7340e5d9648c5a72a9
a6f56745c7aad436a03a43efea77b5fa7b88f0197d57d8983e1b37d3a539f4d5883
65e38cbbf5b94d68c547b5bc8731dcd2f146ba381a83081a5301c0603551d1f0415
30133011a00fa00d820b6578616d706c652e636f6d301e0603551d1204173015811
36578616d706c65406578616d706c652e636f6d301d0603551d0e0416041414e290
17a6c35621ffc7a686b7b72db06cd12351301f0603551d2304183016801454fa238
3a04c28e0d930792261c80c4881d2c00b300e0603551d0f0101ff04040302078030
150603551d250101ff040b3009060728818c5d050102300a06082a8648ce3d04030
20348003045022100b7103fd4b90529f50bd6f70c5ae5ce7f4f3d4d15a4e082812f
9fa1f5c2e5aa0a0220070b2822ec7ce6c56804923a85b2cfbffd054cf9a915f070c
fef7179a4bc6569590320d81859031ba766737461747573a16b7374617475735f6c
697374a26369647819019c63757269782168747470733a2f2f6578616d706c652e6
36f6d2f7374617475736c697374732f3167646f6354797065756f72672e69736f2e
31383031332e352e312e6d444c6776657273696f6e63312e306c76616c696469747
9496e666fa3667369676e6564c074323032342d31302d30315431333a33303a3032
5a6976616c696446726f6dc074323032342d31302d30315431333a33303a30325a6
a76616c6964556e74696cc074323032352d31302d30315431333a33303a30325a6c
76616c756544696765737473a1716f72672e69736f2e31383031332e352e31ac005
820a81d65ed5075fbd7ee19fa66e2bb3047ed826e2769873e7ef07c923da7a6f243
01582048701a9546492284d266ed81d439230a582d0e1f17a08ab1859a3efe98069
0a4025820d11fe48c8835b30bfb3895c3905436ddfb63f59ab9eee181b110985329
2a8f62035820a741bf05e20a8bc359e32426106ed0899b2c60262cc3acc637ddc99
41095fb7a045820ab67cb9a8f20a8572f77f02727367d08dc8e57fb89deb46b9c62
6e94457b7d8b055820bacddb4142b3842bd555206eb5acb27ded063294995c7e7fe
fbf93ece522604d065820bfd02b3aebdc05b53b5539226c38088d6d784b0ea0fab6
9eb9311650a48d325307582027dab70fe71da63e5e5d199e8ae5b79cbe8904bc30c
5b7544fb809e02ccb3e6a0858200dbd7ccc9c7727d3d17295f1b6f1914071670ee2
3d4d33530c31f1f406b8e3b7095820a5beb5efadf37f21637209abc519830681cc5
1f334818a823fec13b29552f5ba0a5820d8047c95f9272d7d07b2c13a9f5ac2ee02
380ab272a165e569391d89a2152c3c0b582004939930ffb4911ef03487a153605a3
0368b69f2437d6d21b4c90f92bc144c3e6d6465766963654b6579496e666fa16964
65766963654b6579a40102200121582096313d6c63e24e3372742bfdb1a33ba2c89
7dcd68ab8c753e4fbd48dca6b7f9a2258201fb3269edd418857de1b39a4e4a44b92
fa484caa722c228288f01d0c03a2c3d66f646967657374416c676f726974686d675
348412d3235365840b7c2d4abe85aa5ba814ef95de0385c71c802be8ac33a4a971a
85ed800ba7acb59cb21035f4a68fc0caa450cbefd3b255aec72f83595f0ae7b7d50
fe8a1c4cafe
]]></artwork>
        <t>The following is the CBOR Diagnostic Notation of the example above:</t>
        <artwork><![CDATA[
[
  << {
    1: -7
  } >>,
  {
    33: h'308201ef30820195a00302010202140bfec7da97e048e15ac3dacb9ea
    fe82e64fd07f5300a06082a8648ce3d04030230233114301206035504030c0b
    75746f7069612069616361310b3009060355040613025553301e170d3234313
    030313030303030305a170d3235313030313030303030305a30213112301006
    035504030c0975746f706961206473310b30090603550406130255533059301
    306072a8648ce3d020106082a8648ce3d03010703420004ace7ab7340e5d964
    8c5a72a9a6f56745c7aad436a03a43efea77b5fa7b88f0197d57d8983e1b37d
    3a539f4d588365e38cbbf5b94d68c547b5bc8731dcd2f146ba381a83081a530
    1c0603551d1f041530133011a00fa00d820b6578616d706c652e636f6d301e0
    603551d120417301581136578616d706c65406578616d706c652e636f6d301d
    0603551d0e0416041414e29017a6c35621ffc7a686b7b72db06cd12351301f0
    603551d2304183016801454fa2383a04c28e0d930792261c80c4881d2c00b30
    0e0603551d0f0101ff04040302078030150603551d250101ff040b300906072
    8818c5d050102300a06082a8648ce3d0403020348003045022100b7103fd4b9
    0529f50bd6f70c5ae5ce7f4f3d4d15a4e082812f9fa1f5c2e5aa0a0220070b2
    822ec7ce6c56804923a85b2cfbffd054cf9a915f070cfef7179a4bc6569'
  },
  << 24( << {
    "status": {
      "status_list": {
        "idx": 412,
        "uri": "https://example.com/statuslists/1"
      }
    },
    "docType": "org.iso.18013.5.1.mDL",
    "version": "1.0",
    "validityInfo": {
      "signed": 2024-10-01 13:30:02+00:00,
      "validFrom": 2024-10-01 13:30:02+00:00,
      "validUntil": 2025-10-01 13:30:02+00:00
    },
    "valueDigests": {
      "org.iso.18013.5.1": {
        0: h'a81d65ed5075fbd7ee19fa66e2bb3047ed826e2769873e7ef07c92
        3da7a6f243',
        1: h'48701a9546492284d266ed81d439230a582d0e1f17a08ab1859a3e
        fe980690a4',
        2: h'd11fe48c8835b30bfb3895c3905436ddfb63f59ab9eee181b11098
        53292a8f62',
        3: h'a741bf05e20a8bc359e32426106ed0899b2c60262cc3acc637ddc9
        941095fb7a',
        4: h'ab67cb9a8f20a8572f77f02727367d08dc8e57fb89deb46b9c626e
        94457b7d8b',
        5: h'bacddb4142b3842bd555206eb5acb27ded063294995c7e7fefbf93
        ece522604d',
        6: h'bfd02b3aebdc05b53b5539226c38088d6d784b0ea0fab69eb93116
        50a48d3253',
        7: h'27dab70fe71da63e5e5d199e8ae5b79cbe8904bc30c5b7544fb809
        e02ccb3e6a',
        8: h'0dbd7ccc9c7727d3d17295f1b6f1914071670ee23d4d33530c31f1
        f406b8e3b7',
        9: h'a5beb5efadf37f21637209abc519830681cc51f334818a823fec13
        b29552f5ba',
        10: h'd8047c95f9272d7d07b2c13a9f5ac2ee02380ab272a165e569391
        d89a2152c3c',
        11: h'04939930ffb4911ef03487a153605a30368b69f2437d6d21b4c90
        f92bc144c3e'
      }
    },
    "deviceKeyInfo": {
      "deviceKey": {
        1: 2,
        -1: 1,
        -2: h'96313d6c63e24e3372742bfdb1a33ba2c897dcd68ab8c753e4fbd
        48dca6b7f9a',
        -3: h'1fb3269edd418857de1b39a4e4a44b92fa484caa722c228288f01
        d0c03a2c3d6'
      }
    },
    "digestAlgorithm": "SHA-256"
  } >> ) >>,
  h'b7c2d4abe85aa5ba814ef95de0385c71c802be8ac33a4a971a85ed800ba7acb
  59cb21035f4a68fc0caa450cbefd3b255aec72f83595f0ae7b7d50fe8a1c4cafe'
]
]]></artwork>
      </section>
    </section>
    <section anchor="status-types">
      <name>Status Types</name>
      <t>This document defines statuses of Referenced Tokens as Status Type values. A status describes the state, mode, condition or stage of an entity that is represented by the Referenced Token.</t>
      <t>A Status List can not represent multiple statuses per Referenced Token. If the Status List contains more than one bit per token (as defined by <tt>bits</tt> in the Status List), then the whole value of bits <bcp14>MUST</bcp14> describe one value. Status Types <bcp14>MUST</bcp14> have a numeric value between 0 and 255 for their representation in the Status List. The issuer of the Status List <bcp14>MUST</bcp14> choose an adequate <tt>bits</tt> (bit size) to be able to describe the required Status Types for its application.</t>
      <section anchor="status-types-values">
        <name>Status Types Values</name>
        <t>This document creates a registry in <xref target="iana-status-types"/> that includes the most common Status Type values. Additional values may defined for particular use cases. Status Types described by this document comprise:</t>
        <ul spacing="normal">
          <li>
            <t>0x00 - "VALID" - The status of the Referenced Token is valid, correct or legal.</t>
          </li>
          <li>
            <t>0x01 - "INVALID" - The status of the Referenced Token is revoked, annulled, taken back, recalled or cancelled.</t>
          </li>
          <li>
            <t>0x02 - "SUSPENDED" - The status of the Referenced Token is temporarily invalid, hanging, debarred from privilege. This state is reversible.</t>
          </li>
          <li>
            <t>0x03 - "APPLICATION_SPECIFIC_3" - The status of the Referenced Token is implicitly given by the particular use case and the meaning of this value is known out-of-band.</t>
          </li>
          <li>
            <t>0x0E - "APPLICATION_SPECIFIC_14" - The status of the Referenced Token is implicitly given by the particular use case and the meaning of this value is known out-of-band.</t>
          </li>
          <li>
            <t>0x0F - "APPLICATION_SPECIFIC_15" - The status of the Referenced Token is implicitly given by the particular use case and the meaning of this value is known out-of-band.</t>
          </li>
        </ul>
        <t>The Status Issuer <bcp14>MUST</bcp14> choose an adequate <tt>bits</tt> (bit size) to be able to describe the required Status Types for the application.</t>
        <t>The processing rules for JWT or CWT precede any evaluation of a Referenced Token's status. For example, if a token is evaluated as being expired through the "exp" (Expiration Time) but also has a status of 0x00 ("VALID"), the token is considered expired.</t>
      </section>
    </section>
    <section anchor="verification-and-processing">
      <name>Verification and Processing</name>
      <section anchor="status-list-request">
        <name>Status List Request</name>
        <t>To obtain the Status List Token, the Relying Party <bcp14>MUST</bcp14> send an HTTP GET request to the URI provided in the Referenced Token.</t>
        <t>The HTTP endpoint <bcp14>SHOULD</bcp14> support the use of Cross-Origin Resource Sharing (CORS) <xref target="CORS"/> and/or other methods as appropriate to enable Browser-Based clients to access it.</t>
        <t>The Relying Party <bcp14>SHOULD</bcp14> send the following Accept-Header to indicate the requested response type:</t>
        <ul spacing="normal">
          <li>
            <t>"application/statuslist+jwt" for Status List Token in JWT format</t>
          </li>
          <li>
            <t>"application/statuslist+cwt" for Status List Token in CWT format</t>
          </li>
        </ul>
        <t>If the Relying Party does not send an Accept Header, the response type is assumed to be known implicit or out-of-band.</t>
        <t>A successful response that contains a Status List Token <bcp14>MUST</bcp14> use an HTTP status code in the 2xx range.</t>
        <t>A response <bcp14>MAY</bcp14> also choose to redirect the client to another URI using a HTTP status code in the 3xx range, which clients <bcp14>SHOULD</bcp14> follow. A client <bcp14>SHOULD</bcp14> detect and intervene in cyclical redirections (i.e., "infinite" redirection loops).</t>
        <t>The following are non-normative examples for a request and response for a Status List Token with type <tt>application/statuslist+jwt</tt>:</t>
        <artwork type="ascii-art"><![CDATA[
GET /statuslists/1 HTTP/1.1
Host: example.com
Accept: application/statuslist+jwt
]]></artwork>
        <artwork type="ascii-art"><![CDATA[
HTTP/1.1 200 OK
Content-Type: application/statuslist+jwt

eyJhbGciOiJFUzI1NiIsImtpZCI6IjEyIiwidHlwIjoic3RhdHVzbGlzdCtqd3QifQ.e
yJleHAiOjIyOTE3MjAxNzAsImlhdCI6MTY4NjkyMDE3MCwiaXNzIjoiaHR0cHM6Ly9le
GFtcGxlLmNvbSIsInN0YXR1c19saXN0Ijp7ImJpdHMiOjEsImxzdCI6ImVOcmJ1UmdBQ
WhjQlhRIn0sInN1YiI6Imh0dHBzOi8vZXhhbXBsZS5jb20vc3RhdHVzbGlzdHMvMSIsI
nR0bCI6NDMyMDB9.cyiLrzQVZvPnAXO07s7EzUqBB-62Sa39XfZMopIfEVQ819dBFvgv
wvQmJd8OHDj6l6Ct-tG3CLUG8LaxubYL6g
]]></artwork>
      </section>
      <section anchor="status-list-response">
        <name>Status List Response</name>
        <t>In the successful response, the Status Provider <bcp14>MUST</bcp14> use the following content-type:</t>
        <ul spacing="normal">
          <li>
            <t>"application/statuslist+jwt" for Status List Token in JWT format</t>
          </li>
          <li>
            <t>"application/statuslist+cwt" for Status List Token in CWT format</t>
          </li>
        </ul>
        <t>In the case of "application/statuslist+jwt", the response <bcp14>MUST</bcp14> be of type JWT and follow the rules of <xref target="status-list-token-jwt"/>.
In the case of "application/statuslist+cwt", the response <bcp14>MUST</bcp14> be of type CWT and follow the rules of <xref target="status-list-token-cwt"/>.</t>
        <t>The HTTP response <bcp14>SHOULD</bcp14> use gzip Content-Encoding as defined in <xref target="RFC9110"/>.</t>
        <t>If caching-related HTTP headers are present in the HTTP response, Relying Parties <bcp14>SHOULD</bcp14> prioritize the exp and ttl claims within the Status List Token over the HTTP headers for determining caching behavior.</t>
      </section>
      <section anchor="validation-rules">
        <name>Validation Rules</name>
        <t>Upon receiving a Referenced Token, a Relying Party <bcp14>MUST</bcp14> first perform the validation of the Referenced Token - e.g., checking for expected attributes, valid signature, expiration time. The processing rules for JWT or CWT precede any evaluation of a Referenced Token's status. For example, if a token is evaluated as being expired through the "exp" (Expiration Time) but also has a status of 0x00 ("VALID"), the token is considered expired. As this is out of scope of this document, this validation is not be described here, but is expected to be done according to the format of the Referenced Token.</t>
        <t>If this validation was not successful, the Referenced Token <bcp14>MUST</bcp14> be rejected. If the validation was successful, the Relying Party <bcp14>MUST</bcp14> perform the following validation steps to evaluate the status of the reference token:</t>
        <ol spacing="normal" type="1"><li>
            <t>Check for the existence of a <tt>status</tt> claim, check for the existence of a <tt>status_list</tt> claim within the <tt>status</tt> claim and validate that the content of <tt>status_list</tt> adheres to the rules defined in <xref target="referenced-token-jose"/> for JWTs and <xref target="referenced-token-cose"/> for CWTs. This step can be overruled if defined within the Referenced Token Format natively</t>
          </li>
          <li>
            <t>Resolve the Status List Token from the provided URI</t>
          </li>
          <li>
            <t>Validate the Status List Token:
            </t>
            <ol spacing="normal" type="1"><li>
                <t>Validate the Status List Token by following the rules defined in section 7.2 of <xref target="RFC7519"/> for JWTs and section 7.2 of <xref target="RFC8392"/> for CWTs</t>
              </li>
              <li>
                <t>Check for the existence of the required claims as defined in <xref target="status-list-token-jwt"/> and <xref target="status-list-token-cwt"/> depending on token type</t>
              </li>
            </ol>
          </li>
          <li>
            <t>All existing claims in the Status List Token <bcp14>MUST</bcp14> be checked according to the rules in <xref target="status-list-token-jwt"/> and <xref target="status-list-token-cwt"/>
            </t>
            <ol spacing="normal" type="1"><li>
                <t>The subject claim (<tt>sub</tt> or <tt>2</tt>) of the Status List Token <bcp14>MUST</bcp14> be equal to the <tt>uri</tt> claim in the <tt>status_list</tt> object of the Referenced Token</t>
              </li>
              <li>
                <t>If the Relying Party has custom policies regarding the freshness of the Status List Token, it <bcp14>SHOULD</bcp14> check the issued at claim (<tt>iat</tt> or <tt>6</tt>)</t>
              </li>
              <li>
                <t>If expiration time is defined (<tt>exp</tt> or <tt>4</tt>), it <bcp14>MUST</bcp14> be checked if the Status List Token is expired</t>
              </li>
              <li>
                <t>If the Relying Party is using a system for caching the Status List Token, it <bcp14>SHOULD</bcp14> check the <tt>ttl</tt> claim of the Status List Token and retrieve a fresh copy if (time status was resolved + ttl &lt; current time)</t>
              </li>
            </ol>
          </li>
          <li>
            <t>Decompress the Status List with a decompressor that is compatible with DEFLATE <xref target="RFC1951"/> and ZLIB <xref target="RFC1950"/></t>
          </li>
          <li>
            <t>Retrieve the status value of the index specified in the Referenced Token as described in <xref target="status-list"/>. Fail if the provided index is out of bound of the Status List</t>
          </li>
          <li>
            <t>Check the status value as described in <xref target="status-types"/></t>
          </li>
        </ol>
        <t>If any of these checks fails, no statement about the status of the Referenced Token can be made and the Referenced Token <bcp14>SHOULD</bcp14> be rejected.</t>
      </section>
      <section anchor="historical-resolution">
        <name>Historical resolution</name>
        <t>By default, the status mechanism defined in this specification only conveys information about the state of Reference Tokens at the time the Status List Token was issued. The validity period for this information, as defined by the issuer, is explicitly stated by the <tt>iat</tt> (issued at) and <tt>exp</tt> (expiration time) claims for JWT, and their corresponding ones for the CWT representation. If support for historical status information is required, this can be achieved by extending the request for the Status List Token as defined in <xref target="status-list-request"/> with a timestamp. This feature has additional privacy implications as described in <xref target="privacy-historical"/>.</t>
        <t>To obtain the Status List Token, the Relying Party <bcp14>MUST</bcp14> send an HTTP GET request to the URI provided in the Referenced Token with the additional query parameter <tt>time</tt> and its value being a unix timestamp. The response for a valid request <bcp14>SHOULD</bcp14> contain a Status List Token that was valid for that specified time or an error.</t>
        <t>If the Server does not support the additional query parameter, it <bcp14>SHOULD</bcp14> return a status code of 501 (Not Implemented), or if the requested time is not supported it <bcp14>SHOULD</bcp14> return a status code of 406 (Not Acceptable). A Status List Token might be served via static file hosting (e.g., leveraging a Content Delivery Network), which would result in the client not being able to retrieve those status codes. Thus, the client <bcp14>MUST</bcp14> verify support for this feature by verifying that the requested timestamp is within the valid time of the returned token signaled via <tt>iat</tt> (<tt>6</tt> for CWT) and <tt>exp</tt> (<tt>4</tt> for CWT).</t>
        <t>The following is a non-normative example for a GET request using the <tt>time</tt> query parameter:</t>
        <artwork type="ascii-art"><![CDATA[
GET /statuslists/1?time=1686925000 HTTP/1.1
Host: example.com
Accept: application/statuslist+jwt
]]></artwork>
        <t>The following is a non-normative example for a response for the above Request:</t>
        <artwork type="ascii-art"><![CDATA[
HTTP/1.1 200 OK
Content-Type: application/statuslist+jwt

eyJhbGciOiJFUzI1NiIsImtpZCI6IjEyIiwidHlwIjoic3RhdHVzbGlzdCtqd3QifQ.e
yJleHAiOjIyOTE3MjAxNzAsImlhdCI6MTY4NjkyMDE3MCwiaXNzIjoiaHR0cHM6Ly9le
GFtcGxlLmNvbSIsInN0YXR1c19saXN0Ijp7ImJpdHMiOjEsImxzdCI6ImVOcmJ1UmdBQ
WhjQlhRIn0sInN1YiI6Imh0dHBzOi8vZXhhbXBsZS5jb20vc3RhdHVzbGlzdHMvMSIsI
nR0bCI6NDMyMDB9.cyiLrzQVZvPnAXO07s7EzUqBB-62Sa39XfZMopIfEVQ819dBFvgv
wvQmJd8OHDj6l6Ct-tG3CLUG8LaxubYL6g
]]></artwork>
      </section>
    </section>
    <section anchor="aggregation">
      <name>Status List Aggregation</name>
      <t>Status List Aggregation is an optional mechanism to retrieve a list of URIs to all Status List Tokens, allowing a Relying Party to fetch all relevant Status Lists for a specific type of Referenced Token or Issuer. This mechanism is intended to support fetching and caching mechanisms and allow offline validation of the status of a reference token for a period of time.</t>
      <t>If a Relying Party encounters an invalid Status List referenced in the response from the Status List Aggregation endpoint, it <bcp14>SHOULD</bcp14> continue processing the other valid Status Lists referenced in the response.</t>
      <t>There are two options for a Relying Party to retrieve the Status List Aggregation.
An Issuer <bcp14>MAY</bcp14> support any of these mechanisms:</t>
      <ul spacing="normal">
        <li>
          <t>Issuer metadata: The Issuer of the Referenced Token publishes an URI which links to Status List Aggregation, e.g. in publicly available metadata of an issuance protocol</t>
        </li>
        <li>
          <t>Status List Parameter: The Status Issuer includes an additional claim in the Status List Token that contains the Status List Aggregation URI.</t>
        </li>
      </ul>
      <section anchor="issuer-metadata">
        <name>Issuer Metadata</name>
        <t>The Issuer <bcp14>MAY</bcp14> link to the Status List Aggregation URI in metadata that can be provided by different means like .well-known metadata as is used commonly in OAuth and OpenID, or via a VICAL extension for ISO mDoc / mDL. If the Issuer is an OAuth Authorization Server according to <xref target="RFC6749"/>, it is <bcp14>RECOMMENDED</bcp14> to use <tt>status_list_aggregation_endpoint</tt> for its metadata defined by <xref target="RFC8414"/>.</t>
        <t>The concrete specification on how this is implemented depends on the specific ecosystem and is out of scope of this specification.</t>
      </section>
      <section anchor="status-list-parameter">
        <name>Status List Parameter</name>
        <t>The URI to the Status List Aggregation <bcp14>MAY</bcp14> be provided as the optional parameter <tt>aggregation_uri</tt> in the Status List itself as explained in<xref target="status-list-cbor"/> and <xref target="status-list-json"/> respectively. A Relying Party may use this URI to retrieve an up-to-date list of relevant Status Lists.</t>
      </section>
      <section anchor="status-list-aggregation-in-json-format">
        <name>Status List Aggregation in JSON Format</name>
        <t>This section defines the structure for a JSON-encoded Status List Aggregation:</t>
        <ul spacing="normal">
          <li>
            <t><tt>status_lists</tt>: <bcp14>REQUIRED</bcp14>. JSON array of strings that contains URIs linking to Status List Tokens.</t>
          </li>
        </ul>
        <t>The Status List Aggregation URI provides a list of Status List URIs. This aggregation in JSON and the media type return <bcp14>SHOULD</bcp14> be <tt>application/json</tt>. A Relying Party can iterate through this list and fetch all Status List Tokens before encountering the specific URI in a Referenced Token.</t>
        <t>The following is a non-normative example for media type <tt>application/json</tt>:</t>
        <sourcecode type="json"><![CDATA[
{
   "status_lists" : [
      "https://example.com/statuslists/1",
      "https://example.com/statuslists/2",
      "https://example.com/statuslists/3"
   ]
}
]]></sourcecode>
      </section>
    </section>
    <section anchor="further-examples">
      <name>Further Examples</name>
      <section anchor="status-list-with-2-bit-status-values-in-json-format">
        <name>Status List with 2-Bit Status Values in JSON format</name>
        <t>In this example, the Status List additionally includes the Status Type "SUSPENDED". As the Status Type value for "SUSPENDED" is 0x02 and does not fit into 1 bit, the "bits" is required to be 2.</t>
        <t>This example Status List represents the status of 12 Referenced Tokens, requiring 24 bits (3 bytes) of status.</t>
        <artwork type="ascii-art"><![CDATA[
status[0] = 1
status[1] = 2
status[2] = 0
status[3] = 3
status[4] = 0
status[5] = 1
status[6] = 0
status[7] = 1
status[8] = 1
status[9] = 2
status[10] = 3
status[11] = 3
]]></artwork>
        <t>These bits are concatenated:</t>
        <artwork type="ascii-art"><![CDATA[
byte             0                  1                  2
bit       7 6 5 4 3 2 1 0    7 6 5 4 3 2 1 0    7 6 5 4 3 2 1 0
         +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
values   |1|1|0|0|1|0|0|1|  |0|1|0|0|0|1|0|0|  |1|1|1|1|1|0|0|1|
         +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+  +-+-+-+-+-+-+-+-+
          \ / \ / \ / \ /    \ / \ / \ / \ /    \ / \ / \ / \ /
status     3   0   2   1      1   0   1   0      3   3   2   1
index      3   2   1   0      7   6   5   4      11  10  9   8
           \___________/      \___________/      \___________/
                0xC9               0x44               0xF9

]]></artwork>
        <t>Resulting in the byte array and compressed/base64url-encoded Status List:</t>
        <artwork><![CDATA[
byte_array = [0xc9, 0x44, 0xf9] 
encoded:
{
  "bits": 2,
  "lst": "eNo76fITAAPfAgc"
}
]]></artwork>
      </section>
    </section>
    <section anchor="Security">
      <name>Security Considerations</name>
      <t>The Status List as defined in <xref target="status-list"/> only exists in cryptographically secured containers which allows checking the integrity and origin without relying on other aspects like transport security (e.g., the web PKI).</t>
      <section anchor="correct-decoding-and-parsing-of-the-encoded-status-list">
        <name>Correct decoding and parsing of the encoded Status List</name>
        <t>Implementers should be particularly careful for the correct parsing and decoding of the Status List. Incorrect implementations might check the index on the wrong data or miscalculate the bit and byte index leading to an erroneous status of the Referenced Token. Beware, that bits are indexed (bit order) from least significant bit to most significant bit (also called "right to left") while bytes are indexed (byte order) in their natural incrementing byte order (usually written for display purpose from left to write). Endianness does not apply here because each status value fits within a single byte.</t>
        <t>Implementations are <bcp14>RECOMMENDED</bcp14> to verify correctness using the test vectors given by this specification.</t>
      </section>
      <section anchor="security-guidance-for-jwt-and-cwt">
        <name>Security Guidance for JWT and CWT</name>
        <t>A Status List Token in the JWT format should follow the security considerations of <xref target="RFC7519"/> and the best current practices of <xref target="RFC8725"/>.</t>
        <t>A Status List Token in the CWT format should follow the security considerations of <xref target="RFC8392"/>.</t>
      </section>
      <section anchor="status-list-caching">
        <name>Status List Caching</name>
        <t>When fetching a Status List Token, Relying Parties must carefully evaluate how long a Status List is cached for. Collectively the <tt>iat</tt>, <tt>exp</tt> and <tt>ttl</tt> claims when present in a Status List Token communicate how long a Status List should be cached and should be considered valid for. The following diagram illustrates the relationship between these claims and how they are designed to influence caching.</t>
        <artwork type="ascii-art"><![CDATA[
Time of fetching

         │
         │            Check for        Check for        Check for
         │             updates          updates          updates
         │
 iat     │                │                │                │    exp
         │                │                │                │
  │      │                │                │                │     │
  │      │                │                │                │     │
  │      │                │                │                │     │
  │      │                │                │                │     │
  │      │      ttl       │      ttl       │      ttl       │     │
  │      │ ─────────────► │ ─────────────► │ ─────────────► │ ──► │
  │      │                │                │                │     │
  │      │                │                │                │     │
  │                                                               │
──┼───────────────────────────────────────────────────────────────┼─►
  │                                                               │
]]></artwork>
        <t>It is essential to understand the distinct purposes of the <tt>ttl</tt> and <tt>exp</tt> claims. The <tt>ttl</tt> claim represents a duration to be interpreted relative to the time the Status List is fetched, indicating when a new version of the Status List may be available. In contrast, the <tt>exp</tt> claim specifies an absolute timestamp, marking the point in time when the Status List expires and <bcp14>MUST NOT</bcp14> be relied upon any longer. Together, these claims provide guidance on when to check for updates (<tt>ttl</tt> claim) and when the Status List must be refreshed or replaced (<tt>exp</tt> claim).</t>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <section anchor="privacy-issuer">
        <name>Observability of Issuers</name>
        <t>The main privacy consideration for a Status List, especially in the context of the Issuer-Holder-Verifier model <xref target="SD-JWT.VC"/>, is to prevent the Issuer from tracking the usage of the Referenced Token when the status is being checked. If an Issuer offers status information by referencing a specific token, this would enable him to create a profile for the issued token by correlating the date and identity of Relying Parties, that are requesting the status.</t>
        <t>The Status List approaches these privacy implications by integrating the status information of many Referenced Tokens into the same list. Therefore, the Issuer does not learn for which Referenced Token the Relying Party is requesting the Status List. The privacy of the Holder is protected by the anonymity within the set of Referenced Tokens in the Status List, also called herd privacy. This limits the possibilities of tracking by the Issuer.</t>
        <t>The herd privacy is depending on the number of entities within the Status List called its size. A larger size results in better privacy but also impacts the performance as more data has to be transferred to read the Status List.</t>
        <t>Additionally, the Issuer may analyse data from the HTTP request to identify the Relying Party, e.g. through the sender's IP address.</t>
        <t>This behaviour may be mitigated by:</t>
        <ul spacing="normal">
          <li>
            <t>private relay protocols or other mechanism hiding the original sender like <xref target="RFC9458"/>.</t>
          </li>
          <li>
            <t>using trusted Third Party Hosting, see <xref target="third-party-hosting"/>.</t>
          </li>
        </ul>
      </section>
      <section anchor="malicious-issuers">
        <name>Malicious Issuers</name>
        <t>A malicious Issuer could bypass the privacy benefits of the herd privacy by generating a unique Status List for every Referenced Token. By these means, he could maintain a mapping between Referenced Tokens and Status Lists and thus track the usage of Referenced Tokens by utilizing this mapping for the incoming requests. This malicious behaviour could be detected by Relying Parties that request large amounts of Referenced Tokens by comparing the number of different Status Lists and their sizes.</t>
      </section>
      <section anchor="privacy-relying-party">
        <name>Observability of Relying Parties</name>
        <t>Once the Relying Party receives the Referenced Token, this enables him to request the Status List to validate its status through the provided <tt>uri</tt> parameter and look up the corresponding <tt>index</tt>. However, the Relying Party may persistently store the <tt>uri</tt> and <tt>index</tt> of the Referenced Token to request the Status List again at a later time. By doing so regularly, the Relying Party may create a profile of the Referenced Token's validity status. This behaviour may be intended as a feature, e.g. for a KYC process that requires regular validity checks, but might also be abused in cases where this is not intended and unknown to the Holder, e.g. profiling the suspension of a driving license or checking the employment status of an employee credential.</t>
        <t>This behaviour could be mitigated by:</t>
        <ul spacing="normal">
          <li>
            <t>regular re-issuance of the Referenced Token, see <xref target="implementation-lifecycle"/>.</t>
          </li>
        </ul>
      </section>
      <section anchor="privacy-outsider">
        <name>Observability of Outsiders</name>
        <t>Outside actors may analyse the publicly available Status Lists to get information on the internal processes of the Issuer and his related business. This data may allow inferences on the total number of issued Reference Tokens and the revocation rate. Additionally, actors may regularly fetch this data or use the historic data functionality to learn how these numbers change over time.</t>
        <t>This behaviour could be mitigated by:</t>
        <ul spacing="normal">
          <li>
            <t>disable the historical data feature <xref target="historical-resolution"/></t>
          </li>
          <li>
            <t>disable the Status List Aggregation <xref target="aggregation"/></t>
          </li>
          <li>
            <t>choose non-sequential, pseudo-random or random indices</t>
          </li>
          <li>
            <t>use decoy entries to obfuscate the real number of Referenced Tokens within a Status List</t>
          </li>
          <li>
            <t>choose to deploy and utilize multiple Status Lists simultaneously</t>
          </li>
        </ul>
      </section>
      <section anchor="unlinkability">
        <name>Unlinkability</name>
        <t>Colluding Issuers and Relying Parties have the possibility to link two transactions, as the tuple of <tt>uri</tt> and <tt>index</tt> inside the Referenced Token are unique and therefore traceable data. By comparing the status claims of received Referenced Tokens, two colluding Relying Parties could determine that they have interacted with the same user or an Issuer could trace the usage of its issued Referenced Token by colluding with various Relying Parties. It is therefore recommended to use Status Lists for Referenced Token formats that have similar unlinkability properties.</t>
        <t>To avoid privacy risks for colluding Relying Parties, it is <bcp14>RECOMMENDED</bcp14> that Issuers use batch issuance to issue multiple tokens, see <xref target="implementation-lifecycle"/>.</t>
        <t>To avoid further correlatable information by the values of <tt>uri</tt> and <tt>index</tt>, Issuers are <bcp14>RECOMMENDED</bcp14> to:</t>
        <ul spacing="normal">
          <li>
            <t>choose non-sequential, pseudo-random or random indices</t>
          </li>
          <li>
            <t>use decoy entries to obfuscate the real number of Referenced Tokens within a Status List</t>
          </li>
          <li>
            <t>choose to deploy and utilize multiple Status Lists simultaneously</t>
          </li>
        </ul>
      </section>
      <section anchor="third-party-hosting">
        <name>Third Party Hosting</name>
        <t>If the roles of the Issuer and the Status Provider are performed by two different entities, this may give additional privacy assurances as the Issuer has no means to identify the Relying Party or its request.</t>
        <t>Third Party hosting may also allow for greater scalability, as the Status List Tokens may be served by operators with greater resources, like CDNs.</t>
      </section>
      <section anchor="privacy-historical">
        <name>Historical Resolution</name>
        <t>By default, this specification only supports providing Status List information for the most recent status information and does not allow the lookup of historical information like a validity state at a specific point in time. There exists optional support for a query parameter that allows these kind of historic lookups as described in <xref target="historical-resolution"/>. There are scenarios where such a functionality is necessary, but this feature should only be implemented when the scenario and the consequences of enabling historical resolution are fully understood.</t>
        <t>There are strong privacy concerns that have to be carefully taken into considerations when providing a mechanism that allows historic requests for status information - see <xref target="privacy-relying-party"/> for more details. Support for this functionality is optional and Implementers are <bcp14>RECOMMENDED</bcp14> to not support historic requests unless there are strong reasons to do so and after carefully considering the privacy implications.</t>
      </section>
    </section>
    <section anchor="implementation">
      <name>Implementation Considerations</name>
      <section anchor="implementation-lifecycle">
        <name>Token Lifecycle</name>
        <t>The lifetime of a Status List Token depends on the lifetime of its Referenced Tokens. Once all Referenced Tokens are expired, the Issuer may stop serving the Status List Token.</t>
        <t>Referenced Tokens may be regularly re-issued to mitigate linkability of presentations to Relying Parties. In this case, every re-issued Referenced Token <bcp14>MUST</bcp14> have a fresh Status List entry in order to prevent this becoming possible source of correlation.</t>
        <t>Referenced Tokens may also be issued in batches, such that Holders can use individual tokens for every transaction. In this case, every Referenced Token <bcp14>MUST</bcp14> have a dedicated Status List entry. Revoking batch issued Referenced Tokens might reveal this correlation later on.</t>
      </section>
      <section anchor="default-values-and-double-allocation">
        <name>Default Values and Double Allocation</name>
        <t>Implementations producing Status Lists are <bcp14>RECOMMENDED</bcp14> to initialize the Status List byte array with a default value and provide this as an initialization parameter to the Issuer. The Issuer is <bcp14>RECOMMENDED</bcp14> to use a default value that represents the most common value for its Referenced Tokens to avoid an update during issuance.</t>
        <t>Implementations producing Status Lists are <bcp14>RECOMMENDED</bcp14> to prevent double allocation, i.e. re-using the same <tt>uri</tt> and <tt>index</tt> for multiple Referenced Tokens. The Issuer <bcp14>MUST</bcp14> prevent any unintended double allocation by using the Status List.</t>
      </section>
      <section anchor="status-list-size">
        <name>Status List Size</name>
        <t>The Status List Issuer may increase the size of a Status List if it requires indices for additional Referenced Tokens. It is <bcp14>RECOMMENDED</bcp14> that the size of a Status List in bits is divisible in bytes (8 bits) without a remainder, i.e. <tt>size-in-bits</tt> % 8 = 0.</t>
        <t>The Status List Issuer may chunk its Referenced Tokens into multiple Status Lists to reduce the transmission size of an individual Status List Token. This may be useful for setups where some entities operate in constrained environments, e.g. for mobile internet or embedded devices.</t>
      </section>
      <section anchor="status-list-formats">
        <name>Status List Formats</name>
        <t>This specification defines 2 different token formats of the Status List:</t>
        <ul spacing="normal">
          <li>
            <t>JWT</t>
          </li>
          <li>
            <t>CWT</t>
          </li>
        </ul>
        <t>This specification states no requirements to not mix different formats like a CBOR based Referenced Token using a JWT for the Status List, but the expectation is that within an ecosystem, a choice for specific formats is made.
Within such an ecosystem, only support for those selected variants is required and implementations should know what to expect via a profile.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="json-web-token-claims-registration">
        <name>JSON Web Token Claims Registration</name>
        <t>This specification requests registration of the following Claims in the
IANA "JSON Web Token Claims" registry <xref target="IANA.JWT"/> established by <xref target="RFC7519"/>.</t>
        <section anchor="registry-contents">
          <name>Registry Contents</name>
          <ul spacing="normal">
            <li>
              <t>Claim Name: <tt>status</tt></t>
            </li>
            <li>
              <t>Claim Description: Reference to a status or validity mechanism containing up-to-date status information on the JWT.</t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-claim"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Claim Name: <tt>status_list</tt></t>
            </li>
            <li>
              <t>Claim Description: A status list containing up-to-date status information on multiple tokens.</t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-list-token-jwt"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Claim Name: <tt>ttl</tt></t>
            </li>
            <li>
              <t>Claim Description: Time to Live</t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-list-token-jwt"/> of this specification</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="iana-registry">
        <name>JWT Status Mechanism Methods Registry</name>
        <t>This specification establishes the IANA "Status Mechanism Methods" registry for JWT "status" member values. The registry records the status mechanism method member and a reference to the specification that defines it.</t>
        <t>JWT Status Mechanism Methods are registered by Specification Required [RFC5226] after a three-week
review period on the jwt-reg-review@ietf.org mailing list, on the advice of one or more Designated Experts.
However, to allow for the allocation of names prior to publication, the Designated Expert(s) may approve
registration once they are satisfied that such a specification will be published.</t>
        <t>Registration requests sent to the mailing list for review should use an appropriate subject (e.g., "Request to register JWT Status Mechanism Method: example").</t>
        <t>Within the review period, the Designated Expert(s) will either approve or deny the registration request, communicating this decision
to the review list and IANA.  Denials should include an explanation and, if applicable, suggestions as to how to make the request
successful.</t>
        <t>IANA must only accept registry updates from the Designated Expert(s) and should direct all requests for registration to the review mailing list.</t>
        <section anchor="registration-template">
          <name>Registration Template</name>
          <t>Status Method Value:</t>
          <ul empty="true">
            <li>
              <t>The name requested (e.g., "status_list"). The name is case sensitive. Names may not match other registered names in a case-insensitive manner unless the Designated Experts state that there is a compelling reason to allow an exception.</t>
            </li>
          </ul>
          <t>Status Method Description:</t>
          <ul empty="true">
            <li>
              <t>Brief description of the status mechanism method.</t>
            </li>
          </ul>
          <t>Change Controller:</t>
          <ul empty="true">
            <li>
              <t>For IETF Stream RFCs, list the IETF.  For others, give the name of the responsible party.  Other details (e.g., postal address, email address, home page URI) may also be included.</t>
            </li>
          </ul>
          <t>Specification Document(s):</t>
          <ul empty="true">
            <li>
              <t>Reference to the document or documents that specify the parameter, preferably including URIs that can be used to retrieve copies of the documents.  An indication of the relevant sections may also be included but is not required.</t>
            </li>
          </ul>
        </section>
        <section anchor="initial-registry-contents">
          <name>Initial Registry Contents</name>
          <ul spacing="normal">
            <li>
              <t>Status Method Value: <tt>status_list</tt></t>
            </li>
            <li>
              <t>Status Method Description: A status list containing up-to-date status information on multiple tokens.</t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="referenced-token-jose"/> of this specification</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="cbor-web-token-claims-registration">
        <name>CBOR Web Token Claims Registration</name>
        <t>This specification requests registration of the following Claims in the
IANA "CBOR Web Token (CWT) Claims" registry <xref target="IANA.CWT"/> established by <xref target="RFC8392"/>.</t>
        <section anchor="registry-contents-1">
          <name>Registry Contents</name>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Claim Name: <tt>status</tt></t>
            </li>
            <li>
              <t>Claim Description: Reference to a status or validity mechanism containing up-to-date status information on the CWT.</t>
            </li>
            <li>
              <t>JWT Claim Name: <tt>status</tt></t>
            </li>
            <li>
              <t>Claim Key: TBD (requested assignment 65535)</t>
            </li>
            <li>
              <t>Claim Value Type: map</t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Reference: <xref target="status-claim"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Claim Name: <tt>status_list</tt></t>
            </li>
            <li>
              <t>Claim Description: A status list containing up-to-date status information on multiple tokens.</t>
            </li>
            <li>
              <t>JWT Claim Name: <tt>status_list</tt></t>
            </li>
            <li>
              <t>Claim Key: TBD (requested assignment 65533)</t>
            </li>
            <li>
              <t>Claim Value Type: map</t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-list-token-cwt"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Claim Name: <tt>ttl</tt></t>
            </li>
            <li>
              <t>Claim Description: Time to Live</t>
            </li>
            <li>
              <t>JWT Claim Name: <tt>ttl</tt></t>
            </li>
            <li>
              <t>Claim Key: TBD (requested assignment 65534)</t>
            </li>
            <li>
              <t>Claim Value Type: unsigned integer</t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-list-token-cwt"/> of this specification</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="cwt-iana-registry">
        <name>CWT Status Mechanism Methods Registry</name>
        <t>This specification establishes the IANA "Status Mechanism Methods" registry for CWT "status" member values. The registry records the status mechanism method member and a reference to the specification that defines it.</t>
        <t>CWT Status Mechanism Methods are registered by Specification Required [RFC5226] after a three-week
review period on the cwt-reg-review@ietf.org mailing list, on the advice of one or more Designated Experts. However, to allow for the allocation of names prior to publication, the Designated Expert(s) may approve registration once they are satisfied that such a
specification will be published.</t>
        <t>Registration requests sent to the mailing list for review should use an appropriate subject (e.g., "Request to register CWT Status Mechanism Method: example").</t>
        <t>Within the review period, the Designated Expert(s) will either approve or deny the registration request, communicating this decision
to the review list and IANA.  Denials should include an explanation and, if applicable, suggestions as to how to make the request
successful.</t>
        <t>IANA must only accept registry updates from the Designated Expert(s) and should direct all requests for registration to the review mailing list.</t>
        <section anchor="registration-template-1">
          <name>Registration Template</name>
          <t>Status Method Value:</t>
          <ul empty="true">
            <li>
              <t>The name requested (e.g., "status_list"). The name is case sensitive. Names may not match other registered names in a case-insensitive manner unless the Designated Experts state that there is a compelling reason to allow an exception.</t>
            </li>
          </ul>
          <t>Status Method Description:</t>
          <ul empty="true">
            <li>
              <t>Brief description of the status mechanism method.</t>
            </li>
          </ul>
          <t>Change Controller:</t>
          <ul empty="true">
            <li>
              <t>For IETF Stream RFCs, list the IETF.  For others, give the name of the responsible party.  Other details (e.g., postal address, email address, home page URI) may also be included.</t>
            </li>
          </ul>
          <t>Specification Document(s):</t>
          <ul empty="true">
            <li>
              <t>Reference to the document or documents that specify the parameter, preferably including URIs that can be used to retrieve copies of the documents.  An indication of the relevant sections may also be included but is not required.</t>
            </li>
          </ul>
        </section>
        <section anchor="initial-registry-contents-1">
          <name>Initial Registry Contents</name>
          <ul spacing="normal">
            <li>
              <t>Status Method Value: <tt>status_list</tt></t>
            </li>
            <li>
              <t>Status Method Description: A status list containing up-to-date status information on multiple tokens.</t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="referenced-token-cose"/> of this specification</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="iana-status-types">
        <name>Status Types Registry</name>
        <t>This specification establishes the IANA "Status Types" registry for Status List values. The registry records the a human readable label, the bit representation and a common description for it.</t>
        <t>Status Types are registered by Specification Required [RFC5226] after a two-week
review period on the oauth-ext-review@ietf.org mailing list, on the advice of one or more Designated Experts. However, to allow for the allocation of names prior to publication, the Designated Expert(s) may approve registration once they are satisfied that such a
specification will be published.</t>
        <t>Registration requests sent to the mailing list for review should use an appropriate subject (e.g., "Request to register Status Type name: example").</t>
        <t>Within the review period, the Designated Expert(s) will either approve or deny the registration request, communicating this decision
to the review list and IANA.  Denials should include an explanation and, if applicable, suggestions as to how to make the request
successful.</t>
        <t>IANA must only accept registry updates from the Designated Expert(s) and should direct all requests for registration to the review mailing list.</t>
        <section anchor="registration-template-2">
          <name>Registration Template</name>
          <t>Status Type Name:</t>
          <ul empty="true">
            <li>
              <t>The name is a human-readable case insensitive label for the Status Type that helps to talk about a Status of Referenced Token in common language.</t>
            </li>
          </ul>
          <t>Status Type Description:</t>
          <ul empty="true">
            <li>
              <t>Brief description of the Status Type and optional examples.</t>
            </li>
          </ul>
          <t>Status Type value:</t>
          <ul empty="true">
            <li>
              <t>The bit representation of the Status Type in a byte hex representation. Values are filled up with zeros if they have less than 8 bits.</t>
            </li>
          </ul>
          <t>Change Controller:</t>
          <ul empty="true">
            <li>
              <t>For IETF Stream RFCs, list the IETF.  For others, give the name of the responsible party.  Other details (e.g., postal address, email address, home page URI) may also be included.</t>
            </li>
          </ul>
          <t>Specification Document(s):</t>
          <ul empty="true">
            <li>
              <t>Reference to the document or documents that specify the parameter, preferably including URIs that can be used to retrieve copies of the documents.  An indication of the relevant sections may also be included but is not required.</t>
            </li>
          </ul>
        </section>
        <section anchor="initial-registry-contents-2">
          <name>Initial Registry Contents</name>
          <ul spacing="normal">
            <li>
              <t>Status Type Name: VALID</t>
            </li>
            <li>
              <t>Status Type Description: The status of the Referenced Token is valid, correct or legal.</t>
            </li>
            <li>
              <t>Status Type value: <tt>0x00</tt></t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-types"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Status Type Name: INVALID</t>
            </li>
            <li>
              <t>Status Type Description: The status of the Referenced Token is revoked, annulled, taken back, recalled or cancelled.</t>
            </li>
            <li>
              <t>Status Type value: <tt>0x01</tt></t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-types"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Status Type Name: SUSPENDED</t>
            </li>
            <li>
              <t>Status Type Description: The status of the Referenced Token is temporarily invalid, hanging, debarred from privilege. This state is reversible.</t>
            </li>
            <li>
              <t>Status Type value: <tt>0x02</tt></t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-types"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Status Type Name: APPLICATION_SPECIFIC_3</t>
            </li>
            <li>
              <t>Status Type Description: The status of the Referenced Token is implicitly given by the particular use case and the meaning of this value is known out-of-band.</t>
            </li>
            <li>
              <t>Status Type value: <tt>0x03</tt></t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-types"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Status Type Name: APPLICATION_SPECIFIC_14</t>
            </li>
            <li>
              <t>Status Type Description: The status of the Referenced Token is implicitly given by the particular use case and the meaning of this value is known out-of-band.</t>
            </li>
            <li>
              <t>Status Type value: <tt>0x0E</tt></t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="status-types"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
          <ul spacing="normal">
            <li>
              <t>Status Type Name: APPLICATION_SPECIFIC_15</t>
            </li>
            <li>
              <t>Status Type Description: The status of the Referenced Token is implicitly given by the particular use case and the meaning of this value is known out-of-band.</t>
            </li>
            <li>
              <t>Status Type value: <tt>0x0F</tt></t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="referenced-token-jose"/> of this specification</t>
            </li>
          </ul>
          <t><br/></t>
        </section>
      </section>
      <section anchor="oauth-parameters-registration">
        <name>OAuth Parameters Registration</name>
        <t>This specification requests registration of the following value in the IANA "OAuth Authorization Server Metadata" registry <xref target="IANA.OAuth.Params"/> established by <xref target="RFC8414"/>.</t>
        <ul spacing="normal">
          <li>
            <t>Metadata Name: status_list_aggregation_endpoint</t>
          </li>
          <li>
            <t>Metadata Description: URL of the Authorization Server aggregating OAuth Token Status List URLs for token status management.</t>
          </li>
          <li>
            <t>Change Controller: IETF</t>
          </li>
          <li>
            <t>Reference: <xref target="aggregation"/> of this specification</t>
          </li>
        </ul>
      </section>
      <section anchor="media-type-registration">
        <name>Media Type Registration</name>
        <t>This section requests registration of the following media types <xref target="RFC2046"/> in
the "Media Types" registry <xref target="IANA.MediaTypes"/> in the manner described
in <xref target="RFC6838"/>.</t>
        <t>To indicate that the content is an JWT-based Status List:</t>
        <ul spacing="normal">
          <li>
            <t>Type name: application</t>
          </li>
          <li>
            <t>Subtype name: statuslist+jwt</t>
          </li>
          <li>
            <t>Required parameters: n/a</t>
          </li>
          <li>
            <t>Optional parameters: n/a</t>
          </li>
          <li>
            <t>Encoding considerations: See <xref target="status-list-token-jwt"/> of this specification</t>
          </li>
          <li>
            <t>Security considerations: See <xref target="Security"/> of this specification</t>
          </li>
          <li>
            <t>Interoperability considerations: n/a</t>
          </li>
          <li>
            <t>Published specification: this specification</t>
          </li>
          <li>
            <t>Applications that use this media type: Applications using this specification for updated status information of tokens</t>
          </li>
          <li>
            <t>Fragment identifier considerations: n/a</t>
          </li>
          <li>
            <t>Additional information: n/a</t>
          </li>
          <li>
            <t>Person &amp; email address to contact for further information: Paul Bastian, paul.bastian@posteo.de</t>
          </li>
          <li>
            <t>Intended usage: COMMON</t>
          </li>
          <li>
            <t>Restrictions on usage: none</t>
          </li>
          <li>
            <t>Author: Paul Bastian, paul.bastian@posteo.de</t>
          </li>
          <li>
            <t>Change controller: IETF</t>
          </li>
          <li>
            <t>Provisional registration? No</t>
          </li>
        </ul>
        <t>To indicate that the content is an CWT-based Status List:</t>
        <ul spacing="normal">
          <li>
            <t>Type name: application</t>
          </li>
          <li>
            <t>Subtype name: statuslist+cwt</t>
          </li>
          <li>
            <t>Required parameters: n/a</t>
          </li>
          <li>
            <t>Optional parameters: n/a</t>
          </li>
          <li>
            <t>Encoding considerations: See <xref target="status-list-token-cwt"/> of this specification</t>
          </li>
          <li>
            <t>Security considerations: See <xref target="Security"/> of this specification</t>
          </li>
          <li>
            <t>Interoperability considerations: n/a</t>
          </li>
          <li>
            <t>Published specification: this specification</t>
          </li>
          <li>
            <t>Applications that use this media type: Applications using this specification for updated status information of tokens</t>
          </li>
          <li>
            <t>Fragment identifier considerations: n/a</t>
          </li>
          <li>
            <t>Additional information: n/a</t>
          </li>
          <li>
            <t>Person &amp; email address to contact for further information: Paul Bastian, paul.bastian@posteo.de</t>
          </li>
          <li>
            <t>Intended usage: COMMON</t>
          </li>
          <li>
            <t>Restrictions on usage: none</t>
          </li>
          <li>
            <t>Author: Paul Bastian, paul.bastian@posteo.de</t>
          </li>
          <li>
            <t>Change controller: IETF</t>
          </li>
          <li>
            <t>Provisional registration? No</t>
          </li>
        </ul>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC1950">
          <front>
            <title>ZLIB Compressed Data Format Specification version 3.3</title>
            <author fullname="P. Deutsch" initials="P." surname="Deutsch"/>
            <author fullname="J-L. Gailly" surname="J-L. Gailly"/>
            <date month="May" year="1996"/>
            <abstract>
              <t>This specification defines a lossless compressed data format. This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1950"/>
          <seriesInfo name="DOI" value="10.17487/RFC1950"/>
        </reference>
        <reference anchor="RFC1951">
          <front>
            <title>DEFLATE Compressed Data Format Specification version 1.3</title>
            <author fullname="P. Deutsch" initials="P." surname="Deutsch"/>
            <date month="May" year="1996"/>
            <abstract>
              <t>This specification defines a lossless compressed data format that compresses data using a combination of the LZ77 algorithm and Huffman coding, with efficiency comparable to the best currently available general-purpose compression methods. This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1951"/>
          <seriesInfo name="DOI" value="10.17487/RFC1951"/>
        </reference>
        <reference anchor="RFC2046">
          <front>
            <title>Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="N. Borenstein" initials="N." surname="Borenstein"/>
            <date month="November" year="1996"/>
            <abstract>
              <t>This second document defines the general structure of the MIME media typing system and defines an initial set of media types. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2046"/>
          <seriesInfo name="DOI" value="10.17487/RFC2046"/>
        </reference>
        <reference anchor="RFC3986">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <date month="January" year="2005"/>
            <abstract>
              <t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet. The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier. This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="66"/>
          <seriesInfo name="RFC" value="3986"/>
          <seriesInfo name="DOI" value="10.17487/RFC3986"/>
        </reference>
        <reference anchor="RFC6125">
          <front>
            <title>Representation and Verification of Domain-Based Application Service Identity within Internet Public Key Infrastructure Using X.509 (PKIX) Certificates in the Context of Transport Layer Security (TLS)</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
            <author fullname="J. Hodges" initials="J." surname="Hodges"/>
            <date month="March" year="2011"/>
            <abstract>
              <t>Many application technologies enable secure communication between two entities by means of Internet Public Key Infrastructure Using X.509 (PKIX) certificates in the context of Transport Layer Security (TLS). This document specifies procedures for representing and verifying the identity of application services in such interactions. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6125"/>
          <seriesInfo name="DOI" value="10.17487/RFC6125"/>
        </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="RFC7515">
          <front>
            <title>JSON Web Signature (JWS)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and an IANA registry defined by that specification. Related encryption capabilities are described in the separate JSON Web Encryption (JWE) specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7515"/>
          <seriesInfo name="DOI" value="10.17487/RFC7515"/>
        </reference>
        <reference anchor="RFC7519">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <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="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="RFC8392">
          <front>
            <title>CBOR Web Token (CWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="E. Wahlstroem" initials="E." surname="Wahlstroem"/>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <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="RFC8725">
          <front>
            <title>JSON Web Token Best Current Practices</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="D. Hardt" initials="D." surname="Hardt"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <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="RFC8949">
          <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="RFC9052">
          <front>
            <title>CBOR Object Signing and Encryption (COSE): Structures and Process</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <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="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="RFC9596">
          <front>
            <title>CBOR Object Signing and Encryption (COSE) "typ" (type) Header Parameter</title>
            <author fullname="M.B. Jones" initials="M.B." surname="Jones"/>
            <author fullname="O. Steele" initials="O." surname="Steele"/>
            <date month="June" year="2024"/>
            <abstract>
              <t>This specification adds the equivalent of the JSON Object Signing and Encryption (JOSE) "typ" (type) header parameter to CBOR Object Signing and Encryption (COSE). This enables the benefits of explicit typing (as defined in RFC 8725, "JSON Web Token Best Current Practices") to be brought to COSE objects. The syntax of the COSE type header parameter value is the same as the existing COSE content type header parameter.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9596"/>
          <seriesInfo name="DOI" value="10.17487/RFC9596"/>
        </reference>
        <reference anchor="IANA.MediaTypes" target="https://www.iana.org/assignments/media-types/media-types.xhtml">
          <front>
            <title>Media Types</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="IANA.JOSE" target="https://www.iana.org/assignments/jose/jose.xhtml">
          <front>
            <title>JSON Object Signing and Encryption (JOSE)</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="IANA.JWT" target="https://www.iana.org/assignments/jwt/jwt.xhtml">
          <front>
            <title>JSON Web Token Claims</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="IANA.CWT" target="https://www.iana.org/assignments/cwt/cwt.xhtml">
          <front>
            <title>CBOR Web Token (CWT) Claims</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="IANA.OAuth.Params" target="https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#authorization-server-metadata">
          <front>
            <title>OAuth Authorization Server Metadata</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="CORS" target="https://fetch.spec.whatwg.org/#http-cors-protocol">
          <front>
            <title>Fetch Living Standard</title>
            <author>
              <organization>WHATWG</organization>
            </author>
            <date>n.d.</date>
          </front>
        </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC6749">
          <front>
            <title>The OAuth 2.0 Authorization Framework</title>
            <author fullname="D. Hardt" initials="D." role="editor" surname="Hardt"/>
            <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="RFC7662">
          <front>
            <title>OAuth 2.0 Token Introspection</title>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <date month="October" year="2015"/>
            <abstract>
              <t>This specification defines a method for a protected resource to query an OAuth 2.0 authorization server to determine the active state of an OAuth 2.0 token and to determine meta-information about this token. OAuth 2.0 deployments can use this method to convey information about the authorization context of the token from the authorization server to the protected resource.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7662"/>
          <seriesInfo name="DOI" value="10.17487/RFC7662"/>
        </reference>
        <reference anchor="RFC7800">
          <front>
            <title>Proof-of-Possession Key Semantics for JSON Web Tokens (JWTs)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="April" year="2016"/>
            <abstract>
              <t>This specification describes how to declare in a JSON Web Token (JWT) that the presenter of the JWT possesses a particular proof-of- possession key and how the recipient can cryptographically confirm proof of possession of the key by the presenter. Being able to prove possession of a key is also sometimes described as the presenter being a holder-of-key.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7800"/>
          <seriesInfo name="DOI" value="10.17487/RFC7800"/>
        </reference>
        <reference anchor="RFC8414">
          <front>
            <title>OAuth 2.0 Authorization Server Metadata</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <date month="June" year="2018"/>
            <abstract>
              <t>This specification defines a metadata format that an OAuth 2.0 client can use to obtain the information needed to interact with an OAuth 2.0 authorization server, including its endpoint locations and authorization server capabilities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8414"/>
          <seriesInfo name="DOI" value="10.17487/RFC8414"/>
        </reference>
        <reference anchor="RFC9458">
          <front>
            <title>Oblivious HTTP</title>
            <author fullname="M. Thomson" initials="M." surname="Thomson"/>
            <author fullname="C. A. Wood" initials="C. A." surname="Wood"/>
            <date month="January" year="2024"/>
            <abstract>
              <t>This document describes Oblivious HTTP, a protocol for forwarding encrypted HTTP messages. Oblivious HTTP allows a client to make multiple requests to an origin server without that server being able to link those requests to the client or to identify the requests as having come from the same client, while placing only limited trust in the nodes used to forward the messages.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9458"/>
          <seriesInfo name="DOI" value="10.17487/RFC9458"/>
        </reference>
        <reference anchor="SD-JWT.VC">
          <front>
            <title>SD-JWT-based Verifiable Credentials (SD-JWT VC)</title>
            <author fullname="Oliver Terbu" initials="O." surname="Terbu">
              <organization>MATTR</organization>
            </author>
            <author fullname="Daniel Fett" initials="D." surname="Fett">
              <organization>Authlete Inc.</organization>
            </author>
            <author fullname="Brian Campbell" initials="B." surname="Campbell">
              <organization>Ping Identity</organization>
            </author>
            <date day="3" month="December" year="2024"/>
            <abstract>
              <t>   This specification describes data formats as well as validation and
   processing rules to express Verifiable Credentials with JSON payloads
   with and without selective disclosure based on the SD-JWT
   [I-D.ietf-oauth-selective-disclosure-jwt] format.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-sd-jwt-vc-08"/>
        </reference>
        <reference anchor="ISO.mdoc">
          <front>
            <title>ISO/IEC 18013-5:2021 ISO-compliant driving licence</title>
            <author>
              <organization>ISO/IEC JTC 1/SC 17</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 1372?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>We would like to thank
Brian Campbell,
Filip Skokan,
Francesco Marino,
Guiseppe De Marco,
Kristina Yasuda,
Markus Kreusch,
Martijn Haring,
Michael B. Jones,
Michael Schwartz,
Mike Prorock,
Oliver Terbu,
Orie Steele,
Timo Glastra
and
Torsten Lodderstedt</t>
      <t>for their valuable contributions, discussions and feedback to this specification.</t>
    </section>
    <section numbered="false" anchor="document-history">
      <name>Document History</name>
      <t>-06</t>
      <ul spacing="normal">
        <li>
          <t>iana registration text updated with update procedures</t>
        </li>
        <li>
          <t>explicitly mention that status list is expected to be contained in cryptographically secured containers</t>
        </li>
        <li>
          <t>reworked and simplified introduction and abstract</t>
        </li>
        <li>
          <t>specify http status codes and allow redirects</t>
        </li>
        <li>
          <t>add status_list_aggregation_endpoint OAuth metadata</t>
        </li>
        <li>
          <t>remove unsigned options (json/cbor) of status list</t>
        </li>
        <li>
          <t>add section about mixing status list formats and media type</t>
        </li>
        <li>
          <t>fixes from IETF review</t>
        </li>
        <li>
          <t>update guidance around ttl</t>
        </li>
        <li>
          <t>add guidance around aggregation endpoint</t>
        </li>
      </ul>
      <t>-05</t>
      <ul spacing="normal">
        <li>
          <t>add optional support for historical requests</t>
        </li>
        <li>
          <t>update CBOR claim definitions</t>
        </li>
        <li>
          <t>improve section on Status Types and introduce IANA registry for it</t>
        </li>
        <li>
          <t>add Status Issuer and Status Provider role description to the introduction/terminology</t>
        </li>
        <li>
          <t>add information on third party hosting to security consideration</t>
        </li>
        <li>
          <t>remove constraint that Status List Token must not use a MAC</t>
        </li>
      </ul>
      <t>-04</t>
      <ul spacing="normal">
        <li>
          <t>add mDL example as Referenced Token and consolidate CWT and CBOR sections</t>
        </li>
        <li>
          <t>add implementation consideration for Default Values, Double Allocation and Status List Size</t>
        </li>
        <li>
          <t>add privacy consideration on using private relay protocols</t>
        </li>
        <li>
          <t>add privacy consideration on observability of outsiders</t>
        </li>
        <li>
          <t>add security considerations on correct parsing and decoding</t>
        </li>
        <li>
          <t>remove requirement for matching iss claim in Referenced Token and Status List Token</t>
        </li>
        <li>
          <t>add sd-jwt-vc example</t>
        </li>
        <li>
          <t>fix CWT status_list map encoding</t>
        </li>
        <li>
          <t>editorial fixes</t>
        </li>
        <li>
          <t>add CORS considerations to the http endpoint</t>
        </li>
        <li>
          <t>fix reference of Status List in CBOR format</t>
        </li>
        <li>
          <t>added status_list CWT claim key assigned</t>
        </li>
        <li>
          <t>move base64url definition to terminology</t>
        </li>
      </ul>
      <t>-03</t>
      <ul spacing="normal">
        <li>
          <t>remove unused reference to RFC9111</t>
        </li>
        <li>
          <t>add validation rules for status list token</t>
        </li>
        <li>
          <t>introduce the status list aggregation mechanism</t>
        </li>
        <li>
          <t>relax requirements for status_list claims to contain other parameters</t>
        </li>
        <li>
          <t>change cwt referenced token example to hex and annotated hex</t>
        </li>
        <li>
          <t>require TLS only for fetching Status List, not for Status List Token</t>
        </li>
        <li>
          <t>remove the undefined phrase Status List endpoint</t>
        </li>
        <li>
          <t>remove http caching in favor of the new ttl claim</t>
        </li>
        <li>
          <t>clarify the sub claim of Status List Token</t>
        </li>
        <li>
          <t>relax status_list iss requirements for CWT</t>
        </li>
        <li>
          <t>Fixes missing parts &amp; iana ttl registration in CWT examples</t>
        </li>
      </ul>
      <t>-02</t>
      <ul spacing="normal">
        <li>
          <t>add ttl claim to Status List Token to convey caching</t>
        </li>
        <li>
          <t>relax requirements on referenced token</t>
        </li>
        <li>
          <t>clarify Deflate / zlib compression</t>
        </li>
        <li>
          <t>make a reference to the Issuer-Holder-Verifier model of SD-JWT VC</t>
        </li>
        <li>
          <t>add COSE/CWT/CBOR encoding</t>
        </li>
      </ul>
      <t>-01</t>
      <ul spacing="normal">
        <li>
          <t>Rename title of the draft</t>
        </li>
        <li>
          <t>add design consideration to the introduction</t>
        </li>
        <li>
          <t>Change status claim to in referenced token to allow re-use for other mechanisms</t>
        </li>
        <li>
          <t>Add IANA Registry for status mechanisms</t>
        </li>
        <li>
          <t>restructure the sections of this document</t>
        </li>
        <li>
          <t>add option to return an unsigned Status List</t>
        </li>
        <li>
          <t>Changing compression from gzip to zlib</t>
        </li>
        <li>
          <t>Change typo in Status List Token sub claim description</t>
        </li>
        <li>
          <t>Add access token as an example use-case</t>
        </li>
      </ul>
      <t>-00</t>
      <ul spacing="normal">
        <li>
          <t>Initial draft after working group adoption</t>
        </li>
        <li>
          <t>update acknowledgments</t>
        </li>
        <li>
          <t>renamed Verifier to Relying Party</t>
        </li>
        <li>
          <t>added IANA consideration</t>
        </li>
      </ul>
      <t>[ draft-ietf-oauth-status-list ]</t>
      <t>-01</t>
      <ul spacing="normal">
        <li>
          <t>Applied editorial improvements suggested by Michael Jones.</t>
        </li>
      </ul>
      <t>-00</t>
      <ul spacing="normal">
        <li>
          <t>Initial draft</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+29aXMcSZYg9j1+RSzKNA10I5MRkTe3u6dBECDBwkECIHhU
lYpxeCKDiIzIjsjEwRq2jY3tN63JVtJoNLba1WpH0u7aaD+MzCRb02h21oz8
J/1L9A73CI8jcbCquqtnit1FZkaGX8+fv9vfa7VaxjycR+K+uXKcnInYPJq7
80Vm7obZfMXw3bk4TdKr+2YYjxPDCBI/dqfwcpC643krFPNxK3EX80kro2at
CJq1rL6RLbxpmGVhEs+vZvD+ztbxtml+ZrpRlsBQ+HVlHf7deAD/JCl8OoQn
RryYeiK9bwQw7n3j/L7ZMc5FvIDPpnkazicLDxrzgBen966bxAq0iKCXbA4t
JvP5LLt/755q2ea+2mFybR/X/tiezKfRimHg8wSmbLZgRNMcL6KIQXSceKEL
gEwArCn9lqSnbhy+c+cAlvvm3sbx8SE9F1M3jO6bc2rQjqjBr6bufJ62T6PE
c6N650/dRWQ+cLN56MZ6HzN43vb4+a9mSTYXSTsQ9fabkzSkl8wHSTp147hh
gocJ7MUcXsj8iflo6j3WB/Kxg7bHjX91Or3EYYwYv8/Dc9qww+1Ne9Sz7qsP
+SNbPbL5kWN1+/fVB37UGQ35EX7gR33b6d1XH+SjYWd4X33gR4OezW/hh/zR
SD0a8aOh0+NH+EE+6oyc++qDfDSQI+IH+WjUlQ3hAz8aWT1uiB/kI9vmZeMH
+ag34gXhB3i0s7G/0d4TQegewwHJ7hNsc1wy5W7gUYEXV+iJOqfUyqRm8gc3
PRU6nl9cXLRhb902dHHPhWN4Gk9FPM/uTbFpC49k6XP7kpFZTuvJwdHWXSb0
5Ohg3zzw3gp/bh7BWGF8arpxYG7Ffno1Q2QyV7HPtbtO922SCfqrOsEXx3ee
3wvhmUzhNiM3nN4ZdG8v5vhfZSabd5vJ5oODQ20mq9B87RPn48N8/Np8DjZg
Hu2nbupO74RT1M7coHclATCPRHouUnNPzF2gx+5dJ8gUc4ZTEXOR1h/w1D9z
9UFbGQ3ammqDbh4cHi1fy4vHG8cvHpVXsy3mQLJ2w3PERGBoceCmwZL5j/Hd
djYTfvti4s6BOeBCPsOfW36SZq1ZmswTP0Faj0ywTOD6A0kP8IMkN/0+0wP8
IB8NLaYH+EESkq7dva8+SBLR7TE1ww/w6OhhCxC9fbIJ7LP1sK2zoaAFqNg6
93Hbjw7aU+DL1+z20cG9na1N88nxpmnfO4K/BmVwqRfsoWV3Wr37juXY2C+s
fzqLYHPnwO8ZmFHoi9gXAAuj1WqZrpfNU9efG8bxJMxMhGI4Dn3Gn0CMw1hk
pmtOhT8BxpJN103cVBMaLfz5IsUfgU4AhH0BmAP9p4sIHgKUzVTM4HfAJHw8
nwiTea+ZjIFRwuGB0YQPXQSmd2XemgKhrEGH8IaXN/HldTNbAB4BE4d9WJf7
YZ5srpuVc4ytAV4m7kPb3JmTmFOsPzbF5RxmjD3PkhDAiQ1cWOIpMOH0itY7
XiBA1CpziGVthvQ0DIIIOOxn5k48T5MA4AfdAdxpAoyWZZDACsxvvskJ+vv3
tHZ+KrnV+/elJWb8C7JJ/CVfLz7PkRF/2czfRWYJPesAwEElTuK7E/dcmOcg
kcDSYY+9SJjuDLCKkSRrm0fJVNCuTmC7S7+ZPoAujM+TCLoAaXJBO8Xbb15M
RCpgnT7IKG4Yw9JBEpmHPsDbSxZzQhl+E5YdAmzO3SgMwvmVOXWhFUD3FIZF
AjcPp6JtbibT6SKmoRnhYDL8Vgb9wF5FV/gDkK95CI9C3HX4GwhZMhOpi+tC
UUikBUhhitBPqk0FzogPCwsDgbsES8M5gZQa4CSzBZyfOODtwxnjkrE/aBVO
ZwmsE1AHcQUGumoGWVueRAD+Asmwdgg1wb5yCqEfF9/M/DT0cLkw3zAO4MQH
CzeSKCno6E0X0TycwVoPxRjWAKQg4DMAG7lRe0ig9mh3ccaMpeumB9sDc5yC
eArgmE6TOLqCCVZJQxWZJfq2zeNJfXzsMC2eQRtchbbmddiOEPZFLTOoEpWG
Tnkoff1uFNWXbroAQ9jXc3EFz85BOHNNL4RTnqawfsCUylTa5pYLM2laAvSf
+IQQhF2BuDSDRYqIh8jgwsu8WTl1zAhT4GiFRLguQLGhAaGvfAq8DMC1hTpo
+Ntqtma6c36VRwJ2B53OEjjMgPFNAPlJJqGBu60jFPQBVBwQBt6UcyhjHK8Q
eSmQXd4gorbJaerOYGNMFBxcwkbY572NTaIp80ZcxhXnAJCkAgZEYoWNgDpJ
VKPTIOALQPUCgQgSL4w3hZ5moT9nTIeTzX1Mwhkg6/xCCN4xPOljYG4gSBm/
+c1v4ET7YdiCp4bx2z//57/98z+94///hamdMYl4n9SR7A5m8WdmCcgm9Pev
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
1NkJCZSWPz2Jgu3R5PWjw6vXL/ff0fNo/637+CSDhVztwt7shU8C6PFJ5D0+
ebFvPB/Fe05wfHwWPTnYOnntxfvdZyejB9Ryenn+ytnO3JeHvVJPj16f+/Hh
ZCeycGrOkfEi6QRb1vzV8cnsJHrw+NV0dLz/8nAeRK+5o/hJ9NqJzj1Gk+NX
L/YT3zlZ7D7fXriPtrNgE6Zk4JyOjifuiWP1nr/o7T5//ODg+aOTg9cvejuv
H00OeUr758GLnuXHZ7T9h1vPw5fPcDmHr+3R033j7WHff77dfX387HJvunW5
93Ay86dqOdtnrx8/ifwOos6DwU40evcaUWQ7C/fj18nBiyeXuy9nx/vGVrB7
fDLsHHYexK/t1+GLl7N+cPz6/NgKXvlT++DkLHh2tL3R2T85OdvbxCXt9F47
sxfBycR6vfX66Njaj58b8RPreLr/+ORkMj98+8r2p4eRmEbj/bOTq5dO0tmf
zucvXkb7NLOz+cnzs8Nn7sND99m7LcD8fct9mcwPjUev3h2cvOq+fhGdiePt
85O3+5M96/Ty8NHW1fHbB/HBw1MCw4nV7flvo7Nn1pPPD7Ymz5919o/3prPd
Zyf73RPj0WxbnPi2d3zS3X97Mn4RDa/86fDKnb5+dXz0JBifWL9han6Y5z3R
eNQS41iNRX2dIUP6gjnP4/P085f98dMT63z0+ddXmyfbD8Ld7cfZnnvpP/za
trtb0/7J8fDSBr4GLb5i52qWLeND7B9ZKftgOxb9WS+8tfaw9FB6Vft+z7fc
7qjl9YajVrdjB8CwxKDl2CPbcdyR8B1/Zf13y0DXJci+lpw9m7gt5O2KsS7R
czaX6Dn+XfUc6qhmfZc8dZkb9xp1Z/MO6k6THxW9OL1Cq1niwJGKZuXmnwzP
fsNG3iI+G4Utkhul/ljWfSgUPJzjbXSW8MeUeKZRD+KrnkUL5TpdMjBdrgop
0wlms2ixLDtzQ5WRjFpjnospZusgsZa6mC8Paq5c48jl71Sd0eqk1/O8rcVF
x0KI11NZy21SOn5zEYWyjpWDQsWyLw/8+Y41xomriXtBnjvElI+bvNnSW9co
+a1RBqvGGAct6n8H1I3aLufXCAuwwH5EwXLV86b4/h9V07JquvQ0/Ki2fm9q
a/NF9tt5Obsd10bvlO7F7PfRqdLv4bdOp9Pt9Cx70Kk6WNh7YlTdJ81ODumu
GLt239P9J70xelAMfOQ60MGo30XjY78DP6JnosGxs8xrYyz3pKLH03Y80Xcs
xws6Q9fpWqI/HngDS4zGQWB3e31rBK9ZRtDvjnv2aNQbd7sjz/f7lm11hsOx
1fUtKxC+JWwHQCZgTTDLbge6GA9EYFujwO91PIH9G0N3CKzRdfuWD4MKNxgO
xOh7vqHxPXo8u7f0eHZyLw2h1PLX0Uvzb8nh+Q/DZdlvXKtZ8Qdbju6zbDpe
NZ8lIlu3h5DKJvPcS7TkMGitdaG28HY2H1Hd24nyb5MPUvWx7DiX/EO6uzL3
Qf6XD//2LMuXUD7+xenX+slFgg9/5Yd5uyXUQWsXXKKzEbNPksM3B9oS+qG1
1BWB3LW3JE5Da6brDGWfPROfZgRa0dWLu/tBl1Gz8kY4H/7eQzT68J+HH/7q
Vx//3cf/9OE/6f7GMu0rSF/Z3Tf++K+hr+4JtByh1xF21/r4FwfP4KfR16qr
ZdRS6+ohNPA+/vM3GOQA6DEcI2ahU9oKPv5HfVrLKGxlcffhLwH9BB//xt+k
hY1/Qx7bUe7izUlymSLrztB/dfTh73/28X9Alyb81+t9+Os3H/+bj/+u8LMz
8V62MeRn//iXv0G3aNkf2ljbilx3i3mIZsaaOFPI1hhiKI2uSqzJvUh5MTwl
Ee4lHiYiPZIpV5UPaXXv6GCtdm1TGWhHbVuZZxt6vs5Cu3kbC62vLLRLM0bl
oyrhLHI9ESlGR1J5w43UJerbD0gYI0uzMhRThcTqFhBiPNw1Vym5K4EuZf8x
vsnaBu2dLrPpthtdarOBBvZGlj3udKyhY9lizP+Oeq5ldSz4ZGFpvq7ljYU/
CNzRQFjdoTDsnut3Atf3RsIdiyHQue44sAbjXseyXKsPfbhD5BGiE1hd7Aj/
37HtbgfGhd87vZ5BP/iWBySxC/THAukNf4O/gWjaHdvyoLMRvwzvwiPL6WHo
J0zTHlgBsD+jC1wQepF/y//1XPlzr/lX6Ae6BzIBq7P6huwf5zKqzAVo8HXz
6I2giw78Ygy09SLQyhDAgQZWp+tYltV1fTFwge0B1e0FI2KkLjQfGW5/3OsP
uj1/4LpBt9N3rY7b7cD+uoOB1xu7Aw9Joz0aBL1BAHy0I2yvMwg6bq8zGneD
3nDYMfo90Rn6njfueaNu0Ie+u9DW84eDjh34wIfsbt9zO0PgxLDRNjS1bJ+X
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
H8X4Ml2VOAEA

-->

</rfc>
