Conversations (software)

Conversations is a free instant messaging client for Android. It supports the exchange of encrypted text and picture messages. It is largely based on accepted open standards like the Extensible Messaging and Presence Protocol (XMPP) and Transport Layer Security (TLS).

Conversations
Developer(s)Daniel Gultsch
Initial release2014 (2014)
Stable release2.8.2 (May 6, 2020 (2020-05-06)[1]) [±]
Preview release2.8.4 (May 21, 2020 (2020-05-21)[2]) [±]
Repository
Written inJava
Operating systemAndroid 4.1 or later
Size~11 MB
Typeinstant messaging
LicenceGPL (free software)
Websiteconversations.im
Conversations (software) Screenshot

Development is focused on secure communication and implementation of XMPP extensions that are important for mobile usage. Specialist publications praised the decentralized and open transmission network and simple, intuitive usage with a workflow that is familiar from other applications. It is regarded as a serious attempt to improve the usability of XMPP-based messaging to a competitive level.[3]

The source code of the software is managed on GitHub and governed by the terms of version 3 of the GNU General Public License (GPL). Conversations can be installed from F-Droid in exchange for a donation, from the Google Play store for a small fee. Google counted over 100,000 installations as of 2020.[4]

History

On 24 January 2014, first code was submitted to the public repository.[5] The first official version 0.1 was published on 24 March 2014[6] when encrypted messengers for mobile devices gained a lot of popularity in the wake of the Snowden disclosures (June 2013–) and Facebook's acquisition of WhatsApp (February 2014).[7] It soon garnered some positive reviews.[3][8] In spring 2014 it was included into Google Play and starting with version 0.1.3 from 6 April 2014 into the alternative Android software repository F-Droid.[9] Since version 0.2 from 12 May picture messages (file transfers, as plain-text data or OpenPGP-encrypted) are supported, as of version 0.4 (June 30) also OTR-encrypted.[10][11] Version 1.0 followed on 1 February 2015.[12] Andreas Straub participated in the Google Summer of Code 2015 on behalf of Conversations.[13][14] This produced drafts for a new end-to-end encryption standard (OMEMO) that were submitted to the XMPP Standards Foundation (XSF) for standardisation.[15][16] In October 2015 the ChatSecure project announced that it is going to base the Android version of its messenger on the Conversations core and to be working on an iOS implementation of OMEMO.[17]

On March 23, 2018, Conversations 2.0.0 was published. This version removed support for OTR encryption and enabled OMEMO by default (except in public MUCs).

Version 2.3.0 which was published in September 2018 introduced support for TLS 1.3.

During a presentation at a security conference in October 2018 the German Federal Police announced that they will be using Conversations on their mobile phones for internal communications.[18]

Version 2.8.0, published in late April 2020 introduced support for Audio/Video calls via Jingle.

Functionality

Conversations provides native support (i.e. without plugin) for end-to-end encryption (E2E) as well as point-to-point encryption. Conversations talks to XMPP servers using Transport Layer Security (TLS) and for E2E encryption there are OpenPGP and OMEMO to choose from.

It allows several clients/devices to be signed into one account simultaneously (using XMPP) and also delivering messages to several clients (synchronization) using the protocol extension "Message Carbons" (XEP-0280) and Axolotl encryption.

The design of the user interface strongly reminds of the Gmail app and Google+ Hangouts.[8] Files can be sent, with optional encryption. Sent images are shown inline with text messages in the conversation view.[10]

Being an XMPP client, Conversations inherently provides interoperability with other XMPP (client) software and isn't bound to server infrastructure of the manufacturer either.

  • Multi-User Chat (MUC)
  • Optional address book integration
  • support for multiple user accounts/addresses

Overview of implemented XEPs

Conversations masters the following XEP's, short for XMPP Extension Protocol, the official extensions of the XMPP protocol:[19]

  • XEP-0027: Current Jabber OpenPGP Usage
  • XEP-0030: Service Discovery
  • XEP-0045: Multi-User Chat (MUC)
  • XEP-0048: Bookmarks
  • XEP-0084: User Avatar
  • XEP-0085: Chat State Notifications
  • XEP-0092: Software Version
  • XEP-0115: Entity Capabilities
  • XEP-0163: Personal Eventing Protocol for avatars and nicknames
  • XEP-0166: Jingle (file transfer only)
  • XEP-0172: User Nickname
  • XEP-0184: Message Delivery Receipts (reply only)
  • XEP-0191: Blocking command
  • XEP-0198: Stream Management
  • XEP-0199: XMPP Ping
  • XEP-0234: Jingle File Transfer
  • XEP-0237: Roster Versioning
  • XEP-0245: The /me Command
  • XEP-0249: Direct MUC Invitations (reception only)
  • XEP-0260: Jingle SOCKS5 Bytestreams Transport Method
  • XEP-0261: Jingle In-Band Bytestreams Transport Method
  • XEP-0280: Message Carbons (syncing)
  • XEP-0308: Last Message Correction
  • XEP-0313: Message Archive Management (logs stored on server)
  • XEP-0319: Last User Interaction in Presence
  • XEP-0333: Chat Markers
  • XEP-0352: Client State Indication
  • XEP-0357: Push Notifications
  • XEP-0363: HTTP File Upload
  • XEP-0368: SRV records for XMPP over TLS
  • XEP-0377: Spam Reporting
  • XEP-0384: OMEMO Encryption

See also

  • Comparison of instant messaging clients
  • Comparison of XMPP clients

References

  1. "Conversations (Jabber / XMPP) - Apps on Google Play". play.google.com.
  2. Daniel Gultsch (2019-04-26). "History for CHANGELOG.md". GitHub. Retrieved 2019-04-26.
  3. Hilzinger, Marcel (2014-05-15). "Conversation: OpenSource Instant-Messenger im Holo-Design und mit Ende-zu-Ende-Verschlüsselung". Android User (in German). Retrieved 2016-01-19.
  4. Gultsch, Daniel. "Conversations (Jabber / XMPP)". Google Play. Google Inc. Retrieved 2018-04-22.
  5. Gultsch, Daniel (2014-01-24). "initial commit". GitHub. Conversations. Retrieved 2016-01-19.
  6. Gultsch, Daniel (2014-03-24). "Release 0.1". GitHub. Conversations. Retrieved 2016-01-19.
  7. Frosch, Tilman; Mainka, Christian; Bader, Christoph; Bergsma, Florian; Schwenk, Jörg; Holz, Thorsten. "How Secure is TextSecure?" (PDF). Cryptology ePrint Archive. Horst Görtz Institute for IT Security, Ruhr University Bochum.
  8. Ehlert, David (2014-03-25). "Conversations – WhatsApp Alternative #9: XMPP im Google Style" (in German). N-Droid Magazin. Archived from the original on 2016-01-19. Retrieved 2016-01-19.
  9. F-Droid maintainers (2014-04-13). "eu.siacs.conversations". F-Droid wiki (Wiki). Retrieved 2016-01-19.
  10. Thom, Daniel (2014-05-14). "Update zum Beitrag: Conversations: Neuer Jabber/XMPP Client für Android". Netbunker (Blog) (in German). Archived from the original on 2016-01-21. Retrieved 2016-01-20.
  11. Gultsch, Daniel. "Changelog". GitHub. Conversations. Retrieved 2016-01-20.
  12. Gultsch, Daniel (2015-02-01). "Release 1.0". GitHub. Conversations. Retrieved 2016-01-19.
  13. "Summer of Code 2015". XMPP Wiki (Wiki). Retrieved 2016-01-19.
  14. "Project details: Axolotl support for Conversations". Google Summer of Code 2015 site. Retrieved 2016-01-19.
  15. Straub, Andreas (25 October 2015). "OMEMO Encryption". XMPP Standards Foundation website. Archived from the original on 29 January 2016. Retrieved 4 January 2016.
  16. Gultsch, Daniel (2 September 2015). "OMEMO Encrypted Jingle File Transfer". XMPP Standards Foundation website. Retrieved 4 January 2016.
  17. Ballinger, Chris (2015-10-02). "ChatSecure, Conversations and Zom". ChatSecure blog (Blog). ChatSecure. Retrieved 2016-01-19.
  18. Stefan Hollensteiner, Thomas Aster (2018-10-10). "Mobile Endgeräte der Bundespolizei in einer sicheren Betriebsumgebung". IT SA (in German). IT-SA. Retrieved 2019-12-09.
  19. "Conversations/docs/XEPs.md". GitHub. September 18, 2016. p. 1. Retrieved January 6, 2017.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.