RC4 - Rivest Cipher 4
RC4 ist ein Verschlüsselungsverfahren und die bekannteste Stromchiffre. Sie wurde von Ron Rivest, einem bedeutenden Kryptografen entwickelt. RC4 steht dabei für Rivest Cipher 4. Weitere Rivest-Chiffren sind RC2, RC5 und RC6, wobei es sich hierbei um Blockchiffren handelt.
RC4 wurde von Ron Rivest im Jahr 1987 entwickelt. Er versuchte das Verfahren geheim zu halten, was misslang. Im Jahr 1994 hat eine unbekannte Person den Quellcode des Verfahrens im Internet veröffentlicht. Obwohl RC4 weit verbreitet und immer noch genutzt wird, gibt es keine offizielle Spezifikation. Das ist eigentlich auch gar nicht nötigt, weil das Verfahren recht einfach und damit besonders schnell ist. Etwa um das 10-fache schneller als DES.
Vermutlich hat Rivest wegen seiner Einfachheit RC4 geheim gehalten, um selber nicht an Glaubwürdigkeit zu verlieren. Heute weiß man, dass Verschlüsselungsverfahren möglichst einfach sein sollten, damit Implementierungsfehler möglichst ausgeschlossen sind.
Funktionsweise von RC4
Die Schlüssellänge ist variabel und kann von einem bis 2.048 Bit gewählt werden. Der Schlüssel beeinflusst den Startwert (Seed) der Fortschaltfunktion. Sinnvoll ist eine Schlüssellänge von 128 oder 256 Bit. Je nach Sicherheitsstufe.
WEP - Wired Equivalent Privacy
RC4 wurde für die Verschlüsselung von WLAN-Datenpaketen mit WEP eingesetzt. Leider hat sich WEP als unsicher herausgestellt und wurde durch WPA und WPA2 ersetzt.
RC4 als Fallback
In Kombination mit SSL bzw. TLS ließ sich die Verschlüsselung von AES (CBC) zeitweise durch das BEAST-Verfahren aushebeln. Deshalb wurde RC4 eine Zeit lang als schneller Workaround empfohlen, der gegen diesen Angriff schützen konnte. Gegen den BEAST-Angriff haben die Browser-Hersteller dann spezielle Vorkehrungen getroffen. Und somit gibt es keinen Grund mehr RC4 einzusetzen.
Leider muss man RC4 auf der Client-Seite immer noch als Fallback unterstützen. Manche Webseiten erzwingen die Verschlüsselung mit RC4. Meist sind das Dienste, wo von den Clients eine hohe Leistung abgefordert wird, wo deshalb ein ressourcenschonendes Verschlüsselungsverfahren benötigt wird. Das sollte aber die Ausnahme sein.
Oftmals bieten Webserver auch deshalb noch RC4 an, um auch für User, die Windows XP mit dem Internet Explorer 6 einsetzen, eine verschlüsselte Verbindung anbieten zu können. Aber, das sollte es eigentlich nicht mehr geben.
Wie sicher ist RC4?
RC4 galt lange als sicher. Deshalb wurde es zum Beispiel für die WLAN-Verschlüsselung WEP verwendet und kommt heute immer noch für die Verschlüsselung von Webseiten mit SSL/TLS zum Einsatz.
Heute sind verschiedene Schwächen von RC4 bekannt. Die größte Schwäche ist, dass Teile eines RC4-Schlüssels einen großen Einfluss auf die ersten Bytes einer RC4-Zufallsfolge haben. Für einen Kryptografen bedeutet das, dass die Konfusionseigenschaft nicht ausreichend ist. Diese Konfusionsschwäche erlaubt es einem Angreifer den geheimen Schlüssel zu ermitteln. Natürlich wäre es möglich durch eine veränderte Implementierung die Schwächen auszumerzen. Doch das findet in der Praxis nicht statt. Deshalb wird RC4 als unsicher angesehen.
Aus heutiger Sicht und mit den Mitteln der modernen Kryptografie bezeichnen manche Kryptografen RC4 als "Spielzeug-Verschlüsselung". Doch gerade seine Einfachheit macht RC4 für den Bildungsbereich interessant, um nachvollziehen zu können, wie Verschlüsselung, insbesondere eine Stromchiffre, funktioniert.
Nach aktuellen Erkenntnissen sollte man davon ausgehen, dass der US-Geheimdienst NSA die RC4-Verschlüsselung in Echtzeit knacken kann. Oder anders ausgedrückt, wer mit RC4 verschlüsselt kann es auch gleich sein lassen.
Statt RC4 wird AES mit 128 oder besser 256 Bit empfohlen.