Prije nego što kažemo nešto o Trostrukom DES-u, odgovorimo na pitanje zašto se ne koristi "Dvostruki DES". Kod Dvostrukog DES-a bi svaki blok šifrirali dvaput, s dva različita ključa K i L:
y = eL(eK(x)),
x = dK(dL(y)).
Jedna od najpopularnijih zamjena za DES je Trostruki DES (koriste se još i nazivi Triple DES i 3DES):
y = eM(dL(eK(x))),
x = dK(eL(dM(y))).
IDEA (International Data Encryption Algorithm) je kriptosustav
koji su razvili švicarski kriptografi
Xuejia Lai
i James Massey s ETH Zürich. Prvu verziju zvanu PES
(Proposed Encryption Standard) su objavili 1990. Međutim,
taj kriptosustav nije bio otporan na diferencijalnu kriptoanalizu
(za 128-bitni ključ je trebalo 264 operacija), pa su
nakon Biham-Shamirovog otkrića, autori 1992. godine prepravili
algoritam i nazvali ga IDEA.
IDEA koristi 128-bitni ključ za šifriranje 64-bitnih blokova otvorenog teksta. Koristi tri operacije na 16-bitnim podblokovima:
U ovisnosti o rundama, imamo:
runda f1i f2i f3i f4i ----------------------------------------------------------------- 1, 4, 7, 10, 13, 16 + XOR - + ----------------------------------------------------------------- 2, 5, 8, 11, 14 XOR - + XOR ----------------------------------------------------------------- 3, 6, 9, 12, 15 - + XOR - -----------------------------------------------------------------
RC5 algoritam je izumio Ron Rivest 1994.
godine. Zapravo to je cijela familija algoritama određena s tri parametra:
w - duljina riječi u bitovima = 16, 32, 64
r - broj rundi = 0, 1, ... , 255
b - broj bajtova u ključu = 0, 1, ... , 255
Obično se koristi verzija sa w = 32, r = 12,
b = 12.
Osnovne operacije u RC5 su:
U šifriranju se koristi 2r+2 32-bitnih riječi S0, S1, ... , S2r+1 koje ovise o ključu K. Najprije se ključ K0...Kb-1 od b bajtova prebaci u niz od c riječi M0...Mc-1 (ako b nije višekratnik od w, onda se dodaju nule). Zatim se Si-ovi inicijaliziraju koristeći pseudoslučajne veličine
Pw = Odd [(e - 2) 2w], Qw = Odd [(φ - 1) 2w],
gdje je e baza prirodnog logaritma, φ = (1 + √5)/2 omjer zlatnog reza, a funkcija Odd zaokruživanje na najbliži neparni broj. Za w = 32 je Pw = B7E15163, Qw = 9E3779B9.
Inicijalizacija: S
Procedura:
i = j = X = Y = 0,
n = 3 max (2r+2, c)
do 3n times
Si =
(Si + X + Y) <<< 3,
X = Si, i = i + 1
(mod 2r+2),
Mj =
(Mj + X + Y) <<< (X + Y),
Y = Mj, j = j + 1
(mod c).
Kod šifriranja, najprije podijelimo blok otvorenog teksta na dvije w-bitne riječi A i B. Zatim se primjeni algoritam:
L0 = A + S0,
R0 = B + S1,
for i = 1 to r do
Li =
((Li-1
⊕
Ri-1) <<< Ri-1) +
S2i
Ri =
((Ri-1
⊕
Li) <<< Li-1) +
S2i+1.
Primijetimo da se u svakoj rundi mijenjaju obje polovice podatka. Stoga se jedna runda RC5 može na neki način smatrati ekvivalentom za dvije runde DES-a. To donekle objašnjava zašto RC5 s 12 rundi postiže slične efekte za koje je 3DES-u potrebno čak 48 rundi.
Naziv RC5 sugerira da je to jedan iz niza kriptosustava (RC dolazi od "Rivest Cipher"). Zaista, postoje RC2, RC4 i RC6 kripotsustavi (RC1 i RC3 su bile radne verzije). Dok su RC2 i RC6 slični RC5, kriptosustav RC4 je drukčijeg tipa i predstavlja jednu od najpoznatijih protočnih šifri.
Web stranica kolegija Kriptografija | Andrej Dujella - osobna stranica |