E-Mail-Verschlüsselung

Perfect Forward Secrecy - was ist das?

18.07.2014 von Niko Thome und Rolf Haynberg
Perfect Forwad Secrecy (PFS) erschwert das nachträgliche Entschlüsseln von Daten, die über TLS/SSL-gesicherte Verbindungen versendet wurden. Besonders Freiberufler, Selbstständige und KMUs können von der zusätzlichen Sicherheit profitieren.

Von Bruce Schneier wissen wir, dass es zwei Arten der Kryptografie gibt: "Die eine hält die kleine Schwester vom Lesen der Daten ab, und die andere hindert die Regierung daran." Der NSA-Skandal hat uns gezeigt, wie wichtig vor allem die letztgenannte ist.

Um zu verstehen, welchen Vorteil die Verwendung von PFS bietet, ist es zunächst wichtig zu wissen, wie TLS/SSL die Daten vor unbefugtem Mitlesen schützt. Bei der Kommunikation über verschlüsselte Verbindungen werden die Daten vom Sender mit einem geheimen Sitzungsschlüssel verschlüsselt und vom Empfänger mit dem gleichen Schlüssel wieder entschlüsselt. Die Schwierigkeit liegt darin, dass Sender und Empfänger den Sitzungsschlüssel zuvor austauschen müssen, ohne dass Unbefugte diesen durch Abhören der Kommunikation ebenfalls in Erfahrung bringen können.

Öffentlich und privat

Bei TLS/SSL kommt für diesen Schlüsselaustausch die sogenannte Public-Key-Kryptografie zum Einsatz. Dahinter steckt das Prinzip zweier Schlüssel - der eine ist geheim, der andere öffentlich. Der öffentliche Schlüssel, auch als Zertifikat bezeichnet, wird veröffentlicht. Im Unterschied dazu sollte den geheimen oder privaten Schlüssel wirklich nur der Personenkreis kennen, der die mit dem öffentlichen Schlüssel verschlüsselten Nachrichten wieder entschlüsseln muss. Bildlich beschrieben kann man sich das ungefähr so vorstellen: Der öffentliche Schlüssel ist der Briefkasten, in den jeder etwas einwerfen darf. Mit dem privaten Schlüssel kann jedoch einzig der Eigentümer die Post aus dem Briefkasten herausholen.

Diese Eigenschaft wird nun beim Aufbau einer verschlüsselten Verbindung zwischen zwei Kommunikationspartnern wie folgt genutzt: Der Server präsentiert zunächst sein Zertifikat, also den öffentlichen Schlüssel. Der Client nutzt diesen dann, um dem Server einen zufällig generierten Sitzungsschlüssel mitzuteilen, mit dem beide Seiten später die Daten ver- und entschlüsseln. Durch die spezielle Eigenschaft der Public-Key-Kryptografie ist sichergestellt, dass nur der Server den Sitzungsschlüssel und damit den späteren Datenverkehr entschlüsseln kann. Wer den privaten Schlüssel nicht kennt, kann die Daten nicht entschlüsseln - auch nicht die NSA, wenn sie die Daten abfangen und kopieren sollte.

Problematisch ist dieses Vorgehen, wenn der private Schlüssel bekannt wird. Der E-Mail-Provider Lavabit wurde beispielsweise gerichtlich zur Herausgabe gezwungen. Durchaus denkbar ist auch, dass der Sitzungsschlüssel von einem der immer schneller werdenden Computer irgendwann in der Zukunft errechnet wird. In diesen Fällen lässt sich die Kommunikation noch Jahre später lesbar machen.

Was ist bei PFS anders?

Um das Risiko eines nachträglichen Entschlüsselns der Kommunikation zu mindern, kann Perfect Forward Secrecy genutzt werden. Bei PFS wird für den Schlüsselaustausch ein anderes Verfahren eingesetzt, das nicht auf dem öffentlichen Schlüssel basiert, sondern bei jedem Verbindungsaufbau neue Zufallszahlen für den Schlüsselaustausch nutzt. Benannt ist dieser Ansatz nach Martin Hellmann und Whitfield Diffie, die 1976 an der Standford-Universität in Kalifornien gemeinsam mit Ralph Merkle den Algorithmus für das Schlüsselaustauschprotokoll entwickelt haben. Ein Angreifer, der den verschlüsselten Datenverkehr kopiert und speichert, kann dadurch die abgefangenen Informationen im Nachgang selbst dann nicht entschlüsseln, wenn er den privaten Schlüssel des Servers kennt. PFS setzt die Hürde für eine nachträgliche Entschlüsselung somit deutlich höher.

PFS nutzen

Damit PFS genutzt werden kann, müssen sowohl Server als auch Client diese Art der SSL-Verschlüsselung unterstützen. Client-seitig ist diese Unterstützung bei den aktuellen Versionen der gängigen Browser und Mail-Programme gegeben. Serverseitig bieten ebenfalls alle gängigen SSL-Libraries wie Microsofts SChannel, OpenSSL oder GnuTLS Unterstützung für PFS an. Allerdings ist hierfür ein aktuelles Betriebssystem Voraussetzung. Die populäre Library OpenSSL unterstützt beispielsweise PFS erst ab Version 1.0, die nicht auf älteren Betriebssystemen verfügbar ist.

Sofern der Server über eine passende SSL-Library verfügt, kann PFS in der Konfiguration des entsprechenden Dienstes aktiviert werden. Durch den flexiblen Verbindungsaufbau von SSL ist es außerdem möglich, den Dienst auch weiterhin für ältere Clients, die PFS nicht nutzen können, anzubieten. Bei korrekter Konfiguration handeln Server und Client dann die stärksten Verschlüsselungsalgorithmen zu Beginn der Verbindung selbstständig aus.

Typischerweise verfügt ein SSL-gesicherter Dienst daher über mehrere Profile, die er dem Client anbieten kann. Auf diesem Screenshot sind die Profile des 1&1-SMTP-Servers zu sehen:

Profile, die ECDHE für den Schlüsselaustausch enthalten, bieten dem 1&1-Kunden PFS. In den bevorzugten Profilen (Prefered Server Ciphers) ist PFS ebenfalls enthalten.
Foto: 1&1 Internet AG

Dass ECDHE (Elliptic Curve Diffie-Hellman Exchange) als möglicher Algorithmus zum Schlüsselaustausch angeboten wird, zeigt, dass Kunden PFS mit diesem Server nutzen können - bei 1&1 und anderen E-Mail-Anbietern der Initiative "E-Mail made in Germany" ist ein SSL-Profil mit PFS mittlerweile standardmäßig voreingestellt. Besonderes Know-how oder tieferes Technikverständnis sind somit nicht erforderlich, um die eigene Kommunikation besser zu schützen.

Natürlich ist auch PFS kein Allheilmittel, das absolute Sicherheit garantieren kann. Die Software schützt nicht vor fehlerhaften Implementierungen, sorglosem Umgang mit einem geheimen Schlüssel oder gebrochenen Verschlüsselungsalgorithmen. Immer wenn Kryptografie zum Einsatz kommt, müssen Security-Experten deshalb ständig am Ball bleiben: Patches einspielen, Schlüssellängen prüfen, gebrochene Algorithmen tauschen und auf aktuelle Bedrohungslagen reagieren. Ansonsten hält man nur die kleine Schwester vom Mitlesen ab. (sh)

Tools für die mobile Verschlüsselung -
Verschlüsselung bei den mobilen Plattformen
Windows Phone 8 kann zwar mittels Bitlocker den Telefonspeicher aber nicht die SD-Cards verschlüsseln. Diese Verschlüsselung kann zudem nur durch einen Administrator mittels ActiveSync-Richtlinie aktiviert werden.
Verschlüsselung ab Android 3.0 möglich
Wie hier unter Android 4.4.2 können zwar die Daten auf dem Tablet verschlüsselt werden – wird die Verschlüsselung aufgehoben, führt das aber zu Datenverlust.
Sophos Secure Workspace
Daten verschlüsselt auf diversen Cloud-Speichern oder auch lokal auf der SD-Karte ablegen: Die Lösung Sophos Secure Workspace (früher Sophos Mobile Encryption) stellt die verschiedenen Möglichkeiten übersichtlich bereit (hier ist auch eine Verbindung zu Microsofts OneDrive eingerichtet).
Verschlüsselt in die Wolke
Wurde Sophos Secure Workspace auf dem Gerät installiert, steht dem Nutzer die Möglichkeit offen, beispielsweise seine Dateien bei einem Upload auf einen Cloud-Speicher zu verschlüsseln.
Privilegien erforderlich
Auch wenn die mit verschlüsselte Datei noch die normale Dateiendung besitzt: Verwenden und auf die Daten darin zugreifen kann nur ein Nutzer, der den entsprechenden Schlüssel besitzt und das Kennwort eingibt.
Boxcryptor
Es ist eher selten, dass Verschlüsselungs-Apps auch für die Windows Phone-Geräte zur Verfügung stehen: Die Lösung "Boxcryptor" ist eine angenehme Ausnahme, die auch unter Windows Phone 8.1 problemlos funktioniert.
Zugriff auf unterschiedliche Cloud-Anbieter
Die meisten Nutzer werden "ihren Cloud-Speicher sicher in der Auflistung der Boxcryptor-App wiederfinden.
Ab in die Cloud
Der Nutzer kann mit Hilfe von Boxcryptor schnell und einfach die Dateien sowohl verschlüsselt als auch offen übertragen.
Sichere WhatsApp-Alternative
Mit der freien App "Signal" können Android-Nutzer sehr sicher verschlüsselte Textnachrichten versenden und empfangen. Mittels eines Passworts werden dazu die lokalen Daten und Nachrichten verschlüsselt.
Verschlüsselt texten
Auch die bereits auf dem Mobil-Gerät vorhandenen SMS-Nachrichten kann Signal (das früher TextSecure hieß) importieren und somit sicher abspeichern.
Verifikation der Nutzer untereinander
Sie können mit Hilfe eines Public Keys sicherstellen, dass die Nachricht tatsächlich vom entsprechenden Anwender stammt.
USB-Sticks sicher verschlüsseln
Die Open-Source-Lösung "SecurStick" verwendet ein zunächst etwas ungewöhnliches Konzept, lässt sich aber ideal auch über Plattformgrenzen hinweg einsetzen.
SecurStick im Einsatz
Nach Eingabe des Passworts werden die Daten aus dem verschlüsselten Bereich mittels WebDAV auf einer montierten Dateifreigabe zur Verfügung gestellt.
Ganze Platte verschlüsseln
Betriebssystempartition verschlüsseln oder auch nur einen USB-Stick sichern? Der freie "DiskCryptor" stellt all diese Möglichkeiten übersichtlich zur Verfügung.
Algorithmische Vielfalt
Besonders beeindruckend bei DiskCryptor: Es werden eine ganze Reihe unterschiedlicher Verschlüsselungsalgorithmen unterstützt.
Die eingebaute Verschlüsselung
Die modernen Microsoft-Betriebssysteme wie Windows 7 und Windows 8 stellen mit der Software Bitlocker bereits in vielen Versionen eine Verschlüsselung bereit, die in der "To Go"-Variante auch für USB-Sticks einzusetzen ist.