© momius - Fotolia.com

Verschlüsselung: Grundlagen

Ein Thema, welches in den letzten Tagen in der Presse, in den Medien und Foren gerne als "Allheilmittel" gegen staatliche Überwachung oder Wirtschaftsspionage genannt wurde, ist Verschlüsselung.

Um es vorwegzunehmen: Zweckmäßig und korrekt eingesetzt, ist Verschlüsselung sinnvoll - aber sie ist kein Allheilmittel. Die Verschlüsselung einer E-Mail verschlüsselt beispielsweise nicht den Betreff, den Empfänger oder Absender (="Metadaten"), sondern nur den Inhalt und ggf. die Dateianhänge. Der Header, oder korrekt ausgedrückt die "Header Section", bleibt etwa unverschlüsselt. Der Header enthält neben den Absende- und Empfangsadressen auch Informationen über die Route, die die E-Mail vom Absender zum Empfänger genommen hat. Da im Rahmen der Vorratsdatenspeicherung (= was übrigens gleichbedeutend mit dem aus wahltaktischen Gründen eingeführten Wort "Mindestdatenspeicherung" ist) oder den bekannten Überwachungsprojekten hauptsächlich Metadaten gesammelt werden, bringt eine Verschlüsselung an dieser Stelle erst mal wenig gegen die Erstellung von Profilen, wer mit wem wann zu welchem Thema Nachrichten ausgetauscht hat.

Kurzer Exkurs: Auch wenn es oftmals fälschlicherweise angenommen wird, enthält der Mailheader keine Informationen, die für die "technische Zustellung" der E-Mail notwendige wären. Die Absende- ("Envelope Sender") und Empfängeradressen ("Envelope To") werden im Rahmen einer SMTP Sitzung zwischen den Mailservern ausgetauscht. Häufiger lässt sich dieser Effekt bei SPAM-Mails beobachten: Eine Mail wird mir zugestellt, obwohl ich gar nicht im "An", "CC" oder "BCC" Feld einer Mail gelistet war.

Informationen zur Sicherheit von SSL / TLS Verbindung im Internet unter Berücksichtigung der letzten, in der Presse bekannt gewordenen Meldungen, habe ich in einem eigenen Beitrag veröffentlicht:
--> TLS (SSL) Verschlüsselung und Schwachstellen im Detail

Symmetrische und asymmetrische Verschlüsselung

Verschlüsselung wird grob unterteilt in symmetrische und asymmetrische Verfahren. Bei der symmetrischen Verschlüsselung wird derselbe Schlüssel bei der Ver- und Entschlüsselung verwendet.

Symmetrische Verschlüsselung

Beispiele für symmetrische Algorithmen sind der Rijndael-Algorithmus (= "AES"), Blowfish, Twofish oder Serpent. Serpent wurde während des Finales zur Bestimmung des AES-Algorithmus übrigens als sicherster Algorithmus angenommen, die Wahl auf Rijndael fiel vor allem aufgrund von Performance-Gründen.

Bei einem asymmetrischen Verfahren unterscheidet sich der Schlüssel zur Ver-und Entschlüsselung.

Die Sicherheit der asymmetrischen Verschlüsselung basiert darauf, dass der private Schlüssel nur mit extrem hohem Aufwand aus dem öffentlichen Schlüssel berechnet werden kann. Die RSA Verschlüsselung nutzt so genannte mathematische Einweg-Funktionen. Vereinfacht bedeutet dies, das Berechnungen in eine Richtung (= Verschlüsselung) sehr einfach sind, in die andere Richtung (=Entschlüsselung ohne Kenntnis des privaten Schlüssels) nur sehr schwierig. Sehr schön wird dies in einem Skript von Dirk Kruse näher erläutert.

Asymmetrischen Verschlüsselung

Bei asymmetrischen Verfahren ist auf eine ausreichende Schlüsselstärke zu achten, eine Stärke von 4096 Bit bei RSA wird empfohlen. Ebenfalls erwähnt sei an dieser Stelle noch der Elliptic Curve Digital Signature Algorithm (ECDSA).

Schwachstellen von Verschlüsselungen

Verschlüsselungen können, bei ausreichender Komplexität und Länge des Passworts, meist nicht durch Brute-Force Angriffe geknackt werden. Unter einem Brute-Force Angriff versteht man das systematische, automatisierte Durchprobieren aller möglichen Kombinationen. Die Schwachstellen der Verschlüsselung liegen an anderer Stelle, einige Beispiele:

Ein Wort zu Festplattenverschlüsselungen: Ein Angreifer, der sein Ziel als "sicherheitsbewusst" einordnet, wird sich andere Wege suchen, um an die Daten zu gelangen. Er wird nicht das Notebook des Opfers klauen und alle möglichen Passwortkombinationen durchprobieren. In vielen Foren wird häufig vermutet, dass Geheimdienste oder professionelle Hacker oft andere, geheime Methoden zur Entschlüsselung einer verschlüsselten Information verwenden. Ich persönlich glaube dies nicht, auch Behörden sind an die Regeln und Möglichkeiten der Mathematik gebunden.

Die Schwachstelle liegt hierbei wo anders: Die Tatsache, dass das Passwort entschlüsselt im Arbeitsspeicher liegt, während der Nutzer mit seinen Daten arbeitet. An dieser Stelle gibt es ganz andere Möglichkeiten, Stichwort Keylogger, Trojaner und Co.

Anderes Beispiel Flughafenkontrolle: Die heimliche Installation einer Software, die als "Layer" vor dem eigentlichen Betriebssystem startet und die Passworteingabe beim Booten protokolliert. Die wenigsten Nutzer werden in der Lage sein, Veränderungen dieser Art zu identifizieren.

Unabhängig von der gerade erwähnten Datenmanipulation wird es auch seinen Grund haben, dass einige Unternehmen ihre Mitarbeiter verpflichten, ihre Notebooks vor und nach der Flughafenkontrolle zu wiegen, um Hardware-Modifikationen festzustellen.

Ich möchte anhand weiterer Beispiele demonstrieren, dass Verschlüsselungen meistens nicht durch Kenntniss des Passworts geknackt werden, sondern durch andere Möglichkeiten.

Zuvor noch ein Wort zur Passwort-Komplexität: Die Anzahl der Passwortmöglichkeiten wird berechnet aus Anzahl möglicher Zeichen^Passwortlänge:

# Mögliche Zeichen
a-z (Kleinbuchstaben) = 26
A-Z (Großbuchstaben) = 26
0-9 (Zahlen) = 10
Sonderzeichen auf der Tastatur = 34
Alle Zeichen auf der Tastatur = 26+26+10+34 = 96

# 6 Stelliges Passwort
96^6 = 782757789696
Rechenzeit eines Brute-Force-Angriffs bei 1 Milliarde Schlüsseln pro Sekunde = 13 Minuten

# 10 stelliges Passwort
96^10 = 6,64832636×10¹⁹
Rechenzeit eines Brute-Force-Angriffs bei 1 Milliarde Schlüsseln pro Sekunde = 2.108 Jahre

Wichtig ist also neben der Komplexität insbesondere die Passwortlänge! Bei einer ausreichenden Länge und Komplexität kann davon ausgegangen werden, dass das Passwort durch durchprobieren aller Möglichkeiten (Brute Force) in keinem angemessenem Zeitraum geknackt werden kann.

Ein Zusatz zu den Schlüssellängen: Ein 2048 bit Schlüssel ist nicht, wie häufig angenommen, doppelt so sicher wie ein 1024 bit Schlüssel, sondern hat eine Länge 2^2048. Ein 4096 bit Zertifikat (2^4096) ist somit deutlich sicherer als ein 2048 bit Zertifikat (2^2048).

Einige weitere Schwachstellen, an die selten gedacht wird:

  • Die Auslagerungsdatei: Hat der Computer kaum noch freien Arbeitsspeicher, wird der Inhalt des Arbeitsspeichers auf die Festplatte ausgelagert ("swapping"). Befindet sich das aktuelle Passwort zufällig im ausgelagerten Bereich, wird dieses "im Klartext" auf die Festplatte geschrieben. Kommt der Computer nun in eine forensische Untersuchung, kann dieses ausgelesen werden, da der Speicherplatz der Auslagerungsdatei beim Herunterfahren standardmäßig nicht überschrieben wird / werden kann.
  • Memory Dump Files: Bei Fehlern wird von Anwendungen oder dem Betriebssystem häufig ein Speicherabbild erstellt, welches den aktuellen Arbeitsspeicherinhalt beinhaltet.
  • Passwortänderungen: Tools wie Truecrypt oder Boxcryptor verschlüsseln die Daten nicht mit dem Passwort des Nutzers sondern mit einem Masterkey, welcher wiederum mit dem Passwort des Nutzers verschlüsselt wird. Eine Passwortänderung ändert nicht den Masterkey (da sonst alle Daten neu verschlüsselt werden müssten), sondern nur das Passwort, mit welchem der Masterkey verschlüsselt wird. Gelingt es einem Angreifer, einen alten Datei- oder Partitionsheader zu extrahieren, können die Daten trotz Passwortänderung mit dem vorherigen Passwort entschlüsselt werden.

Zusammenfassung: Gängige Verschlüsselungsverfahren sind, bei einer ausreichenden Schlüsselstärke und korrekter Implementierung sowie Anwendung, als sicher einzustufen. Angegriffen werden selten die Verfahren, sondern hauptsächlich die Vektoren, die eine Identifikation des Schlüssels ermöglichen. Sicherheit ist keine einzelne Maßnahme sondern ein Maßnahmenpaket, ein fortlaufender Prozess.

Es gibt keine 100% Sicherheit. Jeder Anbieter, der das verspricht, ist unseriös. Die Thematik ist schlichtweg zu komplex und weitläufig, als das eine 100% Sicherheit möglich wäre. Sicherheit ist stets ein Balanceakt zwischen Aufwand und Komfort.

Bildnachweis:

  • © momius - Fotolia.com

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert