Vor ein paar Monaten wurde ich auf das Matrix-Netzwerk aufmerksam gemacht. Es stellt angeblich eine gute Alternative zu den “klassischen” Messengern wie WhatsApp, Signal oder Threema dar, da es einerseits dezentral organisiert ist und andererseits auch die verwendbare Software eine größere Auswahl zulässt als bei diesen. Ein kleiner Bericht über meine Erfahrungen mit allen Höhen und Tiefen.
Account anlegen
Zunächst habe ich begonnen, mir einen Account anzulegen. Das ging auch problemlos. Dann habe ich mich im Web-Client von Element eingeloggt. Da ich noch niemanden kannte, der in diesem Netzwerk aktiv ist, legte ich mir daraufhin einen zweiten Account an, um auf dem Weg der Selbstgespräche dieses Netzwerk kennenzulernen. Auch hier kam obiger Web-Client zum Einsatz, jedoch auf einem anderen PC. So weit kein Problem.
Revolt (Ubuntu-Client)
Dann installierte ich Revolt unter Ubuntu, um das Ganze auch mit einem Desktop-Client zu testen. (Da es zahllose Treffer bei Suchmaschinen zu diesem Begriff gibt, die oft gar nichts mit Software zu tun haben, verlinke ich direkt das Github-Projekt.) Doch wer nun denkt, mit Username und Passwort sei alles erledigt, irrt sich. Es ist eine besondere Zweifaktor-Authentifizierung, so könnte man es jedenfalls nennen. Denn sobald schon eine Sitzung für diesen Account existiert oder jemals existiert hat, sollte (muss) die neue Sitzung verifiziert werden. Dies geht entweder mittels des anderen Geräts oder mit dem (hoffentlich gespeicherten) Sitzungsschlüssel. Man kann diesen Schritt auch überspringen, aber dann kann man in dieser Sitzung auf keine alte Nachricht mehr zugreifen!
Sitzung verifizieren
In diesem Verifizierungsschritt steckt ein sinnvoller Gedanke: Einerseits kann sich jemand zwar durch ein geklautes oder erratenes Passwort (der Username ist evtl. allgemein bekannt) an meinem Account anmelden, er hat dann aber keinerlei Zugriff auf alte Nachrichten. Der zweite Vorteil daran ist, dass ich auf meinen zu dem Zeitpunkt bereits existierenden Sitzungen sofort eine Nachricht bekomme, die Verifizierungsaufforderung.
Wenn ich diesen Weg der Verifizierung wähle, gibt es wieder mehrere Möglichkeiten. Zunächst muss ich überlegen, ob ich auf beide Sitzungen direkten Zugriff habe.
Falls das der Fall ist und der neue Login auf einem Gerät mit Camera durchgeführt wurde, kann ein QR-Code angezeigt werden. Dieser enthält alles Notwendige, und wenn er mittels z.B. Element unter Android gescannt wurde, ist alles in Ordnung.
Verfügt das Gerät jedoch über keine Camera, kann das nebenstehende Prinzip verwendet werden. Dabei wird eine Reihe von (jedes mal anderen) Icons angezeigt, die auf beiden Geräten verglichen werden müssen. Dann klickt man auf “passen zueinander” oder eben nicht.
Und wenn die Sitzung gerade nicht verfügbar ist, bleibt nur noch der Sicherheitsschlüssel, der beim Erstellen des Accounts angezeigt wurde.
Bis hierhin macht das einen guten Eindruck.
Räume
Offenbar wird alles innerhalb von Matrix als “Raum” bezeichnet. Dabei ist es egal, ob es sich um einen 1:1-Chat oder eine Gruppe mit mehreren Teilnehmern handelt. Letztlich sind diese beiden Sachen ja auch nicht so verschieden, ein 1:1-Chat ist halt einfach ein Raum mit nur zwei Teilnehmern. Da diese Chats natürlich alle verschlüsselbar sind, muss es auch eine Schlüsselverwaltung geben.
Zunächst mal sagte ich “verschlüsselbar”, was eine gewisse Wahlfreiheit beinhaltet. In der Tat kann dies beim Anlegen eines Raums auch ausgewählt werden. Und da fingen meine Probleme an. Ich habe einen Raum mit Account 1 angelegt und Account 2 dazu eingeladen. Account 2 nahm die Einladung an und schrieb was, Account 1 konnte es lesen. Dann schrieb Account 1 etwas, und Account 2 …
Das ist zwar richtig, das hatte ich eingestellt. Aber Account 2 wird als “vertrauenswürdig” eingestuft, sollte also gemäß dieses Hinweises die Nachrichten lesen können:
Vorläufiges Fazit
Sicherheit ist schön, aber sie muss auch praktikabel sein. Wenn so ein einfaches und vor allem typisches Szenario bereits zu Problemen führt, ist das keine “encryption for the masses”. Ich fürchte, dass ich Matrix dann leider doch nicht als Alternative zu den etablierten Messengern wie Signal oder Threema empfehlen kann. Und dabei haben wir noch nicht mal angefangen, Element unter Android zu testen, das ebenfalls Probleme mit der Schlüsselverwaltung hat.
Neueste Kommentare