Documente Academic
Documente Profesional
Documente Cultură
Criptografie - Cursul 5
Prof. univ.dr. Constantin Popescu
Departamentul de Matematica si Informatica
http://webhost.uoradea.ro/cpopescu/
01/11/2007
Introducere in Criptografie
Agenda
1. Cifruri monoalfabetice
2. Cifruri polialfabetice
3. Cifrul Vigenere
4. Cifrul transpozitie
5. Cifrul DES
Introducere in Criptografie
Cifruri monoalfabetice
Cu numai 25 de chei posibile, cifrul lui Cezar este considerat slab
la atacurile criptanalitice.
Numrul de chei poate crete foarte mult dac se realizeaz o
substituie arbitrar. n acest caz exist 26! chei posibile.
Aceasta nseamn c exist de 10 ori mai multe chei dect n cazul
cifrului DES (cifrul DES avnd 256 chei).
Literele cifrului se pot obine astfel: se alege prima liter A i apoi,
n ordine ciclic fiecare a treia liter, adic D,G,,Y.
Dup litera Y irul cifrului se continu cu B, deoarece, n ordine
ciclic, a treia liter dup Y n alfabetul primar este B .a.m.d.
Astfel cifrul obinut prin operaia de selectare este dat de relaia:
C = 3p mod 26.
Introducere in Criptografie
Cifruri polialfabetice
Cifrurile polialfabetice constau din utilizarea periodic a unor
Introducere in Criptografie
Cifrul Vigenere
Funciile fi de substituie se definesc astfel:
fi (a) = (a+ ki)(mod n)
unde n este lungimea alfabetului, ki este litera cheii k= k1 k2 kd,
iar a este litera din mesajul clar.
Se consider cheia de opt litere academie care va fi utilizat
repetitiv pentru cifrarea mesajului substituie polialfabetic.
Text clar : substituia polialfabetic; Cheia : academie
s+a = 19+1(mod 26) = 20(mod 26) = 20 = T
u+c = 21+3(mod 26) = 24(mod 26) = 24 = X
b+a = 2+1 (mod 26) = 3 (mod 26) = 3 = C
..
Cifruri transpoziie
Cifrurile transpoziie realizeaz o permutare a caracterelor din
textul clar.
Cheia de cifrare este perechea k=(d, f), unde d reprezint
lungimea blocurilor succesive de caractere care vor fi cifrate
conform permutrii f:
f: Zd -> Zd , Zd = {1,2,,d}
de forma
1
2 d
f(1) f(2) f(d)
unde f(i) f(j), pentru orice i j.
Mulimea funciilor astfel definite este d!. n acest fel mesajul clar
M= m1m2 md md+1m2d este cifrat astfel:
C = Ek (M) = mf(1) mf(d) mf(d+1) md+f(d) .
Introducere in Criptografie
Cifruri transpoziie
Descifrarea se obine prin permutarea invers.
Cifrarea prin transpoziie este o transformare a textului clar prin
care se modific poziia caracterelor n mesaj.
O metod des folosit pentru implementarea acestui tip de
transformare este scrierea mesajului ntr-o anumit matrice dup
care textul cifrat se obine prin citirea caracterelor pe linie, pe
coloan sau dup un anumit traseu n matrice.
Cele mai simple transpoziii se obin prin mprirea textului clar
n dou jumti care se scriu una sub alta, dup care se citesc
coloanele de la stnga la dreapta. De exemplu, cuvntul
calculator se cifreaz astfel:
Text clar: c a l c u
l a t o r
Text cifrat: CLAALTCOUR
Introducere in Criptografie
Cifrul DES
Cel mai utilizat algoritm de criptare simetric este algoritmul
Introducere in Criptografie
Cifrul DES
Construcia fundamental a unui bloc DES este o combinaie
unic a acestor tehnici (o substituie urmat de o permutare)
asupra textului clar, bazat pe cheie.
Aceast construcie este cunoscut ca rund. Algortimul DES este
compus din 16 runde.
Algoritmul este bazat pe un set de permutri, substituii i sum
mod 2, aplicate iterativ de 16 ori, pe un bloc de date de 64 bii,
prin folosirea de fiecare dat a unei chei diferite de 48 bii, extrase
iniial dintr-o cheie de 56 bii.
Datele sunt mprite n blocuri de 64 bii i criptate fr a
modifica lungimea lor.
Introducere in Criptografie
Cifrul DES
Cifrarea const din trei categorii de prelucrri care se fac asupra
blocului cu text clar de la intrare:
1. Blocul de date este supus unei permutri iniiale, IP.
2. Blocul permutat trece printr-un calcul complex care depinde de
cheie i care const din 16 iteraii funcional identice. Considernd
cei 64 bii ai unui bloc supui unei iteraii i, se noteaz cu Li-1 i
Ri-1 cele dou jumti de 32 de bii, stnga i dreapta, care-l
compun. Fie ki cheia pentru iteraia i i un bloc de 48 de bii alei
din cei 56 de bii ai cheii. Prelucrrile unei iteraii sunt:
Li = Ri-1
Ri = Li-1 f(Ri-1 ,Ki)
3. Ultima iteraie este diferit de celelalte, fiind definit de ecuaiile:
L16 = R15
R16 = L15 f(R15 ,K16).
Introducere in Criptografie
10
Cifrul DES
Funcia f realizeaz o substituie neliniar.
Dup calculul complex format din cele 16 iterri, blocul de 32 de
11
Cifrul DES
MESAJ (64 bii)
IP
RO
LO
+
L1=RO
K1
R1=LO+f(RO,K1)
K2
Introducere in Criptografie
12
Cifrul DES
R15 = L14+f(R14,K15)
L15=R14
K16
R16=L15+f(R15,K16)
L16=R15
IP-1
CIFRU (64 bii)
13
Securitatea DES
Securitatea algoritmului DES depinde de algoritmul n sine i de
Introducere in Criptografie
14
1044
1040
1036
1032
1028
1024
1020
1016
1012
108
104
100
10-4
50
56
100
200
15