XMPP vs Matrix


Since both protocols position themselves as federated, both protocols are compared mainly in terms of federalism and freedom. In this review, only The Matrix is considered, and not its forks like Gridify and other. Forks of the Matrix protocol can have significant differences. Currently, the Matrix has a clear advantage in supporting client software for all OS, while for financial reasons XMPP dominates only on Android.

XMPP Matrix
Open, extensible protocol? Yes. It is allowed to add the protocols of other messengers to the protocol XMPP (including the Matrix protocol). Anyone can write their own extension and add it to the protocol. An example of a comic expansion: "XEP-0183: Jingle Telepathy Transport",

No. The protocol cannot be extended without the approval of the owners. If tomorrow the Matrix team makes it mandatory to register by phone and set the spy program, everyone will be obliged to comply.

Any unapproved change protocol implies the creation of another new incompatible fork messenger (Matrix 1, Matrix Reload, Matrix Revolutions and etc). Similar splits into hundreds of forks occurred in bitcoin after its popularity, which forces users to install a separate duplicate application for the new fork.

Commercial project? No Symbiosis Company New Vector Ltd (Element/ Riot) (provides paid services) London, United Kingdom + The Matrix.org Foundation C.I.C. (collects donations).
Government sponsorship? The French government prohibits OMEMO encryption, the reason being its high level encryption and easy installation [1] The French government sponsors server-side Matrix development, olm and they also developed a Matrix client called Tchap. [2]
E2E encryption? OMEMO, OTR, OTR4, PGP ECC, PGP RSA (* It should be noted that OMEMO is a messenger Signal protocol integrated into XMPP as XEP) OLM
File transfer? yes yes
Videocalls? yes yes
Audiocalls? yes yes
Monopoly network? Many servers [3] and many clients [4]. Most users use only Element (Riot) + Matrix.org. Many of the private server owners also use "'element (riot)" domain hosting.
Fault-tolerant? Yes (2 000 000 device to 1 node)[5][6] (> 1500 users = 1 GB ram )

Cheap small VPS can accommodate the population of entire big cities

No (< 100 users = 8 GB Ram [7])

Super computers are required to host large public servers.

Cost of service 1 active device > $0.01 / mo ~ $1 / mo
Support for one cross-platform client? User-friendliness? No. Lack of funding. Clients exist on all platforms, but video calls only work well on Android. The commercial XMPP messengers Zoom and WhatsApp do not participate in the federation and do not open the source code The web client Element (Riot) is based on Electron (Chromium) and has support for all operating systems that support Chromium.
Good sponsorship and advertising support? No. Most large XMPP servers with billions ([8] [9]) of users are not federated and do not invest in the development of the XMPP protocol Yes. Centralization around one messenger and client allows you to collect investments
Usage in big network? XMPP is in usage by Google[10], WhatsApp[11], Zoom, IBM, LiveJournal, Nintendo[12], NSA, US military,Federal Police Germany [13] and etc... A federated network adapted for millions of private servers with any number of users. Donations can pay for the maintenance of big amateur servers. No. In the matrix, the main load of the network is located on super-nodes that a person with a small budget cannot create. The cost of maintaining amateur supernodes does not pay off the donation.

Big supernodes must have commercial sponsors or government support to serve users. The largest servers will host several thousand active users

Matrix is ​​a poor and impractical protocol for federated communication. The Matrix allows you to create small closed gardens, not a real federal system. There are no large independent matrix servers because the system is dependent on a monopoly developer center. The success of the matrix is ​​largely due to a good advertising campaign and excessive centralization. It is difficult to talk about a decentralized system when most of the users are located on one server and one client or dependent forks

Removing the monopoly in the matrix network will destroy the current business model and advertising and lead to the division of the protocol into forks