Element (software)

Last updated

Element
Other names
  • Riot (2016–2020)
  • Vector [1] [2] (2016)
Original author(s) Vector Creations Limited [1]
Developer(s) New Vector Limited [3] trading as Element
Initial releaseJuly 2016 (Beta)
Stable release(s)
Android1.6.6 [4]   OOjs UI icon edit-ltr-progressive.svg / 5 October 2023
iOS1.11.0 [5]   OOjs UI icon edit-ltr-progressive.svg / 15 August 2023
Linux1.11.47 [6]   OOjs UI icon edit-ltr-progressive.svg / 24 October 2023
macOS1.11.47 [6]   OOjs UI icon edit-ltr-progressive.svg / 24 October 2023
Windows1.11.47 [6]   OOjs UI icon edit-ltr-progressive.svg / 24 October 2023
Web1.11.47 [7]   OOjs UI icon edit-ltr-progressive.svg / 24 October 2023
Repository
Written in JavaScript, Objective-C, Swift, Java, Kotlin
Platform Windows, macOS, Linux, Android, iOS, Web platform
Available in25 languages [8]
List of languages
Basque, Bengali, Bulgarian, Chinese (Simplified), Chinese (Traditional), Czech, Dutch, English (UK), English (US), Esperanto, Finnish, French, German, Hungarian, Italian, Korean, Latvian, Norwegian, Polish, Portuguese (Brazil), Romanian, Russian, Serbian, Slovak, Spanish, Swedish
Type VoIP communications, instant messaging, Videoconferences, [9] social media, and other App Integrations
License Apache-2.0 [10]
Website element.io

Element (formerly Riot and Vector [11] ) is a free and open-source software instant messaging client implementing the Matrix protocol. [12]

Contents

Element supports end-to-end encryption, [13] private and public groups, sharing of files between users, voice and video calls, and other collaborative features with help of bots and widgets. It is available as a web application that can be accessed through any modern web browser, as desktop apps for Windows, Mac, and Linux, and as a mobile app for Android and iOS. [9] [14] Element is changing its license from Apache-2.0 to AGPLv3 only with CLA. [15]

History

Element was originally known as Vector when it was released from beta [1] [2] in 2016. [16] The app was renamed to Riot in September of the same year. [17]

Logo of Riot from 2019 to 2020. Riot.im logo 2019.svg
Logo of Riot from 2019 to 2020.

In 2016 the first implementation of the Matrix end-to-end encryption was implemented and rolled out as a beta to users. [18] In May 2020, the developers announced enabling end-to-end encryption by default in Riot for new non-public conversations. [19]

In April 2019, a new application was released on the Google Play Store in response to cryptographic keys used to sign the Riot Android app being compromised. [20]

In July 2020, Riot was renamed to Element. [21]

In January 2021, Element was briefly suspended from Google Play Store in response to a report of user-submitted abusive content on Element's default server, matrix.org. [22] [23] Element staff rectified the issue and the app was brought back to the Play Store. [23]

In May 2023, India's government banned 14 messaging apps, including Element. The ban was enacted on the recommendation of the Ministry of Home Affairs, citing terrorism in Jammu and Kashmir as the main cause. [24]

Technology

Element is built with the Matrix React SDK, [25] which is a React-based software development kit to ease the development of Matrix clients. Element is reliant on web technologies and uses Electron for bundling the app for Windows, macOS and Linux. The Android and iOS clients are developed and distributed with their respective platform tools.

On Android the app is available both in the Google Play Store [26] and the free-software only F-Droid [27] Archives, with minor modifications. For instance, the F-Droid version does not contain the proprietary Google Cloud Messaging plug-in. [28]

Features

Element is able to bridge other communications into the app via Matrix, [12] including IRC, Slack, Telegram, Jitsi Meet and others. [29] [30] Also, it integrates voice and video peer-to-peer and group chats via WebRTC.

Element supports end-to-end encryption (E2EE) of both one-to-one and group chats. [9] [30]

Reception

Media compared Element to Slack, [1] [2] WhatsApp [2] and other instant messaging clients. [31]

In 2017, German computer magazine Golem.de called Element (then Riot) and Matrix server "mature" and "feature-rich", but criticized its key authentication at the time to be not user-friendly for communicatees owning multiple devices. A co-founder of the project, Matthew Hodgson, assured the key verification process was a "placeholder" solution to work on. [31] In 2020, Element added key cross-signing to make the verification process simpler, and enabled end-to-end encryption by default. [19]

See also

Related Research Articles

<span class="mw-page-title-main">Instant messaging</span> Form of communication over the internet

Instant messaging (IM) technology is a type of online chat allowing immediate transmission of messages over the Internet or another computer network. Messages are typically transmitted between two or more parties, when each user inputs text and triggers a transmission to the recipient(s), who are all connected on a common network. It differs from email in that conversations over instant messaging happen in real-time. Most modern IM applications use push technology and also add other features such as emojis, file transfer, chatbots, voice over IP, or video chat capabilities.

<span class="mw-page-title-main">Yahoo! Messenger</span> Instant messaging protocol

Yahoo! Messenger was an advertisement-supported instant messaging client and associated protocol provided by Yahoo!. Yahoo! Messenger was provided free of charge and could be downloaded and used with a generic "Yahoo ID" which also allowed access to other Yahoo! services, such as Yahoo! Mail. The service also offered VoIP, file transfers, webcam hosting, a text messaging service, and chat rooms in various categories.

The landscape for instant messaging involves cross-platform instant messaging clients that can handle one or multiple protocols. Clients that use the same protocol can typically federate and talk to one another. The following table compares general and technical information for cross-platform instant messaging clients in active development, each of which have their own article that provide further information.

<span class="mw-page-title-main">Google Talk</span> Instant messaging service

Google Talk was an instant messaging service that provided both text and voice communication. The instant messaging service was variously referred to colloquially as Gchat, Gtalk, or Gmessage among its users.

This is a comparison of voice over IP (VoIP) software used to conduct telephone-like voice conversations across Internet Protocol (IP) based networks. For residential markets, voice over IP phone service is often cheaper than traditional public switched telephone network (PSTN) service and can remove geographic restrictions to telephone numbers, e.g., have a PSTN phone number in a New York area code ring in Tokyo.

<span class="mw-page-title-main">Jitsi</span> Videoconferencing and messaging software

Jitsi is a collection of free and open-source multiplatform voice (VoIP), video conferencing and instant messaging applications for the Web platform, Windows, Linux, macOS, iOS and Android. The Jitsi project began with the Jitsi Desktop. With the growth of WebRTC, the project team focus shifted to the Jitsi Videobridge for allowing web-based multi-party video calling. Later the team added Jitsi Meet, a full video conferencing application that includes web, Android, and iOS clients. Jitsi also operates meet.jit.si, a version of Jitsi Meet hosted by Jitsi for free community use. Other projects include: Jigasi, lib-jitsi-meet, Jidesha, and Jitsi.

<span class="mw-page-title-main">Rich Communication Services</span> Mobile communication protocol

Rich Communication Services (RCS) is a communication protocol between mobile telephone carriers and between phone and carrier, aiming at replacing SMS messages with a text-message system that is richer, provides phonebook polling, and can transmit in-call multimedia. It is part of the broader IP Multimedia Subsystem. Google has added support for end-to-end encryption for all chats using RCS in their own app, Google Messages. End-to-end encryption is not a feature of RCS specified by GSMA.

<span class="mw-page-title-main">WhatsApp</span> Messaging and VoIP service owned by Meta Platforms

WhatsApp is an instant messaging (IM) and voice-over-IP (VoIP) service owned by technology conglomerate Meta. It allows users to send text, voice messages and video messages, make voice and video calls, and share images, documents, user locations, and other content. WhatsApp's client application runs on mobile devices, and can be accessed from computers. The service requires a cellular mobile telephone number to sign up. In January 2018, WhatsApp released a standalone business app called WhatsApp Business which can communicate with the standard WhatsApp client.

<span class="mw-page-title-main">F-Droid</span> Repository for free and open source Android apps

F-Droid is an open-source app store and software repository for Android, serving a similar function to the Google Play store. The main repository, hosted by the project, contains only free and open source apps. Applications can be browsed, downloaded and installed from the F-Droid website or client app without the need to register for an account. "Anti-features" such as advertising, user tracking, or dependence on non-free software are flagged in app descriptions.

<span class="mw-page-title-main">Telegram (software)</span> Cross-platform encrypted instant messaging service

Telegram Messenger, commonly known as Telegram, is a cloud-based, cross-platform, encrypted instant messaging (IM) service. It was originally launched for iOS on 14 August 2013 and Android in October 2013. It allows users to exchange messages, share media and files, hold private and group voice or video calls, as well as public livestreams. It is available for Android, iOS, Windows, macOS, Linux, and web browsers. Telegram also offers end-to-end encryption in voice and video calls, and in optional private chats, which Telegram calls Secret Chats.

TextSecure was an encrypted messaging application for Android that was developed from 2010 to 2015. It was a predecessor to Signal and the first application to use the Signal Protocol, which has since been implemented into WhatsApp and other applications. TextSecure used end-to-end encryption to secure the transmission of text messages, group messages, attachments and media messages to other TextSecure users.

<span class="mw-page-title-main">Open Whisper Systems</span> Open source software organization

Open Whisper Systems was a software development group that was founded by Moxie Marlinspike in 2013. The group picked up the open source development of TextSecure and RedPhone, and was later responsible for starting the development of the Signal Protocol and the Signal messaging app. In 2018, Signal Messenger was incorporated as an LLC by Moxie Marlinspike and Brian Acton and then rolled under the independent 501c3 non-profit Signal Technology Foundation. Today, the Signal app is developed by Signal Messenger LLC, which is funded by the Signal Technology Foundation.

Threema is a paid cross-platform encrypted instant messaging app developed by Threema GmbH in Switzerland and launched in 2012. The service operates on a decentralized architecture and offers end-to-end encryption. Users can make voice and video calls, send photos, files, and voice notes, share locations, and make groups. Unlike many other popular secure messaging apps, Threema does not require phone numbers or email address for registration, only a one-time purchase that can be paid via an app store or anonymously with Bitcoin or cash.

<span class="mw-page-title-main">Signal (software)</span> Privacy-focused encrypted messaging app

Signal is an encrypted messaging service for instant messaging, voice, and video calls. The instant messaging function includes sending text, voice notes, images, videos, and other files. Communication may be one-to-one between users or may involve group messaging.

<span class="mw-page-title-main">Matrix (protocol)</span> Networking protocol for real-time communication and data synchronization

Matrix is an open standard and communication protocol for real-time communication. It aims to make real-time communication work seamlessly between different service providers, in the way that standard Simple Mail Transfer Protocol email currently does for store-and-forward email service, by allowing users with accounts at one communications service provider to communicate with users of a different service provider via online chat, voice over IP, and videotelephony. It therefore serves a similar purpose to protocols like XMPP, but is not based on any existing communication protocol.

In cryptography, the Double Ratchet Algorithm is a key management algorithm that was developed by Trevor Perrin and Moxie Marlinspike in 2013. It can be used as part of a cryptographic protocol to provide end-to-end encryption for instant messaging. After an initial key exchange it manages the ongoing renewal and maintenance of short-lived session keys. It combines a cryptographic so-called "ratchet" based on the Diffie–Hellman key exchange (DH) and a ratchet based on a key derivation function (KDF), such as a hash function, and is therefore called a double ratchet.

The Signal Protocol is a non-federated cryptographic protocol that provides end-to-end encryption for voice and instant messaging conversations. The protocol was developed by Open Whisper Systems in 2013 and was first introduced in the open-source TextSecure app, which later became Signal. Several closed-source applications have implemented the protocol, such as WhatsApp, which is said to encrypt the conversations of "more than a billion people worldwide" or Google who provides end-to-end encryption by default to all RCS-based conversations between users of their Google Messages app for one-to-one conversations. Facebook Messenger also say they offer the protocol for optional Secret Conversations, as does Skype for its Private Conversations.

Mattermost is an open-source, self-hostable online chat service with file sharing, search, and integrations. It is designed as an internal chat for organisations and companies, and mostly markets itself as an open-source alternative to Slack and Microsoft Teams.

Comparison of user features of messaging platforms refers to a comparison of all the various user features of various electronic instant messaging platforms. This includes a wide variety of resources; it includes standalone apps, platforms within websites, computer software, and various internal functions available on specific devices, such as iMessage for iPhones.

<span class="mw-page-title-main">Conversations (software)</span> Free software instant messaging client for the XMPP protocol

Conversations is a free software, instant messaging client application software for Android. It is largely based on recognized open standards such as the Extensible Messaging and Presence Protocol (XMPP) and Transport Layer Security (TLS).

References

  1. 1 2 3 4 "Riot wants to be like Slack, but with the flexibility of an underlying open source platform". TechCrunch. Archived from the original on 18 October 2018. Retrieved 18 October 2018.
  2. 1 2 3 4 "Open Source und verschlüsselt: Das steckt hinter dem Slack-Rivalen Riot". t3n News (in German). Archived from the original on 4 November 2018. Retrieved 4 November 2018.
  3. "Copyright policy". Element. Archived from the original on 31 January 2021. Retrieved 18 April 2021.
  4. Error: Unable to display the reference properly. See the documentation for details.
  5. Error: Unable to display the reference properly. See the documentation for details.
  6. 1 2 3 Error: Unable to display the reference properly. See the documentation for details.
  7. Error: Unable to display the reference properly. See the documentation for details.
  8. "matrix-org/matrix-react-sdk". GitHub. Archived from the original on 26 March 2020. Retrieved 20 October 2018.
  9. 1 2 3 "Features | Riot". about.riot.im. Archived from the original on 9 April 2020. Retrieved 2 January 2020.[ primary source ]
  10. "Riot.im License". Github. Archived from the original on 28 February 2017. Retrieved 4 September 2018.
  11. Paul, John (16 July 2020). "Decentralized Messaging App Riot Rebrands to Element". It's FOSS. Archived from the original on 30 January 2021. Retrieved 26 January 2021.
  12. 1 2 "Riot: A Distributed Way of Having IRC and VOIP Client and Home Server". itsfoss.com. 18 April 2018. Archived from the original on 4 September 2018. Retrieved 4 September 2018.
  13. "End-to-end encryption (E2EE) | Collaboration and messaging".
  14. F-Droid. "Element (Riot.im)". f-droid.org. Archived from the original on 20 November 2020. Retrieved 15 November 2020.
  15. Speed, Richard. "Matrix-based Element plots move from Apache 2.0 to AGPLv3". www.theregister.com. Retrieved 6 November 2023.
  16. Riot.im (9 June 2016). "Say Hello To Vector!". Riot.im. Archived from the original on 18 October 2018. Retrieved 18 October 2018.[ primary source ]
  17. Riot.im (19 September 2016). "Let's Riot!". Riot.im. Archived from the original on 18 October 2018. Retrieved 18 October 2018.[ primary source ]
  18. Riot.im (21 November 2016). "Riot releases end-to-end encryption: get ready to chat securely!". Medium. Archived from the original on 18 October 2018. Retrieved 18 October 2018.[ primary source ]
  19. 1 2 Hodgson, Matthew (6 May 2020). "Riot Web 1.6, RiotX Android 0.19 & Riot iOS 0.11 — E2E Encryption by Default & Cross-signing is here!!". The Riot.im Blog. Archived from the original on 19 July 2020. Retrieved 19 July 2020.[ primary source ]
  20. "Riot.im Android security update". 25 April 2019. Archived from the original on 1 May 2019. Retrieved 1 May 2019.[ primary source ]
  21. Le Pape, Amandine (15 July 2020). "Welcome to Element!". Archived from the original on 15 July 2020. Retrieved 15 July 2020.[ primary source ]
  22. Amadeo, Ron (30 January 2021). "Google Play bans open-source Matrix client Element, citing "abusive content"". Ars Technica . Archived from the original on 31 January 2021. Retrieved 31 January 2021.
  23. 1 2 Davenport, Corbin (31 January 2021). "Google reinstates federated chat app Element on Play Store after wrongful removal". Android Police. Archived from the original on 30 January 2021. Retrieved 31 January 2021.
  24. Sharwood, Simon. "India bans open source messaging apps on security grounds". www.theregister.com. Retrieved 29 February 2024.
  25. "vector-im/riot-web". GitHub. Archived from the original on 20 September 2018. Retrieved 18 October 2018.
  26. "Element – Secure Messenger". play.google.com. Retrieved 22 April 2022.
  27. "F-Droid Site". Archived from the original on 3 September 2021. Retrieved 3 September 2021.
  28. "FAQ-entry". Archived from the original on 20 October 2020. Retrieved 22 October 2020.
  29. "Bridges". Matrix.org. Archived from the original on 26 January 2021. Retrieved 26 January 2021.
  30. 1 2 "Element, hands on: Secure messaging for tech-savvy organisations Review". ZDNet. Archived from the original on 24 January 2021. Retrieved 26 January 2021.
  31. 1 2 Weisensee, Jan (7 March 2017). "Echtzeitkommunikation ausprobiert: Willkommen in der Matrix". Golem.de (in German). Archived from the original on 29 October 2018. Retrieved 4 November 2018.