<?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.4 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-steele-spice-metadata-discovery-00" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.19.0 -->
  <front>
    <title>SPICE Metadata Discovery</title>
    <seriesInfo name="Internet-Draft" value="draft-steele-spice-metadata-discovery-00"/>
    <author fullname="Orie Steele">
      <organization>Transmute</organization>
      <address>
        <email>orie@transmute.industries</email>
      </address>
    </author>
    <date year="2024" month="January" day="07"/>
    <area>Security</area>
    <workgroup>Secure Patterns for Internet CrEdentials</workgroup>
    <keyword>credential</keyword>
    <keyword>presentation</keyword>
    <keyword>identity</keyword>
    <keyword>metadata</keyword>
    <abstract>
      <?line 64?>

<t>Entities interested in digital credentials need to express and discover preferences for working with them.</t>
      <t>Before issuance, holders need to discover what credentials are supported, and issuers need to discover if a holder's wallet is safe enough to store their credentials.</t>
      <t>Before presentation, holder's need to discovery verifier's encryption keys, and which presentation formats a verifier supports.</t>
      <t>After presentation, verifiers need to discover any new key material or status changes related to credentials.</t>
      <t>This document enables issuers, holders and verifiers to discover supported protocols and formats for keys, claims, credentials and proofs.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://OR13.github.io/draft-steele-spice-metadata-discovery/draft-steele-spice-metadata-discovery.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-steele-spice-metadata-discovery/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Secure Patterns for Internet CrEdentials Working Group mailing list (<eref target="mailto:spice@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/spice/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/spice/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/OR13/draft-steele-spice-metadata-discovery"/>.</t>
    </note>
  </front>
  <middle>
    <?line 76?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The abstractions and relationships that have evolved to support digital credentials and secure systems are challenging to comprehend and used in conflciting and contradictory ways in different organizations, and security specifications.</t>
      <t>An identity (also known an entity), is identified (distinguished) through identifiers (names), and can fulfill multiple roles, including being an Issuer, Holder, Relying Party or Verifier of digital credentials and presentations.</t>
      <t>The attributes (claims, or reputation statements), capabilities, and relations associated with an identifier are expressed as metadata regarding the identifier.</t>
      <t>Because it remains easier to rediscover the fundamentals of digital identity and credentials than it is to read or comprehend the previous work, very similar, yet unfortunately incompatible systems are continiously created, and through their adoption the digital identity ecosystem becomes increasingly difficult to comprehend or support.</t>
      <t>This document is not meant to solve all the challenges facing organizations seeking to adopt digital identity and credentialing technology.
However, this document attempts to describe an identifier and metadata architecture, that reflects the current state of the art, and addresses the challenge of fragmentation and data siloing, through a distillation of the essentials needed to support digital credentials.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</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="background">
      <name>Background</name>
      <t>In Open ID Connect <xref target="OpenIDConnect"/>, and <xref target="I-D.draft-ietf-oauth-sd-jwt-vc"/>, identifiers are URLs, metadata is discovered through URLs, claims are expressed in JSON, <xref target="RFC8259"/>, and content is described using content types.</t>
      <t>Request:</t>
      <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

GET /.well-known/openid-configuration HTTP/1.1
Host: issuer.example
Accept: \
  application/json;charset=utf-8, \
  application/json
]]></sourcecode>
      <t>Response:</t>
      <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

HTTP/1.1 200 Ok
Content-Type: \
  application/json

{
  "issuer": "https://issuer.example",
  "token_endpoint": "https://issuer.example/api/oauth/token",
  "jwks_uri": "https://issuer.example/.well-known/jwks.json",
  "response_types_supported": [
    "token"
  ],
  "claims_supported": [
    "aud",
    "exp",
    "iat",
    "iss",
    "sub"
  ],
  "id_token_signing_alg_values_supported": [
    "ES384"
  ],
  "token_endpoint_auth_signing_alg_values_supported": [
    "ES384"
  ],
  "id_token_encrypted_response_alg": [
    "ECDH-ES+A256KW
  ],
  "id_token_encrypted_response_enc": [
    "A128CBC-HS256"
  ]
  ...
}
]]></sourcecode>
      <t>In <xref target="DIDs"/> and <xref target="VCs"/> the identifiers are URLs, metadata is discovered through dereferencing URLs, claims are expressed in <xref target="JSON-LD"/>, and content is described using content types.</t>
      <t>For example:</t>
      <t>Request:</t>
      <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

GET /identifiers/did:example:123 HTTP/1.1
Host: resolver.example
Accept: \
  application/did+json
]]></sourcecode>
      <t>Response:</t>
      <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

HTTP/1.1 200 Ok
Content-Type: \
  application/json

{
  "id": "did:example:123"
}
]]></sourcecode>
      <t>In <xref target="I-D.draft-ietf-ace-key-groupcomm"/> the identifiers are URLs, metadata discovered through dereferencing URLs, attributes are expressed in CBOR, <xref target="RFC8949"/>, and content is described using content types.</t>
      <t>For example:</t>
      <t>Request:</t>
      <artwork><![CDATA[
Header: POST (Code=0.02)
Uri-Host: "kdc.example.com"
Uri-Path: "ace-group"
Uri-Path: "g1"
Content-Format: "application/ace-groupcomm+cbor"
Payload (in CBOR diagnostic notation,
         with AUTH_CRED and POP_EVIDENCE being CBOR byte strings):
  { "scope": << [ "group1", ["sender", "receiver"] ] >> ,
    "get_creds": [true, ["sender"], []], "client_cred": AUTH_CRED,
    "cnonce": h'25a8991cd700ac01', "client_cred_verify": POP_EVIDENCE }
]]></artwork>
      <t>Response:</t>
      <artwork><![CDATA[
Header: Created (Code=2.01)
Content-Format: "application/ace-groupcomm+cbor"
Location-Path: "kdc.example.com"
Location-Path: "g1"
Location-Path: "nodes"
Location-Path: "c101"
Payload (in CBOR diagnostic notation,
         with KEY being a CBOR byte strings):
  { "gkty": 13, "key": KEY, "num": 12, "exp": 1609459200,
    "creds": [ AUTH_CRED_1, AUTH_CRED_2 ],
    "peer_roles": ["sender", ["sender", "receiver"]],
    "peer_identifiers": [ ID1, ID2 ] }
]]></artwork>
      <t>These examples highlight perhaps the only common attributes of modern digital credential systems: structured identifiers (URLs and URNs) and content types.</t>
      <section anchor="the-layering-problem">
        <name>The layering problem</name>
        <t>Effective standards limit optionality, improve interoperability, and connect bounded contexts, <xref target="BoundedContexts"/> through interfaces that require trivial to acquire and well understood tooling.</t>
        <t>With respect to structured identifiers and content types, the simplest solutions select a single identifier type, and a single content type.</t>
        <t>For example, a hypothetical AcmeHyperProtocol might rely only on URLs and JSON.</t>
        <t>Support for AcmeHyperProtocol would be easy, developers would need only to have reliable libraries for working with URLs and JSON.</t>
        <t>Software does not evolve this way.</t>
        <t>It is common to see dependencies that solve several seperate problems efficiently, bundled together, such that it is impossible to take a dependency on just the part that is needed.</t>
        <t>This problem is then reflected in standards, because effective standards describe effective software systems.</t>
        <t>In OpenID Connect, we see URLs, but we also see URNs; we see <tt>application/json</tt>, but we also see <tt>application/jwt</tt> nested inside of it.</t>
        <t>In DIDs and VCs, we see URLs, but we also see DIDs (URNs); we see <tt>application/json</tt>, but we also see <tt>application/ld+json</tt> nested inside of it, even further, we see <tt>application/n-quads</tt> constraining what <tt>application/json</tt> can express through the use of <tt>application/ld+json</tt>. We see URLs contraining what DIDs can express, through reuse of the path, query and fragment. We see a desire to wrap easily understood content types such as <tt>application/jwk+json</tt> or <tt>application/jwt</tt> in less easy to understand JSON-LD content types. Where does this nesting come from?</t>
        <t><xref target="RFC9518"/> explains in Section 4.7: "standards efforts should focus on providing concrete utility to the majority of their users as published, rather than being a "framework" where interoperability is not immediately available. Internet functions should not make every aspect of their operation extensible; boundaries between modules should be designed in a way that allows evolution, while still offering meaningful functionality."</t>
        <t>In order to enable consumers leverage their prefered identifiers and content types, some specifications take a "big tent" approach, created an open ended extensibility mechansism, and then providing a single mandatory to implement instantiation of it. In the worst cases, <xref target="DIDsFO"/>, standards insist on providing the estensiblity mechanisms, and refuse to provide mandatory to implement instances, and through doing so, ensure no interoperability is achievable without a second document, enabling a profile that is actually usable. It could be argued that OAuth has similar deficiencies, and that OpenID Connect solved this same problem through a suite of secondary documents.</t>
        <t>It might seem impossible to support extensibility and interoperability simultaneously, but as the authors on <xref target="RFC9518"/> and Martin Fowler in <xref target="BoundedContexts"/> points out, the key to succeeding is ensuring the layering is correct.</t>
      </section>
    </section>
    <section anchor="strategy-tactics">
      <name>Strategy &amp; Tactics</name>
      <t>Editors note: This whole section is far too ranty... the objective is to provide generic guidance to address the problem, before providing concrete recommendations and a single set of mandatory to implement APIs.</t>
      <t>Be honest about the hierarchical model.</t>
      <t>Digital identity solutions always assume supremacy of certain building blocks.</t>
      <t>Open ID Connect assumes HTTP, JSON and JWT.</t>
      <t>DIDs and VCs assume URNs and JSON-LD.</t>
      <t>CBOR is frequently assumed for new work, due to its similarity to JSON and superior storage and transmission costs.</t>
      <t>It is better to build a very useful, and easy to implement specification that solves a problem, than it is to build a hard to use, and hard to implement specification that seeks inclusivity at the cost of efficiency, interoperability and simplicity.</t>
      <t>Once the essential components, and their relative priorities (read importance or rank) are established, assemble them such that each might be replaced in the future, for example HTTP might be replaced with some other transport, JSON with CBOR, JWT with CWT, etc.</t>
      <t>It is ok, if replacing a single component, requires replacing a set of connected sub components, for example moving from JSON to CBOR, might also require moving from JWT to CWT.</t>
      <t>While it might seem valuable to support multiple formats, it is one of the highest cost decisions a standard can fail to make for implementers, and it should be avoided at all costs.</t>
    </section>
    <section anchor="structured-identifiers">
      <name>Structured Identifiers</name>
      <section anchor="compound-identifiers">
        <name>Compound Identifiers</name>
        <t>Compound identifiers are commonly used to address the challend of expressing relations between distinct identifiers.</t>
        <t>In URLS for http resources, depending on the content type, the compount identifier <tt>https://issuer.example/capabilities#f81d4fae-7dec-11d0-a765-00a0c91e6bf6</tt> might express that "f81d4fae-7dec-11d0-a765-00a0c91e6bf6" is a sub resource of "https://issuer.example/capabilities" which is a sub resource of "https://issuer.example".</t>
        <t>When constructing compoind identifiers, it is important to consider how negotiation is impacted by leveraging different parts of a structured identifier.</t>
        <t>For example, a server can assist with negotiation for response types for <tt>https://issuer.example/capabilities</tt>, but sub resources identified by a fragment have their response type controlled by their parent resource.</t>
      </section>
      <section anchor="global-uniqueness">
        <name>Global Uniqueness</name>
        <t>Global uniqueness is a deseriable property of structed identifiers.</t>
        <t>Ensuring global uniquess often tends towards centralization or federation, because some system or entity must ensure that distinct identities are not able to contest, or claim a single unique identifier.</t>
        <t>One way to achieve global uniqueness is to produce a compound identifier where the authority or structure of the identifier establishes the uniquenss through relation to itself.</t>
        <t>For example <tt>https://issuer.example/f81d4fae-7dec-11d0-a765-00a0c91e6bf6</tt> relies on the authority <tt>https://issuer.example</tt> to maintain the linkage between resource identifier and resource representations.</t>
        <t>Another example <tt>https://issuer.example/urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6</tt> uses a URN namespace to establish a globally unique identifier <tt>urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6</tt> and then uses <tt>https://issuer.example</tt> to establish a compound identifier which is globally unique.</t>
      </section>
      <section anchor="sharing-structured-identifiers">
        <name>Sharing Structured Identifiers</name>
        <t>Some systems might wish to share structured identifiers, while maintaining authority for representations.</t>
        <t>For example <tt>https://issuer.example/urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6</tt> and <tt>https://verifier.example/urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6</tt> might both use <tt>urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6</tt> to express a globally unique identifier for an attribute key or attribute value.</t>
        <t>When independent entities share globally unique identifiers, they are responsible for ensuring that the identifier is used consistently.</t>
        <t>For example:</t>
        <t><tt>https://resolver1.example/identifiers/did:example:123</tt> could serve completely different JSON-LD for <tt>did:example:123</tt> than <tt>https://resolver2.example/identifiers/did:example:123</tt>.</t>
        <t>Because unlike URLs, URNs are not resolvable by themselves, trust in resources represented with URNs comes from the system you are communicating with, and unlike URLs, there is no commonly understood scheme for communiation, such as http encoded in the identifier.</t>
      </section>
    </section>
    <section anchor="content-types">
      <name>Content Types</name>
      <t>Type systems such as the Hindley–Milner type system, can provide much stronger security properties than well defined content types, but both serve a similar purpose, which is to express the intended processing and capabilies of data structures.</t>
      <section anchor="structured-suffixes">
        <name>Structured Suffixes</name>
        <t><xref target="RFC7071"/> defined a JSON based media type for expressing reputation, <tt>application/reputon+json</tt>.</t>
        <t>The <tt>+json</tt> part is a structured suffix as described in <xref target="RFC6839"/>.</t>
        <t>Defining a new media type with a structured suffix, allows for systems that support content type negotiation to respond with more precise content types.</t>
        <t>This property of responding with less ambigious content types is part of secure system design, and <xref target="RFC8725"/> notes that using more specific types can help protect against certain attacks.</t>
        <t>Using a more specific content type comes at the cost of being "generally understood", for example <tt>application/json</tt> is often expected or hard coded in software, and returning <tt>application/reputon+json</tt> could cause software to fail higher up in the application stack.</t>
      </section>
      <section anchor="allowing-additional-properties">
        <name>Allowing Additional Properties</name>
        <t>It is common for content types to rely on map or object datastructures for their top level serializations.</t>
        <t>This is because a MAP is easily extended with new key value pairs, which when not understood can be ignored, whereas a string or array, might cause processing errors if extended.</t>
        <t><tt>application/jwk-set+json</tt> builds on <tt>application/json</tt> and expresses a set of cryptographic keys represented by values, that are consistent with <tt>application/jwk+json</tt>.</t>
        <t>In cases where additional properties can be present, implementations should take advantage of this and avoid creating new media types, until the number of new properties is substantial enough to justify ensuring security and processing considerations specific to the new type cause faults.</t>
        <t>For example, consider the following URL and resource expressing "keys that are use to make attribute assertions about a subject".</t>
        <t>Request:</t>
        <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

GET /keys/assertion HTTP/1.1
Host: issuer.example
Accept: \
  application/jwk-set+json
]]></sourcecode>
        <t>Response:</t>
        <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

HTTP/1.1 200 Ok
Content-Type: \
  application/json

{
  "keys": [
    {
      "kid": "urn:ietf:params:oauth:jwk-thumbprint:sha-256:NzbLsXh8...sRGC9Xs"
      "kty": "EC",
      "crv": "P-256",
      "alg": "ES256",
      "x": "MKBCTNIcKUSDii11ySs3526iDZ8AiTo7Tu6KPAqv7D4",
      "y": "4Etl6SRW2YiLUrN5vfvVHuhp7x8PxltmWWlbbM4IFyM"
    }
  ]
}
]]></sourcecode>
        <t>The <tt>keys</tt> property is part of <tt>application/jwk-set+json</tt>, and additional properties can be added at this layer, without creating a new media type, however, those properties will not be well understood in the context of <tt>application/jwk-set+json</tt>.</t>
        <t>Similarly inside each key the <tt>alg</tt> property is optional, but when present it signals the algorithm the key is restricted to be used with.</t>
        <t>Additional properties might be added to the keys themselves, however, those properties will not be well understood in the context of <tt>application/jwk+json</tt>.</t>
      </section>
    </section>
    <section anchor="spice-metadata-discovery">
      <name>SPICE Metadata Discovery</name>
      <t>Identifiers for issuer, holders and verifiers <bcp14>MUST</bcp14> be URLs.</t>
      <t>For example:</t>
      <artwork><![CDATA[
https://issuer.example
]]></artwork>
      <t>The scheme of the URL <bcp14>MUST</bcp14> support resolving content types.</t>
      <t>For example:</t>
      <t>Request:</t>
      <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

GET / HTTP/1.1
Host: issuer.example
Accept: \
  application/json
]]></sourcecode>
      <t>Response:</t>
      <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

HTTP/1.1 200 Ok
Content-Type: \
  application/json

{
  "capabilities": "https://issuer.example/capabilities",
  ...
}
]]></sourcecode>
      <t>Content type specific sub resources <bcp14>MUST</bcp14> be expressved by reference, and <bcp14>MUST NOT</bcp14> be expressed by value.</t>
      <t>For example:</t>
      <t>Request:</t>
      <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

GET / HTTP/1.1
Host: issuer.example
Accept: \
  application/json
]]></sourcecode>
      <t>Response:</t>
      <sourcecode type="http-message"><![CDATA[
NOTE: '\' line wrapping per RFC 8792

HTTP/1.1 200 Ok
Content-Type: \
  application/json

{
  "jwks": "https://issuer.example/keys",
  ...
}
]]></sourcecode>
      <t>It is <bcp14>RECOMMENDED</bcp14> to avoid registering new media types, except in cases where a response might be confused for an existing media type in a way that impacts security.</t>
      <t>It is <bcp14>RECOMMENDED</bcp14> to return content types that have message level integrity, to protect authenticity, and ensure transport agility is less impacted by transport specific security considerations.</t>
      <t>It is <bcp14>RECOMMENDED</bcp14> to submit content types that have messsage level encryption, to protect confidentiality, and ensure transport agility is less impacted by transport specific security considerations.</t>
      <t>It is <bcp14>RECOMMENDED</bcp14> that "purpose" be encoded in identifiers, not attributes of representations.</t>
      <t>This allows for negotiation of different content types satisfying the same purpose.</t>
      <t>Purpose is more than just "which algorithms", it is also the intended use of the algorithm.</t>
      <t>For example, a key migth be used to sign assertions to create credentials, or challenges to enable authentication.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO Security</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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="I-D.draft-ietf-ace-key-groupcomm">
          <front>
            <title>Key Provisioning for Group Communication using ACE</title>
            <author fullname="Francesca Palombini" initials="F." surname="Palombini">
              <organization>Ericsson AB</organization>
            </author>
            <author fullname="Marco Tiloca" initials="M." surname="Tiloca">
              <organization>RISE AB</organization>
            </author>
            <date day="6" month="October" year="2023"/>
            <abstract>
              <t>   This document defines how to use the Authentication and Authorization
   for Constrained Environments (ACE) framework to distribute keying
   material and configuration parameters for secure group communication.
   Candidate group members acting as Clients and authorized to join a
   group can do so by interacting with a Key Distribution Center (KDC)
   acting as Resource Server, from which they obtain the keying material
   to communicate with other group members.  While defining general
   message formats as well as the interface and operations available at
   the KDC, this document supports different approaches and protocols
   for secure group communication.  Therefore, details are delegated to
   separate application profiles of this document, as specialized
   instances that target a particular group communication approach and
   define how communications in the group are protected.  Compliance
   requirements for such application profiles are also specified.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ace-key-groupcomm-17"/>
        </reference>
        <reference anchor="I-D.draft-ietf-oauth-sd-jwt-vc">
          <front>
            <title>SD-JWT-based Verifiable Credentials (SD-JWT VC)</title>
            <author fullname="Oliver Terbu" initials="O." surname="Terbu">
              <organization>Spruce Systems, Inc.</organization>
            </author>
            <author fullname="Daniel Fett" initials="D." surname="Fett">
              <organization>Authlete Inc.</organization>
            </author>
            <date day="23" month="October" year="2023"/>
            <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-01"/>
        </reference>
        <reference anchor="BoundedContexts" target="https://martinfowler.com/bliki/BoundedContext.html">
          <front>
            <title>Bounded Context</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </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="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="RFC9518">
          <front>
            <title>Centralization, Decentralization, and Internet Standards</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="December" year="2023"/>
            <abstract>
              <t>This document discusses aspects of centralization that relate to Internet standards efforts. It argues that, while standards bodies have a limited ability to prevent many forms of centralization, they can still make contributions that assist in the decentralization of the Internet.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9518"/>
          <seriesInfo name="DOI" value="10.17487/RFC9518"/>
        </reference>
        <reference anchor="RFC7071">
          <front>
            <title>A Media Type for Reputation Interchange</title>
            <author fullname="N. Borenstein" initials="N." surname="Borenstein"/>
            <author fullname="M. Kucherawy" initials="M." surname="Kucherawy"/>
            <date month="November" year="2013"/>
            <abstract>
              <t>This document defines the format of reputation response data ("reputons"), the media type for packaging it, and definition of a registry for the names of reputation applications and response sets.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7071"/>
          <seriesInfo name="DOI" value="10.17487/RFC7071"/>
        </reference>
        <reference anchor="RFC6839">
          <front>
            <title>Additional Media Type Structured Syntax Suffixes</title>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <author fullname="A. Melnikov" initials="A." surname="Melnikov"/>
            <date month="January" year="2013"/>
            <abstract>
              <t>A content media type name sometimes includes partitioned meta- information distinguished by a structured syntax to permit noting an attribute of the media as a suffix to the name. This document defines several structured syntax suffixes for use with media type registrations. In particular, it defines and registers the "+json", "+ber", "+der", "+fastinfoset", "+wbxml" and "+zip" structured syntax suffixes, and provides a media type structured syntax suffix registration form for the "+xml" structured syntax suffix. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6839"/>
          <seriesInfo name="DOI" value="10.17487/RFC6839"/>
        </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="JSON-LD" target="https://www.w3.org/TR/json-ld11/">
          <front>
            <title>A JSON-based Serialization for Linked Data</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="DIDs" target="https://www.w3.org/TR/did-core/">
          <front>
            <title>Decentralized Identifiers (DIDs) v1.0</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="DIDsFO" target="https://www.w3.org/2022/03/did-fo-report.html">
          <front>
            <title>DID 1.0 Formal Objections Report</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="VCs" target="https://www.w3.org/TR/vc-jose-cose/">
          <front>
            <title>Securing Verifiable Credentials using JOSE and COSE</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="OpenIDConnect" target="https://openid.net/specs/openid-connect-core-1_0.html">
          <front>
            <title>Open ID Connect</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 488?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+1c63Ibx5X+j6fohavW1gYACepGIY4TiqQsxpLIFSkrXsdF
NWYaQJuDGXh6BhCiUmrfYV9gn2UfZZ9kv3NO91wAUJKVbGV/bKocDXr6ei7f
ufWw3+93ClskZqS6lxdnx6fquSl0rAutTqyLsqXJ191OpAszzfL1SNl0knU6
cRaleo4xca4nRd8VxiSm7xY2Mv25H9+Pw/j+/n7HleO5dc5mabFeYODZ6dUT
pb5QOnEZlrZpbBYG/5cW3Z7qmtgWWW51Qj/Ojh7jnyzH08urJ91OWs7HJh91
sIgZdaIsdSZ1pRupIi9NZzlSdzs6N5oOZKIytwUOsMrym2melYvQatSFLgqT
p05NMPVZSs+mUMf5KW0CS7tu58asMTAedVRfRbnxL+jXIjdYtdAFDkS/Lb8r
1vQcCNBZmrTEDpX69SsrJWTqvsbGbTpV39IU1D7XNkE70/oP1hSTQZZP6YXO
oxlezIpi4UZ7e9SPmuzSDEK3PWrYG+fZypk9nmGPRk5tMSvHGHv+cnh375NY
SsMS0N8VjSVp+EAmG9js0yb6tF6DWTFPup2OLotZlhM/sL5SkzJJRA6757k1
6pJn6fI7HFen9i/MoZG6ynXq5mVh+J3xRISImT8U4dUAQli6Am1gQCfN8jkG
L8HAToekvvqp1Fn/ZCD7Jsr2NfYMUekzm6NsPh+po+PT/nenP/S/fXn+6uL4
/Pnz7VEZHabv4v7Pq6K/jEbq8qT/x9dX/e+P0fdxVkIZ4mOoi3lbuBFv2+up
f6f8S3ml86kBL2ru5wVtepWYfIAt7Y0Te2P32tMyVTH85ZPjw0f3Ho3U8ePz
l/73wX38/uPl+Qv5/ej+8HAkjw/3Hw7944PDu4/84+HDg/sYgP0/Pr5AEw3t
PztpbfxIWsfaYfeXhvTbM4g14ZlNb/DihFRn15lWq9VgdZfl+Orl3s8uS/tJ
PBzuofPJ2UmbRicmgi7ltACmPGPFmliTO/UV9b2jlsPB/iesEtu4H2W5CYs8
OW8vc3aiMJF6QtKRqPPxzyai8zj10iyyfDdvGisc7B8c7O3f5WUmWT/nQYEt
3x+3zyRoBiz4HqSbWD1ODEAjoJJTpaOXfzy/PFU6hXjg4RNOuIz6P2fO4JSO
T3kOGD47gYSkOEprfXqjcGD/bufcGfrYeAA8A76YyPkGzM5jmJb94fW+nLHT
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
TQAA

-->

</rfc>
