Anda di halaman 1dari 49

Tehnici criptografice

Tehnici criptografice

Criptare
Criptografia = tiina crerii i meninerii mesajelor
secrete, n sensul imposibiltii citirii lor de ctre
neautorizai
M = mesaj (text) n clar (plain / clear text) este
mesajul ce urmeaz a fi secretizat
C = mesaj cifrat (criptograma, cipher text) este
mesajul secretizat, inaccesibil neavizailor
E = criptare / cifrare este procedeul de ascundere a
unui mesaj n clar n mesajul secretizat.
E(M) = C

Tehnici criptografice

Criptare
D = Decriptare / descifrare este procedeul de regsire
a mesajului n clar M din mesajul cifrat C
D(C) = D(E(M))=M
Algoritm criptografic / cifru = funcia matematic
utilizat pentru criptare / decriptare (2 funcii)
Cheia criptografica (K) = mrimea necesar realizrii
criptrii i decriptrii
Criptosistem este sistemul format din:

algoritm
toate mesajele n clar (M)
toate mesajele criptate (C)
toate cheile (K)

Tehnici criptografice

Criptare
Criptanaliza (cryptanalysis) = tiina spargerii
cifrurilor, deci a obinerii M sau K din C
Steganografia(steganography) = tehnica ascunderii
mesajelor secrete n alte mesaje, n aa fel nct
existenta mesajelor secrete s fie invizibil

Tehnici criptografice

Schema bloc a unui criptosistem

Tehnici criptografice

Criptosistem
Rolul unui criptosistem de a preveni sau detecta
activitile nepermise dintr-un sistem informatic:
consultarea neavizat a datelor transmise sau stocate.
inserarea de mesaje false
modificarea, tergerea sau distrugerea mesajelor
existente
analiza traficului
conectrile neautorizate

"poliie informatic"

Tehnici criptografice

Obiectivele unui criptosistem

Obiectiv

Autentificarea

Confidenialitatea

Definire
pstrarea secretului pentru neavizai

emitor /identificare legat de identitatea unei entiti (persoan,


terminal, carte de credit, etc.)
originii datelor
integritii datelor
Semntura digital

legat de sursa de informaie


asigur c informaia nu a fost modificat de
surse neautorizate
mijlocul de a lega informaia de entitate

Tehnici criptografice

Criptosisteme cu chei simetrice


K=
K=
K
e
d
EK ( M ) = C
=
DK (C ) D=
M
K ( EK ( M ))

Tehnici criptografice

Criptosisteme cu chei simetrice


Clasificare:
cu cifruri bloc (block ciphers)
Acioneaz pe subdiviziuni (blocuri)
lungimea tipic a blocurilor n=32 128 bii
substituii i transpoziii, repetate iterativ

cu cifruri secveniale (stream ciphers):


mesajul de la intrare = o succesiune (ir) de simboluri.
acioneaz simbol cu simbol
cheia K generat de un registru de deplasare cu
reacie (RDR) avnd starea iniial S0 controlat de o
cheie compact

Tehnici criptografice

Criptosisteme cu chei asimetrice


Ke Kd
EKe ( M ) = C

DKd (C ) = M

Tehnici criptografice

Criptosisteme cu chei asimetrice


E = funcie neinversabil cu trap
Kd = trapa care furnizeaz informaia necesar
calculrii lui D
Exemple de funcii neinversabile cu trap
Factorizarea unui produs de numere prime mari cu
peste 100 de cifre zecimale (folosit n algoritmul RSA),
gsirea logaritmului modulo un numr prim ntr-un
cmp Galois GF(q) cu q foarte mare ( folosit n
algoritmii Rabin i Diffie-Hellman)

Tehnici criptografice

Criptografia simetric
Clasificare:
Cifruri substituie;
Cifruri transpoziie;
Cifruri combinate.

Tehnici criptografice

Criptografia simetric - cifruri substituie


cifruri bloc
fiecare caracter (sau grup de caractere) al lui M este
substituit cu un alt caracter (sau grup de caractere) al
textului cifrat (C)
decriptarea = substituie invers

Tehnici criptografice

Criptografia simetric - cifruri substituie


4 tipuri:
1. Cifruri de substituie monoalfabetic
fiecare caracter al textului n clar (M) este nlocuit cu
un caracter corespondent al textului cifrat (C)
Exemplu: cifrul CAESAR
translatere n fa cu k

mod 26( + k )

Tehnici criptografice

Criptografia simetric - cifruri substituie


2. Cifruri de substituie omofonica
un caracter al alfabetului mesajului n clar (alfabet
primar) poate s aib mai multe reprezentri
Exemplu:
Caracterul A (cu frecvena cea mai mare de
apariie) poate fi nlocuit cu F, * sau K

Tehnici criptografice

Criptografia simetric - cifruri substituie


3. Cifrul de substituie poligramic
se obin substituind blocuri de caractere ale
alfabetului primar numite poligrame - cu alte
blocuri de caractere
Exemplu:

Tehnici criptografice

Criptografia simetric - cifruri substituie


3. Cifrul de substituie poligramic
Exemplu: cifrul lui Playfair

m1, m2 n vrfurile opuse ale unui dreptunghi c1, c2 caracterele din celelalte
vrfuri ale dreptunghiului, c1 fiind n aceeai linie cu m1.
GS MN
m1 i m2 ntr-o linie c1 i c2 printr-o deplasare ciclic spre dreapta a literelor m1 i
m2.
AD BF sau CF DA
m1 i m2 n aceeai coloan c1 i c2 prin deplasarea ciclic a lui m1, m2 de sus n
jos.
UO BW sau EZ FE
Cuvnt cheie

Tehnici criptografice

Criptografia simetric - cifruri substituie


4. Cifruri de substituie polialfabetice
sunt formate din mai multe cifruri de substituie simple.
utilizarea unor substituii monoalfabetice diferite
Exemplu: cifrul lui Vegenere

Tehnici criptografice

Criptografia simetric - cifruri cu transpoziie


reordoneaz literele din M, fr a le transforma
mai multe transpoziii succesive pentru a mri
securitatea
Exemplu: transpoziia pe coloane
Text cifrat: NHFEEAELSDPT

Tehnici criptografice

Criptografia simetric maini rotor


metodele de substituie i permutri repetate sunt
destul de complicate
mecanizarea lor prin maini rotor (1920)
maina rotor (rotor machine)
are o tastatur i o serie de rotoare
Implementeaz o versiune a cifrului Vignre.
Fiecare rotor face o permutare arbitrar a alfabetului,
are 26 de poziii i realizeaz o simpl substituie.
rotoarele se mic cu viteze de rotaie diferite

perioada unei maini cu n rotoare este 26n


Exemplu: maina rotor Enigma

Tehnici criptografice

Criptografia simetric computaional


Cifrul DES: Standard de ncriptare a datelor (Data
Encryption Standard)
dezvoltat de IBM n 1977
Algoritm utilizat pe majoritatea platformelor UNIX,
pentru criptarea parolelor
Primul algoritm criptografic publicat

Tehnici criptografice

DES (Data Encryption Standard)


Caracteristici:
lungimea unui bloc este de 64 de bii
cheia este pe 64 de bii (8 sunt bii de paritate)
fiecare bloc cifrat este independent de celelalte;
nu este necesar sincronizarea ntre operaiile de
criptare/decriptare ale unui bloc;
algoritmul T-DES (triplu DES) pentru creterea
securitii
iterarea de trei ori a algoritmului DES
cheie de 168 bii

Tehnici criptografice

DES (Data Encryption Standard)


Operaii pe bloc de 64 bii
permutare iniial
16 iteraii succesive,
o interschimbare pe 32
de bii
inversa permutrii
iniiale

Tehnici criptografice

DES (Data Encryption Standard)


Operaii pe cheia de 56 bii
permutare de tipul 1
mprire n dou
blocuri de 28 bii iniial.
rotaie circular spre
stnga cu un numr de
bii corespunztor
numrului iteraiei.

Tehnici criptografice

Criptografia asimetric
Ke Kd
EKe ( M ) = C

DKd (C ) = M

Tehnici criptografice

Criptografia asimetric
metod de criptare public
cheie de criptare public
cheie de decriptare secret
decriptarea de ctre o ter parte dureaz foarte
mult
Exemplu simplu: carte de telefon dintr-un ora mare

Tehnici criptografice

Criptografia asimetric
receptor legal al mesajului
trebuie s aib o carte de
telefon, cu numere
aranjate n ordine
cresctoare.
Lista numerelor de telefon
ordonate cresctor
constituie trapa secret

Tehnici criptografice

Criptografia asimetric
Funcia de protecie
A dorete s transmit M unui B
A cunoate cheia public a lui B (EB),
transmite criptograma C=EB(M), asigurnd astfel
funcia de protecie
La recepie, B descifreaz criptograma C utiliznd
transformarea DB secret:
DB(C)=DB(EB(M))=M
Oricine
poate trimite
mesaje
criptate lui B

Tehnici criptografice

Criptografia asimetric
Funcia de autentificare
se aplic lui M transformarea secret DA.
Ctre B se va transmite:
C=DA(M)
La recepie, B va aplica transformarea public EA
corespunztoare lui A:
EA(C)=EA(DA(M)=M
Oricine
poate
decripta C

Tehnici criptografice

Criptografia asimetric
Funcia de protecie i autentificare simultan
spaiul M trebuie s fie echivalent lui C astfel nct:
EA(DA(M))=DA(EA(M))=M
EB(DB(M))=DB(EB(M))=M

Tehnici criptografice

Criptografia asimetric
Funcia de protecie i autentificare simultan
A aplic mai nti transformarea secret DA, dup care
transmite lui B criptograma:
C=EB(DA(M))
B aplic criptogramei propria funcie de descifrare DB i
apoi transformarea public a lui A, EA:
EA(DB(C)=EA(DB(EB(DA(M))))=EA(DA(M))=M

Tehnici criptografice

Criptografia asimetric - semntura digital


fie mesajul semnat de A, transmis ctre receptorul B.
semntura lui A trebuie s aib urmtoarele
proprieti:
B trebuie s fie capabil s valideze semntura lui A;
s fie imposibil pentru oricine, inclusiv B, s falsifice
semntura lui A;
n cazul n care A nu recunoate semntura unui mesaj
M, s existe un judector care s rezolve disputa
dintre A i B.

Tehnici criptografice

Criptografia asimetric - semntura digital


Protocolul semnturii digitale se desfoar astfel:
A semneaz M : S=DA(M);
A trimite lui B criptograma : C=EB(S);
B valideaz semntura lui A, verificnd dac EA(S)=M;

DB(C)=DB(EB(S))=S
EA(S)=EA(DA(M))=M

Tehnici criptografice

Sisteme de cifrare cu chei publice exponeniale


Diffie i Hellman - implementare practic
utilizarea unor funcii greu inversabile:
este uor s se calculeze y din x, y=f(x);
exist inversa funciei x=f-1(y);
este computaional imposibil determinarea inversei
funciei
funcie greu inversabil cu trap dac:
f-1 este uor de calculat numai dac se dispune de o
informaie numit trap
necunoaterea acestei informaii face ca funcia s fie greu
inversabil

(f, f-1) = (E, D) a unui criptosistem cu chei publice

Tehnici criptografice

Sisteme de cifrare cu chei publice exponeniale


scheme bazate pe operaii modulo n cu elemente din
grupul ciclic al claselor de resturi modulo n
Cmp Galois
GF(pn) este un cmp finit cu pn elemente cu p = numr
prim
mulimea elementelor nenule ale cmpului Galois
este un grup ciclic n raport cu operaia de nmulire

Tehnici criptografice

Sisteme de cifrare cu chei publice exponeniale


grup ciclic: clasele de resturi modulo p;
dac p = numr prim GF(pn)
g = element generator (primitiv) al cmpului dac
{g1,g2,...,gp-1} mod p = {1,2,...,p-1}
Exemplu:
G = {0,1,2,3,4} este un GF(51) cu adunarea modulo 5
elemente generatoroare: 2; 3

Tehnici criptografice

Schimbul de chei Diffie-Hellman


A i B hotrsc s foloseasc p=23 i g=5
A alege un numr secret XA=6 i i trimite lui B
YA = gXA mod p
YA = 56 mod 23 = 15.625 mod 23 = 8
B alege un numr secret XB=15 i i trimite lui A
YB = gXB mod p
YB = 515 mod 23 = 30.517.578.125 mod 23 = 19
A calculeaz s = gXA XB mod p =YBXA mod p
s = 196 mod 23 = 47,045,881 mod 23 = 2
B calculeaz s = gXA XB mod p = YA XB mod p
s = 815 mod 23 = 35.184.372,088.832 mod 23 = 2

Tehnici criptografice

Schimbul de chei Diffie-Hellman


A i B au acum un secret: s = 2
deoarece 6*15 = 15*6.
C (atacator) are la dispoziie YA i YB i trebuie s calc.:
s = gXA XB mod p = YBXA mod p = YAXB mod p
deci trebuie s rezolve una dintre ecuaiile:
YA = gXA mod p 5XA mod 23 = 8
YB = gXB mod p 5XB mod 23 = 19

Tehnici criptografice

Schimbul de chei Diffie-Hellman


p= numr prim pe 300 digii i XA i XB pe 100 digii
g nu trebuie s fie mare (de regul 2 sau 5)

XA sau XB nu pot fi calculai nici dac am avea la

dispoziie toat puterea de calcul a omenirii

Problema logaritmului discret

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)


cel mai larg utilizat i verificat criptosistem cu chei
publice
una dintre cele mai sigure metod de cifrare i
autentificare disponibil comercial
Idee:
uor s nmuleti dou numere prime mari
extrem de greu s se factorizeze produsul lor

produs - public i utilizat ca o cheie de criptare


numerele prime - necesare pentru decriptare

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)


p i q dou numere prime mari distincte i aleatoare
(avnd ~100 cifre zecimale)
n = pq
= funcia totient a lui Euler
(n) = nr. de ntregi nenegativi mai mici dect n care
sunt relativ primi cu n

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)


Cateva valori importante ale lui (n) :
n

(n)

Condiii

p-1

p prim

pn

pn pn1

s*t

(s) (t)

c.m.m.d.c.(s,t)=1

p*q

(p-1) (q-1)

p,q - prime

p prim

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)


Se alege un numr aleator mare D>1 astfel nct
c.m.m.d.c.(D,(n)) = 1
se calculeaz numrul E , 1<E<(n) care s satisfac:
ED(mod(n)) = 1
n = modulul de criptare/decriptare
E = exponentul de criptare
D = exponentul de decriptare
(n,E) = cheia public de criptare
(p, q, (n),D) = trapa secret (ajunge p)

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)


Criptarea RSA:
C = ME(mod n)
Decriptarea RSA:
M = CD(mod n)
Pentru ca algoritmul s funcioneze:
M = CD(mod n) = MED(mod n)

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)


Demonstraie:
Deoarece ED(mod (n))=1
ED = k(n)+1 = k(p-1)(q-1)+1
MED(mod n) = M k(p-1)(q-1)+1 (mod n) = MM k(p-1)(q-1) (mod n)
= [M(mod n) M k(p-1)(q-1) (mod n)](mod n)
Teorema lui Fermat: Dac p este prim si p nu divide pe a
atunci ap1 (mod p) = 1
M k(p-1)(q-1) (mod n) = 1 (mod n)
MED(mod n) = M (mod n)

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)

n=pq, unde p,q numere prime mari


(n)=(p-1)(q-1)
greu de determinat p,q avnd la dispoziie n
(E, n) cheia public;
(D, n) cheia secret;

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)


Exemplu
alegem p=47 i q=79 prime
n = pq = 3713
alegem D=47 (trebuie ca c.m.m.d.c.(D, (p-1)(q-1)) = 1)
E trebuie s satisfac: ED = 1(mod(p-1)(q-1))
E = [(p-1)(q-1)+1]/D = 37
dorim s codm mesajul A sosit timpul
Codm fiecare liter a alfabetului:
A=00, B=01,...,Y=25, Z=26, spaiu=27

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)


Exemplu
M=A sosit timpul
M=0018 1418 0819 1908 1215 2011
Codm fiecare grup de 4:
0018E (mod n)= 001837 (mod 3713)=3091
1418E (mod n) = 141837 (mod 3713)=0943
0819E (mod n) = 081937 (mod 3713)=3366
1908E (mod n) = 190837 (mod 3713)=2545
1215E (mod n) = 121537 (mod 3713)=0107
2011E (mod n) = 201137 (mod 3713)=2965

C = 3091 0943 3366 2545 0107 2965

Tehnici criptografice

Cifrul Rivest-Shamir Adleman (RSA)


Exemplu
C = 3091 0943 3366 2545 0107 2965
la decriptare se vor calcula:
3091D (mod n) = 309147 (mod 3713)=0018
0943D (mod n) = 081947(mod 3713)=1418

Mesajul decriptat:
M=0018 1418 0819 1908 1215 2011
dac n, D, E pe 512 bii sistemul este deocamdat
imposibil de spart

Anda mungkin juga menyukai