RC4 (Rivest Cipher 4) är en strömchiffer designad av Ron Rivest 1987. Den krypterar data genom att generera en pseudorandom-ström av bitar (kallad en nyckelström) som kombineras med klartextdata, vanligtvis med hjälp av en XOR-operation, för att producera chiffertext.
Kryptering: Varje byte av klartext kombineras med en motsvarande byte från nyckelströmmen för att generera chiffertexten.
Dekryptering: Samma nyckelström används för att XOR:a chiffertexten och återställa den ursprungliga klartexten.
Hastighet: RC4 är känt för sin hastighet och effektivitet, särskilt i miljöer med begränsade resurser.
Enkelhet: Den är enkel att implementera och kräver minimala resurser, vilket gör den lämplig för miljöer med begränsad processorkraft.
Historisk användning: RC4 användes flitigt i protokoll som SSL/TLS för säker kommunikation och WEP för trådlös nätverkssäkerhet.
Nyckelgenerering: En hemlig nyckel (vanligtvis mellan 40 och 2048 bitar) används för att initiera RC4 tillstånd.
Generering av nyckelström: RC4-algoritmen genererar en pseudoslumpmässig nyckelström baserat på nyckeln.
Kryptering: Varje byte av klartext XOR:as med nyckelströmsbyten, vilket resulterar i chiffertext.
Dekryptering: Samma nyckelström används för att XOR:a chiffertexten och återställa den ursprungliga klartexten.
Bibliotek/Verktyg: RC4 stöds i olika bibliotek, även om det ofta är föråldrat av säkerhetsskäl:
Python: pycryptodome-bibliotek.
Java: javax.crypto-paketet (även om dess användning avråds till förmån för starkare algoritmer).
C#: System.Security.Cryptography namnrymd.
Äldre system: När man arbetar med äldre system som fortfarande använder RC4-kryptering (t.ex. gamla SSL/TLS-implementeringar).
Icke-kritiska applikationer: Om du arbetar med projekt där hastighet är viktigare än säkerhet, men detta avråds generellt till förmån för starkare chiffer.
Utbildningsändamål: RC4 används ofta för att undervisa om symmetriska chiffer och strömchiffer på grund av dess enkelhet.