Ein Tool, um sie gefügig zu machen, sie alle zu finden, in die Matrix zu treiben und ewig zu binden – ein offener Standard für dezentrale Kommunikation tritt an, bekannte Chatprotokolle neu zu organisieren und miteinander zu verknüpfen.
In den letzten 20 Jahren haben Benutzer eine ganze Reihe Kommunikationstools im Internet kommen und gehen sehen. Textbasierte Klassiker wie IRC und ICQ machten Platz für Audio- und Videochats mit Skype, Google Hangouts & Co. Wer vor fünf Jahren noch in Facebook-Gruppen unterwegs war, trifft Gleichgesinnte nun per Whatsapp, Snapchat oder in anderen Mobile-Messaging-Anwendungen. Wohl dem, der sich nicht in den ganzen Apps und Programmen verzettelt und sich erinnern kann, wen er über welchen Kanal antrifft.
Matrix [1] verspricht die Onlinekommunikation neu zu organisieren. Das auf Web RTC und HTTP basierende Protokoll steht unter der Apache-Lizenz und will alle Dienste unter einen Hut bringen – jeder chattet so, wie er mag, und erreicht doch alle anderen. Ende-zu-Ende-Verschlüsselung und freie Wahl der Clients sind nur einige Features, welche die Entwickler planen. Neben Text-, Video- und Audiokommunikation will der Dienst künftig Schnittstellen für das Internet der Dinge bereitstellen.
Verteilt – und doch gemeinsam
Matrix schleust die Kommunikation weder über zentrale Server, noch verbindet es die Rechner der Teilnehmer direkt miteinander. Stattdessen arbeiten so genannte Homeserver Hand in Hand. Sie dienen zusätzlich als Accountserver. Jeder Anwender ist über eine ID im gesamten Matrix-Netz erreichbar. Sie setzt sich aus dem Nicknamen und der Serveradresse zusammen, etwa »@Mela:matrix.org« oder »@hej:matrix.org« .
Damit löst Matrix nicht nur das Problem mit dem systemweit einzigartigen Benutzernamen, das bei IRC oder Skype für mitunter sehr hässliche Nicknamen sorgt, sondern es vermeidet Ausfälle einer zentralen Identitätsverwaltung, die zudem das erste Ziel von Denial-of-Service-Attacken wäre.
Die verteilten Homeserver beugen außerdem den so genannten Netsplits vor. Unter diesem temporären Zerfall des Serververbunds in zwei oder mehr Teilnetze leiden vor allem die großen IRC-Netze. Das Matrix-Konzept sieht vor, dass nur jene Homeserver den Datenverkehr eines Channels erhalten, auf denen Benutzer angemeldet sind und sich im Kanal aufhalten. Ein weiterer Vorteil dieser Herangehensweise: Sie vermeidet die Überlastung des gesamten Netzes.
Im Matrix-Ökosystem [2] tummeln sich schon einige Anwendungen. Während sich viele Clients bei Redaktionsschluss im Stadium Early oder Late Beta befanden, sieht es bei Servern noch nicht so gut aus. Nur zwei der sechs Projekte haben das Alphastadium verlassen.
Die Matrix-Entwickler wollen aber mehr als reine Echtzeitkommunikation. Ihr Ziel ist es, der Fragmentierung des Messenger-Marktes entgegenzuwirken. Bridges sollen die Homeserver um die Fähigkeit erweitern, mit anderen Netzwerken und Protokollen zu kommunizieren. Ein SMS-Gateway ist als Late Beta gekennzeichnet, Bridges für IRC, Slack oder XMPP dagegen noch als Early Beta respektive Alpha. Das Prädikat “stable” trägt bisher keine Komponente.
Die Tester installierten neben den Android- und I-OS-Clients auch den textbasierten IRC-Client Weechat und banden dort das Matrix-Plugin ein. Darüber hinaus chatteten sie im Browser über Vector.im [3]. Funktionsweise und Aussehen erinnern stark an den guten alten Internet Relay Chat. Matrix-Channel mit mehreren Teilnehmern sind wie IRC-Kanäle mit einer Raute gekennzeichnet und tragen zusätzlich den Namen des Homeservers, etwa »#matrix:matrix.org« oder »#lm:matrix.org« .
Die Clients zeigen eine Liste verfügbarer Räume an. Wer eine private Unterhaltung mit einem anderen Teilnehmer starten möchte, öffnet über den jeweiligen Client einen weiteren Raum und lädt die Gegenseite ein. Sobald diese zugestimmt hat, kann die Unterhaltung beginnen.
Befehle wie »/join« , »/nick« , »/me« , »/op« , »/deop« , »/kick« »/ban« und Ähnliches funktionieren ebenfalls genau wie im Internet Relay Chat. Hinzugekommen sind Funktionen zum Up- und Download von Dateien, Audio- und Video-Telefonie (nur einige Clients), eine Suchfunktion und ein Client-übergreifender Cache. Jeder Homeserver speichert nicht nur die Account-Informationen, sondern auch die Kommunikation in einer History, und synchronisiert diese Daten mit anderen Homeservern und Clients. Der Wechsel zwischen Desktop- und Mobilgeräten gelingt somit nahtlos.
Einfach mitreden
Ähnlich wie bei Slack [4], dem aktuellen Star der Teamkommunikation, kann der Gründer beziehungsweise der Benutzer mit Admin-Status die History eines Channels von Beginn an zugänglich und durchsuchbar machen. So lesen auch später hinzugekommene Teilnehmer bereits abgelaufene Diskussionen nach. In den Einstellungen des Matrix-Raums legen Admins fest, welche Meldungen in der History bleiben (Abbildung 1). Einzelne Nachrichten, etwa mit sensiblen Informationen, können sie außerdem gezielt per Mausklick löschen.
Den Testern fehlten allerdings Tools, um die Kommunikation via Matrix besser zu organisieren. Mechanismen, um andere Benutzer wie bei ICQ, Skype & Co. zu einer persönlichen Kontaktliste hinzuzufügen, wären schön. Auch Lesezeichen für einzelne Beiträge, eine Funktion, um Zustimmung anzuzeigen oder besonders wichtige Nachrichten anzupinnen, wie Konkurrent Slack sie bereits bietet, sind noch nicht vorhanden.
Matrix nutzt Web RTC für Audio- und Video-Konferenzen. Einige Clients blenden dazu in offenen Chaträumen sowie in privaten Unterhaltungen Icons ein, um ein Telefonat zu initiieren. Wer in einem Matrix-Channel mit vielen Besuchern auf eines der Symbole klickt, muss sich aber keine Sorgen machen, dass es gleichzeitig bei allen Teilnehmern und auf allen Geräten klingelt – eine Banner-Benachrichtigung zeigt einfach an, dass es in dem Raum gerade eine Konferenz gibt (Abbildung 2), und per Mausklick nehmen Anwender an dieser teil. Anders im privaten Chat – ein hier gestarteter Audio- oder Video-Anruf erreicht gezielt die Gegenseite, die per Mausklick annimmt oder ablehnt.
Telefonate zu anderen Matrix-Nutzern klappten im Test über den Matrix.org-Homeserver mehr oder weniger zuverlässig zwischen Web- und Android-Client sowie über zwei Browser mit Hilfe von Vector.im (Abbildung 3). Anwender reiner Textclients bleiben außen vor, das Feature ist ebenfalls noch nicht in der I-OS-App angekommen. Künftige Versionen fürs iPhone und iPad wollen hier aber nachlegen.
Gut gefiel den Testern, dass Benutzer Benachrichtigungen nicht nur Client-seitig, sondern auch für jeden Channel und jede Unterhaltung konfigurieren können. Ob das Smartphone, Tablet oder der Browser also piepsen beziehungsweise Nachrichten im Sperrbildschirm hinterlassen, kann jeder frei entscheiden.
Das Matrix-Konzept sieht die offene Föderation der Homeserver vor, das heißt, jeder Anwender kann den eigenen Server zum bestehenden Matrix-Netzwerk hinzufügen. Die Tester folgten dazu der Anleitung unter [5]. Sie spielten die Software unter Debian 8.3 (Jessie) ein, was ohne Probleme gelang. Etwas knifflig ist das Spiel mit den SSL-Zertifikaten. Sind diese nicht gültig oder selbst signiert, verweigern einige Clients die Authentifizierung. Das unter [6] geschilderte Vorgehen mit Let’s Encrypt und Nginx sowie eine Umleitung auf den Port 443 helfen weiter.
Obwohl das Matrix-Team großen Wert auf Sicherheit legt, sind derzeit einige Teile des Systems davon ausgeschlossen. Die Kommunikation zwischen den Homeservern ist zwar TLS-verschlüsselt und auch die Chat-History ist nicht ohne Weiteres einsehbar. Die versprochene Ende-zu-Ende-Verschlüsselung für die Clients ist laut FAQ in Kürze verfügbar. Die Metadaten landen jedoch unverschlüsselt auf den Homeservern. Deren Admins oder potenzielle Eindringlinge können also jederzeit auslesen, wer mit wem in Kontakt stand.
Brücken bauen
Der offene Ansatz, die Möglichkeit, sich mit einem beliebigen Client zum Matrix-Netz zu verbinden und einen eigenen Homeserver im Verbund zu betreiben – all das macht das Konzept durchaus interessant. Ob Matrix die Onlinekommunikation revolutionieren kann, hängt aber nicht nur von der Benutzerfreundlichkeit der Clients ab, sondern auch davon, wie leicht es ist, den eigenen Homeserver aufzusetzen. Die Tester fürchten, dass hier eine Art “Diaspora-Effekt” eintreten könnte. Das als Alternative zu Facebook hochgelobte dezentrale soziale Netzwerk [7], das die absolute Kontrolle über die eigenen Daten garantiert, war und ist bis heute einfach nicht leicht zu installieren und zu administrieren.
Auch bei Matrix dürfte die Mehrzahl der Benutzer derzeit über von Drittanbietern bereitgestellte Homeserver chatten, und genau darin sieht die Konkurrenz das Problem. Die Entwickler des Kommunikationstools Psyc [8] betrachten die offene Föderation, also den gleichberechtigten Verbund von Homeservern und deren Verwaltung der Identitäten, als Problem. Es sei naiv, so die Psyc-Entwickler [9], einem beliebigen anderen Server und den Identitäts-Informationen zu vertrauen.
Es bleibt abzuwarten, inwieweit andere Anbieter auf den Zug aufspringen und tatsächlich Brücken zu Matrix bauen. Andere offene Standards wie IRC oder XMPP sind nicht das Problem. Google, Facebook, Skype & Co. hingegen dürfte daran gelegen sein, ihre Nutzer im eigenen Ökosystem zu halten. So sind es bislang eher die kleinen Projekte, die Matrix eine Chance geben. Dazu gehört unter anderem das Projekt Freifunk Kiel [10], das ein Vector.im-Interface zum IRC-Channel verlinkt und sich laut Betreiber vor allem über die History vergangener Nachrichten freut.
Infos
- Matrix: http://matrix.org
- Liste von Matrix-Projekten: http://matrix.org/docs/projects/try-matrix-now.html
- Vector.im: https://vector.im/beta
- Slack: https://slack.com
- Matrix-Homeserver mit Synapse: https://github.com/matrix-org/synapse
- Homeserver mit Let’s Encrpyt/Nginx: https://matrix.org/blog/2016/02/10/advanced-synapse-setup-with-lets-encrypt
- Diaspora: https://diasporafoundation.org
- Psyc: http://www.psyc.eu
- Psyc-Entwickler über Matrix: http://about.psyc.eu/Matrix
- Kieler Freifunk: http://freifunk.in-kiel.de









