RC2
V kriptografiji je RC2 blokovna šifra s simetričnim ključem. Zasnoval jo je Ronald Rivest leta 1987. "RC" pomeni "Rivestova šifra" ali "Ronova šifra".
RC2 je 64-bitna blokovna šifra s spremenljivo velikostjo ključa, ki uporablja 18 krogov.
Obhodi so razporejeni kot omrežjefeistels težkim virom, pri čemer 16 obhodov ene vrste, imenovanih "mixing rounds", zamenjata dva obhoda druge vrste, imenovanih "mashing rounds".
18 krogov se izvede v naslednjem zaporedju:
- izvedite 5 krogov mešanja.
- opravite 1 krog mešanja.
- opravite 6 krogov mešanja.
- opravite 1 krog mešanja.
- izvedite 5 krogov mešanja.
RC2 uporablja algoritem za razširitev ključa, s katerim se ustvari razširjen ključ, sestavljen iz 64 (16-bitnih besed), ki je zapleteno odvisen od vsakega bita predloženega vhodnega ključa "spremenljive dolžine". Obhod mešanja je sestavljen iz štirih aplikacij transformacije "mix-up", kot je prikazano na sliki. Obhod se "zmeša" tako, da se mu doda ena od 16-bitnih besed razširjenega ključa (RFC 2268).
RC2 je dovzeten za napad na sorodne ključe z uporabo 234 napadov z izbranim besedilom (Kelsey et al. , 1997).
Razvoj RC2 je sponzoriral Lotus, ki je želel po oceni NSA izvoziti šifro po meri kot del svoje programske opreme Lotus Notes. NSA je predlagala nekaj sprememb, ki jih je Ronald Rivest vključil. Po nadaljnjih pogajanjih je bila šifra leta 1989 odobrena za izvoz.
Poleg RC4 je bil RC2 s 40-bitno velikostjo ključa obravnavan v okviru ameriških predpisov za izvoz kriptografije. Zdaj so vsi 40-bitni šifrirni algoritmi zastareli, saj so nevarno dovzetni za napade z grobo silo.
Sprva so bile podrobnosti algoritma tajne - last družbe RSA Security -, 29. januarja 1996 pa je bila izvorna koda algoritma RC2 anonimno objavljena na forumu Usenet, sci.crypt. Podobna objava se je zgodila že prej z RC4. Ni jasno, ali je imel objavitelj dostop do specifikacij ali pa je bila ta programska koda že predelana.
Transformacija mešanja v RC2; krog mešanja je sestavljen iz štirikratne uporabe transformacije "mešanja".
Vprašanja in odgovori
V: Kaj je RC2?
O: RC2 je blokovna šifra s simetričnim ključem, ki jo je leta 1987 zasnoval Ronald Rivest. Uporablja 64-bitno velikost bloka in 18 krogov šifriranja.
V: Kaj pomeni "RC"?
O: "RC" pomeni "Rivestova šifra" ali "Ronova šifra".
V: Koliko krogov se izvede pri uporabi RC2?
O: Pri uporabi RC2 se izvede 18 krogov - 16 krogov mešanja, ki se izmenjujejo z dvema krogovoma razbijanja.
V: Kako deluje algoritem za razširitev ključa?
O: Algoritem za razširitev ključa ustvari razširjeni ključ, sestavljen iz 64 (16-bitnih besed), odvisno od vsakega bita predloženega vhodnega ključa spremenljive dolžine.
V: Na katero vrsto napada je RC2 občutljiv?
O: RC2 je dovzeten za napad na sorodne ključe z uporabo 234 napadov z izbranim prostim besedilom.
V: Kdo je sponzoriral razvoj RC2?
O: Razvoj RC2 je sponzoriral Lotus, ki je želel imeti šifro po meri, ki bi jo izvozil kot del svoje programske opreme Lotus Notes.