Upload
alexandra-dumitru
View
178
Download
16
Tags:
Embed Size (px)
Citation preview
Preview Sisteme sincrone Sisteme asincrone
Sisteme de criptare fluide
Luciana Morogan
Facultatea de Matematica-InformaticaUniversitatea Spiru Haret
Laborator
Preview Sisteme sincrone Sisteme asincrone
Outline
1 Preview
2 Sisteme sincrone
3 Sisteme asincrone
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
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 +
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
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
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, . . .
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
Preview Sisteme sincrone Sisteme asincrone
Criptarea si decriptarea: schematic
Criptarea
Preview Sisteme sincrone Sisteme asincrone
Decriptarea: schematic
Decriptarea
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
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
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
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
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.
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.
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.
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