Matrix (formerly known as Synapse) is a decentralized communications platform designed to facilitate interoperability between various messaging protocols. It's built on top of WebRTC and supports multiple chat apps, including Riot.im, Element.io, and others. Matrix focuses on enabling seamless interactions across different platforms, rather than being a single-purpose messenger.
Telegram and Signal are both popular end-to-end encrypted (E2EE) messaging services that prioritize user privacy and security. Telegram is known for its large user base, group chat capabilities, and file sharing features, while Signal is renowned for its strong E2EE encryption and simplicity.
In this essay, I'll argue why Matrix might be a better Open Source solution than Telegram or Signal in certain contexts, and that Delta Chat is an interesting alternative:
- Interoperability: As mentioned earlier, Matrix's primary goal is to enable seamless interactions across different platforms. This means that users can communicate with friends on various chat apps without being locked into a single ecosystem. In contrast, Telegram and Signal are designed as standalone services, making it more difficult for users to interact with others outside their respective networks.
- Customizability: Matrix's decentralized architecture allows developers to create custom clients and integrations, which can be tailored to specific use cases or industries. This flexibility is particularly valuable in environments where unique communication requirements exist (e.g., healthcare, finance). Telegram and Signal, while offering some customization options, are more geared towards general-purpose messaging.
- Scalability: Matrix's distributed architecture enables it to scale more efficiently than centralized services like Telegram or Signal. As the platform grows, new nodes can be added without affecting existing users' experiences. This scalability is crucial for large-scale deployments or applications where high availability and reliability are essential.
- Security: While all four platforms prioritize user privacy and security, Matrix's decentralized nature provides an additional layer of protection against central points of failure or surveillance. By distributing the workload across multiple nodes, Matrix reduces its reliance on any single entity, making it more resilient to potential attacks or data breaches.
One of the key differences with the four solutions is, that for Signal and Telegram you primarily need a phone number, which is used for the registration. With Matrix you can create an account purely based on a username. Delta-Chat is the strange one in this context. For Delta Chat you don't need an account. Delta Chat creates an exchangeable QR code, which can be scanned by other users. Delta Chat uses your email client to send an encrypted email to the other Delta Chat user.
Open Source
For all four platforms, it's a fact that they are free and open source., at least partly. Let's dive into the differences in FOSS licenses used by Matrix, Telegram, and Signal:
Matrix
The Matrix project is licensed under the Apache License 2.0 (Apache-2.0). This license is a permissive free software license that allows for wide reuse of the codebase.
Key features of the Apache-2.0 license:
- Permissive: Allows commercial use, modification, and distribution.
- Free to modify: Users can freely modify the source code without restrictions.
- Patent grant: The copyright holder grants patent rights to users who distribute modified versions of the software.
- No copyleft: Does not require derivative works to be licensed under the same terms.
Telegram
The Telegram Messenger LLP (the company behind Telegram) uses a custom license, which is often referred to as the "Telegram License". This license is based on the Mozilla Public License 2.0 (MPL-2.0), but with some modifications and additions specific to Telegram's needs.
Key features of the Telegram License:
- Based on MPL-2.0: Similarities include patent grants, no copyleft, and permissive nature.
- Additional restrictions: The license includes clauses that restrict certain uses, such as using Telegram's trademarks or logos without permission.
- Commercial use allowed: Like Apache-2.0, this license allows commercial use of the software.
Signal
The Signal Protocol is licensed under the Open Source Initiative (OSI) approved MIT License. This permissive free software license is widely used in open-source projects and allows for broad reuse of the codebase.
Key features of the MIT License:
- Permissive: Allows commercial use, modification, and distribution.
- Free to modify: Users can freely modify the source code without restrictions.
- No copyleft: Does not require derivative works to be licensed under the same terms.
- Patent grant: The copyright holder grants patent rights to users who distribute modified versions of the software.
Delta Chat
Delta Chat is a decentralized messaging app that uses the OpenPGP (Open Pretty Good Privacy) protocol. As such, it does not use any specific license in the classical sense. However, Delta Chat's underlying technology stack includes several open-source projects and libraries that are licensed under various licenses. For example:
1. The Delta Chat Android app is built using Java and uses the Apache License 2.0.
2. The Delta Chat iOS app is built using Swift and uses the MIT License.
3. The OpenPGP library used by Delta Chat, called "OpenPGP.js", is licensed under the Mozilla Public License (MPL) version 2.0.
It's worth noting that while Delta Chat itself does not use a specific license, its usage of open-source libraries and protocols means that it benefits from the freedoms and flexibility provided by these licenses.
Centralized versus Decentralized:
The main defining issue where our choice is based upon is the fact that Matrix is decentralized and the others not. While Telegram and Signal are open source, they are centralized, meaning you cannot connect a self-made fork to their network. While on the other hand, you can create a Matrix client and join the Fediverse. Delta Chat is also decentralized, in fact it uses no servers. Delta-Chat has the disadvantage, that you cannot create groups, it's more a person to person secure communication program.
In conclusion, while Telegram and Signal are excellent choices for general-purpose messaging with a focus on E2EE encryption, Matrix offers unique benefits that make it an attractive Open Source solution in specific contexts. Its emphasis on interoperability, customizability, scalability, and security make it well-suited for environments where these features are crucial.
In summary:
- Telegram is ideal for large-scale group chats and file sharing.
- Signal excels at providing strong E2EE encryption for general-purpose messaging.
- Matrix shines when interoperability, customization, scalability, and security are paramount.
- Delta-Chat is suitable for secure communication, without any server.