Comparison of instant messaging protocols

The following is a comparison of instant messaging protocols. It contains basic general information about the protocols.

Table of instant messaging protocols

Protocol Creator First public release date License Identity (not inc. alias) Asynchronous message relaying Transport Layer Security End-to-end encryption Unlimited number of contacts Bulletins to all contacts One-to-many routing 4 Spam protection Group, channel or conference support Audio/VoIP support Webcam/Video Batch file sharing Media synchronisation Serverless 6 (decentralized) Protocol
Bitmessage Jonathan Warren 2012 Nov Open standard Alphanumeric address Yes Yes Yes Yes No Yes Yes (through proof-of-work) Yes No No Yes No Yes Bitmessage
Bonjour Apple Inc. 2002 August Proprietary Freeware; portions under the Apache license Username No No No Yes No multicast Medium No No No Yes No Yes Bonjour
Briar Briarproject.org 2018 May 9 Open standard Public & Private key (via QR Codes) Yes Yes Yes Yes Yes Yes Yes Yes No No No No Yes Briar
Gadu-Gadu GG Network 2000 Jul 17 Proprietary Unique number
e.g. 12345678
Yes Yes No Yes No Centralistic Yes 5 (simple) Yes Yes Yes Yes No No Gadu-Gadu
IRC Jarkko Oikarinen 1988 Aug Open standard Nickname!Username@hostname
(or "hostmask")
e.g. user!~usr@a.b.com1
Yes, but via a memo system that differs from the main system Yes, depending on individual server support OTR by DM to client-to-client only No3 No Simplistic multicast Medium Yes (everyone, multiple simultaneous, any size) No No Yes No No IRC
Echo spot-on.sf.net / goldbug.sf.net 2013 Open standard Key Yes Yes, optional Yes Yes Yes Yes Yes Yes No No Yes Yes Yes Echo
Matrix Matrix.org 2014 Sep[1] Open standard Matrix user ID (MXID) Yes Yes, mandatory Yes, default for private conversations[2] Yes Yes Yes Yes (using pluggable server-side filtering modules) Yes Yes Yes Yes Yes Yes Matrix
MSNP (Windows Live Messenger, etc.) Microsoft 1999 Jul Proprietary Email address (Microsoft account) Yes No No Only for certified robots No Centralistic Yes Yes Yes Yes Yes Yes No MSNP (Windows Live Messenger, etc.)
MTProto (Telegram) Telegram Messenger LLP 2013 Aug Open standard Phone number (e.g. +1234567890), nickname (e.g. @example) Yes Yes No end-to-end encryption for group chats on any client. No end-to-end encrypted one-on-one chats on desktop clients Yes No Yes Yes, contact blocking Yes Yes[3] No Yes Yes No MTProto (Telegram)
Mumble Thorvald Natvig 1999 Jul Open standard Username Yes Yes No Only for certified robots No Centralistic Yes Yes Yes No Yes No No Mumble
OSCAR (AIM, ICQ) AOL 1997 Proprietary (Discontinued 15-Dec-2017)[4] Username, Email Address or UIN
e.g. 12345678
Yes Yes (Aim Pro, Aim Lite) No No No Centralistic client-based Yes (Multiple, simultaneous) Yes Yes Yes No No OSCAR (AIM, ICQ)
RVP (Windows Messenger, etc.) Microsoft 1997 Mar Proprietary (Discontinued) Windows Active Directory Login No No No ? No Centralistic None No ? ? No No No RVP (Windows Messenger, etc.)
Ricochet Invisible.im 2014 Mar Open standard Tor onion address Yes Yes Yes Yes No Yes Yes Yes No No Yes No Yes Ricochet
Jami (based on DHT and SIP) Savoir-faire Linux Inc. 2015 May Open standard 40-digit address Yes Yes Yes Yes No Yes Medium Yes Yes Yes Yes No Yes Jami (based on DHT and SIP)
Signal Protocol Signal Messenger 2014 Feb[5] Open standard Phone number (e.g. +1234567890) Yes Yes Yes Yes ? Yes Yes, contact blocking Yes Yes Yes Yes Yes No Signal Protocol
SIP/SIMPLE IETF 1996 Open standard user@hostname Yes Yes Optional Yes Yes No Medium ? Yes Yes Yes No Depends on implemenation SIP/SIMPLE
Skype Skype 2003 Aug Proprietary Username Yes Proprietary No No No Centralistic client-based Yes Yes Yes Yes No No Skype
Steam Friends Valve 2003 Sep 12 Proprietary SteamID/Username or Unique Number Yes Proprietary ? No, although rising Yes ? No Yes Yes No No No No Steam Friends
TOC2 AOL 2005 Sep Proprietary (Discontinued) Username or UIN
e.g. 12345678
Yes No No No No Centralistic No paying members only ? ? Partial ? No TOC2
TOX (based on DHT) irungentoo (github user) 2013 June Open standard Public & Private key Yes Yes Yes Yes Yes ? Yes Yes Yes Yes Yes ? Yes TOX (based on DHT)
Tuenti Tuenti 2006 Proprietary Username Yes Yes No Yes ? Yes Yes Yes Yes Yes Yes ? No Tuenti
Windows Messenger service Microsoft 1990 Proprietary (Discontinued) NetBIOS Yes No No Yes Yes Yes No No No No No No No Windows Messenger service
XMPP Jeremie Miller, standardized via IETF 1999 Jan Open standard Jabber ID (JID)
e.g. usr@a.b.c/home2
Yes Yes Optional[6][7][8] Yes Yes Yes[9][10] Yes[11][12][13] Yes[9] Yes, via Jingle Yes, via Jingle Yes Yes[14] Optional[15] XMPP
YMSG (Yahoo! Messenger) Yahoo! 1998, March 9 Proprietary Username Yes No No No Yes Centralistic Yes Yes Yes Yes Yes No No YMSG (Yahoo! Messenger)
Zephyr Notification Service MIT 1987 Open standard Kerberos principal
e.g. user@ATHENA.MIT.EDU
Yes No No Yes Yes Yes No Yes No No No No No Zephyr Notification Service
SMS/MMS/EMS/Call Friedhelm Hillebrand 1985 Proprietary Phone number (e.g. +1234567890) Yes No No About 250 contacts in SIM, unlimited from phone. No serial messages Medium No Yes No No No ? SMS
Protocol Creator First public release date License Identity (not inc. alias) Asynchronous message relaying Transport Layer Security End-to-end encryption Unlimited number of contacts Bulletins to all contacts One-to-many routing 4 Spam protection Group, channel or conference support Audio/VoIP support Webcam/Video Batch file sharing Media synchronisation Serverless 6 (decentralized) Protocol

Note 1: In ~usr@a.b.com, the a.b.com part is known as the "hostmask" and can either be the server being connected from or a "cloak" granted by the server administrator; a more realistic example is ~myname@myisp.example.com. The tilde generally indicates that the username provided by the IRC client on signon was not verified with the ident service.

Note 2: In usr@a.b.c/home, the home part is a "resource", which distinguishes the same user when logged in from multiple locations, possibly simultaneously; a more realistic example is user@xmppserver.example.com/home

Note 3: Scalability issue: The protocol gets increasingly inefficient with the number of contacts.[16][17]

Note 4: One-to-many/many-to-many communications primarily comprise presence information, publish/subscribe and groupchat distribution. Some technologies have the ability to distribute data by multicast, avoiding bottlenecks on the sending side caused by the number of recipients. Efficient distribution of presence is currently however a technological scalability issue for both XMPP and SIP/SIMPLE.

Note 5: There have been reports from users that the antispam filter is used to censor links to other IM programs and some websites.

Note 6: Serverless protocols don't have any central entities (usually companies) controlling the network. Serverless network consists only of clients. Such systems are usually extremely resistant to surveillance and censorship.


gollark: Idea: a spam filter which replies with fake messages such that spammers never know if they are talking to a real person.
gollark: Æ.
gollark: +>strlen \🦎
gollark: Cease apioformicity.
gollark: I didn't do that, apipsosidasdaidoasfioasghauihuriasrasf.

See also

References

  1. Ermoshina, Ksenia; Musiani, Francesca; Halpin, Harry (September 2016). "End-to-End Encrypted Messaging Protocols: An Overview". In Bagnoli, Franco; et al. (eds.). Internet Science. INSCI 2016. Florence, Italy: Springer. pp. 244–254. doi:10.1007/978-3-319-45982-0_22. ISBN 978-3-319-45982-0.
  2. "Cross-signing and End-to-end Encryption by Default is HERE!!!". Matrix.org. Retrieved 2020-05-08.
  3. https://telegram.org/blog/calls
  4. https://aimemories.tumblr.com/post/166091776077/aimemories
  5. Marlinspike, Moxie (24 February 2014). "The New TextSecure: Privacy Beyond SMS". Open Whisper Systems. Retrieved 12 December 2015.
  6. "XEP-0027: Current Jabber OpenPGP Usage". xmpp.org. 2014-03-14. Retrieved 2020-03-09.
  7. "XEP-0373: OpenPGP for XMPP". xmpp.org. 2018-07-30. Retrieved 2020-03-09.
  8. "XEP-0384: OMEMO Encryption". xmpp.org. 2018-07-31. Retrieved 2020-03-09.
  9. "XEP-0045: Multi-User Chat". xmpp.org. 2019-05-15. Retrieved 2020-03-09.
  10. "XEP-0060: Publish-Subscribe". xmpp.org. 2019-10-06. Retrieved 2020-03-09.
  11. "Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence". xmpp.org. March 2011. Retrieved 2020-03-09.
  12. "XEP-0159: Spim-Blocking Control". xmpp.org. 2006-07-11. Retrieved 2020-03-09.
  13. "XEP-0161: Abuse Reporting". xmpp.org. 2007-05-06. Retrieved 2020-03-09.
  14. "XEP-0280: Message Carbons". xmpp.org. 2017-02-16. Retrieved 13 December 2018.
  15. "XEP-0174: Serverless Messaging". xmpp.org. 26 November 2008. Retrieved 1 November 2017.
  16. RFC 1324, D. Reed, 1992. 2.5.1, Size
  17. Functionality provided by systems for synchronous conferencing, C.v. Loesch, 1992. 1.2.1 Growth
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.