11 Jan 2017

Was ist ein privater Messenger?

Privatsphäre Technologie

Also, was ist ein privater Messenger? Viele würden sagen, dass eine Messaging App privat ist, wenn die verschickten Nachrichten verschlüsselt sind. Aber in Wahrheit ist die Privatsphäre von Messenger-Diensten viel komplexer als das. Auf dem Chaos Communication Congress hielten Roland Schilling und Frieder Steinmetz einen Vortrag, in dem sie in einfachen Worten erklärten, was ein privater Messenger ist und welche Eigenschaften eine Messaging App aufweisen muss, um als privat zu gelten.

What is a private messenger?

Die sechs Säulen der privaten Unterhaltung

Um die Idee des privaten Messaging zu verstehen, rieten Schilling und Steinmetz dazu, sich eine private Unterhaltung auf einer Feier vorzustellen. Was machen wir, damit unsere Unterhaltung privat bleibt? Wir ziehen uns wahrscheinlich in einen Raum zurück, in dem niemand außer der Person, mit der wir sprechen wollen, uns hören kann.

Das ist das Wichtigste für eine private Unterhaltung: Egal, ob wir uns unter vier Augen oder online unterhalten, sie muss vertraulich sein. Niemand außer Ihnen und Ihrem Gesprächspartner sollte hören können, worüber Sie sprechen.

An zweiter Stelle steht die Authentizität — Sie müssen wissen, dass die Person, mit der Sie sprechen, wirklich die Person ist, mit der Sie sprechen wollen. Im wahren Leben erkennen Sie das Gesicht dieser Person, aber bei Online-Nachrichten ist das komplizierter.

Wenn die Unterhaltung wirklich wichtig ist – und das ist bei privaten Gesprächen für gewöhnlich der Fall – möchten Sie sicher sein, dass Ihr Gesprächspartner jedes Wort von dem, was Sie sagen, hört und umgekehrt. Darüber hinaus möchten Sie sicher sein, dass die Person genau das hört, was Sie sagen. Anders gesagt, heißt das für private Online-Nachrichten, dass kein Dritter die Nachrichten verfälscht. Und das ist das Konzept der Integrität, das für privates Messaging unverzichtbar ist.

Stellen wir uns jetzt vor, dass eine dritte Person den Raum betrat und einen Teil unserer Unterhaltung hörte. In einer realen Unterhaltung würde diese Person nur den Teil der Unterhaltung kennen, den sie tatsächlich gehört hat, und nicht das, was Sie zuvor oder danach sagten. Jedoch vergisst das Internet nie, und Unterhaltungen sind online nicht so einfach wie offline. Das bringt uns zu zwei wichtigeren Konzepten, die hinter der privaten Nachrichtenübermittlung stehen: Forward Secrecy und Future Secrecy.

In a real-life conversation, this third party would know only the part of the conversation they were actually listening to, not what you were talking about before they came or after they left.

Durch Forward Secrecy (vorwärts gerichtete Geheimhaltung) können Dritte nichts wissen, was Sie mit Ihrem Gesprächspartner besprochen hatten, bevor diese den Raum betraten, und durch Future Secrecy (zukünftige Geheimhaltung) können Dritte nicht wissen, worüber Sie sprachen, nachdem sie den Raum verließen.

Sagen wir mal, dass Sie über eine delikate Angelegenheit sprachen. Wenn in diesem Fall jemand behauptet, dass Sie etwas zu diesem Thema gesagt haben, könnten Sie dem widersprechen wollen. Wenn die Unterhaltung privat war, steht Ihr Wort („Das habe ich nicht gesagt!“) gegen das des andren („Das hast du doch gesagt!“). In diesem Fall kann niemand etwas beweisen, und das bringt uns zu dem wichtigen Konzept der Abstreitbarkeit.

Privatsphäre in Nachrichten in die Tat umsetzen

Das sind also die sechs Funktionen, die in eine Messaging App implementiert werden müssen, bevor wir sie privat nennen können. Sie können recht einfach erreicht werden, wenn es um reale Unterhaltungen geht – private Gespräche unter vier Augen – aber wenn es zu Nachrichtendiensten kommt, gibt es immer Dritte — den Dienst an sich. Wie können diese sechs Säulen angewendet werden, wenn es um Dritte geht?

Geheimhaltung wird durch Verschlüsselung erreicht. Es gibt verschiedene Arten von Verschlüsselung, symmetrische und asymmetrische, nämlich durch das Public Key Kryptosystem. Private Messenger (in diesem Fall überprüften Schilling und Steinmetz Threema als Beispiel) verwenden beide, indem sie einen gemeinsamen Schlüssel aus dem öffentlichen Schlüssel einer Person und dem privaten Schlüssel einer anderen erstellen. Oder den privaten Schlüssel der ersten Person und dem öffentlichen Schlüssel der zweiten — die Mathematik hinter der Verschlüsselung funktioniert auf die gleiche Art.

Daher ist der Schlüssel für beide Personen identisch und eindeutig (kein anderes Paar erhält denselben Schlüssel). Die App generiert den Schlüssel unabhängig und bewahrt dadurch die Geheimhaltung (er wird nicht übertragen) – beide Personen erhalten ihn genau dann, wenn sie sich dazu entschließen, miteinander zu reden.

The app generates the key independently and maintains confidentiality by not transferring it — both people have it right after they decide to talk to each other.

Mit dieser Methode wird auch Integrität geprüft – Dritte, die etwas einem bereits verschlüsselten Text hinzufügen, würden ihn unlesbar machen. In diesem Fall würde Ihr Gesprächspartner entweder das, was Sie ihm zuvor gesendet haben, oder eine Fehlermeldung empfangen (da der Messenger den Geheimtext nicht entschlüsseln konnte).

Für eine noch stärkere Geheimhaltung könnten Sie die Tatsache verbergen wollen, dass Sie und Ihr Gesprächspartner sich überhaupt unterhalten haben. Eine weitere Verschlüsselungsebene kümmert sich darum. Die Nachricht, die Sie senden, wird mit dem Key verschlüsselt, den Sie und Ihr Gesprächspartner teilen – es ist so, als würde man die Nachricht in einen adressierten Umschlag stecken. Und dann verschlüsseln Sie ihn und stecken ihn in einen weiteren Umschlag, den Sie dann an die Serveradresse des Messengers schicken. In diesem Fall nutzen Sie den Schlüssel, der auf der Basis Ihres Schlüssels und dem Ihres Servers generiert wurde.

Also wird dieser Umschlag in einem Umschlag an den Messender-Server geschickt. Sollte ein potentieller Angreifer versuchen, einen Blick darauf zu werfen, wird er wissen, dass Sie ihn gesendet haben, aber nicht, an wen. Der Messenger-Server öffnet den äußeren Umschlag, sieht die Zieladresse (nicht die Nachricht an sich), steckt die Nachricht in einen weiteren Umschlag und sendet ihn an den Empfänger. An diesem Punkt kann ein potentieller Angreifer nur einen Umschlag sehen, der vom Messenger-Server an den Empfänger geht, aber nicht, woher er kommt.

Mit vielen Umschlägen, die in alle Richtungen fliegen, ist es schwer herauszufinden, wer Ihre Nachricht empfangen hat. Schwer, aber nicht unmöglich: Wenn jemand alle Umschläge wiegen würde, könnte er zwei mit dem gleichen Gewicht finden und sie mit dem Gesprächspartner in Verbindung bringen. Um sicher zu stellen, dass das nicht passieren kann, füg das System jedem Umschlag ein zufälliges Gewicht hinzu, wodurch der Umschlag, den Sie senden und der Umschlag, den Ihr Gesprächspartner erhält, niemals das gleiche Gewicht haben.

To ensure that can't happen, the system adds a random weight to every envelope, so the envelope you sent and the envelope your partner received never weigh the same.

Es ist schwieriger, Authentizität zu bewahren. Einige Messaging Apps verwenden E-Mail-Adressen oder Telefonnummern als User-IDs – dadurch kann der User beweisen, dass er der ist, der er vorgibt zu sein. Aber Telefonnummern und E-Mail-Adressen sind vertrauliche Daten, die Sie vielleicht nicht mit der App teilen wollen. Einige – wie Threema — raten Usern dazu, eine unterschiedliche ID zu nutzen und QR-Codes auszutauschen, um ihre Identität zu prüfen.

Abstreitbarkeit wird in diesem Fall dadurch erreicht, dass jede Nachricht an beide Empfänger der Unterhaltung gesendet wird. Der Schlüssel ist für beide Personen derselbe. Daher kann jemand, dem es gelingt, eingehende Nachrichten abzufangen und zu entschlüsseln, nicht sicher sein, von wem sie gesendet wurde.

Sie kümmern sich um Vertraulichkeit, Authentizität, Vollständigkeit und Abstreitbarkeit. Was ist mit vorheriger und zukünftiger Integrität? Wenn der persönliche und öffentliche Schlüssel einer Person immer derselbe ist, dann kann der Angreifer vorherige und zukünftige Nachrichten verschlüsseln.

Um dies einzuschränken, müssen Schlüssel regelmäßig vom Server neu ausgestellt werden. Wird der Schlüssel z. B. einmal im Monat neu erstellt, dann könnte der Angreifer den Verlauf der Unterhaltung nur diesen Monat lesen und würde nach einer Änderung des Schlüssels nicht mehr in der Lage sein (in der Praxis wird ein Schlüssel viel häufiger neu erstellt).

Kurz und knapp

Hier endet unsere kurze Einführung in die private Nachrichtenübermittlung. Tatsächlich ist es viel komplizierter, da es moderne Messaging Apps mit Mediendateien, Gruppen-Chats und manchmal sogar Videoanrufen zu tun haben.

Wenn Sie mehr dazu erfahren möchten, empfehlen wir Ihnen das Video unten von 33C3. Darin erklären Schilling und Steinmetz nicht nur grundsätzliche Ideen, sondern auch, wie sie Threema untersuchten und herausfanden, wie es Schlüsselprinzipien der Privatsphäre implementiert. Wir genossen das Video, und hoffen, dass es bei Ihnen nicht anders sein wird.