<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.36 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ralston-mimi-terminology-02" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.4 -->
  <front>
    <title abbrev="MIMI Terminology">MIMI Terminology</title>
    <seriesInfo name="Internet-Draft" value="draft-ralston-mimi-terminology-02"/>
    <author fullname="Travis Ralston">
      <organization>The Matrix.org Foundation C.I.C.</organization>
      <address>
        <email>travisr@matrix.org</email>
      </address>
    </author>
    <date year="2023" month="July" day="10"/>
    <area>Applications and Real-Time</area>
    <workgroup>More Instant Messaging Interoperability</workgroup>
    <keyword>mimi terminology</keyword>
    <keyword>mimi definitions</keyword>
    <keyword>mimi words</keyword>
    <abstract>
      <?line 37?>

<t>This document introduces a set of terminology to use when discussing or describing
concepts within MIMI.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://turt2live.github.io/ietf-mimi-terminology/draft-ralston-mimi-terminology.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ralston-mimi-terminology/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        More Instant Messaging Interoperability Working Group mailing list (<eref target="mailto:mimi@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/mimi/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/mimi/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/turt2live/ietf-mimi-terminology"/>.</t>
    </note>
  </front>
  <middle>
    <?line 42?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The More Instant Messaging Interoperability (MIMI) working group is chartered to
specify the minimal set of mechanisms to make modern instant messaging applications
interoperable. Through prior discussions and upcoming documents, it's become important
to have a shared understanding for what is being discussed specifically.</t>
      <t>This document expands upon MLS's <xref target="I-D.ietf-mls-protocol"/> <xref target="I-D.ietf-mls-architecture"/>
terminology by defining terms specific to MIMI's purpose. Document authors SHOULD prefix
terms from MLS with "MLS" to denote where the term is specifically coming from. For example,
"MLS Group" versus "Group". This document defines terms which are non-conflicting to help
ensure clarity when the MLS prefix is missing, however.</t>
      <t>Documents within the MIMI working group may introduce their own terminology to explain
concepts within their context. Those documents SHOULD NOT override or change the terminology
described in this document or from MLS.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>MIMI defines:</t>
      <t><strong>Messaging Provider</strong> or <strong>Provider</strong>: A service offering instant messaging to users.
Each provider has a server to route events between users (or clients, specifically).</t>
      <t><strong>User</strong>: A (normally) human operator of a client. Users have a <strong>User ID</strong> to identify
them canonically within the system.</t>
      <t><strong>User Identity</strong>: A mapping of <strong>User ID</strong> to external identifier, such as a phone number.
In some cases, the user identity can be synonymous with the user ID, however the default
assumption if not clarified is that they are different concepts.</t>
      <t><strong>Client</strong>: A user interface for messaging, performing encryption as needed. Presents
chats to the user to interact with. Synonymous with MLS Client. Clients have a
<strong>Client ID</strong> to canonically identify them among a user's other clients. Clients
can additionally be called <strong>Devices</strong> to differentiate them from a named application.</t>
      <t><strong>Chat</strong>: The place where users communicate. This is semantically distinct from an
MLS Group: an MLS Group is responsible for handling client keys while a chat is
simply the user-facing construct for communication, however systems can declare a chat
to be the same as an MLS Group depending on their design. Chats have a <strong>Chat ID</strong> to
canonically identify them within the system. Chats can additionally be called <strong>Rooms</strong>,
<strong>Conversations</strong>, and <strong>Channels</strong>.</t>
      <t>A chat can have any one of many different characterizations/behaviours, called <strong>Chat Types</strong>:</t>
      <ul spacing="normal">
        <li>
          <strong>DM</strong>: A direct message chat between exactly two users. DMs are typically created
when a user searches for another user to message, rather than creating a group chat.
All users in the chat have the same permission capabilities under the access control
semantics. The chat name is that of the opponent user in the DM. DMs are typically
canonical: exactly one chat with the opponent user exists at a time.</li>
        <li>
          <strong>Group DM</strong>: A subtype of DMs where there are more than two users. The chat name
consists of the opponent users in the DM. Inherited from DMs, Group DMs are also
canonical: creating a new Group DM with the exact same users ultimately redirects to
the existing chat instead of creating a new one. These may also be called <strong>Ad-hoc Chats</strong>
in some scenarios.</li>
        <li>
          <strong>Group Chat</strong>: A chat which requires an invite to be able to participate, and can have
zero or more users. A user-provided chat name is defined for the chat. Typically,
the creator has admin permissions while other designated users have either admin permissions
or moderator permissions. Most users have default permissions which allow them to send
events to the chat. Unlike (Group) DMs, multiple chats with the same set of users
can exist at the same time, even with the same chat name.</li>
        <li>
          <strong>Public Chat</strong>: A group chat which does not require an invite to participate. Usually
these types of chats are discovered through a directory or website. Chats which require
a request to join, or knock, are considered public chats. Sometimes these will be referred
to as <strong>Public Chatrooms</strong>.</li>
        <li>
          <strong>Auditorium Chat</strong>: Either a group chat or public chat where most users are unable to
send events and cannot be seen as chat members by other users. When an event is sent,
it may appear to be sent by the chat itself rather than the specific user who sent it.
Sometimes these are called <strong>Auditorium Rooms</strong>.</li>
      </ul>
      <t>Depending on the system, a chat's type can be mutable. For example, a user may be permitted
to introduce new users to a group DM to implicitly convert it to a group chat, or they
simply may be unable to implicitly or explicity change the chat type.</t>
      <t><strong>Opponent Users</strong>: From the perspective of a client, the users other than the current
user in a chat. Typically, the current user of a client will be the one which is logged
in (and if a client supports multiple accounts, the active session within that client
instead).</t>
      <t><strong>Chat Name</strong>: The title or human-focused textually distinguishing factor for the chat. It
may be automatically generated based on the chat members.</t>
      <t><strong>Chat Avatar</strong>: A picture or graphic associated with the chat, usually in combination with
a chat name. Chat avatars can be automatically generated based on the chat members.</t>
      <t><strong>Chat Member</strong>: A joined user in the chat. Note that this may have implications on the
associated MLS Members in the MLS Group for the user's devices.</t>
      <t><strong>Event</strong>: The container for an encrypted MLS Message, sent over the wire between servers
and clients (through their local servers). Events have an <strong>Event ID</strong> to canonically
identify them at least within the chat.</t>
      <t><strong>Chat Property</strong>: Information stored in the chat, such as the name, topic, avatar, chat members,
etc. This may be in the shape of an event. Note that chat properties are different from
what is needed to construct an MLS Group Context.</t>
      <t><strong>Message</strong>: Synonymous with an MLS Message. Messages have a <strong>Message ID</strong> to canonically
identify them at least within the group. These are essentially what a user would call a
"message", though specifically the unencrypted portion. When encrypted, they are called events.</t>
      <t><strong>Server</strong>: Responsible for routing events to other servers and local clients. The collection
of servers and clients in a chat form the MLS Delivery Service (DS).</t>
      <t><strong>Hub Server</strong>: The specific server responsible for routing events to other servers in the
context of a chat. Sometimes this is shortened to <strong>Hub</strong>.</t>
      <t><strong>Owning Server</strong>: If applicable, the server specifically responsible for applying access
control to a chat. Typically, this will also be the hub server for the room. This should <em>not</em>
be shortened to "owner" to avoid confusion with other related concepts.</t>
      <t><strong>Client-Server API</strong>: The interface between a client and server. This may be nothing more
than a function call if the client and server are the same logical entity.</t>
      <t><strong>Server-Server API</strong>: The interface between a server and another server.</t>
      <t><strong>Transport</strong>: The method and format for moving information between entities. For example,
a Client-Server API might describe HTTPS and JSON as its transport. For added clarity,
documents should clarify which API surface they are defining a transport for ("Server-Server
Transport", for example).</t>
      <t><strong>Message Format</strong>: The specific format that clients use within the encrypted body of an
MLS Message. Sometimes this will also be called the <strong>Content Format</strong>.</t>
      <t><strong>Access Control</strong>: The set of algorithms which determine whether an event or MLS Message
is permitted in the chat/group. For instance, this may define whether an MLS Proposal
is accepted or whether the user is able to become a chat member.</t>
      <t><strong>Admin Permissions</strong>: Typically at least the user who created the chat, these permissions
grant the associated users an ability to change the permissions of other users in the chat.
The set of users with these permissions in a chat are called <strong>Admins</strong>. Admin permissions
inherit moderator permissions.</t>
      <t><strong>Moderator Permissions</strong>: These permissions grant the associated users an ability to kick,
ban, or otherwise restrict another user's ability to use the chat. For example, deleting
a spammer's events. The set of users with these permissions in a chat are called <strong>Moderators</strong>.</t>
      <t>Note that with both moderator permissions and admin permissions a system may have finer
granularity, such as a set of users being able to kick but not ban. Documents with these
semantics should clarify this case.</t>
      <t><strong>Invite</strong>: An action taken by a user in a chat to encourage another user to become a
chat member (or joined to the chat). This can be explicit through the server-server API,
or implicit with an invite link/join code.</t>
      <t><strong>Invite Link</strong>: An out-of-band invite for a user to join the chat, represented as a URL
or QR code.</t>
      <t><strong>Join Code</strong> or <strong>Join Password</strong>: A text-based string a user may enter to join a chat.
The string may be shared with the user verbatim or encoded with a QR code, for example.</t>
      <t><strong>Direct Invite</strong>: An invite to a DM or Group DM. These invites might appear in a different
section of the client's UI to denote their semantic difference from a non-DM invite.</t>
      <t><strong>Kick</strong>: An action taken by a user in a chat to remove another user, assuming the sender
has moderator permissions. The affected user can re-join the chat with either another invite
or by simply joining, depending on the chat type.</t>
      <t><strong>Ban</strong>: Similar to kicking, a user is kicked from the room and not allowed to re-join
until unbanned by a moderator. If a user is banned, they are typically not able to
knock to get back into the chat either.</t>
      <t><strong>Knock</strong>: A request from a user (who is not currently a chat member) to participate in the
chat. Upon acceptance, the requesting user may receive an invite or be directly joined to
the chat. Upon rejection, the requesting user can be banned or otherwise declined.</t>
      <t><strong>Status</strong>: Temporarily displayed text or images associated with a user's profile. Instagram
Stories are an example of a user's status.</t>
      <section anchor="diagram-reference">
        <name>Diagram Reference</name>
        <t>In the simplest possible form, interoperable messaging between two end users looks as such:</t>
        <figure anchor="fig-typical-arch">
          <name>Typical, simplified, architecture for interoperability</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="160" width="592" viewBox="0 0 592 160" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,96" fill="none" stroke="black"/>
                <path d="M 48,104 L 48,144" fill="none" stroke="black"/>
                <path d="M 96,32 L 96,96" fill="none" stroke="black"/>
                <path d="M 160,32 L 160,96" fill="none" stroke="black"/>
                <path d="M 264,32 L 264,96" fill="none" stroke="black"/>
                <path d="M 328,32 L 328,96" fill="none" stroke="black"/>
                <path d="M 432,32 L 432,96" fill="none" stroke="black"/>
                <path d="M 496,32 L 496,96" fill="none" stroke="black"/>
                <path d="M 544,104 L 544,144" fill="none" stroke="black"/>
                <path d="M 584,32 L 584,96" fill="none" stroke="black"/>
                <path d="M 8,32 L 96,32" fill="none" stroke="black"/>
                <path d="M 160,32 L 264,32" fill="none" stroke="black"/>
                <path d="M 328,32 L 432,32" fill="none" stroke="black"/>
                <path d="M 496,32 L 584,32" fill="none" stroke="black"/>
                <path d="M 104,64 L 152,64" fill="none" stroke="black"/>
                <path d="M 272,64 L 320,64" fill="none" stroke="black"/>
                <path d="M 440,64 L 488,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 96,96" fill="none" stroke="black"/>
                <path d="M 160,96 L 264,96" fill="none" stroke="black"/>
                <path d="M 328,96 L 432,96" fill="none" stroke="black"/>
                <path d="M 496,96 L 584,96" fill="none" stroke="black"/>
                <path d="M 48,144 L 544,144" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="552,104 540,98.4 540,109.6" fill="black" transform="rotate(270,544,104)"/>
                <polygon class="arrowhead" points="496,64 484,58.4 484,69.6" fill="black" transform="rotate(0,488,64)"/>
                <polygon class="arrowhead" points="448,64 436,58.4 436,69.6" fill="black" transform="rotate(180,440,64)"/>
                <polygon class="arrowhead" points="328,64 316,58.4 316,69.6" fill="black" transform="rotate(0,320,64)"/>
                <polygon class="arrowhead" points="280,64 268,58.4 268,69.6" fill="black" transform="rotate(180,272,64)"/>
                <polygon class="arrowhead" points="160,64 148,58.4 148,69.6" fill="black" transform="rotate(0,152,64)"/>
                <polygon class="arrowhead" points="112,64 100,58.4 100,69.6" fill="black" transform="rotate(180,104,64)"/>
                <polygon class="arrowhead" points="56,104 44,98.4 44,109.6" fill="black" transform="rotate(270,48,104)"/>
                <g class="text">
                  <text x="128" y="52">A</text>
                  <text x="296" y="52">B</text>
                  <text x="464" y="52">C</text>
                  <text x="44" y="68">Client</text>
                  <text x="80" y="68">1</text>
                  <text x="204" y="68">Provider</text>
                  <text x="248" y="68">1</text>
                  <text x="372" y="68">Provider</text>
                  <text x="416" y="68">2</text>
                  <text x="532" y="68">Client</text>
                  <text x="568" y="68">2</text>
                  <text x="296" y="132">D</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
+----------+       +------------+       +------------+       +----------+
|          |   A   |            |   B   |            |   C   |          |
| Client 1 |<----->| Provider 1 |<----->| Provider 2 |<----->| Client 2 |
|          |       |            |       |            |       |          |
+----------+       +------------+       +------------+       +----------+
     ^                                                             ^
     |                              D                              |
     +-------------------------------------------------------------+
]]></artwork>
          </artset>
        </figure>
        <t>In this figure, Client 1 is directly connected to Provider 1 over <tt>A</tt>. <tt>A</tt> is a
provider-specific Client-Server API and transport. Similarly, Client 2 is directly
connected to Provider 2 over <tt>C</tt>. <tt>C</tt> is also a provider-specific Client-Server API
and transport.</t>
        <t>Provider 1 and 2 talk to each other with a Server-Server API over a transport. This is <tt>B</tt>
in the figure.</t>
        <t>Clients additionally have an implicit method of communication (<tt>D</tt> in the figure) where
they use a shared Message Format. There is no transport for <tt>D</tt> in this figure: the figure
is denoting that servers/providers are unable to assist with a format conversion due
to the event's content (an MLS message) being encrypted.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>Normative References</name>
      <reference anchor="I-D.ietf-mls-protocol">
        <front>
          <title>The Messaging Layer Security (MLS) Protocol</title>
          <author fullname="Richard Barnes" initials="R." surname="Barnes">
            <organization>Cisco</organization>
          </author>
          <author fullname="Benjamin Beurdouche" initials="B." surname="Beurdouche">
            <organization>Inria &amp; Mozilla</organization>
          </author>
          <author fullname="Raphael Robert" initials="R." surname="Robert">
            <organization>Phoenix R&amp;D</organization>
          </author>
          <author fullname="Jon Millican" initials="J." surname="Millican">
            <organization>Meta Platforms</organization>
          </author>
          <author fullname="Emad Omara" initials="E." surname="Omara">
            <organization>Google</organization>
          </author>
          <author fullname="Katriel Cohn-Gordon" initials="K." surname="Cohn-Gordon">
            <organization>University of Oxford</organization>
          </author>
          <date day="27" month="March" year="2023"/>
          <abstract>
            <t>   Messaging applications are increasingly making use of end-to-end
   security mechanisms to ensure that messages are only accessible to
   the communicating endpoints, and not to any servers involved in
   delivering messages.  Establishing keys to provide such protections
   is challenging for group chat settings, in which more than two
   clients need to agree on a key but may not be online at the same
   time.  In this document, we specify a key establishment protocol that
   provides efficient asynchronous group key establishment with forward
   secrecy and post-compromise security for groups in size ranging from
   two to thousands.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-mls-protocol-20"/>
      </reference>
      <reference anchor="I-D.ietf-mls-architecture">
        <front>
          <title>The Messaging Layer Security (MLS) Architecture</title>
          <author fullname="Benjamin Beurdouche" initials="B." surname="Beurdouche">
            <organization>Inria &amp; Mozilla</organization>
          </author>
          <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
            <organization>Mozilla</organization>
          </author>
          <author fullname="Emad Omara" initials="E." surname="Omara">
            <organization>Google</organization>
          </author>
          <author fullname="Srinivas Inguva" initials="S." surname="Inguva">
            <organization>Twitter</organization>
          </author>
          <author fullname="Alan Duric" initials="A." surname="Duric">
            <organization>Wire</organization>
          </author>
          <date day="16" month="December" year="2022"/>
          <abstract>
            <t>   The Messaging Layer Security (MLS) protocol (I-D.ietf-mls-protocol)
   specification has the role of defining a Group Key Agreement
   protocol, including all the cryptographic operations and
   serialization/deserialization functions necessary for scalable and
   secure group messaging.  The MLS protocol is meant to protect against
   eavesdropping, tampering, message forgery, and provide further
   properties such as Forward Secrecy (FS) and Post-Compromise Security
   (PCS) in the case of past or future device compromises.

   This document describes a general secure group messaging
   infrastructure and its security goals.  It provides guidance on
   building a group messaging system and discusses security and privacy
   tradeoffs offered by multiple security mechanisms that are part of
   the MLS protocol (e.g., frequency of public encryption key rotation).

   The document also provides guidance for parts of the infrastructure
   that are not standardized by the MLS Protocol document and left to
   the application or the infrastructure architects to design.

   While the recommendations of this document are not mandatory to
   follow in order to interoperate at the protocol level, they affect
   the overall security guarantees that are achieved by a messaging
   application.  This is especially true in case of active adversaries
   that are able to compromise clients, the delivery service, or the
   authentication service.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-mls-architecture-10"/>
      </reference>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
