Objavljeno na po Mel Hawthorne
RC4 je nesigurna šifra kriptografskog toka za koju je poznato da ima višestruke kritične sigurnosne nedostatke koje ga čine u biti beskorisnim. RC4 se prvenstveno koristio u Wi-Fi sigurnosnom protokolu WEP (wired equivalent protocol) i kao šifra u TLS-u ((Transport Layer Security) koji se koristio u web sigurnosti za HTTPS) prije nego što su otkrivene značajne ranjivosti 2001. i 2013. odnosno. RC4 šifru je prvi dizajnirao Ron Rivest iz RSA Security 1987. godine. Algoritam ostaje zaštićen, iako je reverzno projektiran i procurio 1994., kako bi se izbjegle tvrdnje o autorskim pravima, algoritam se ponekad naziva i ARC4 (Navodna šifra Rivesta 4).
Technipages objašnjava RC4
Implementacija RC4 u WEP-u bila je toliko manjkava da je moguće razbiti 128-bitni ključ za šifriranje za manje od minute. U vrijeme kada je napad prvi put prikazan, nije bilo alternativnih protokola za WiFi sigurnost i WPA standard koji je na kraju zamijenio WEP morao se požuriti kako bi se osigurala alternativa.
Šifra RC4 koja se koristi u TLS-u bila je jedna od rijetkih suvremenih šifri na koje nije utjecao problem BEAST otkriven 2011. jer nije koristio šifru CBC (ulančavanje blokova šifre). Kako su SSLv3 i TLS1.0 podržavali samo CBC i RC4 šifre, RC4 se neko vrijeme preporučao kao zaobilazno rješenje sve dok 2013. nije identificiran napad na pakete šifri RC4. TLS implementacija RC4 zahtijeva znatno veću količinu procesorske snage od napad na WEP, ali se smatralo izvedivim za vladine sigurnosne agencije izvoditi.
Veliki broj drugih napada pokazao je statističke slabosti u RC4 i prije i nakon dvije glavne ranjivosti. Općenito, korištenje RC4 treba izbjegavati jer su sada dostupne sigurnije alternative.
Uobičajene upotrebe RC4
- RC4 je kriptografska stream šifra koju je izumio Ron Rivest.
- Glavni čimbenici uspjeha RC4 u širokom rasponu primjena bili su njegova brzina i jednostavnost.
- RFC 7465 zabranjuje korištenje RC4 paketa šifri u svim verzijama TLS-a.
Uobičajene zlouporabe RC4
- RC4 je algoritam za raspršivanje koji bi se trebao koristiti za sigurno pohranjivanje lozinki u bazama podataka.