Verschlüsselung: Sicher ist sicher. Oder?
Laut den jüngsten Enthüllungen Edward Snowdens sollen der US-Geheimdienst NSA und die britische Variante GCHQ in der Lage sein, bei verschlüsselten Verbindungen über SSL-Zertifikate mitzulesen. Zu Recht fragen uns viele Kunden, inwieweit man der Berichterstattung trauen könnte und was denn nun wirklich noch sicher ist.
Medienberichterstattung: NSA liest mit
Es soll im Jahre 2010 erstmals gelungen sein, durch Sicherheitslücken und Hintertüren verschlüsselte Verbindungen mitzulesen. In der Berichterstattung werden die vielen Probleme fokussiert, die in Protokollen und Algorithmen in den letzten Jahren gefunden wurden. Zahlreiche der meistverbreiteten Verschlüsselungstechnologien setzen auf Algorithmen, die veraltet sind und nicht den heutigen technischen Möglichkeiten entsprechen. Nun ist das große Rätseln ausgebrochen: Welche Algorithmen sind denn noch sicher? Im Folgenden geben wir Ihnen einen Überblick zum aktuellen Stand.
AES-Verschlüsselung
AES steht für Advanced Encryption Standard. Dieser symmetrische Verschlüsselungsalgorithmus gilt heute als der wichtigste und stammt ursprünglich aus einem von der NIST veranstalteten Wettbewerb im Jahre 2001. Kritiker gaben seinerzeit zu bedenken, dass der Rijndael-Algorithmus (benannt nach seinen Entwicklern Joan Daemen und Vincent Rijmen) eine zu simple mathematische Struktur aufwies. Viele Kryptographen meinen, dass man auf weitere Finalisten wie Twofish oder Serpent hätte setzen sollen. Trotz aller Kritik scheitern sämtliche Angriffe an dem Verfahren und die drei möglichen Varianten 128, 192 und 256 Bit gelten als sicher.
Im Jahre 2012 wollten es Alex Biryukov und Johann Großschädl genau wissen: In einem Versuch (PDF) sollte der Aufwand ausgerechnet werden, der nötig wäre, um mit einem Supercomputer eine 128 Bit-Verschlüsselung zu knacken. Unmöglich ist es zugegebener Maßen nicht. Aber allein die Chipproduktion würde rund 80 Milliarden US-Dollar verschlingen und einem solchen Superrechner bräuchte eine Leistung von 4 Terawatt: Mehr, als die USA insgesamt an Energie verbrauchen!
Theoretisch ist es also möglich, einen Supercomputer zum Mitlesen von AES-Verschlüsselungen zu bauen. Aber um ihn einsatztauglich zu machen, wären der Energieaufwand und der Platzanspruch viel zu immens. Damit gilt die AES-Verschlüsselung als sicher – wenngleich es nicht unbedingt der beste Algorithmus ist. Wer ganz sicher gehen will, kann mit 256 Bit verschlüsseln oder Alternativen wie Twofish verwenden.
RSA-Verschlüsselung
1977 entwickelt, ergibt sich die Abkürzung RSA schlichtweg aus den ersten Buchstaben der Nachnamen seiner „Väter“: Rivest, Shamir und Adleman. Als asymmetrisches Verschlüsselungsverfahren wird ein privater und ein öffentlicher Schlüssel benötigt. In den 90ern setzte man auf Längen von 512 bis 1.024 Bit – damit entsprachen die Längen etwa denen des seinerzeit aufkommenden PGP. Die Sicherheit von RSA-Verschlüsselungen hängt von der Faktorisierung großer Zahlen ab – erstmals wurde 1999 eine 512 Bit-Zahl faktorisiert. Im Jahre 2003 warnte der Erfinder Shamir davor, dass der 1.024 Bit-Schlüssel unsicher sei: Neben der Optimierung von Faktorisierungsalgorithmen gab es mittlerweile Spezialhardware, um die Schlüssel zu brechen.
Die Kosten für einen Supercomputer, der diese Schlüssel knacken könnte, liegt laut Berechnungen von Eran Tromer bei rund einer Million US-Dollar – und damit wohl locker im Bereich des Finanzierbaren für die NSA. Die einzig noch offene Frage ist praktischer Natur: Können die Geheimdienste 1.024 Bit-Verschlüsselungen in großer Zahl brechen oder nicht? Einsatz findet RSA mit 1.024 Bit in vielen HTTPS-Webseiten und im Anonymisierungsnetzwerk Tor.
Im wahrsten Sinne des Wortes ist ein weiterer Knackpunkt bei RSA das Padding-Verfahren. In einem Vorverarbeitungsschritt, also vor der Verschlüsselung oder Signierung, wird auf den Standard PKCS #1 1.5 gesetzt – und damit auf ein veraltetes Verfahren, bei dem zwar keine Sicherheitsprobleme bekannt sind, das aber unsicher zu implementieren ist. Schon 1994 kamen von den Kryptographie-Experten Bellare und Rogaway mit OAEP und PSS zwei bessere Padding-Varianten für Verschlüsselung und Signaturen. Spezifiziert im Standard PKCS #1 2.1, nutzt diese Verfahren bis heute allerdings kaum jemand.
Schon vor zehn Jahren warnte einer der Entwickler von RSA vor selbigem. Während RSA-Schlüssel mit einer Länge von 2.048 Bit als sicher gelten, sollte diese Warnung vor 1.024 Bit-Schlüsseln ernst genommen werden. Fast alle Anwendungen unterstützen auch 4.096 Bit – entgegen zu OAEP und PSS, die von Software und Protokollen bislang kaum unterstützt werden.
Hash-Verschlüsselung
In vielen Verschlüsselungsprotokollen finden kryptografische Hash-Algorithmen Anwendung. Als vor acht Jahren die Chinesin Wang Xiaoyun einen Kollisionsangriff auf das häufig eingesetzte MD5 präsentierte, galt dieses Verfahren und das jüngere SHA-1 nicht mehr als sicher. Öffentliche Kollisionen auf SHA-1 blieben bislang zwar aus, Experten rechnen aber damit, dass das nur eine Frage der Zeit ist. Nebenher ist die Tatsache nicht gerade vertrauenserweckend, dass SHA-1 und SHA-2 von der NSA entwickelt wurden. SHA-3 entstand in einem Wettbewerb, bislang gibt es allerdings keine endgültige Version des aktuellsten Standards.
Zum Sicherheitsproblem werden Kollisionsangriffe nur unter speziellen Bedingungen, etwa bei digitalen Signaturen oder alten Hash-Verfahren. Kollisionsresistente Verfahren sind im Zweifel die sicherere Alternative. Obwohl der Standard SHA-2 von der NSA entwickelt wurde, gilt er als sehr sicher, während man nicht mehr auf MD5 und SHA-1 setzen sollte.
RC4-Verschlüsselung
RC4 gilt als einer der Kandidaten, bei denen kryptografische Angriffe am wahrscheinlichsten gelingen. Die Stromverschlüsselung wurde 1987 von Ron Rivest entwickelt und der Algorithmus sollte eigentlich nicht veröffentlicht werden; 1994 wurde allerdings der Quellcode in einer Newsgroup offengelegt. Durch Schwächen beim CBC-Verfahren von TLS nahm die RC4-Nutzung jüngst deutlich zu; viele Serverbetreiber wechselten. Derzeit werden noch immer Verbindungen zu google.com via RC4 abgesichert.
Der Algorithmus ist äußerst schnell und der Code nicht gerade lang. Besonders sicher ist RC4 nicht. Adi Shamir, einer der Entwickler der RSA-Verschlüsselung, zeigte im Jahre 2001, dass die Struktur der ersten 256 Bytes des RC4-Schlüsselstroms durchaus vorhersehbar ist. Die ersten Schlüsselstrombytes wurden daraufhin verworfen, aktuelle Forschungsergebnisse zeigen aber, dass sich auch weitere Schlüsselstrombytes nicht wie Zufallbytes verhalten. Auf RC4 sollte nicht mehr gesetzt werden – es ist alt und nicht sicher.
CBC / HMAC
Bei CBC und HMAC handelt es sich um Verschlüsselungsmodi: Soll AES in einem Protokoll, etwa TLS, genutzt werden, wird dafür ein Verschlüsselungsmodus – üblicherweise bisher CBC – ausgewählt. Neben der Verschlüsselung muss ein Verfahren angewendet werden, welches die Integrität einer Verbindung garantiert – hier wird dann das MAC-Verfahren HMAC eingesetzt. Echte Sicherheit bietet folgende Konstruktion: Erst werden die Daten verschlüsselt, anschließend ein MAC über diese verschlüsselten Daten gebildet („Encrypt-then-MAC“-Verfahren). TLS arbeitet entgegengesetzt: „MAC-then-Encrypt“. Wenn ein Angreifer nun erkennen kann, dass ein mit Fehlern versehenes Paket beim Entschlüsseln oder der MAC-Prüfung abgelehnt wurde, ist die verschlüsselte Verbindung angreifbar.
In der neusten Version TLS 1.2 kommt der GCM zum Einsatz – ein authentifizierter Verschlüsselungsmodus, der in einem Step für Integrität und Verschlüsselung sorgt. Das Problem bei der Sache: Kaum ein Browser unterstützt bislang diese neueste Version; Mozilla und Google geloben für Firefox und Chrome allerdings Besserung. Wenn Blockchiffren also genutzt werden, dann mit authentifizierten Verschlüsselungsmodi. Setzt man auf CBC, dann nur mit OpenSSH ab der Version 6.2, die die Variante Encrypt-then-MAC unterstützt (zuerst wird verschlüsselt, aber der MAC über die unverschlüsselten Daten gebildet).
Gute Verschlüsselung schützt
Viele haben in den vergangenen Wochen aufgeschrien: Die NSA könne jedwede Art von Verschlüsselung knacken. Dem ist nicht so! Es gibt an vielen Ecken und Enden Nachholbedarf: Alte, noch immer angewendete Algorithmen müssen abgeschafft und durch sichere ersetzt werden. Längst sind diese besseren Verfahren verfügbar, werden aber nicht beziehungsweise unzureichend genutzt. So ist die TLS-Version 1.2 seit über fünf Jahren (August 2008) verfügbar, aber erst jetzt soll die Version Einzug halten. Das Grundproblem liegt oftmals darin, dass Kompatibilität der Sicherheit vorangestellt wird. Edward Snowden selbst resümierte im Juni: „Verschlüsselung funktioniert […] Gut implementierte, starke Verschlüsselung ist eines der wenigen Dinge, auf die man sich verlassen kann.“
Schreibe einen Kommentar