Internet DRAFT - draft-rosenberg-mimi-taxonomy

draft-rosenberg-mimi-taxonomy







Mimi                                                        J. Rosenberg
Internet-Draft                                                     Five9
Intended status: Standards Track                         23 October 2022
Expires: 26 April 2023


              A Taxonomy for More Messaging Interop (MIMI)
                    draft-rosenberg-mimi-taxonomy-00

Abstract

   This document introduces a taxonomy and use cases for More Messaging
   Interop (mimi).  This taxonomy includes how users initiate messaging,
   how recipients receive initial messages, and so on.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on 26 April 2023.

Copyright Notice

   Copyright (c) 2022 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (https://trustee.ietf.org/
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components
   extracted from this document must include Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.






Rosenberg                 Expires 26 April 2023                 [Page 1]

Internet-Draft                MIMI Taxonomy                 October 2022


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Initiator Knowledge . . . . . . . . . . . . . . . . . . . . .   2
   3.  Recipient Approval  . . . . . . . . . . . . . . . . . . . . .   4
   4.  Identity Conveyance . . . . . . . . . . . . . . . . . . . . .   5
   5.  Federation Model  . . . . . . . . . . . . . . . . . . . . . .   6
   6.  SII Type  . . . . . . . . . . . . . . . . . . . . . . . . . .   6
   7.  Normative References  . . . . . . . . . . . . . . . . . . . .   7
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   The More Instant Messaging Interoperability (MIMI) working group will
   specify the minimal set of mechanisms required to make modern
   Internet messaging applications interoperable.  Over time, messaging
   applications have achieved widespread use, their feature sets have
   broadened, and their adoption of end-to-end encryption (E2EE) has
   grown, but the lack of interoperability between these services
   continues to create a suboptimal user experience.  The standards
   produced by the MIMI working group will allow for E2EE messaging
   applications for both consumer and enterprise to interoperate without
   undermining the security guarantees that they provide.

   There are many decisions that need to be made about how such
   interoperability will be provided.  These include how users
   initiating communications will find and/or identify users they wish
   to communicate with, how recipients will receive initial
   communications, whether the communications services envisioned by
   MIMI are bilateral or multilateral, and so on.  This document
   provides a taxonomy and outlines the solution space of decisions that
   will need to be taken.  It is meant as an informative document to aid
   in discussions and decision making.

2.  Initiator Knowledge

   In the most basic case for mimi, there is one user (the initiator)
   that wishes to send a message to another user (the recipient).  This
   can be a basic 1-1 messaging session, or it can be that the initiator
   is part of a group chat, and wishes to add the recipient to the group
   chat.

   Initiating communications requires the initiator to know something
   about the recipient, which is used to target the communications to
   that recipient.  There are a finite set of things that the initiator
   is required to know in order to initiate communications, and this
   forms one dimension of taxonomization for mimi - initiator knowledge.




Rosenberg                 Expires 26 April 2023                 [Page 2]

Internet-Draft                MIMI Taxonomy                 October 2022


   *  Unique, Service Independent Identifier (SII): In this case, the
      initiator has an identifier for the recipient, but that identifier
      is independent of any specific communications service.  There are
      two specific identifiers in this case - a mobile phone number, or
      an email address.  For this use case to function, the recipient
      must be using a communications service that links users to this
      SII.  This would be the case for communications services which
      require users to verify their mobile numbers or email addresses
      during the sign up process, even if those services don't actually
      use them for communications.

   *  Unique, Service Specific Identifier (SSI): In this case, the
      intitiator has two linked pieces of knowledge - they know the
      communications service used by the recipient, and they also know
      an identifier for the recipient on that service.  In some
      services, the identifier is not globally unique across services.
      Examples of this case are Wire, Twitter and Skype, where user
      handles are flat - @jdrosen2 on Twitter, for example.  In some
      services, the identifier is globally unique, and corresponds to
      the email address or mobile phone number for the recipient.
      Examples of this case are WhatsApp, iMessage, and Facetime.

   *  Non-Unique, Personally Identifying Information (PII): In this
      case, the initiator doesnt have a specific identity for the
      recipient, but they know something about them and use that
      information to perform a search.  Typically this would be the
      first name and/or last name of the recipient.  The search would
      provide a list of possible matches, along with additional
      information, such as display names and avatars, which help the
      initiator find the specific person to which communications is
      desired.

   Mimi support for these different use cases comes with different pros
   and cons.

















Rosenberg                 Expires 26 April 2023                 [Page 3]

Internet-Draft                MIMI Taxonomy                 October 2022


   The SSI case has the benefit that it enables interop with
   communications services, such as Wire, that dont retain email address
   or mobile phone numbers for users.  However, it has a drawback that
   is requires the user to know, in advance, what communications service
   the recipient is using.  In cases where the identifier is a phone
   number or email address, it is unlikely that the initiator will know
   this information.  A common use case is for the initiator to be on
   their mobile phone, using their mobile phone's native messaging
   function - iMessage on iPhone, Android Messages on Android - and wish
   to send a message to another user.  In this case, today this use
   cases requires the initiator to only know the mobile number of the
   recipient.  In other words, today's native mobile messaging
   experiences are SII based.  If we want the mimi solution to work
   seamlessly with the user experiences mobile users already have, then
   SII is required.

   The PII solution has the obvious benefit of enabling user's to find
   each other with limited information, without requiring knowledge of
   an identifier.  However, inter-domain search is fraught with privacy
   and security problems.

   It is helpful to understand which of these modes are used in some of
   the more popular consumer messaging applications:

   Service                 Initiator Knowledge

   iMessage                SII (mobile number, email)
   RCS/SMS                 SII (mobile number)
   WhatsApp                SII (mobile number)
   Facebook Messenger      PII (Facebook graph search)
   Twitter DM              SSI (twitter handle)
   KaokaoTalk              SSI (KaokaoTalk) and SII (mobile number)

3.  Recipient Approval

   Another aspect of the solution considers the experience of the
   recipient.  Does the recipient need to approve the communications, or
   do they just receive it?

   The solution space for this is finite:

   *  No Approvals: The recipient doesnt need to approve anything.  For
      a 1-1 message, the message will show up.  For group
      communications, the recipient would be added to the group.

   *  Approval, no User Content: The recipient needs to approve the
      initiator communications.  To reduce the likelihood of becoming a
      spam vector, no user generated content is shown to the recipient.



Rosenberg                 Expires 26 April 2023                 [Page 4]

Internet-Draft                MIMI Taxonomy                 October 2022


      For 1-1 messages, the recipient would see something like, "Alice
      Alexander wishes to send you a message, do you approve?".  For
      group messages, the recipient would see something like, "Alice
      Alexander wishes to add you to group chat.  Do you approve?".
      Only after approving, the recipient receives the message, or is
      added to the group.  Note that group names count as user generated
      content, so when approving group addition, the user would not be
      shown the group name.

   *  Approval, with User Content: The recipient needs to approve the
      initiator communications, but to help them make a decision,
      initiator-generated content is shared.  This would include some or
      all of the message content for a 1-1 message, and for addition to
      a group chat, would contain the name of the group.

   The choice for recipient approval is somewhat intertwined with the
   question on identity conveyance, as discussed in the next section.

4.  Identity Conveyance

   When the recipient receives the message or group chat addition from
   the initiatior, they will see some information about the identity of
   the initiator.  There are many options for what can be done:

   *  SII Only: In this case, the only thing seen by the recipient is
      the SII - the mobile number or email address.  Whether the
      recipient can trust this information is a separate matter, and is
      yet another dimension of the solution.  Independently of trust,
      using SII as an identifier means that the identifier can be
      matched against the recipient address book, and use any matches to
      render a trusted display name.

   *  SSI Only: In this case, the recipient sees the name of the service
      provider of the initiatior, along with their handle within that
      service.  This identity will not generally be matchable against
      the local address book of the recipient.

   *  SSI (or SII) with Display Name: In this case, the recipient sees
      the identifier of the sender, but also sees a display name that is
      provided by the originating provider.  This assumes that the
      originating provider can be trusted to ascertain and provide this
      display name.  If the display name is entered by the user and
      never verified, it doesnt count as a display name and instead is
      considered user generated content per the "recipient approval"
      dimension described above.






Rosenberg                 Expires 26 April 2023                 [Page 5]

Internet-Draft                MIMI Taxonomy                 October 2022


   Identity conveyance is intertwined with the question of recipient
   approval.  If the system is based on Approval, no User Content - the
   safest choice to reduce spam - then the only way in which the
   recipient can make a decision is based on the identity of the sender.
   If there is no useful information about the sender, it is difficult
   for the recipient to make a decision.  SSI Only provides the least
   information.  SII is a significant improvement, largely due to the
   possible match against the address book.  SII with display name is
   better still, but depends on the ability of the display name to be
   trusted.

5.  Federation Model

   The mimi solution can be built on one of several federation models:

   *  Open: In the open model, service provider interconnection is open.
      Any provider can communicate with any other provider.  No prior
      arrangements are needed, and mimi facilitates any discovery or
      bootstrapping needed.  This is how email works today.

   *  Bilateral: On the opposite end of the spectrum is bilateral
      communications.  In this model, each provider makes an independent
      decision about which other providers it interconnects with.  A new
      provider must approach each and every other provider, requesting
      interconnection.  The overall interconnection is the union of the
      bilateral arrangements.

   *  Multilateral: Halfway between the extremes of bilateral and open,
      is multilateral.  In this model, there is some kind of forum the
      providers can elect to join, or not join.  The forum imposes
      community defined standards for entry - perhaps on size of user
      base, adherance to spam standards, and so on.  Once a provider is
      a member of the forum, they can interconnect with any other
      member.  This is how the telephone network works today.

6.  SII Type

   There are only two SII types - email addresses and phone numbers.
   The choice about whether to support one, the other, or both, has many
   considerations.

   Phone numbers have the property that they are finite, whereas email
   addresses are infinite in supply.  This is relevant when considering
   spam.  When an identifier space is finite, it is much easier to
   introduce blacklists for blocking communications.  When the
   identifier space is infinite, bad actors can mint new addresses,
   bypassing blacklists.  Whitelist-based systems are unaffected by
   this.



Rosenberg                 Expires 26 April 2023                 [Page 6]

Internet-Draft                MIMI Taxonomy                 October 2022


   Email addresses contain user-identifying information within their
   structure.  An email address like "joesmith23@aol.com" indicates that
   this user might be named Joe Smith.  When recipient approval is
   without user content, and there is no display name in the identity
   conveyance, the only information present is the SII itself.  If the
   SII is not matched to the address book, the email address can provide
   some clue about who the user is.  Phone numbers, on the other hand,
   do not provide any such information.  This is a dual-edged sword.
   While it may help users in making decisions on whether to approve
   communications, it can also be used as a source of spam.  Consider a
   malicious initiator that knows that the recipient has a friend named
   "Joe Smith".  The malicious initiator could mint email addresses like
   "joesmith4@gmail.com", and attempt communications.  If rejected, they
   can try again with yet another email address -
   "joesmith87@gmail.com", and try again.

   Phone numbers have the property that they are not free to obtain.
   Email addresses are free to obtain.  Identifiers which cost money,
   increase the expense required to use them as a source of spam.  This
   argues in favor of mobile numbers.  Of course, these costs continue
   to decline, but they remain non-zero.  The finite supply of numbers
   also means that they are unlikely to ever go to zero.

7.  Normative References

   [I-D.ietf-mls-architecture]
              Beurdouche, B., Rescorla, E., Omara, E., Inguva, S., Kwon,
              A., and A. Duric, "The Messaging Layer Security (MLS)
              Architecture", Work in Progress, Internet-Draft, draft-
              ietf-mls-architecture-09, 19 August 2022,
              <https://www.ietf.org/archive/id/draft-ietf-mls-
              architecture-09.txt>.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

Author's Address

   Jonathan Rosenberg
   Five9
   Email: jdrosen@jdrosen.net








Rosenberg                 Expires 26 April 2023                 [Page 7]