[matrix] ist eine moderne Alternative zu Jabber/XMPP. Die Server­komponenten (Matrix) sind Open Source und es ist der Aufbau einer förderalen Infrastruktur möglich. Jeder kann einen eigenen Server betreiben, der mit allen anderen Servern kommunizieren kann. Es gibt mehrere Client-Apps, wobei Element.io (früher: Riot) die größte Verbreitung hat.

Nach der Installation einer Client App kann man einen Account erstellen. Den Account kann man auf einem beliebigen Server entsprechend den eigenen Preferenzen frei wählen, unabhängig von der Telefonnummer. Diesen Server nennt man im Matrix Jargon den Homeserver. Über Identitäts­server kann man den Account auf Wunsch mit einer Telefon­nummer oder E-Mail Adresse verbinden, so dass man leichter gefunden wird. Über­wiegend wird dafür der Server "vector.im" verwendet, der damit eine zentrale Funktion übernimmt.

Zentrales Konzept beim Chatten in [matrix] sind die "Räume". Man kann sich auf seinem Home­server neue "Räume" einrichten und dort erstmal Selbst­gespräche führen. Wenn man eine zweite Person in den Raum einlädt und diese Person die Einladung annimmt, kann man chatten, Dateien austauschen oder telefonieren. Wenn man mehrere Personen in den "Raum" einlädt, hat man einen Gruppenchat. Innerhalb des "Raumes" lassen sich Rechte an die Mitglieder vergeben, wer administrieren darf, wer neue Mitglieder einladen darf usw.

Konzeptuell ist [matrix] ein Multi-Cloud Messenger. Im Gegensatz zu Threema oder Signal App, die keine Daten auf den Servern speichern, werden bei [matrix] alle Kontaklisten, Mitglied­schaften in Gruppenchats und persönlichen Informationen auf dem Home­server gespeichert. Außerdem werden Räume inklusive der Nachrichten­inhalte für unbegrenzte Zeit auf allen Matrix Servern in Kopie gespeichert, die an der Kommunikation beteiligt sind.

Im Gegensatz zu anderen Messengern wirbt [matrix] nicht damit, dass Nutzer die volle Kontrolle über ihre Kommunikation behalten. Der Vorteil ist laut [matrix] Werbung:

There is no single point of control or failure in a Matrix conversation which spans multiple servers: the act of communication with someone elsewhere in Matrix shares ownership of the conversation equally with them.
Neben den Techies (Admins der beteiligten Server) und Hackern (April 2019: Matrix.org chat server hacked, chat history lost) haben auch Behörden im Rahmen von Auskunftsersuchen darauf Zugriff. Mit Umsetzung des im Dez. 2019 vorgelegten Gesetzes zur Bekämpfung von Rechts­terrorismus und Hass­kriminalität könnte jeder Dorf­polizist ohne richterliche Prüfung die Daten von dem bevorzugten Server abrufen, der sich juristisch in seiner Reichweite befindet. Sollten die Inhalte der Nachrichten Ende-zu-Ende verschlüsselt sein, können trotzdem detaillierte Metadaten der Kommunikation für die Kommunikations­analyse abgerufen werden. (Wer, wie häufig, mit wem...?)

Nach der Rechtssprechung des BVerfG unterliegen Nachrichten nicht dem Tele­kommunikations­geheimnis nach §10 GG, wenn der Empfänger die Nachricht gelesen hat und die Gelegen­heit hatte, sie zu löschen. Auf dem eigenen Home­server kann man Nachrichten löschen, indem man eine Nachricht antippt und den Menüpunkt "Entfernen" wählt. Der Homeserver wird diesen Löschwunsch auch an alle anderen Server weitergeben, die Kopien der Nachricht gespeichert haben. Die Dokumentation von [matrix] weist aber darauf hin, das damit nur ein Wunsch des Nutzers zum Ausdruck gebracht wird. Es kann nicht sicher­gestellt werden, dass die anderen Server diesen Wunsch auch befolgen. Im [matrix] Slang:

This means that every server has total self-sovereignty over its users data...
Open Source Enthusiasten argumentieren oft, dass man bei förderalen Systemen problemlos einen eigenen Server aufsetzen kann, wenn man keinen vertrauens­würdigen Server findet. Bei [matrix] ist dieses Argument falsch. Man muss nicht nur dem eigenen Server vertrauen sondern auch den Admins aller anderen Server, die an einer Kommunikation beteiligt sind, da alle beteiligten Server eine komplette Kopie der Kommunikation speichern.

Hinsichtlich Sicherheit könnte man noch anmerken, dass Certificate Pining als Schutz­maßnahme gegen Man-in-the-Middle Angriffe auf die TLS Verschlüsselung bei [matrix] aus den gleichen Gründen nicht möglich ist, wie bei Jabber/XMPP. Mit einer förderalen Infrastrutur, wo jeder Interessierte Admin einen eigenen Server betreiben kann, ist es unmöglich, diese Sicherheitsempfehlung umzusetzen.

Im Gegensatz zu Threema oder Signal sind [matrix] Cleints damit weiterhin anfällig für Angriffe, die 2009 in der wiss. Arbeit Certified Lies - Detecting and Defeating Government Interception Attacks against SSL beschrieben wurden. 

Die Ende-zu-Ende Verschlüsselung ist Teil des Sicherheitskonzeptes und standard­mäßig aktiviert. Für eine höhere Sicherheitsanforderungen gibt es folgende Optionen:

  1. Verifikation der Kommunikationspartner: Die Verifizierung der Partner soll sicherstellen, dass man wirklich mit dem gewünschten Gegenüber verbunden ist, und erfolgt durch Scannen von QR-Codes bei einem persönlichen Treffen oder mit Emoji, die man über einen getrennten Kommunikations­kanal (out-of-band) prüfen muss.
  2. Cross-Signing mehrerer Geräte: Wenn man selbst mehrere Geräte verwendet, sollte man das Cross-Signing aktivieren. Dabei werden Signaturschlüssel und Key Backup auf dem Home­server abgelegt und mit einem zusätzlichen Passwort verschlüsselt, das sich von dem Account Passwort unterscheiden sollte. Alternativ kann man den Schlüssel für das Cross-Signing herunter laden und lokal speichern. Die Signatur­schlüssel werden verwendet, um eigene, neue Geräte zu signieren und das in die Vertrauensbasis bestehender Verifikationen einzuschließen.

    Verifizierte Kommunikationspartner müssen nicht jedes einzelne Gerät verifizieren, wenn man Cross-Signing aktiviert. Man selbst entscheidet, welche Geräte vertrauens­würdig sind und das verifizierte Vertrauen wird auf die neuen Geräte übertragen.

Nach einer Verifizierung der Kommunikationspartner und der eigenen Geräte sollte man zusätzlich die Kommunikation mit nicht-verifizierten Geräten verbieten, damit man sicherheits­mäßig von der Verifizierung profitiert.

Neben den Smartphone Clients, deren Krypto-Implementierung jemand im Rahmen eines Audits nach Vorliegen der finalen Version untersuchen könnte, gibt es riot-web als Desktop Client oder für den Einsatz auf einem Webserver.

Aufgrund konzeptueller Schwächen kann man bereits ohne Prüfung der finalen Version sagen, das riot-web nicht für hohe Sicherheitsansprüche geeignet ist:



Es kursiert das Gerücht, [matrix] wäre aufgrund sicherer Krypto vom BSI für klassifizierte Kommunikation der Einstufung VS-NfD in der Bundeswehr zugelassen. Das ist eine Legende bzw. irreführende Werbung, also Fake News. Für die Nutzung des bwmessenger gelten in der Bundeswehr die gleichen Regeln, wie für unverschlüsselte E-Mails. Faktencheck:
  1. [matrix] und der bwmessenger sind auf der Webseite des BSI nicht als VS-NfD zugelassenes IT-Sicherheitsprodukt gelistet.
  2. Das Sicherheitskonzept von [matrix] erfüllt außerdem nicht die Ansprüche des BSI für VS-NfD zugelassene Verschlüsselung.
  3. Das BWI als IT-Dienstleister der Bundeswehr schreibt in der Veröffentlichung:
    In einer weiteren Ausbaustufe können ab Herbst dieses Jahres auch private Endgeräte für die offene Kommunikation via Matrix genutzt werden.

    Also: auf Standard-Endgeräten wie Smartphones oder PCs/Laptops dürfen [matrix] und bwmessenger nur für "offene" Kommuniktion eingesetzt werden, nix VS-NfD.

  4. In der Pressemitteilung der Bundeswehr vom Nov. 2020 werden die Bedingungen für der Einsatz des bwmessengersfür VS-NfD Kommunikation konkret genannt:
    In den kommenden Wochen wird [...] sowie zur Übertragung von Informationen bis zur Schutzklasse VS-NfD (Verschlusssache - Nur für den Dienstgebrauch) auf dienstlichen Endgeräten für die "sichere mobile Kommunikation", den sogenannten SMK-Geräten, nutzbar sein.

Jeder Messenger kann in einer VS-NfD zertifizierten Umgebung eingesetzt werden, wenn SINA Laptops oder SecuSUITE Smartphones als End­geräte genutzt werden mit BSI-zertifizierter Verschlüsselung der Datenspeicher auf dem Endgerät und zertifizierter VPN-Verbindung in einem VS-NfD tauglichen Server Bunker (sogenannte "SMK-Geräte").

In dieser Umgebung hat ein Messenger nur die Aufgabe, Nachrichten zu transportieren. Die Sicherheit wird durch zertifizierte Drittprodukte (sogenannte "SMK-Geräte") gewährleistet.

Der Einsatz von [matrix] unter diesen Bedingungen ist kein Argument für besondere Qualität. [matrix] steht damit auf der gleichen Stufe wie unverschlüsselte E-Mail und Telefonie, die in diesen abgesicherten Umgebungen ebenfalls VS-NfD Inhalte transportieren dürfen.

Der durchschnittliche Leser schlussfolgert natürlich, das [matrix] ein ganz besonders sicherer Messenger ist, wenn Journalisten im Magazin Computerbase schreiben:

Den vormals als Riot.im bekannten Open Source Client nutzt die Bundeswehr mittler­weile auch für Dokumente der Schutzklasse "Verschlusssache - Nur für Dienstgebrauch".
oder bei den Linux News nebenbei erwähnen:
Auch die deutsche Bundeswehr verwendet ab dem Herbst im Projekt BwMessenger den Client Element und ersetzt damit den proprietären Messenger Stashcat. Mit dem Matrix-Client ist dann auch die verschlüsselte Übermittlung von Verschlusssachen möglich.
... ohne dabei zu erwähnen, dass die Sicherheit für VS-NfD dabei nicht durch [matrix] sondern durch andere IT-Sicherheitsprodukte hergestellt wird und [matrix] ähnlich wie normale E-Mails nur die Aufgabe hat, Nachrichten zu transportieren. Das ist irreführende Werbung!