In der Kryptographie ist RC4 (auch bekannt als ARC4 oder ARCFOUR, was angebliches RC4 bedeutet, siehe unten) eine der gebräuchlichsten Software-Stream-Chiffren. Sie wird in populären Protokollen wie Secure Sockets Layer (SSL) (zum Schutz des Internet-Verkehrs) und WEP (zur Sicherung drahtloser Netzwerke) verwendet.

RC4 ist dafür bekannt, einfach und schnell zu sein, aber Angriffe sind wahrscheinlich, wenn der Anfang des Ausgabeschlüsselstroms nicht entfernt wird oder ein Schlüsselstrom zweimal verwendet wird; einige Arten der Verwendung von RC4 können sich zu sehr unsicheren Kryptosystemen wie WEP entwickeln.

RC4 wurde 1987 von Ron Rivest von RSA Security gegründet. Während sein offizieller Name "Rivest Cipher 4" lautet, ist die Abkürzung RC auch als Abkürzung für "Ron's Code" bekannt (siehe auch RC2, RC5 und RC6).

RC4 wurde zunächst als Geschäftsgeheimnis geschaffen, aber im September 1994 wurde eine Beschreibung davon an die Cypherpunks-Mailingliste geschickt. Bald darauf wurde es in der Newsgruppe sci.crypt und von dort aus auf vielen Websites im Internet gepostet. Es wurde bestätigt, dass der Code echt (nicht gefälscht) war, da seine Ausgabe der von proprietärer Software mit lizenziertem RC4 entsprach. Da der Algorithmus bekannt ist, ist er nicht länger ein Geschäftsgeheimnis. Der Name "RC4" ist jedoch markenrechtlich geschützt. RC4 wird oft als "ARCFOUR" oder "ARC4" bezeichnet (gemeint ist angeblicher RC4, da RSA den Algorithmus nie offiziell freigegeben hat), um mögliche Probleme mit dem Warenzeichen zu vermeiden. Er ist Teil einiger häufig verwendeter Verschlüsselungsprotokolle und -standards geworden, darunter WEP und WPA für drahtlose Karten und TLS.

Die beiden Hauptgründe, die den Einsatz in einem so großen Anwendungsbereich begünstigt haben, sind seine Schnelligkeit und Einfachheit. Die Verwendung von RC4 sowohl in Software als auch in Hardware ist extrem einfach zu entwickeln.

Der RC4-Verschlüsselungsalgorithmus wird mit einer anderen Schlüssellänge, in der Regel zwischen 40 und 256 Bit, unter Verwendung des Key-Scheduling-Algorithmus (KSA) gestartet. Sobald dies abgeschlossen ist, wird der Strom der verschlüsselten Bits mit dem Pseudozufallsgenerator-Algorithmus (PRGA) erzeugt.

RC4 scheitert in vielerlei Hinsicht an den Standards, die von den Kryptographen für eine sichere Chiffrierung festgelegt wurden, und wird für den Einsatz in neuen Anwendungen nicht empfohlen, da es eine Vielzahl von Methoden gibt, RC4 anzugreifen. Das Weglassen des ersten Kilobyte an Daten aus dem Schlüsselstrom kann die Sicherheit etwas verbessern.