Hier wird es zwar sehr technisch, aber wir bemühen uns um einen verständlichen Erklärstil. Ist trotzdem etwas unverständlich oder habt ihr Fragen? Stellt sie in den Kommentaren!

Die Vertraulichkeit eurer Kommunikation ist der Hauptgrund für den Einsatz von Verschlüsselung im Instant-Messaging-Bereich. Ausschließlich euer Kontakt soll die Nachricht lesen können. Doch wie stellt ihr sicher, dass euer Gesprächspartner wirklich der ist, für den er sich ausgibt?

Die Notwendigkeit des kryptografischen Fingerabdrucks

Stellt euch ein Vier-Augen-Gespräch im Internet wie eine Unterhaltung auf einer belebten Party vor — alle um euch herum können mithören. Deswegen wechselt ihr in einen leeren, abhörsicheren Raum, das entspricht einer Ende-zu-Ende-verschlüsselten Unterhaltung. Da ihr euch auf der Party gegenseitig sehen könnt, ist es klar, mit wem ihr redet. Online ist das etwas schwieriger.

Um die Authentizität auch technisch sicherzustellen, müsst ihr irgendwie das Gerät eures Gesprächspartners identifizieren. Das geschieht anhand des kryptografischen Fingerabdrucks. Jedes eurer Geräte hat bei OMEMO ein eigenes Schlüsselpaar: einen öffentlichen, den euer Gesprächspartner verwendet, um eure Nachrichten zu verschlüsseln, und einen privaten zum Öffnen empfangener Nachrichten. Aus dem öffentlichen Schlüssel wird ein 64 Zeichen langer, einzigartiger Fingerabdruck generiert. Ähnlich wie ihr bei einem biometrischen Fingerabdrucksscanner eure Identität beweist — etwa wenn ihr eurer Smartphone entsperrt — kann sich euer Gerät nun auch ausweisen.

Bei der ersten Kommunikation versendet ein Geräte seinen Fingerabdruck. Ihr müsst ihn also nur gegenchecken, um sicherzustellen, dass er wirklich dem gehört, mit dem ihr chatten wollt. Das geschieht am besten über einen zweiten Kanal, bei dem die Authentizität direkt überprüfbar ist oder schon überprüft wurde. Ein Telefonat, ein persönliches Treffen oder eine verschlüsselte E-Mail sind nur einige Beispiele.

Wollt ihr mehr über die Notwendigkeit des kryptografischen Fingerabdrucks erfahren? Dann lest unseren Artikel zur Asymmetrische Verschlüsselung.

Conversations-Vetrauensmodell

In den Experteneinstellungen von Conversations findet ihr den Schalter Blind vertrauen vor der Überprüfung. Dabei handelt es sich um ein Vertrauensmodell, das festlegt, wie öffentlichen Schlüsseln vertraut wird. Wir erklären euch, wie das funktioniert und warum dieses Modell dem der Konkurrenz überlegen ist.

Vertrauensmodell der Konkurrenz

Einige bekannte Messenger — darunter WhatsApp — verwenden das Trust-On-First-Use-Modell (TOFU). Hier gibt es keine Multiple-Client-Unterstützung und deswegen auch immer nur ein Schlüsselpaar. Euer Client kann dem Schlüssel zunächst blind vertrauen, den Chat also ohne den Fingerabdruck verifizieren. Sollte er sich allerdings ändern, etwa weil der Kontakt ein neues Handy bekommen hat, solltet ihr benachrichtigt werden. Es könnte sich nämlich ebenso um einen Angriff handeln, bei dem eure verschlüsselte Kommunikation mitgelesen und verändert werden soll. Die Entwickler von WhatsApp haben sich dazu entschieden, diese Benachrichtigung per default nicht anzuzeigen. Ihr könnt das zwar ändern, dafür müsst ihr aber den Schalter in den Einstellungen suchen. WhatsApp hat damit für die vermeintlich erhöhte Benutzerfreundlichkeit die Sicherheit per default abgeschaltet.

Folgendes sollte also klar sein: Ohne das Überprüfen von Fingerabdrücken ist die Sicherheit, die euch die Ende-zu-Ende-Verschlüsselung bieten soll, nur ein hohles Werbeversprechen.

Der Wunsch nach mehr Usability

Der Wunsch nach mehr Benutzerfreundlichkeit ist durchaus nachvollziehbar. Gerade im Mobilfunkbereich, in dem Nutzer oft ihr Handy oder die Telefonnummer wechseln, könnte das ständige Verifizieren von Fingerabdrücken zu Frust führen. Der gefrustete Nutzer wird letztlich alles abnicken, um  die Software weiter nutzen zu können. Daniel Gultsch, der Entwickler von Conversations, hat sich deswegen das Blind-Trust-Before-Verification-Modell ausgedacht.

Conversations-Vertrauensmodell

Zum besseren Verständnis müssen wir kurz darauf eingehen, wie das Versenden von OMEMO-verschlüsselte Nachrichten in der Multiple-Client-Umgebung funktioniert: Wenn ihr euren Account auf mehreren Geräten nutzt, hat jedes ein eigenes Schlüsselpaar. Damit auf allen eine Nachricht eingehen kann, muss der absendende Client die Nachricht für jedes einzeln verschlüsseln und abschicken. Es wird also nicht nur eine Nachricht abgeschickt, sondern eine an jedes Gerät. Ihr bekommt davon natürlich nichts mit, da das alles im Hintergrund geschieht.

Wenn euer Kontakt ein Gerät mit seinem Account verknüpft hat und euer Client  kennt es noch nicht, wird beim ersten Versenden einer Nachricht ein kurzer Hinweis eingeblendet, dass ihm ab jetzt vertraut wird.

Vereinfacht gesagt: Ähnlich wie beim TOFU-Modell wird vorerst jedem Fingerabdruck blind vertraut. Das geschieht aber nicht still und heimlich, sondern mit einer kurzen Benachrichtigung.

Das Schloss-Symbol markiert blind vertraute Geräte. Nutzer die keinen großen Wert auf das Überprüfen von Fingerabdrücken legen, bekommen also eine ähnliche Usability wie bei WhatsApp geboten — allerdings mit der Security per default eingeschaltet.

Der sicherheitsbewusste Nutzer kann jetzt noch einen Schritt weiter gehen und den Fingerabdruck verifizieren. Daraufhin sind Nachrichten von diesem Gerät mit der höchsten Vertrauensstufe markiert — dem Schild-Symbol.

Nachdem ihr eure Kommunikation auf diese Vertrauensstufe gehoben habt, werden Nachrichten von neuen Geräten grundsätzlich misstraut. Bevor ihr eine weitere Nachricht schreiben könnt, müsst ihr entscheiden, ob ihr diesen vertrauen wollt. In diesem Fall könnt ihr sie vorerst als nicht vertrauenswürdig einstufen und euren Kontakt fragen ob sie ihm gehören. Solange ihr einem Gerät misstraut, erhält es keine Nachrichten von euch, deswegen ist eure Kommunikation weiterhin vertraulich.

Verifizierung leicht gemacht

In unseren Anleitungen empfehlen wir euch, eure Kontakte anzurufen und euch den Fingerabdruck vorlesen zu lassen. Sicherheitsbewusste Nutzer haben gelernt, für ihre Sicherheit etwas von ihrer Bequemlichkeit aufzugeben. Glücklicherweise müsst ihr diesen Kompromiss bei Conversations nicht eingehen. Hier gibt es eine einfachere Möglichkeit — nämlich das Einscannen von QR-Codes.

Zur Verifizierung solltet ihr einen zweiten Kanal wählen. Etwa ein persönliches Treffen oder eine vorzugsweise kryptografisch signierte E-Mail, aber auch euer Social-Media-Profil oder eure Website sind mögliche Optionen.

Zusammenfassung

Ihr könnt euch dank dem Blind-vertrauen-vor-der-Verifizierung-Modell für den bequemen Weg entscheiden, bei dem ihr Fingerabdrücke nicht verifiziert und dabei trotzdem relativ ungestört verschlüsselt kommuniziert., oder ihr nehmt den sicheren Weg, bei dem ihr die Verifizierung per QR-Code durchführt. Diese Entscheidung müsst ihr nicht generell treffen, sondern könnt ihr bei jedem Kontakt individuell entscheiden. Damit schafft dieses Modell einen guten Kompromiss zwischen Benutzerfreundlichkeit und Sicherheit, ohne das eine dem anderen vorzuziehen.

Wenn euch das nicht sicher genug ist, könnt ihr das blinde Vertrauen deaktivieren. Dann müsst ihr wieder jeden Fingerabdruck einzeln überprüfen, bevor ihr verschlüsselt kommunizieren könnt, und könnt weiterhin QR-Codes scannen, um die höchste Vertrauensstufe zu erreichen.

– Eure Datenschutzhelden


Quellen:

https://gultsch.de/trust.html