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, . [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . Author's Address Jonathan Rosenberg Five9 Email: jdrosen@jdrosen.net Rosenberg Expires 26 April 2023 [Page 7]