(Der Artikel ist ins Englische übersetzt hier verfügbar)
Wie bei allen Messengern, die die Ende-zu-Ende-Verschlüsselung ernst nehmen (I’m looking at you, WhatsApp), seid ihr bei der Nutzung von Matrix selbst für die Verwaltung der Schlüssel verantwortlich. Das bedeutet, dass ihr zusätzlich zu eurem eigentlichen Accountpasswort (das Passwort mit dem man sich beim Server anmeldet), auch ein Geheimnis verwahren müsst, dass euch den Zugang zu den Ende-zu-Ende-verschlüsselten Nachrichten gewährt. In der Matrix-Welt ist das allerdings sehr viel komfortabler gelöst als in vielen anderen Messengern, es gilt lediglich einige Tipps zu beachten.
TLDR: Keine Nachrichten verlieren in zwei Schritten
Der Text unten ist zu lang und interessiert euch nicht? Dann sind nur zwei Schritte wichtig:
- Aktiviert das Secure Backup in eurem Desktop-Client (Settings -> Security & Privacy)
- Speichert die Security Phrase oder den Security Key so, dass ihr sie wiederfindet (Passwortmanager!)
Unter Settings -> Security & Privacy sollte das so aussehen:
Fertig. Wenn ihr die Security Phrase / Security Key sicher aufbewahrt sind eure verschlüsselten Nachrichten damit jederzeit wiederherstellbar.
Erstmal: Warum das Ganze?
Sollte jemand Fremdes an euer Accountpasswort gelangen oder Zugang zum Server erhalten (was zwangsläufig für den Admin gilt), kann sich dieser jemand möglicherweise in euren Account einloggen, hat aber keinen Zugriff auf eure bisher ausgetauschten Nachrichten. Ende-zu-Ende-Verschlüsselung ist standardmäßig für alle 1:1-Gespräche aktiviert und optional für Räume aktivierbar. Du erkennst das daran, dass die Eingabezeile für Nachrichten so aussieht:
Kurzer Hintergrund: Wie funktioniert die Verschlüsselung?
Sehr grob gesagt werden in Ende-zu-Ende-verschlüsselten Räumen Sitzungsschlüssel ausgehandelt, die sich regelmäßig ändern (entweder ein mal pro Woche oder wenn ein Benutzer ein neues Gerät hinzufügt) – das passiert zwar völlig automatisch, ist aber ein wichtiges Detail.
Diese ganzen Sitzungsschlüssel verwalten nun zunächst nur eure Clients. Fügt ihr nun einen neuen Client zu eurem Account hinzu (z.B. auf dem Mobiltelefon, oder weil der Rechner neu installiert wird) und loggt euch im Matrix-Account ein, hat dieser Client keinen Zugriff auf die bisherigen, verschlüsselten Nachrichten. Das sieht dann so aus:
Habt ihr kein Backup der Schlüssel, ist die Nachricht nicht mehr lesbar. 😥
Glücklicherweise bietet Matrix sehr viele Möglichkeiten der Schlüsselbackups an:
- Eure eigenen Clients können die Schlüssel untereinander austauschen
- Die Schlüssel können auf dem Server gespeichert werden (Secure Backup)
- Die Schlüssel können aus einem Client exportiert und in einen anderen Client importiert werden (Offline-Backup)
Austausch der Schlüssel zwischen Clients
Der einfachste Weg, die Verschlüsselungsschlüssel auszutauschen. Sind mehrere deiner Clients online und einer der Clients hat die Schlüssel für eine Nachricht, werden diese zwischen den Clients ausgetauscht. Alle deine Clients können auf die Nachrichten zugreifen.
Dafür müssen sich die Clients gegenseitig nur einmalig verifiziert haben. Seit einiger Zeit passiert das über über das sogenannte Cross-Signing. Beim Einloggen mit einem neuen Client werdet ihr aufgefordert, auf einem bestehenden Client und dem neuen Client eine Reihe von Emoji zu vergleichen. Stimmen diese überein und ihr bestätigt das, ist alles erledigt.
Achtung, wichtig: Nur Desktop-Clients (das inkludiert nicht die Browser-Clients!) halten derzeit langfristig Schlüssel vor. Da sich diese regelmäßig ändern, werden Browser-Clients und euer Mobiltelefon in der Regel nicht alle Schlüssel vorhalten und sie damit auch nicht anderen Clients zur Verfügung stellen können. Es empfiehlt sich, mindestens eine Installation von Element-Desktop zu betreiben und diese regelmäßig zu starten, damit alle Schlüssel vorliegen (da Element-Desktop auch in verschlüsselten Räumen die Suchfunktion anbietet und daher alle Schlüssel regelmäßig zum Aufbau des Caches abfragt).
Da diese Methode aus oben genannten Gründen nicht zu 100% zuverlässig ist, solltet ihr zusätzlich eine der beiden folgenden Methoden nutzen.
Speichern der Schlüssel auf dem Server: Secure Backup
Damit ihr euch nicht selbst um eure Schlüssel kümmern müsst und diese auch noch verfügbar sind, wenn ihr keine anderen Clients online habt, können die Schlüssel auf dem Server gespeichert werden.
Moment. Hat der Server-Admin dann nicht doch wieder Zugriff auf die verschlüsselten Nachrichten? Nein, denn auch die Verschlüsselungsschlüssel sichert ihr mit einer Passphrase (“Security Phrase”), die nur ihr kennt (und gut aufbewahren müsst – Passwortmanager!). Daher sollte die Passphrase auch nicht identisch zu eurem Accountpasswort sein.
Normalerweise wird euch euer Client nach dem ersten Login auffordern, das Secure Backup einzurichten. Solltet ihr das übersprungen haben, könnt ihr das unter Settings -> Security & Privacy nachholen.
Wisst ihr eure Security Phrase nicht mehr und habt sie nicht notiert, ist das Secure Backup nutzlos. In diesem Fall solltet ihr (in Element-Desktop) das Secure Backup zurücksetzen und mit einer euch bekannten Passphrase neu initialisieren. Bitte beachtet: eine Passphrase, die ihr euch merken könnt, ist sehr wahrscheinlich nicht sicher. Bitte verwendet eine ausreichend lange Passphrase (mind. 16 Zeichen, gerne mehr), die ihr sicher verwahrt.
Ggfs. ist es danach notwendig, eure (anderen) Clients erneut zu verifizieren.
Letztendlich sollte das Ergebnis so aussehen:
Security Key statt Security Phrase
Alternativ (oder ergänzend) zur Security Phrase könnt ihr das Secure Backup auch über einen Security Key sichern. Dabei handelt es sich um eine Zeichenfolge, die euer Client generiert und die – natürlich genau wie die Security Phrase – sicher aufbewahrt werden muss, entweder als Datei oder als Zeichenfolge (z.B. im Passwortmanager).
Diese kann ebenfalls zum Wiederherstellen der Schlüssel aus dem Secure Backup genutzt werden. Beim Einrichten des Secure Backups habt ihr die folgende Auswahl:
Solltet ihr Bedenken haben, dass ihr euch selbst keine sichere Security Phrase ausdenken könnt, nutzt einfach den Security Key. Ansonsten sind beide Methoden gleichwertig.
Export und Import der Schlüssel
Als letzte Möglichkeit gibt es das Offline-Backup der Verschlüsselungsschlüssel. Ihr könnte diese unter Settings -> Security & Privacy -> Cryptography als Textdatei herunterladen und dort speichern, wo ihr sie wiederfindet. Auch diese Datei wird mit einer Passphrase verschlüsselt. Die Passphrase muss euch bekannt sein, sonst ist die Datei nutzlos. Speichert die Passphrase also in einem Passwortmanager!
Da sich, wie oben beschrieben, die Schlüssel regelmäßig ändern, ist ein aktueller Export notwendig, um auch auf aktuelle Nachrichten zugreifen zu können. Dieser empfiehlt sich auf jeden Fall, bevor ihr beispielsweise euren Rechner neu installiert. Solltet ihr das weiter oben beschriebene Secure Backup nicht nutzen wollen, solltet ihr regelmäßig die E2E room keys exportieren und sicher speichern.
Feedback
Sicherlich habe ich einige Dinge zu kurz gefasst oder möglicherweise unverständlich erklärt. Kommt bei Fragen bitte auf mich zu, ich ergänze den Artikel gerne.
1 thought on “Matrix und E2E-Encryption – oder: was muss ich tun, um keine Nachrichten zu verlieren”
Comments are closed.