Matrix (protocol)
This article may contain excessive or inappropriate references to self-published sources. (February 2019) |
Communication protocol | |
Lua error in Module:Wikidata at line 448: attempt to index field 'wikibase' (a nil value). | |
Purpose | Federated messaging and data synchronization |
---|---|
Developer(s) | The Matrix.org Foundation CIC |
Introduction | September 2014failed verification] | <ref name="Ermoshina-2016"/>[
Based on | HTTP, WebRTC |
OSI layer | Lua error in Module:Wikidata at line 448: attempt to index field 'wikibase' (a nil value). |
Port(s) | Lua error in Module:Wikidata at line 448: attempt to index field 'wikibase' (a nil value). |
Website | {{ |
Matrix (sometimes stylized as [matrix]) is an open standard and communication protocol for real-time communication.<ref>"What Is the Matrix Protocol and How Does It Work?". MUO. 2021-10-27. Retrieved 2023-07-24.</ref> 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.
From a technical perspective, it is an application layer communication protocol for federated real-time communication. It provides HTTP APIs and open source reference implementations for securely distributing and persisting messages in JSON format over an open federation of servers.<ref name="lwn"/><ref name="drdobbs"/> It can integrate with standard web services via WebRTC, facilitating browser-to-browser applications.
History
The initial project was created inside Amdocs, while building a chat tool called "Amdocs Unified Communications",<ref name="AmdocsUC" /> by Matthew Hodgson and Amandine Le Pape . Amdocs then funded most of the development work from 2014 to October 2017.<ref name="blog 2019-02-20" /> Matrix was the winner of the Innovation award at WebRTC 2014 Conference & Expo,<ref name="award">"Award Winners of the WebRTC 2014 Conference & Expo". Upperside Blog. 2014-12-23. Archived from the original on 2015-03-15. Retrieved 2015-06-28.</ref> and of the "Best in Show" award at WebRTC World in 2015.<ref name="Edholm 2015" /> The protocol received praise mixed with some cautionary notes after it launched in 2014. Reviewers noted that other attempts at defining an open instant messaging or multimedia signalling protocol of this type had difficulties becoming widely adopted—e.g. XMPP and IRCv3—and have highlighted the challenges involved, both technological and political.<ref name="Prokop 2015" /> Some were unclear if there was enough demand among users for services which interoperate among providers.<ref name="Scales 2015" /><ref name="citeworld" /> In 2015, a subsidiary of Amdocs was created, named "Vector Creations Limited", and the Matrix staff was moved there.<ref name="Linkedin" />
In July 2017, the funding by Amdocs was announced to be cut and in the following weeks the core team created their own UK-based company, "New Vector Limited",<ref name="companieshouse vector" /> which was mainly built to support the development of Matrix and Riot, which was later renamed to Element.<ref name="vector.im" /> During this time period, there were multiple calls for support to the community and companies that build on Matrix,<ref name="blog 2017-07-07" /> to help pay for the wages of at least part of the core team. Patreon and Liberapay crowdfunding accounts were created,<ref name="Patreon" /> and the core team started a video podcast, called Matrix "Live" to keep the contributors up to speed with ongoing developments.<ref name="Matrix Live 1" /> This was expanded by a weekly blog format, called "This Week in Matrix", where interested community members could read, or submit their own, Matrix-related news.<ref name="matrix week" /> The company was created with the goal of offering consultancy services for Matrix and paid hosting of Matrix servers (as a platform called modular.im, which was later renamed to Element matrix services<ref>"Element Secure instant messenger | Riot.im download | End-to-end messages encryption and open network". Element. Retrieved 2020-11-01.</ref>) to generate income.<ref name="modular.im" />
In the early weeks after its creation, the Matrix team and the company Purism published plans to collaborate in the creation of the Librem 5 phone.<ref name="Armasu 2018" /> The Librem 5 was intended to be a Matrix native phone, where the default pre-installed messaging and caller app should use Matrix for audio and video calls and instant messaging.<ref name="Purism shop" />
In 2017, KDE announced it was working on including support for the protocol in its IRC client Konversation.<ref name="Konversation 2017" />
In late January 2018, the company received an investment of US$5 million from Status,<ref name="Rogers 2018" /><ref name="Status 2018" /> an Ethereum based startup.
In April 2018, the French Government announced plans to create their own instant messaging tool.<ref name="Rosemain 2018" /> Work on the application based on Riot and Matrix protocol—called Tchap after French scientist Claude Chappe—had started in early 2018,<ref>Kaminsky, Jean (2018-04-22). "L'Etat lance un "Telegram" à la française cet été, ouvert à tous". Solutions Numériques (in français). Retrieved 2019-12-28. Après 3 mois de développement pour un coût très limité [...]
</ref> and the program was open-sourced and released on iOS and Android in April 2019.<ref>Cimpanu, Catalin. "French government releases in-house IM app to replace WhatsApp and Telegram use". ZDNet. Retrieved 2019-12-28.</ref>
In October 2018, a Community Interest Company called "The Matrix.org Foundation C.I.C."<ref name="companieshouse foundation" /> was incorporated, to serve as a neutral legal entity for further development of the standard.<ref name="blog 2018-10-29" />
In February 2019, the KDE community announced plans to adopt Matrix for its internal communications needs, as a decentralized alternative to other instant messaging servers like Telegram, Slack, and Discord, and operate its own server instance.<ref name="Larabel 2019" />
In April 2019, Matrix.org suffered a security breach in which the production servers were compromised.<ref name="Breach Apr 2019" /> This breach was not an issue with the Matrix protocol and did not directly affect home servers other than matrix.org.
In June 2019, the Matrix protocol left beta phase with the version 1.0 across all APIs (and Synapse, at the time the reference home server), and the Matrix foundation was officially launched.<ref>"Introducing Matrix 1.0 and the Matrix.org Foundation". Matrix blog.</ref><ref>"Synapse 1.0.0 released". Matrix blog.</ref>
In October 2019, New Vector raised an additional US$8.5 million to develop Matrix.<ref>"New Vector scores $8.5M to plug more users into its open, decentralized messaging Matrix". TechCrunch. 10 October 2019. Retrieved 2019-12-18.[permanent dead link]</ref>
In December 2019, German Ministry of Defense announced a pilot project called BwMessenger for secure instant messaging tool based on Matrix protocol, Synapse server and Riot application. This is modeled after French Tchap project. The long-term goal of the Federal Government is the secure use of messenger services that covers all ministries and subordinate authorities.<ref>online, heise (24 December 2019). "Open Source: Bundeswehr baut eigene verschlüsselte Messenger-App". heise online (in Deutsch). Retrieved 2019-12-28.</ref>
In December 2019, Mozilla announced that it would begin to use Matrix as a replacement for IRC. In the announcement, they said that they would be completing the move in late January 2020. The Mozilla IRC server, irc.mozilla.org, is said to be removed "no later than March of next year [2020]".<ref>"Synchronous Messaging at Mozilla: The Decision". 19 December 2019.</ref> In March 2020, the IRC server was turned off and users were directed to join chat.mozilla.org, Mozilla's Element instance.<ref>"Moznet IRC is dead; long live Mozilla Matrix!". Matrix blog. Retrieved 2020-10-31.</ref>
In May 2020, Matrix enabled end-to-end encryption by default for private conversations.<ref>"Cross-signing and End-to-end Encryption by Default is HERE!!!". Matrix blog.</ref>
In October 2020, Element acquired Gitter from GitLab.<ref>"Gitter is joining Element". Element Blog. 2020-09-30. Retrieved 2020-11-01.</ref> This meant that all Gitter users would be transitioned over to Matrix.<ref>"Welcoming Gitter to Matrix!". Matrix blog. Retrieved 2020-11-01.</ref>
In March 2021, matrix.org announced that there are 28 million global visible accounts.<ref>"FOSDEM 2021: Building massive virtual communities in Matrix". YouTube. Retrieved 31 March 2021.</ref>
In September 2022, some security issues were found in the implementation of one client-side encryption library.<ref name=security_issue_sep_2022>"Upgrade now to address E2EE vulnerabilities in matrix-js-sdk, matrix-ios-sdk and matrix-android-sdk2".</ref> Due to the interoperable architecture, only the affected client applications needed upgrade and third-party implementations were not affected.<ref name=security_issue_sep_2022/> All critical issues were fixed, with the remaining ones being either non-exploitable in practice, or already prominently warned for in the client.<ref name=security_issue_sep_2022/>
In June 2023, Beeper became the first member of The Matrix Foundation.<ref> https://matrix.org/blog/2023/06/beeper-joins-the-foundation/. {{cite web}}
: Missing or empty |title=
(help)</ref>
Protocol
Matrix targets use cases like voice over IP, Internet of Things and instant messaging, including group communication, along with a longer-term goal to be a generic messaging and data synchronization system for the web. The protocol supports security and replication, maintaining full conversation history, with no single points of control or failure. Existing communication services can integrate with the Matrix ecosystem.<ref name="lwn" />
Client software is available for open-federated Instant Messaging (IM), voice over IP (VoIP) and Internet of Things (IoT) communication.
The Matrix standard specifies RESTful HTTP APIs for securely transmitting and replicating JSON data between Matrix-capable clients, servers and services. Clients send data by PUTing it to a ‘room’ on their server, which then replicates the data over all the Matrix servers participating in this ‘room’. This data is signed using a git-style signature to mitigate tampering, and the federated traffic is encrypted with HTTPS and signed with each server's private key to avoid spoofing. Replication follows eventual consistency semantics, allowing servers to function even if offline or after data-loss by re-synchronizing missing history from other participating servers.
The Olm library provides for optional end-to-end encryption on a room-by-room basis via a Double Ratchet Algorithm implementation.<ref name="Ermoshina-2016"/> It can ensure that conversation data at rest is only readable by the room participants. With it configured, data transmitted over Matrix is only visible as ciphertext to the Matrix servers, and can be decrypted only by authorized participants in the room. The encryption protocol is called Olm; Megolm is an expansion of Olm to better suit the need for bigger rooms. There are two main implementations:
- vodozemac, the current reference implementation, written in Rust. In 2022, it has been audited by Least Authority, whose findings are publicly available<ref>"Archived copy" (PDF). leastauthority.com. Archived from the original (PDF) on 16 May 2022. Retrieved 22 May 2022.
{{cite web}}
: CS1 maint: archived copy as title (link)</ref> and have been addressed by the Matrix team.<ref>"Independent public audit of Vodozemac, a native Rust reference implementation of Matrix end-to-end encryption". Matrix blog.</ref> The review was partially funded by Germany's national agency for the healthcare system digitalisation (Gematik ). - libolm, the former reference implementation, has been subject of a cryptographic review by NCC Group, whose findings are publicly available,<ref name="Balducci Meredith 2016"/> and have been addressed by the Matrix team.<ref name="blog 2016-11-21"/> The review was sponsored by the Open Technology Fund.
Bridges
Matrix supports bridging messages from different chat applications into Matrix rooms. These bridges are programs that run on the server and communicate with the non-Matrix servers. Bridges can either be acting as puppets or relays, where in the former the individual user's account is visibly posting the messages, and in the latter a bot posts the messages for non-puppeteered user accounts.
Currently there are official bridges for:
- Gitter<ref name="Gitter"/>
- IRC<ref name="IRC"/>
- Slack/Mattermost<ref name="Slack"/>
- XMPP<ref name="XMPP"/>
Bridges for the following notable applications are maintained by the community:
Clients
Element is the reference implementation of a client. The following client implementations exist; a possibly more complete list can be found on Matrix's website:
Project | Main Language | Comment | Platforms | Status | Repository |
---|---|---|---|---|---|
Cinny | JavaScript | Focuses primarily on having a simple and secure interface; written in React on the top of matrix-js-sdk | Web and desktop | Stable | GitHub: ajbura/cinny |
Element | JavaScript | Made by the matrix.org core team | Web, desktop, iOS, and Android | Stable | GitHub: vector-im/element-web |
FluffyChat | Dart | Written in Flutter | Web, desktop, iOS, and Android | Stable | GitHub: krille-chan/fluffychat |
Fractal | Rust | GNOME desktop | Stable | GitLab: GNOME/fractal | |
NeoChat | C++ | Fork of Spectral, using KDE frameworks, most notably Kirigami,
KConfig and KI18n |
Desktop, Plasma Mobile, and Android | Stable | Kde: network/neochat |
Nheko | C++ | made using Qt and C++17 | Desktop (Linux, macOS, Windows and others<ref>"nheko-reborn.github.io". nheko-reborn.github.io. Retrieved 2022-12-29.</ref>) | Stable | GitHub: Nheko-Reborn/nheko |
Quaternion | C++ | cross-platform Qt5-based client, a reference desktop application using Quotient | Desktop (macOS, Windows, Linux and others<ref>"GitHub: quotient-im/Quaternion". GitHub.</ref>) | Stable | GitHub: quotient-im/Quaternion |
Servers
Synapse is the reference implementation of a Matrix home server, written in Python.<ref name="Synapse"/> A "second generation Matrix home server"<ref name="Dendrite Quote"/> called Dendrite is being developed by the Matrix core team. Dendrite is in beta.
The following server implementations exist; a possibly more complete list can be found on Matrix's website:
Project | Main Language | Comment | Status | Repository |
---|---|---|---|---|
Synapse<ref name="Synapse" /> | Python | Synapse is a Matrix "homeserver" implementation developed by the matrix.org core team, written in Python 3/Twisted. | Production ready | GitHub: element-hq/synapse |
Dendrite | Go | Dendrite is a second-generation Matrix homeserver written in Go. It intends to provide an efficient, reliable and scalable alternative to Synapse. | Beta | GitHub: matrix-org/dendrite |
Construct<ref name="Construct" /> | C++ | Construct is a performance-oriented homeserver with minimal dependencies.
It is the first actively federating Matrix server developed independently by the community. |
Beta (since 2020-04-28)<ref>"About the server · matrix-construct/construct Wiki". GitHub. Retrieved 2021-12-28. Entered beta-testing stage around 2020-04-28.</ref> |
GitHub: matrix-construct/construct |
Conduit<ref>"Famedly / Conduit". GitLab. Retrieved 2020-11-01.</ref> | Rust | An efficient Matrix homeserver that aims to be easy to set up and just work.
It is designed to run on low-powered mini computers such as a Raspberry Pi to host for a user's "friends, family, or company." |
Beta (since 2021-09-01) | GitLab: famedly/conduit |
Mascarene<ref name="Mascarene" /> | Scala | Mascarene is an open source homeserver implementation of the Matrix protocol. | Under development | GitLab: mascarene/mascarene |
Ligase | Go | Ligase is a Golang-based implementation of Matrix home server, following the Matrix spec as defined at matrix.org.
It has been used in production by an array of financial institutions in various scenarios.[non-primary source needed] |
Appears to be dead (no commit since Sep 22, 2021) | GitHub: finogeeks/Ligase |
Maelstrom | Rust | A high-performance Matrix Home-Server written in Rust designed to have a plugable storage engine, scalable, and light on resources. | Appears to be dead. No commit since 2020 | GitHub: maelstrom-rs/maelstrom |
Adoption
Communication among the public agents of France's central administration happens on a Matrix-based internal network, named Tchap . <ref>"French government launches in-house developed messaging". European Commission.</ref> The project is developed by the Interministerial Directorate for Digital Affairs (DINUM ) with the explicit goals of security and digital sovereignty, both of which were deemed to be impossible through WhatsApp, Telegram and Slack. <ref>"Open Source Software powering the newly developed internal messaging service of the French government". European Commission. 18 October 2019.</ref>
Germany's national healthcare system's internal communication network uses a Matrix-based <ref>"TI-Messenger | gematik". www.gematik.de.</ref> system (Ti-Messenger) for real-time communication among Germany's healthcare organizations and sharing of sensitive patient data, and is developed by the national agency for the digitalisation of the healthcare system (Gematik GmbH). <ref>"Germany's national healthcare system adopts Matrix!". Matrix blog.</ref> Reasons for choosing Matrix included federated identity management, which allows to reuse the existing identity infrastructure into the new chat system; the decentralized architecture, which allows cross-linking data from disparate sources; and the open protocol, which ensures interoperability and future-proof data exchange and prevents vendor lock-in. <ref>"German health professionals will communicate with each other through the open source Matrix protocol". 6 August 2021.</ref>
Employees of the Bundeswehr (Germany's armed forces) communicate with each other, and share classified documents (German VS-NfD), on a private Matrix network, with a customized version of the Matrix Element app. <ref>"Bundeswehr | BwMessenger | Matrix | Defence case study".</ref> <ref>"German armed forces testing open source chat". 16 January 2020.</ref>
Luxembourg has developed a Matrix-based chat service for government officials, named Luxchat4Gov, planned to be released in the second quartal of 2023. <ref>"Luxembourg launches open source chat for officials and citizens". 16 February 2023.</ref>
The Swedish Social Insurance Agency (Försäkringskassan) is using Matrix for internal communications. <ref>"dSam and eSam endorse Matrix for secure and federated communications in the Swedish public sector". December 2022.</ref>
Rocket.Chat is based on Matrix since version 4.7.0. <ref>"Welcoming Rocket.Chat to Matrix!".</ref> It is used in private networks of public governmental offices, private companies and NGOs, across the world. <ref>"Organizations which choose Rocket.Chat".</ref>
The FOSDEM was held on Matrix in 2021 <ref>"Troubleshooting Matrix at FOSDEM 2021".</ref> and 2022.<ref>"FOSDEM 2022's communication infrastructure was provided by Element Matrix Services". Element Blog. 2022-02-14. Retrieved 2023-01-25.</ref><ref>"Troubleshooting Matrix at FOSDEM 2022".</ref> The hosting was provided by Element Matrix Services, which published the technical details for public review soon after the event for 2021 <ref>"How we hosted FOSDEM 2021 on Matrix".</ref> and 2022.<ref>"Hosting FOSDEM 2022 on Matrix".</ref>
See also
References
<references group="" responsive="1"><ref name="Ermoshina-2016">Ermoshina, Ksenia; Musiani, Francesca; Halpin, Harry (September 2016). "End-to-End Encrypted Messaging Protocols: An Overview". In Bagnoli, Franco; et al. (eds.). Internet Science. INSCI 2016. Lecture Notes in Computer Science. Vol. 9934. Florence, Italy: Springer. pp. 244–254. doi:10.1007/978-3-319-45982-0_22. ISBN 978-3-319-45982-0.</ref>
<ref name="lwn">Nathan Willis (2015-02-11). "Matrix: a new specification for federated realtime chat". LWN.net. Retrieved 2015-06-28.</ref>
<ref name="drdobbs">Adrian Bridgwater (2014-09-09). "Matrix.org Reloads Inside "Illusion of Control" Vortex". Dr. Dobb's Journal. Retrieved 2015-07-20.</ref>
<ref name="Prokop 2015">Andrew Prokop (2015-02-23). "Solving the WebRTC Interoperability Problem - Post". No Jitter. Retrieved 2015-06-28.</ref>
<ref name="Scales 2015">Ian Scales (2015-05-11). "To interop or not to interop? Is Matrix.org the answer for silo'd comms services?". TelecomTV. Retrieved 2015-06-22.</ref>
<ref name="citeworld">Matt Weinberger (2014-09-16). "Matrix wants to smash the walled gardens of messaging". ITworld. Retrieved 2015-07-20.</ref>
<ref name="Konversation 2017">https://blogs.kde.org/2017/09/05/konversation-2x-2018-new-user-interface-matrix-support-mobile-version[self-published source]</ref>
<ref name="Larabel 2019">Michael Larabel (2019-02-20). "KDE To Support Matrix Decentralized Instant Messaging". Phoronix. Retrieved 2019-02-20.</ref>
<ref name="AmdocsUC">"Unified Communications". amdocs. Archived from the original on 2014-10-03. Retrieved 2018-11-04.</ref>
<ref name="blog 2019-02-20">"Who is Matrix.org?". matrix.org. 2019-02-20. Archived from the original on 2019-03-29. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="Linkedin">"Linkedin entry for Vector Creations Limited". Retrieved 2018-10-22.[self-published source]</ref>
<ref name="Edholm 2015">Phil Edholm (2015-05-18). "WebRTC World Miami Wrap Up and Review". WebRTC. Retrieved 2015-06-28.</ref>
<ref name="companieshouse vector">"Free company information from Companies House (UK Government)". Companies House. Retrieved 2018-07-30.</ref>
<ref name="vector.im">"New Vector - We believe the future will be open and decentralized". New Vector. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="blog 2017-07-07">"A Call to Arms: Supporting Matrix!". matrix.org. 2017-07-07. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="Patreon">"Hello world! | Matrix.org on Patreon". Patreon. Retrieved 2018-11-04.[self-published source]</ref>
<ref name="Matrix Live 1">Matrixdotorg (2017-07-21), Matrix Live - Episode 1: July 14th 2017, retrieved 2018-10-22[self-published source]</ref>
<ref name="matrix week">"This Week in Matrix". matrix.org. Retrieved 2023-07-26.[self-published source]</ref>
<ref name="modular.im">"Awesome hosting for Matrix". www.modular.im. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="Armasu 2018">Armasu, Lucian (2018-06-06). "Purism's Privacy-Focused Librem 5 Smartphone's On Track For A Jan '19 Release". Tom's Hardware. Retrieved 2018-11-04.</ref>
<ref name="Purism shop">"Librem 5 – A Security and Privacy Focused Phone". shop.puri.sm. Retrieved 2018-11-04.[self-published source]</ref>
<ref name="Rogers 2018">Rogers, Stewart (2018-01-29). "Status invests $5 million in Matrix to create a blockchain messaging superpower". VentureBeat. Retrieved 2018-10-20.</ref>
<ref name="Status 2018">"Status Invests $5M In Riot.im". Status Blog. 2018-01-29. Archived from the original on 2018-01-30. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="Rosemain 2018">Rosemain, Mathieu. "France builds WhatsApp rival due to surveillance risk". U.S. Retrieved 2018-11-04.</ref>
<ref name="companieshouse foundation">"THE MATRIX.ORG FOUNDATION – Overview (free company information from Companies House)". Companies House. Retrieved 2018-11-04.</ref>
<ref name="blog 2018-10-29">"Introducing the Matrix.org Foundation (Part 1 of 2)". matrix.org. 2018-10-29. Retrieved 2018-11-04.[self-published source]</ref>
<ref name="Balducci Meredith 2016">Alex Balducci; Jake Meredith (18 November 2016). "Matrix Olm Cryptographic Review". www.nccgroup.trust. Archived from the original on 2018-10-20. Retrieved 2018-10-20.</ref>
<ref name="blog 2016-11-21">"Matrix's 'Olm' End-to-end Encryption security assessment released – and implemented cross-platform on Riot at last!". matrix.org. 2016-11-21. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="Telegram">"tulir/mautrix-telegram". GitHub. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="Discord">"Half-Shot/matrix-appservice-discord". GitHub. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="Gitter">"matrix-org/matrix-appservice-gitter". GitHub. 2018-09-27. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="Slack">"matrix-org/matrix-appservice-slack". GitHub. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="IRC">"matrix-org/matrix-appservice-irc". GitHub. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="WhatsApp">"tulir/mautrix-whatsapp". GitHub. Retrieved 2018-10-20.[self-published source]</ref>
<ref name="XMPP">GitHub - matrix-org/matrix-appservice-purple: General purpose bridging using libpurple ., matrix.org, 2018-12-29, retrieved 2018-12-31[self-published source]</ref>
<ref name="LinkedIn">"beeper/linkedin". GitLab. Retrieved 2022-07-03.[self-published source]</ref>
<ref name="Signal">A Matrix-Signal puppeting bridge, Tulir Asokan, 2021-02-06, retrieved 2021-02-06[self-published source]</ref>
<ref name="Skype">skype-bridge, matrix.org, 2020-05-16, retrieved 2020-05-16[self-published source]</ref>
<ref name="Breach Apr 2019">"We have discovered and addressed a security breach". Matrix.org. Retrieved 2019-04-12.[self-published source]</ref>
<ref name="Facebook">"tulir/mautrix-facebook". GitHub. Retrieved 2020-04-27.[self-published source]</ref>
<ref name="Synapse">"matrix-org/synapse". GitHub. Retrieved 2020-04-27.[self-published source]</ref>
<ref name="Dendrite Quote">"matrix-org/dendrite". GitHub. Retrieved 2020-04-27.[self-published source]</ref>
<ref name="Construct">"matrix-construct/construct". GitHub. Retrieved 2020-04-27.[self-published source]</ref>
<ref name="Mascarene">"mascarene/mascarene". Gitlab. Retrieved 2020-04-27.[self-published source]</ref></references>External links
- Lua error in Module:Official_website at line 90: attempt to index field 'wikibase' (a nil value).
- Specification
- Matrix-org on GitHub