<?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.34 (Ruby 3.4.9) -->
<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc text-list-symbols="o-*+"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-avrilionis-satp-artefacts-registry-00" category="info" consensus="true" submissionType="IETF" tocDepth="4" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.32.0 -->
  <front>
    <title abbrev="Registry">Artefacts Registry</title>
    <seriesInfo name="Internet-Draft" value="draft-avrilionis-satp-artefacts-registry-00"/>
    <author initials="D." surname="Avrilionis" fullname="Denis Avrilionis">
      <organization>Compellio S.A.</organization>
      <address>
        <email>denis@compellio.com</email>
      </address>
    </author>
    <author initials="T." surname="Hardjono" fullname="Thomas Hardjono">
      <organization>MIT</organization>
      <address>
        <email>hardjono@mit.edu</email>
      </address>
    </author>
    <date year="2026" month="March" day="18"/>
    <area>Applications and Real-Time</area>
    <workgroup>Secure Asset Transfer Protocol</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 138?>

<t>This memo describes the Artefacts Registry for Asset Exchange API. The Registry is a component that exposes an API allowing gateways to fetch information related to the SAT protocol. Examples information stored in the Artefacts Registry are network identifiers, entities identifiers, asset profiles, or asset instances. Registries are are acting as persistent storage locations for records. Once registered, records can be updated in an append-only manner.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://compellio.github.io/draft-avrilionis-satp-artefacts-registry/draft-avrilionis-satp-artefacts-registry.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-avrilionis-satp-artefacts-registry/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Secure Asset Transfer Protocol Working Group mailing list (<eref target="mailto:sat@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/sat/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/sat/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/compellio/draft-avrilionis-satp-artefacts-registry"/>.</t>
    </note>
  </front>
  <middle>
    <?line 142?>

<section anchor="introduction">
      <name>Introduction</name>
      <t anchor="introduction-doc">This memo proposes an API intended to be implemented by Artefact Registries in the context of SATP. A Registry is a component that exposes an API allowing gateways to fetch artefacts related to the SAT protocol ("API3"). Examples of SATP artefacts are network identifiers, entities identifiers, asset profiles, or asset instances.</t>
      <t>Registries play an important role in maintaining record of artefacts that are important during the Setup Stage of SATP (a.k.a “Stage 0”). Registries are are acting as persistent storage locations for such artefacts. Once registered, artefacts cannot be removed. New versions are appended in the Registry without removing previous versions (append-only principle). Readers are directed first to <xref target="REGARCH"/> for a description of the architecture underlying the Registries.</t>
      <t>All API calls are assumed to run over TLS1.2 or higher, and the endpoints of the registry are associated with a certificate indicating the legal owner (or operator) of the Registry. HTTPS must be used instead of plain HTTP.</t>
    </section>
    <section anchor="conventions-used-in-this-document">
      <name>Conventions used in this document</name>
      <t anchor="conventions">The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL"
in this document are to be interpreted as described in RFC 2119 <xref target="REQ-LEVEL"/>.</t>
      <t>In this document, these words will appear with that interpretation
only when in ALL CAPS. Lower case uses of these words are not to be
interpreted as carrying significance described in RFC 2119.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t anchor="terminology-doc">Please refer to <xref target="TERM"/> for the terminology used in this document.</t>
      <t>The artefacts recorded via registries are called Tokenized Asset Records or TARs. Please refer to  <xref target="REGARCH"/> for more information about TARs.</t>
    </section>
    <section anchor="the-registry-api">
      <name>The Registry API</name>
      <section anchor="registry-api">
        <name>Overview</name>
        <t anchor="satp-overview">The Registry API pertains to the interaction between gateways. In <xref target="ARCH"/> such interface was identied as "API3" - see <xref target="ARCH"/> for more details.</t>
        <artwork><![CDATA[
                               +----------+
                               |  Client  |
      ------------------------ |   (App)  |
      |        |               +----------+
      |        |                    |
      |        V                    |
      |      +---+----------+       |
      |      |   |          |       |
      |      |API| Registry |       |
      |      |(3)|    R1    |       |
      |      |   |          |       |
      |      +---+----------+       V
      |        ^               +---------+
      V        |               |   API1  |
   +-----+     |               +---------+----+
   |     |     ----------------|         |    |
   | Net.|                     | Gateway |API2|
   | NW1 |---------------------|    G1   |    |
   |     |                     |         |    |
   +-----+                     +---------+----+

                  Figure 1
]]></artwork>
      </section>
      <section anchor="the-role-of-the-registry-in-satp">
        <name>The role of the Registry in SATP</name>
        <t anchor="registry-role">The three stages of the SATP protocol are described in <xref target="CORE"/>. Prior to the initiation of SATP the peer gateways may access artefacts related to networks, assets or the gateway themselves. Registries are used to maintain record of such artefacts. Registries are of particular importance in the interactions between the peer gateways during the setup stage (Stage-0) <xref target="STAGE0"/></t>
        <t>Records stored in a registry are persisted in the form of Tokenized Artefacts Record (TAR). In summary the main concepts of a TAR are as follows:</t>
        <ul spacing="normal">
          <li>
            <t>The Artefact: This is a piece of information containing digitized data or pointing to assets. It can range from configuration data, execution log, network identifier, as well as any form of tangible or intangible asset, such as real estate, art, company shares, or even intellectual property.</t>
          </li>
          <li>
            <t>The Token: A digital token is created on a network to represent a specific piece of information or an asset.</t>
          </li>
          <li>
            <t>The Record: The token acts as the immutable record of ownership. It contains vital data about the artefact (metadata), ownership history, and rules for transfer, all secured by a network.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="registry-api-message-format-identifiers-and-descriptors">
      <name>Registry API Message Format, identifiers and Descriptors</name>
      <section anchor="API-identifiers">
        <name>Overview</name>
        <t anchor="API-overview">This section describes the Registry API message-types, the format of the messages, the format for resource descriptors and other related parameters.</t>
      </section>
      <section anchor="api-digital-signatures-and-key-types">
        <name>API Digital Signatures and Key Types</name>
        <t anchor="API-signatures">All API calls must be signed, using JSON Web Signatures mechanism (RFC7515).</t>
        <t>Registries SHOULD support the algorithms defined in the JSON Web Algorithms (JWA) specification [RFC7518] and key types defined in the JSON Web Key (JWK) specification [RFC7517].</t>
        <t>All registries implementing the API must implement at minimal the ECDSA signature algorithm with the P-256 curve and the SHA-256 hash function.</t>
        <t>Additional signature algorithms and keying parameters may be implemented by the registries. However, these are outside the scope of this specification.</t>
      </section>
      <section anchor="registry-message-format-and-payloads">
        <name>Registry Message Format and Payloads</name>
        <t anchor="API-format">All registry API messages are in JSON format <xref target="JSON"/>.</t>
        <section anchor="protocol-version">
          <name>Protocol version</name>
          <t anchor="API-version">This refers to the registry API Version, encoded as "major.minor" (separated by a period symbol).</t>
          <t>The endpoints of the registry should clearly indicate the version of the API. The current version is "1.0" defined in this specification. Implementations not understanding a future option value should return an appropriate error response and cease the negotiation.</t>
        </section>
        <section anchor="client-credential-types-supported-by-registries">
          <name>Client Credential Types Supported by Registries</name>
          <t>Registries must support JSON Web Tokens (JWT) [RFC 7519] with OAUth2.0 [RFC6749] as the minimal credential type for authenticating incoming API calls.</t>
          <t>A registry may support additional credential mechanisms, which may be advertised by the registry through different mechanisms (e.g. config file at a well-known endpoint). However, these mechanisms are out of scope for the current specification.</t>
        </section>
        <section anchor="registry-supported-tls-schemes">
          <name>Registry Supported TLS Schemes</name>
          <t>Registries must suport TLS1.2 or higher [RFC8448].</t>
          <t>The TLS scheme is used by client applications to call the Registry endpoints.  Registries must a minimal support the AES-128 in GCM mode with SHA-256 (TLS_AES_128_GCM_SHA256).</t>
        </section>
        <section anchor="client-offers-other-supported-tls-schemes">
          <name>Client Offers Other Supported TLS Schemes</name>
          <t>If a client application wishes to use TLS schemes other then the basic scheme (AES-128 in GCM mode with SHA-256), then the client may choose to send a JSON block containing information regarding the client's supported TLS schemes.</t>
        </section>
        <section anchor="registry-identifier">
          <name>Registry Identifier</name>
          <t>This is the unique identifier of the registry service.  The registry identifier MUST be uniquely bound to its endpoint (e.g. via X.509 certificates).</t>
          <t>This registry identifier is distinct from the registry operator business identifier (e.g., legal entity identifier (LEI) number).</t>
          <t>A registry operator may operate multiple registries. Each of the registries MUST be identified by a unique registry identifier.</t>
          <t>The mechanisms to establish the registry identifier or the operator identifier is outside the scope of this specification.</t>
        </section>
        <section anchor="signature-algorithms-supported">
          <name>Signature Algorithms Supported</name>
          <t>This is a JSON list of digital signature algorithms supported by a registry. Each entry in the list should be either an Algorithm Name value registered in the IANA "JSON Web Signature and Encryption Algorithms" registry established by <xref target="JWA"/> or be a value that contains a Collision-Resistant Name.</t>
          <t>All implementations must support a common default of "ES256", which is the ECDSA signature algorithm with the P-256 curve and the SHA-256 hash function.</t>
        </section>
        <section anchor="json-canonicalisation">
          <name>JSON Canonicalisation</name>
          <t>Registries must suport JSON Canonicalization <xref target="RFC8785"/>.</t>
        </section>
      </section>
    </section>
    <section anchor="overview-of-api-endpoints">
      <name>Overview of API endpoints</name>
      <t anchor="API-endpoints">Registries MUST support the use of the HTTP GET and POST methods defined in RFC 2616 <xref target="RFC2616"/> for the endpoint.</t>
      <t>Clients MAY use the HTTP GET or POST methods to send messages to the registry.</t>
      <t>If using the HTTP GET method, the request parameters may be serialized using URI Query String Serialization.</t>
      <t>(NOTE: Flows occur over TLS. Nonces are not shown).</t>
      <section anchor="tar-creation">
        <name>TAR Creation</name>
        <section anchor="POST-TAR">
          <name>Call</name>
          <t>This endpoint stores the input data in the regitry permanent storage and returns a token identifier related to the TAR. The call should return as soon as the input data are persisted in the registry. In case of asynchronous creation of the token identifier associated to the TAR a temporary receipt should be returned. Such receipt should be substituted with the permanent token identifier.</t>
          <t>This endpoint uses an HTTP POST method</t>
          <t>Here is an example representation in JSON format:</t>
          <sourcecode type="json"><![CDATA[
{
  "@context": "urn:tar:eip155.444444444500:81d0782847297956410ec1a674e60a78fff14b69",
  "performance": {
    "venueID": "urn:tar:eip155.137:2C3a4C8a34404Ee0145f588536E94D47421dC891",
    "location": "Poetry Bar",
    "url": "https://poetry.bar/20241116/triplicity",
    "description": {
      "en": "Triplicity band live performance"
    },
    "startTime": "2024-11-16T21:30:00Z+02:00",
    "doorTime": "2024-11-16T21:00:00Z+02:00"
  },
  "owner": {
    "ownerID": "urn:tar:eip155.137:d9D6916A0A65Fe2aC212243E8f2252143D0c7dE4"
  },
  "price": {
    "currency": "EUR",
    "value": "10"
  },
  "seat": {
    "seatNumber": "A1",
    "seatLocation": "VIP"
  },
  "validity": {
    "used": false
  }
}
]]></sourcecode>
        </section>
        <section anchor="return-result">
          <name>Return result</name>
          <sourcecode type="json"><![CDATA[
{
  "id": "urn:tar:eip155.444444444500:6850be85c8c264ef1562ebae547fd7086c281774",
  "receipt": "23f2769a-2cce-48f7-9612-4c3dd7a918b8",
  "data": {
    "@context": "urn:tar:eip155.444444444500:81d0782847297956410ec1a674e60a78fff14b69",
    "owner": {
      "ownerID": "urn:tar:eip155.137:d9D6916A0A65Fe2aC212243E8f2252143D0c7dE4"
    },
    "performance": {
      "description": {
        "en": "Triplicity band live performance"
      },
      "doorTime": "2024-11-16T21:00:00Z+02:00",
      "location": "Poetry Bar",
      "startTime": "2024-11-16T21:30:00Z+02:00",
      "url": "https://poetry.bar/20241116/triplicity",
      "venueID": "urn:tar:eip155.137:2C3a4C8a34404Ee0145f588536E94D47421dC891"
    },
    "price": {
      "currency": "EUR",
      "value": "10"
    },
    "seat": {
      "seatLocation": "VIP",
      "seatNumber": "A1"
    },
    "validity": {
      "used": false
    }
  },
  "checksum": "0xBA66E005328F45E1AE3CCE97F3404E4D4365D13443214CB968A49BB5948F98F3",
  "version": 1
}
]]></sourcecode>
        </section>
        <section anchor="error-message">
          <name>Error Message</name>
          <t>TBD</t>
        </section>
      </section>
      <section anchor="READ-TAR">
        <name>TAR Read</name>
        <t>This endpoint retrieves a TAR previously created or updated in the Registry.</t>
        <section anchor="call">
          <name>Call</name>
          <t>The parameters of this message consist of the following:
* tarid REQUIRED: urn:tar:eip155.444444444500:81d0782847297956410ec1a674e60a78fff14b69</t>
        </section>
        <section anchor="return-result-1">
          <name>Return result</name>
          <sourcecode type="json"><![CDATA[
{
  "id": "urn:tar:eip155.444444444500:6850be85c8c264ef1562ebae547fd7086c281774",
  "receipt": "23f2769a-2cce-48f7-9612-4c3dd7a918b8",
  "data": {
    "@context": "urn:tar:eip155.444444444500:81d0782847297956410ec1a674e60a78fff14b69",
    "owner": {
      "ownerID": "urn:tar:eip155.137:d9D6916A0A65Fe2aC212243E8f2252143D0c7dE4"
    },
    "performance": {
      "description": {
        "en": "Triplicity band live performance"
      },
      "doorTime": "2024-11-16T21:00:00Z+02:00",
      "location": "Poetry Bar",
      "startTime": "2024-11-16T21:30:00Z+02:00",
      "url": "https://poetry.bar/20241116/triplicity",
      "venueID": "urn:tar:eip155.137:2C3a4C8a34404Ee0145f588536E94D47421dC891"
    },
    "price": {
      "currency": "EUR",
      "value": "10"
    },
    "seat": {
      "seatLocation": "VIP",
      "seatNumber": "A1"
    },
    "validity": {
      "used": false
    }
  },
  "checksum": "0xBA66E005328F45E1AE3CCE97F3404E4D4365D13443214CB968A49BB5948F98F3",
  "version": 1,
  "_sdHashes": []
}
]]></sourcecode>
        </section>
        <section anchor="error-message-1">
          <name>Error Message</name>
          <t>TBD</t>
        </section>
      </section>
      <section anchor="UPDATE-TAR">
        <name>TAR Update</name>
        <t>Updates the TAR by registering a new version for the specific TARID</t>
        <section anchor="call-1">
          <name>Call</name>
          <t>The parameters of this message consist of the following:
* tarid REQUIRED: urn:tar:eip155.444444444500:81d0782847297956410ec1a674e60a78fff14b69</t>
          <ul spacing="normal">
            <li>
              <t>tarBody REQUIRED:</t>
            </li>
          </ul>
          <sourcecode type="json"><![CDATA[
{
  "@context": "urn:tar:eip155.444444444500:81d0782847297956410ec1a674e60a78fff14b69",
  "owner": {
    "ownerID": "urn:tar:eip155.137:d9D6916A0A65Fe2aC212243E8f2252143D0c7dE3"
  },
  "performance": {
    "description": {
      "en": "Triplicity band live performance"
    },
    "doorTime": "2024-11-16T21:00:00Z+02:00",
    "location": "Poetry Bar",
    "startTime": "2024-11-16T21:30:00Z+02:00",
    "url": "https://poetry.bar/20241116/triplicity",
    "venueID": "urn:tar:eip155.137:2C3a4C8a34404Ee0145f588536E94D47421dC891"
  },
  "price": {
    "currency": "EUR",
    "value": "10"
  },
  "seat": {
    "seatLocation": "VIP",
    "seatNumber": "A2"
  },
  "validity": {
    "used": false
  }
}
]]></sourcecode>
        </section>
        <section anchor="return-result-2">
          <name>Return result</name>
          <sourcecode type="json"><![CDATA[
{
  "id": "urn:tar:eip155.444444444500:6850be85c8c264ef1562ebae547fd7086c281774",
  "receipt": "23f2769a-2cce-48f7-9612-4c3dd7a918b8",
  "data": {
    "@context": "urn:tar:eip155.444444444500:81d0782847297956410ec1a674e60a78fff14b69",
    "owner": {
      "ownerID": "urn:tar:eip155.137:d9D6916A0A65Fe2aC212243E8f2252143D0c7dE4"
    },
    "performance": {
      "description": {
        "en": "Triplicity band live performance"
      },
      "doorTime": "2024-11-16T21:00:00Z+02:00",
      "location": "Poetry Bar",
      "startTime": "2024-11-16T21:30:00Z+02:00",
      "url": "https://poetry.bar/20241116/triplicity",
      "venueID": "urn:tar:eip155.137:2C3a4C8a34404Ee0145f588536E94D47421dC891"
    },
    "price": {
      "currency": "EUR",
      "value": "10"
    },
    "seat": {
      "seatLocation": "VIP",
      "seatNumber": "A1"
    },
    "validity": {
      "used": false
    }
  },
  "checksum": "0xBA66E005328F45E1AE3CCE97F3404E4D4365D13443214CB968A49BB5948F98F3",
  "version": 1,
  "_sdHashes": []
}
]]></sourcecode>
        </section>
        <section anchor="error-message-2">
          <name>Error Message</name>
          <t>TBD</t>
        </section>
      </section>
      <section anchor="DELETE-TAR">
        <name>TAR Deletion</name>
        <t>Archives the TAR</t>
        <section anchor="call-2">
          <name>Call</name>
          <t>The parameters of this message consist of the following:
* tarid REQUIRED: urn:tar:eip155.444444444500:81d0782847297956410ec1a674e60a78fff14b69</t>
        </section>
        <section anchor="return-result-3">
          <name>Return result</name>
          <t>A success code</t>
        </section>
        <section anchor="error-message-3">
          <name>Error Message</name>
          <t>TBD</t>
        </section>
      </section>
    </section>
    <section anchor="iana-consideration">
      <name>IANA Consideration</name>
      <t anchor="satp-iana-Consideration">The <tt>tar</tt> namespace might follow a hierachichal structure under the general URN <tt>satp</tt> namespace, i.e. <tt>urn:satp:tar</tt>.</t>
      <section anchor="registry-api-error-codes">
        <name>Registry API Error Codes</name>
        <t>TBD</t>
      </section>
      <section anchor="urn-registration">
        <name>URN Registration</name>
        <t>URN:   Request to be assigned by IANA.</t>
        <t>Common Name:    urn:ietf:satp</t>
        <t>Registrant Contact: IESG</t>
        <t>Description: The secure asset transfer protocol (SATP) requires message types, endpoints and parameters to be defined within a unique namespace to prevent collision.</t>
      </section>
    </section>
    <section anchor="error-types-and-codes">
      <name>Error Types and Codes</name>
      <t anchor="error-types-section">This appendix defines the error codes that may be returned in SATP protocol messages.</t>
      <section anchor="protocol-error-codes">
        <name>Protocol Error Codes</name>
        <t>TBD</t>
      </section>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t anchor="registry-core-contributors">The authors would like to thank the following people for their input and support:</t>
      <t>Andre, Rafael, Rama.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="JWT">
          <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="JSON">
          <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="JWS">
          <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="JWA">
          <front>
            <title>JSON Web Algorithms (JWA)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>This specification registers cryptographic algorithms and identifiers to be used with the JSON Web Signature (JWS), JSON Web Encryption (JWE), and JSON Web Key (JWK) specifications. It defines several IANA registries for these identifiers.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7518"/>
          <seriesInfo name="DOI" value="10.17487/RFC7518"/>
        </reference>
        <reference anchor="REQ-LEVEL">
          <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="BASE64">
          <front>
            <title>The Base16, Base32, and Base64 Data Encodings</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <date month="October" year="2006"/>
            <abstract>
              <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4648"/>
          <seriesInfo name="DOI" value="10.17487/RFC4648"/>
        </reference>
        <reference anchor="DATETIME">
          <front>
            <title>Date and Time on the Internet: Timestamps</title>
            <author fullname="G. Klyne" initials="G." surname="Klyne"/>
            <author fullname="C. Newman" initials="C." surname="Newman"/>
            <date month="July" year="2002"/>
            <abstract>
              <t>This document defines a date and time format for use in Internet protocols that is a profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3339"/>
          <seriesInfo name="DOI" value="10.17487/RFC3339"/>
        </reference>
        <reference anchor="RFC2616">
          <front>
            <title>Hypertext Transfer Protocol -- HTTP/1.1</title>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="J. Gettys" initials="J." surname="Gettys"/>
            <author fullname="J. Mogul" initials="J." surname="Mogul"/>
            <author fullname="H. Frystyk" initials="H." surname="Frystyk"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <author fullname="P. Leach" initials="P." surname="Leach"/>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <date month="June" year="1999"/>
            <abstract>
              <t>HTTP has been in use by the World-Wide Web global information initiative since 1990. This specification defines the protocol referred to as "HTTP/1.1", and is an update to RFC 2068. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2616"/>
          <seriesInfo name="DOI" value="10.17487/RFC2616"/>
        </reference>
        <reference anchor="X.500">
          <front>
            <title>The Directory: Overview of concepts, models and services</title>
            <author initials="" surname="ITU-T">
              <organization/>
            </author>
            <date year="2005"/>
          </front>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="NIST" target="https://doi.org/10.6028/NIST.IR.8202">
          <front>
            <title>NIST Blockchain Technology Overview (NISTR-8202)</title>
            <author initials="D." surname="Yaga">
              <organization/>
            </author>
            <author initials="P." surname="Mell">
              <organization/>
            </author>
            <author initials="N." surname="Roby">
              <organization/>
            </author>
            <author initials="K." surname="Scarfone">
              <organization/>
            </author>
            <date year="2018" month="October"/>
          </front>
        </reference>
        <reference anchor="ECDSA" target="https://doi.org/10.6028/NIST.FIPS.186-5">
          <front>
            <title>Digital Signature Standard (FIPS 186-5)</title>
            <author>
              <organization/>
            </author>
            <date year="2023" month="February"/>
          </front>
        </reference>
        <reference anchor="MICA" target="https://www.esma.europa.eu/esmas-activities/digital-finance-and-innovation/markets-crypto-assets-regulation-mica">
          <front>
            <title>EU Directive on Markets in Crypto-Assets Regulation (MiCA)</title>
            <author initials="" surname="European Commission">
              <organization/>
            </author>
            <date year="2023" month="June"/>
          </front>
        </reference>
        <reference anchor="CORE" target="https://datatracker.ietf.org/doc/draft-ietf-satp-architecture/">
          <front>
            <title>Secure Asset Transfer Protocol (SATP) Core</title>
            <author initials="M." surname="Hargreaves">
              <organization/>
            </author>
            <author initials="T." surname="Hardjono">
              <organization/>
            </author>
            <author initials="R." surname="Belchior">
              <organization/>
            </author>
            <author initials="V." surname="Ramakrishna">
              <organization/>
            </author>
            <date year="2025" month="November"/>
          </front>
        </reference>
        <reference anchor="ARCH" target="https://datatracker.ietf.org/doc/draft-ietf-satp-architecture/">
          <front>
            <title>Secure Asset Transfer (SAT) Interoperability Architecture</title>
            <author initials="T." surname="Hardjono">
              <organization/>
            </author>
            <author initials="M." surname="Hargreaves">
              <organization/>
            </author>
            <author initials="N." surname="Smith">
              <organization/>
            </author>
            <author initials="V." surname="Ramakrishna">
              <organization/>
            </author>
            <date year="2024" month="June"/>
          </front>
        </reference>
        <reference anchor="REGARCH" target="https://datatracker.ietf.org/doc/draft-ietf-satp-architecture/">
          <front>
            <title>Asset Schema Architecture for Asset Exchange</title>
            <author initials="D." surname="Avrilionis">
              <organization/>
            </author>
            <author initials="T." surname="Hardjono">
              <organization/>
            </author>
            <date year="2025" month="November"/>
          </front>
        </reference>
        <reference anchor="TERM" target="https://datatracker.ietf.org/doc/draft-hardjono-satp-terminology/">
          <front>
            <title>Secure Asset Transfer Protocol (SATP) Terminology</title>
            <author initials="T." surname="Hardjono">
              <organization/>
            </author>
            <date year="2025" month="November"/>
          </front>
        </reference>
        <reference anchor="STAGE0" target="https://datatracker.ietf.org/doc/draft-avrilionis-satp-setup-stage/">
          <front>
            <title>SATP Setup Stage</title>
            <author initials="D." surname="Avrilionis">
              <organization/>
            </author>
            <author initials="T." surname="Hardjono">
              <organization/>
            </author>
            <date year="2025" month="November"/>
          </front>
        </reference>
        <reference anchor="RFC5939">
          <front>
            <title>Session Description Protocol (SDP) Capability Negotiation</title>
            <author fullname="F. Andreasen" initials="F." surname="Andreasen"/>
            <date month="September" year="2010"/>
            <abstract>
              <t>The Session Description Protocol (SDP) was intended to describe multimedia sessions for the purposes of session announcement, session invitation, and other forms of multimedia session initiation. SDP was not intended to provide capability indication or capability negotiation; however, over the years, SDP has seen widespread adoption and as a result it has been gradually extended to provide limited support for these, notably in the form of the offer/answer model defined in RFC 3264. SDP does not define how to negotiate one or more alternative transport protocols (e.g., RTP profiles) or attributes. This makes it difficult to deploy new RTP profiles such as Secure RTP or RTP with RTCP-based feedback, negotiate use of different security keying mechanisms, etc. It also presents problems for some forms of media negotiation.</t>
              <t>The purpose of this document is to address these shortcomings by extending SDP with capability negotiation parameters and associated offer/answer procedures to use those parameters in a backwards compatible manner.</t>
              <t>The document defines a general SDP Capability Negotiation framework. It also specifies how to provide attributes and transport protocols as capabilities and negotiate them using the framework. Extensions for other types of capabilities (e.g., media types and media formats) may be provided in other documents. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5939"/>
          <seriesInfo name="DOI" value="10.17487/RFC5939"/>
        </reference>
        <reference anchor="RFC9334">
          <front>
            <title>Remote ATtestation procedureS (RATS) Architecture</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="D. Thaler" initials="D." surname="Thaler"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="N. Smith" initials="N." surname="Smith"/>
            <author fullname="W. Pan" initials="W." surname="Pan"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>In network protocol exchanges, it is often useful for one end of a communication to know whether the other end is in an intended operating state. This document provides an architectural overview of the entities involved that make such tests possible through the process of generating, conveying, and evaluating evidentiary Claims. It provides a model that is neutral toward processor architectures, the content of Claims, and protocols.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9334"/>
          <seriesInfo name="DOI" value="10.17487/RFC9334"/>
        </reference>
        <reference anchor="RFC8785">
          <front>
            <title>JSON Canonicalization Scheme (JCS)</title>
            <author fullname="A. Rundgren" initials="A." surname="Rundgren"/>
            <author fullname="B. Jordan" initials="B." surname="Jordan"/>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman"/>
            <date month="June" year="2020"/>
            <abstract>
              <t>Cryptographic operations like hashing and signing need the data to be expressed in an invariant format so that the operations are reliably repeatable. One way to address this is to create a canonical representation of the data. Canonicalization also permits data to be exchanged in its original form on the "wire" while cryptographic operations performed on the canonicalized counterpart of the data in the producer and consumer endpoints generate consistent results.</t>
              <t>This document describes the JSON Canonicalization Scheme (JCS). This specification defines how to create a canonical representation of JSON data by building on the strict serialization methods for JSON primitives defined by ECMAScript, constraining JSON data to the Internet JSON (I-JSON) subset, and by using deterministic property sorting.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8785"/>
          <seriesInfo name="DOI" value="10.17487/RFC8785"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
