Conversations (software)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Conversations
Logo
Developer(s) Daniel Gultsch
Initial release 2014; 4 years ago (2014)
Stable release 2.2.5 (July 6, 2018; 15 days ago (2018-07-06)[1]) [±]
Preview release 2.2.0 (May 1, 2018; 2 months ago (2018-05-01)[2]) [±]
Repository Edit this at Wikidata
Written in Java
Operating system Android 4.4 or later
Size 7.4 MB
Type instant messaging
Licence GPL (free software)
Website conversations.im
Conversations (software) Screenshot

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).

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). The software can be installed either free of charge (or rather donation-based) from F-Droid or against a fee from the Google Play store. Google counted over 50,000 installations as of 2018.[4]

History[edit]

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][self-published source?][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).

Functionality[edit]

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][self-published source?]

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[edit]

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

  • 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[edit]

References[edit]

  1. ^ Daniel Gultsch (28 April 2018). "History for CHANGELOG.md". GitHub. Retrieved 7 May 2018. 
  2. ^ Daniel Gultsch (1 May 2018). "History for CHANGELOG.md". GitHub. Retrieved 7 May 2018. 
  3. ^ a b 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. ^ a b Ehlert, David (2014-03-25). "Conversations – WhatsApp Alternative #9: XMPP im Google Style" (in German). N-Droid Magazin. Retrieved 2016-01-19. 
  9. ^ F-Droid maintainers (2014-04-13). "eu.siacs.conversations". F-Droid wiki (Wiki). Retrieved 2016-01-19. 
  10. ^ a b Thom, Daniel (2014-05-14). "Update zum Beitrag: Conversations: Neuer Jabber/XMPP Client für Android". Netbunker (Blog) (in German). 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. 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. ^ "Conversations/docs/XEPs.md". GitHub. September 18, 2016. p. 1. Retrieved January 6, 2017. 

External links[edit]