18
Preview Sisteme sincrone Sisteme asincrone Sisteme de criptare fluide Luciana Morogan Facultatea de Matematica-Informatica Universitatea Spiru Haret Laborator

3. Sisteme de Criptare Fluide

Embed Size (px)

Citation preview

Page 1: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Sisteme de criptare fluide

Luciana Morogan

Facultatea de Matematica-InformaticaUniversitatea Spiru Haret

Laborator

Page 2: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Outline

1 Preview

2 Sisteme sincrone

3 Sisteme asincrone

Page 3: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Sisteme de criptare

Sistemele de criptare:bloc(block cyphers)

elemente succesive ale textului clar sunt criptate folosindaceeasi cheie de criptaredaca x = x1x2x3 . . . atunciy = y1y2y3 . . . = ek (x1)ek (x2)ek (x3) . . .

fluide(stream cyphers)sincroneasincrone

Page 4: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Definitii formale (1)

FieM = (P, C,K, E ,D) un sistem de criptare. Secventa desimboluri k1k2k3 · · · ∈ K + se numeste cheie fluida.M = (P, C,K, E ,D) este un sistem de criptare fluid dacacipteaza textul clar x = x1x2x3 . . . iny = y1y2y3 . . . = ek1(x1)ek2(x2)ek3(x3) . . ., unde k1k2k3 . . .este o cheie fluida din K +

Page 5: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Definitii formale (2)

Problema generala: generarea cheii fluide cu ajutorul unuigenerator numit generator de chei fluideObs! Daca

cheia fluida este aleasa aleator si nu mai este foloitaulteriorlungimea cheii = lungimea textului clar

Atunci sistemul de criptare se numeste one-time-pad

Page 6: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Definitie formala

Un sistem de criptare fluid sincron este o structura(P, C,K,L, E ,D) unde

Fie P, C,K sunt multimi finite, nevide, ale caror elementese numesc texte clare, texte criptate si, respectiv, cheiL este o multime finita, nevida numita alfabetul sirului decheise defineste g : K → L+ generatorul de chei fluide astfelincat ∀k ∈ K avem g(k) = k1k2k3 · · · ∈ K + cheia fluida(teoretic infinita)∀z ∈ L,

exista regula de criptare ez ∈ Eexista regula de decriptare dz ∈ D

astfel incat ∀x ∈ P, dz(ez(x)) = x

Page 7: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Exemplu: Sistemul de criptare Vigenere

Descrierea sistemuluim lungimea cuvantului cheieP, C,K=Z26, K= (Z26)

m

ez(x) = x + z(mod26),dz(y) = y − z(mod26)

cheia z1z2 . . . definita prin

zi =

{ki dc 1 ≤ i ≤ m

zi−m dc i ≥ m + 1

va genera din cheia fixa K = (k1, k2, . . . , km), cheia fluidak1, k2, . . . , kmk1, k2, . . . , kmk1, k2, . . .

Page 8: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Criptarea si decriptarea

Se realizeaza ca un automat descris deqi+1 = δ(qi , k), zi = g(qi , k), yi = h(zi , xi) unde:

q0 - starea initiala determinata din cheia kδ - functia de tranzitie a starilorg - functia ce produce cheia fluida zi

h - functia iesire care produce textul criptat yi pe bazatextului clar xi si a cheii fluide zi

Page 9: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Criptarea si decriptarea: schematic

Criptarea

Page 10: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Decriptarea: schematic

Decriptarea

Page 11: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Observatii

Sistemul de criptare bloc este un caz particular de sistemde criptare fluid: ∀i ≥ 1, zi = k(Sincronizare.) Cel care trimite mesajele si cel ce urmeazaa le primi trebuie sa isi sincronizeze cheia fluida pentru aobtine o criptare/decriptare corecta. Daca in timpultransmisiei sunt inserati sau eliminati biti in textul criptat,atunci decriptarea esueaza si poate fi reluata pe baza unortehnici de resincronizare (de exp. reinitializarea)Modificarea unui bit din textul criptat (fara a se elimina sauadauga nimic) nu afecteaza decriptarea altor caractere(nepropagarea erorii)Adversarul activ care elimina, insereaza sau retrimitecomponente ale mesajului provoaca desincronizari si vafidetectat la receptie

Page 12: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Sistemul aditiv fluid binar de criptare

Un sistem aditiv fluid binar de criptare este un sistem fluidsincron in care P = C = L= Z2 iar h reprezinta functia XOR

Criptare Decriptare

Page 13: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Sistemul aditiv fluid binar de criptare - exemplu

Sa considerm exemplul in care dorim criptarea/decriptarea secventei de textclar x = 101101 si presupunem ca iesirea generatorului de chei fluide oferacheia z = 1101. Vom avea: x1 = 1, x2 = 0, x3 = 1, x4 = 1, x5 = 0, x6 = 1 siz1 = 1, z2 = 1, z3 = 0, z4 = 1, z5 = z1 = 1, z6 = z2 = 1

Criptarea

y1 = ez1(x1) = x1 ⊕ z1 = 1⊕ 1 = 0y2 = ez2(x2) = x2 ⊕ z2 = 0⊕ 1 = 1y3 = ez3(x3) = x3 ⊕ z3 = 1⊕ 0 = 1y4 = ez4(x4) = x4 ⊕ z4 = 1⊕ 1 = 0y5 = ez1(x5) = x5 ⊕ z1 = 0⊕ 1 = 1y6 = ez2(x6) = x6 ⊕ z2 = 1⊕ 1 = 0Se obtine astfel secventa de text cripty = 011010

Decriptarea

x1 = dz1(y1) = y1 ⊕ z1 = 1⊕ 0 = 1x2 = dz2(y2) = y2 ⊕ z2 = 1⊕ 1 = 0x3 = dz3(y3) = y3 ⊕ z3 = 0⊕ 1 = 1x4 = dz4(y4) = y4 ⊕ z4 = 1⊕ 0 = 1x5 = dz1(y5) = y5 ⊕ z1 = 1⊕ 1 = 0x6 = dz2(y6) = y6 ⊕ z2 = 1⊕ 0 = 1Se obtine astfel secventa de text clarx = 101101

Page 14: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Definitie formala

Un sistem de criptare fluid se numeste asincron(auto-sincronizabil) daca functia de generare a cheii fluidedepinde de un numar de caractere criptate anterior: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) - starea initialak - cheiag - functia ce produce cheia fluidah - functia iesire care produce care cripteaza textului clar xi

Page 15: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Sisteme asincrone - Exemple

LFSR- registrii lineari cu feedback

Criptarea cu auto-cheieP = C = L= Z26

cheia fluida este data de z1 = k , zi = yi−1, i ≥ 2pentru z ∈ Z26, definim

ez(x) = x + z(mod26)dz(y) = y − z(mod26)

ExercitiuPentru k = 11codificati/decodificati textul clarSPIRU HARET

SolutiaSe va obtine textul criptatatDSARLSSJNG.

Page 16: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Solutia detaliata a exercitiului anterior

Codificarea textului clar SPIRU HARET este x =18 15 8 17 20 7 0 17 4 19,iar k = z1 = 11

Modul criptare

y1 = ez1(x1) = x1 + z1(mod26) = 18 + 11(mod26) = 3 si z2 = y1 = 3y2 = ez2(x2) = x2 + z2(mod26) = 15 + 3(mod26) = 18 si z3 = y2 = 18y3 = ez3(x3) = x3 + z3(mod26) = 8 + 18(mod26) = 0 si z4 = y3 = 0y4 = ez4(x4) = x4 + z4(mod26) = 17 + 0(mod26) = 17 si z5 = y4 = 17y5 = ez5(x5) = x5 + z5(mod26) = 20 + 17(mod26) = 11 si z6 = y5 = 11y6 = ez6(x6) = x6 + z6(mod26) = 7 + 11(mod26) = 18 si z7 = y6 = 18y7 = ez7(x7) = x7 + z7(mod26) = 0 + 18(mod26) = 18 si z8 = y7 = 18y8 = ez8(x8) = x8 + z8(mod26) = 17 + 18(mod26) = 9 si z9 = y8 = 9y9 = ez9(x9) = x9 + z9(mod26) = 4 + 9(mod26) = 13 si z10 = y9 = 13y10 = ez10(x10) = x10 + z10(mod26) = 19 + 13(mod26) = 6Se obtine astfel textul criptat y = 3 18 0 17 11 18 18 9 13 6 si decicodificarea DSARLSSJNG.

Decripatrea se va realiza in mod similar.

Page 17: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Observatii

Auto-sincronizare: cum h−1 depinde de un numar fixat decaractere criptate anterior, desincronizarea rezulta dininserarea sau stergerea de caractere criptate (se poateevita)Daca starea unui sistem fluid auto-sincronizabil depinde det caractere anterioare, atunci modificarea(stergerea,inserarea) unui caracter va duce la decriptareaincorecta a maxim t caractere, dupa care decriptarearedevine corecta.

Page 18: 3. Sisteme de Criptare Fluide

Preview Sisteme sincrone Sisteme asincrone

Alte exemple de sisteme fluide de criptare

SEAL - sistem de criptare aditiv binarRC4 (Rist Code 4) - creat pentru RSA Data Security Inc.(astazi RSA Security), este un sistem aditiv fluid decriptare destinat scopurilor comerciale