# Matrix (Kommunikationsprotokoll)

Matrix ist ein offenes Kommunikationsprotokoll für Echtzeitkommunikation. Es wurde entworfen, um Chat, IP-Telefonie und Bildtelefonie unabhängig von einem spezifischen Internetdienstanbieter nutzen zu können.
Aus technischer Sicht ist es ein Application-Layer-Kommunikationsprotokoll für föderierte Echtzeitkommunikation. Es bietet HTTP-APIs und Open-Source-Referenzimplementierungen für das sichere Verbreiten und Speichern von Nachrichten im JSON-Format in einem offenen Verbund von Servern. Es kann sich mit Standard-Webservices per WebRTC verbinden und unterstützt so Browser-zu-Browser-Anwendungen. Mit der derzeit noch experimentellen Komponente Pinecone sollen Daten auch direkt zwischen Geräten einzelner Teilnehmer ausgetauscht werden können (P2P).
Andere Ansätze zur Definition eines offenen Instant Messaging oder Multimedia-Signalisierungsprotokolls dieser Art wie XMPP oder IRCv3 stießen auf erhebliche Herausforderungen, sowohl technische als auch politische.

## Entwicklung

Die Entwicklung von Matrix wird von Matrix.org angeleitet, einer gemeinnützigen Initiative aus Großbritannien. Sie will aus Matrix einen offenen Standard für dezentralisierte, persistente und interoperable Kommunikation über das Internet machen. Matrix zielt auf Anwendungsfälle wie IP-Telefonie, Internet of Things und Instant Messaging, einschließlich Gruppenkommunikation und langfristig als generisches Messaging- und Datensynchronisationssystem für das Web. Das Protokoll unterstützt Sicherheit und Replikation, das Vorhalten der vollständigen Konversation und das alles ohne zentrale Kontrollinstanzen. Bestehende Kommunikationsdienste können in die Matrixumgebung eingebunden werden.
Es gibt Programme für Instant Messaging (IM), Voice over IP (VoIP) und Internet of Things (IoT).
Matrix hat den „Innovation Award“ bei der WebRTC 2014 Conference & Expo und den „Best in Show Award“ bei der WebRTC World im Jahr 2015 gewonnen.
Die französische Regierung beschloss im Frühjahr 2018 die Entwicklung von Matrix zu unterstützen.
Im Februar 2021 gab matrix.org bekannt, dass es nun 28 Millionen öffentlich sichtbare Accounts gibt, mit rund 8 Millionen täglich versendeten Nachrichten. Rund 300 Unternehmen sowie 6 Regierungen nutzen Matrix mittlerweile.
Im Juli 2021 kündigte die gematik GmbH an, dass das deutsche Gesundheitswesen mit über 150.000 Organisationen (Arztpraxen, Kliniken und Versicherungen) zukünftig über das Matrix-Protokoll kommunizieren wird.

## Protokoll

Der Matrix-Standard spezifiziert RESTful HTTP-APIs für die sichere Übertragung und Replikation von JSON-Daten zwischen Matrix-fähigen Clients, Servern und Diensten. Clients senden Daten per PUT einer Gruppe (Raum genannt) auf ihrem Server, die diese Daten zu allen Matrix-Servern repliziert, die an jenem Raum teilnehmen. Diese Daten werden mit einer Git-artigen Signatur versehen, um Manipulationen abzufangen. Der föderierte Datenverkehr wird mit HTTPS verschlüsselt und mit den privaten Schlüsseln aller Server signiert, um Spoofing zu verhindern. Die Replikation erfolgt mit schlussendlicher Konsistenz (eventual consistency). Dadurch können Nachrichten auch (zu einem späteren Zeitpunkt) zugestellt werden, obwohl beteiligte Server zwischenzeitlich offline waren.
Die Olm-Bibliothek bietet eine optionale Ende-zu-Ende-Verschlüsselung von Raum zu Raum mittels einer Double-Ratchet-Algorithmus-Implementierung. Dadurch können gespeicherte Konversationsdaten nur von Raum-Teilnehmern gelesen werden. Ist dies konfiguriert, sind über Matrix transportierte Daten für Matrix-Server nur als Geheimtext sichtbar. Sie können nur von autorisierten Teilnehmern des Raumes gelesen werden. Die Bibliotheken Olm und Megolm (eine Olm-Erweiterung für größere Chaträume) wurden in einem kryptographischen Review des Unternehmens NCC Group geprüft und die Resultate veröffentlicht und vom Matrix Team adressiert. Die Überprüfung wurde vom Open Technology Fund finanziert.

## Implementierungen

Element (vorher Riot) ist der wichtigste Client für das Matrix-Protokoll. Die Server-Software Synapse zeigt als Referenzimplementierung das Konzept von Matrix und speichert die persönlichen Chat-Verläufe und Konteninformationen der Benutzer. Anders als bei zentralisierten Plattformen wie WhatsApp oder Skype können Benutzer damit ihren eigenen Matrix-Homeserver betreiben und ihre eigene Kommunikation kontrollieren oder den Homeserver eines anderen Betreibers (z. B. matrix.org) benutzen. Es gibt viele weitere Clients, Bots, Bridges, Server und andere Implementierungen des Matrix-Protokolls.

## Einsatz durch öffentliche Einrichtungen

Viele öffentliche Einrichtungen adaptieren das freie Matrix:
* Die TU Dresden verzeichnete Anfang 2024 in einer Übersichtskarte 41 Hochschulen im deutschen Sprachraum, die Matrix nutzen.
* In Frankreich soll ein Messenger auf Matrix-Basis in allen Ministerien und Behörden auf nationaler Ebene (geschätzte 5,5 Millionen Benutzer) eingesetzt werden. Der eigens entwickelte Client ist eine Abspaltung von Element. Produktivtests starteten im Sommer 2018, eine landesweite Einführung startete im Frühjahr 2019. Zuvor wurden wesentliche Funktionen weiterentwickelt oder ergänzt. Die Behörde für Sicherheit in der Informationstechnik, ANSSI, überprüfte den Quellcode, Malware-Scanner und Antivirus-Software wurden ergänzt. Zum Start des exklusiv für Behördenmitarbeiter geplanten Systems gelang es einem Hacker, sich ein Benutzerkonto im Tchap genannten Messenger anzulegen.
* Auch die deutsche Bundeswehr beschloss im Mai 2020 den Umstieg auf Matrix.
* Außerdem wurde das Protokoll vom deutschen Bundesinnenministerium dahingehend geprüft, ob es neben den eigenen Behörden auch für Bürger geeignet ist.
* Der sich im November 2022 in Erprobung befindliche deutsche BundesMessenger, eine Kommunikationslösung für die öffentliche Verwaltung, baut ebenfalls auf Matrix auf. Eine erste Version dieses BundesMessengers für den öffentlichen Sektor in Deutschland wurde im Dezember 2023 veröffentlicht.
* Die gematik hat für die Telematikinfrastruktur (Vernetzung des Gesundheitswesens in Deutschland) die Verwendung von Matrix als Messenger für Ärzte, Apotheker und andere Teilnehmer für 2022 angekündigt. Der erste "TIM -Messenger fürs Gesundheitswesen", zunächst für Ärzte, erhielt im April 2024 die Zulassung.
* In Luxemburg wurde Luxchat für Beamte des luxemburgischen Staates eingeführt, der ebenfalls auf Matrix basiert.
* Die Bayern-Cloud des Bundeslandes Bayern nutzt ebenfalls Matrix.