Sie sind auf Seite 1von 11

Criptografie şi securitate

3. Sisteme de criptare fluide


1. Noţiuni teoretice preliminare

2. Sisteme sincrone

3. Sisteme asincrone
1. Noţiuni teoretice preliminare
Def.: Sist. criptare bloc (block cyphers) = elementele succesive ale textului clar
sunt criptate folosind aceeasi cheie K. Deci, daca x = x1x2x3 . . . este textul clar,
textul criptat este y = y1y2y3 . . . = eK(x1)eK(x2)eK(x3) . . .

Def.: Fie M= (P, C,K, E,D) un sistem de criptare. O secventa de simboluri


k1k2k3 . . . ϵ K+ se numeste cheie fluida.

Def.: M= (P, C,K, E,D) este sistem fluid daca cripteaza un text clar x = x1x2x3 . . .
In y = y1y2y3 . . . = eK1(x1)eK2(x2)eK3(x3) . . . unde k1k2k3 . . . ϵ K+ este o cheie fluida.

Problema principala = generarea cheii de criptare.


Generator de chei fluide – generator de nr. pseudo-aleatoare.
2. Sisteme de criptare sincrone
Def.: Un sistem de criptare fluid sincron este o structura (P, C,K,L,E,D), unde:
• P, C,K sunt multimi finite nevide ale caror elemente se numesc ”texte clare”,
“texte criptate” si respectiv ”chei”;
• L este o multime finita nevida numita ”alfabet sir de chei”;
• g : K → L+ este un generator de chei fluide:
pentru oricare k ϵ K, g(k) = k1k2k3 . . . ϵ L+ este o cheie fluida (teoretic infinita);
• pentru oricare z ϵ L exista o regula de criptare ez ϵ E si o regula de decriptare dz ϵ
D astfel ca pentru oricare x ϵ P, dk(ek(x)) = x.

Ex.: Sistemul de criptare Vigenere - sistem de criptare fluid sincron.


Fie m lungimea cuvantului cheie din sistemul Vigenere. Definim:
P = C = L =Z26, K =(Z26)m ,
ez(x) = x + z (mod 26), dz(y) = y − z (mod 26)
Cheia z1z2z3 . . . este definita astfel:
zi = ki daca 1 <= i <= m, respectiv zi = zi−m daca i >= m + 1.
Ea va genera din cheia fixa K = (k1, k2, . . . , km), cheia fluida k1k2 . . . kmk1k2 . . .
kmk1k2 . . .
2. Sisteme de criptare sincrone
Obs.: Procesul de criptare cu un sistem fluid sincron poate fi reprezentat ca un
automat descris de relatiile:
qi+1 = δ(qi, k), zi = g(qi, k), yi = h(zi, xi)
unde q0 este starea initiala – care poate fi determinata din cheia k, δ este functia de
tranzitie, g este functia care produce cheia fluida zi, iar h este functia de iesire
care produce textul criptat yi pe baza textului clar xi si a cheii fluide zi.
2. Sisteme de criptare sincrone
Obs.:
•Un sistem de criptare bloc poate fi privit ca un caz particular de sistem de criptare
fluid, in care pentru oricare i >= 1, zi = K.
• (sincronizare): In sistemele de criptare fluide sincrone, Alice si Bob trebuie sa-si
sincronizeze cheia fluida pentru a putea obtine o criptare/decriptare corecta. Daca
in timpul transmisiei sunt inserati sau eliminati biti in textul criptat, atunci
decriptarea esueaza si ea poate fi reluata numai pe baza unor tehnici de
resincronizare (cum ar fi de exemplu reinitializarea sau plasarea unor marcatori
speciali la intervale regulate in textul transmis).
• Modificarea unui bit din textul criptat (fara a se elimina sau adauga nimic) nu va
afecta decriptarea altor caractere (nepropagarea erorii).
•Un adversar activ care elimina, insereaza sau retrimite componente ale mesajului
criptat, va provoca desincronizari si va fi deci detectat la receptie. De asemenea, el
poate face modificari in textul criptat si sa observe cum vor afecta ele textul clar.

Deci: un text criptat cu un sistem fluid sincron necesita mecanisme separate de


autentificare si de garantare a integritatii datelor.
2. Sisteme de criptare sincrone
Def.: Un sistem aditiv fluid binar de criptare este un sistem fluid sincron in care
P = C = L =Z2 iar h este functia XOR.
3. Sisteme de criptare asincrone
Def.: Un sistem de criptare fluid este auto-sincronizabil (sau ”asincron”) daca
functia de generare a cheii fluide depinde de un numar fixat de caractere criptate
anterior.

Comportamentul unui astfel de sistem poate fi descris de ecuatiile


qi = (yi−t, yi−t+1, . . . , yi−1), zi = g(qi, k), yi = h(zi, xi)
unde q0 = (y−t, y−t+1, . . . , y−1) este starea initiala (cunoscuta), k este cheia, g este
functia de generare a cheii fluide, iar h este functia de iesire care cripteaza textul
clar xi.

Cele mai cunoscute sisteme auto-sincronizabile sunt


–registrii liniari cu feedback, utilizati la generarea secventelor de numere
pseudo-aleatoare (in criptografie) si la generarea codurilor ciclice (in teoria
codurilor).
3. Sisteme de criptare asincrone
Ex.: Criptare cu auto-cheie: Fie P = C = L =Z26. Se defineste cheia fluida astfel:
z1 = K, zi = yi−1, (i >= 2)
Pentru un element oarecare al cheii z ϵ Z26, se defineste
ez(x) = x + z (mod 26)
dz(y) = y − z (mod 26)

Fie K = 13 si textul clar BUCURESTI. Transformat ın secventa numerica vom avea


(x1, x2, x3, x4, x5, x6, x7, x8, x9) = (1, 20, 2, 20, 17, 4, 18, 19, 8)
In faza de criptare, vom calcula pe rand:
y1 = e13(x1) = 1 + 13 (mod 26) = 14; y2 = e14(x2) = 20 + 14 (mod 26) = 8;
y3 = e8(x3) = 2 + 8 (mod 26) = 10; y4 = e10(x4) = 20 + 10 (mod 26) = 4;
y5 = e4(x5) = 17 + 4 (mod 26) = 21; y6 = e21(x6) = 4 + 21 (mod 26) = 25;
y7 = e25(x7) = 18 + 25 (mod 26) = 17; y8 = e17(x8) = 19 + 17 (mod 26) = 10;
y9 = e10(x9) = 8 + 10 (mod 26) = 18;
Textul criptat este (14, 8, 10, 4, 21, 25, 17, 10, 18) adica: OIKEVZRKS.
Pentru decriptare, vom avea:
x1 = d13(y1) = 14−13 (mod 26) = 1; x2 = d14(y2) = 8−14 (mod 26) = 20; s.a.m.d.
3. Sisteme de criptare asincrone
Ex.: Criptare cu auto-cheie:
Se observa ca textul decriptat poate fi obtinut de oricine, aproape in totalitate, fara a
cunoaste nici o cheie (aceasta fiind necesara doar pentru decriptarea primului
caracter).
Deci gradul sau de securitate este nul.

Ceva mai dificil este sistemul in care generarea cheii fluide se realizeaza cu
ecuatia: zi = xi−1 (i >= 2).
In acest caz, BUCURESTI se cripteaza in OVWWLVWLB (pentru K = 13).

Nici acest sistem de criptare cu auto-cheie nu este sigur, deoarece – evident – sunt
posibile doar 26 chei.
3. Sisteme de criptare asincrone
Proprietati:
1. Auto-sincronizare: Deoarece functia de decriptare h−1 depinde numai de un
numar fixat de caractere criptate anterior, desincronizarea – rezultata eventual prin
inserarea sau stergerea de caractere criptate – se poate evita. Astfel de sisteme de
criptare pot restabili proprietatea de sincronizare afectand doar un numar finit de
caractere din textul clar.
2. Propagarea limitata a erorii: Daca starea unui sistem fluid auto-sincronizabil
depinde de t caractere anterioare, atunci modificarea (eventual stergerea sau
inserarea) unui caracter din textul criptat poate duce la decriptarea incorecta a
maxim t caractere; dupa aceea decriptarea redevine corecta.
3. Raspandirea textelor clare: Deoarece fiecare caracter din textul clar influenteaza
intregul text criptat care urmeaza, eventualele proprietati statistice ale textului clar
sunt dispersate prin textul criptat. Deci, din acest punct de vedere, sistemele de
criptare auto-sincronizabile sunt mai rezistente decat cele sincronizabile la atacurile
bazate pe redondanta textului clar.
4. Rezistenta la criptanaliza activa: Este destul de dificil de depistat un atac venit
din partea unui adversar activ (care poate modifica, insera sau sterge caractere)
auto-sincronizarea readucand decriptarea in faza normala. De aceea sunt necesare
mecanisme suplimentare pentru a asigura autentificarea si integritatea datelor.

Das könnte Ihnen auch gefallen