Sunteți pe pagina 1din 11

Algoritmii de criptare simetrici

1.Introducere
Criptografia este stiinta scrierilor secrete. Ea sta la baza multor servicii si mecanisme de
securitate folosite in internet, folosind metode matematice pentru transformarea datelor, in
intentia de a ascunde continutul lor sau de a le proteja impotriva modificarii. Criptografia are o
lunga istorie, confidentialitatea comunicarii fiind o cerinta a tuturor timpurilor. Daca ar trebui sa
alegem un singur exemplu al criptografiei "clasice", acesta ar fi cifrul lui Cezar, nu atat datorita
celebritatii imparatului roman de care se leaga folosirea lui, ci pentru ca principiul sau de baza, al
substitutiei, s-a mentinut nealterat aproape doua milenii.
Multa vreme, eforturile criptografilor au fost dirijate spre intarirea cifrurilor prin
complicarea algoritmului, combinand substitutii si transpozitii asupra unor simboluri sau asupra
unor blocuri (grupe de simboluri). Istoria moderna a criptografiei cunoaste numeroase inovatii in
aceasta privinta. Doua sunt elementele ce au marcat insa cotitura semnificativa in dezvoltarea
metodelor criptografice.
Primul este legat de dezvoltarea retelelor de calculatoare, al caror stimulent extraordinar
s-a manifestat atat prin presiunea exercitata de tot mai multi utilizatori (a caror dorinta obiectiva
este pastrarea secretului si a sigurantei asupra postei electronice private, a transferului electronic
de fonduri si a altor aplicatii) cat si prin potentarea gamei de instrumente folosite efectiv in
executia algoritmilor de cifrare. Utilizarea calculatoarelor electronice a permis folosirea unor
chei de dimensiuni mai mari, sporindu-se atfel rezistenta la atacuri criptoanalitice. Cand cheia
secreta are o dimeniune convenabila si este suficient de frecvent schimbata, devine practic
imposibila spargerea cifrului, chiar daca se cunoaste algoritmul de cifrare. Pe aceasta idee se
bazeaza si standardul american de cifrare a datelor - DES (Data Encryption Standard) larg
utilizat de guvernul SUA si de diverse companii internationale. Propus intr-o forma initiala de
IBM in 1975, DES a rezistat evaluarii facute de "spargatorii de cifruri" de la U.S. National
Security Agency (NSA), care au recomandat doar reproiectarea anumitor componente (casete de
substitutie). DES a fost adoptat ca standard federal in 1977 si a fost folosit intens datorita
performantelor de viteza atinse la cifrare (peste 100 de milioane de biti/secunda). Din pacate, nu
se stie cu certitudine daca cei de la NSA sau de la vreo alta organizatie au reusit sau nu sa sparga
DES. Experienta a aratat insa ca orice schema criptografica are o viata limitata si ca avansul
tehnologic reduce, mai devreme sau mai tarziu, securitatea furnizata de ea.
Al doilea moment important in evolutia criptografiei moderne l-a constituit adoptarea
unui principiu diferit de acela al cifrarii simetrice. Whitfield Diffie si Martin Hellman, cercetatori
la Univeritatea Stanford din California, prin articolul "New Directions in Criptography", publicat
in 1976 in revista IEEE Transactions on Information Theory, au pus bazele "criptografiei
asimetrice" cu chei publice. in locul unei singure chei secrete, criptografia asimetrica foloseste
doua chei diferite, una pentru cifrare, alta pentru descifrare. Deoarece este imposibila deducerea
unei chei din cealalta, una din chei este facuta publica, fiind pusa la indemana oricui doreste sa
transmita un mesaj cifrat. Doar destinatarul, care detine cea de-a doua cheie, poate descifra si
utiliza mesajul. Tehnica cheilor publice poate fi folosita si pentru autentificarea mesajelor, fapt
care i-a sporit popularitatea. Nu este, deci, de mirare ca guvernul SUA a initiat adoptarea unui
standard de semnatura digitala bazat pe conceptul de cheie publica. Acest demers a generat
controverse, soldate chiar cu acuze intre organizatiile implicate. Pana in decembrie 1990,
Institutul National de Standarde si Tehnologie ai SUA (NIST) recomanda pentru adoptare ca
standard metoda RSA, prezenta deja in industrie. Dar noua luni mai tirziu, in august 1991, NIST
a avansat un cu totul alt algoritm, bazat pe o metoda cu chei publice, publicata de Taher El
Gamal in 1986. Noua propunere, denumita DSS (Digital Signature Standard), a fost dezvoltata
de Agentia de Securitate Nationala a SUA (NSA). Ea a dezamagit nu datorita performantelor, ci
-1-

"gratie" autorului, care este nu doar proiectant, dar si spargator de cifruri, ceea ce a starnit,
inevitabil, suspiciuni. Un cifru se defineste ca transformarea unui mesaj clar sau text clar in
mesaj cifrat ori criptograma. Procesul de transformare a textului clar in text cifrat se numeste
cifrare sau criptare, iar transformarea inversa, a criptogramei in text clar, are denumirea de
descifrare sau decriptare. Atat cifrarea cat si descifrarea sunt controlate de catre una sau mai
multe chei criptografice. Exista doua tipuri de sisteme criptografice:
simetrice (cu cheie secreta) care folosesc aceeasi cheie, atat la cifrarea cat si la
descifrarea mesajelor.
asimetrice (cu chei publice) care folosesc chei distincte de cifrare si descifrare (dar
legate una de alta). Una din chei este tinuta secreta si este cunoscuta doar de proprietarul ei. A
doua cheie (perechea ei) este facuta publica, de unde si numele de criptografie cu cheie publica.

2. Criptografie
Criptografia reprezinta un set de standarde si protocoale pentru codificarea datelor si
mesajelor, astfel ncat acestea sa poata fi stocate si transmise mai sigur. Ea sta la baza multor
servicii si mecanisme de securitate folosite n INTERNET, folosind metode matematice pentru
transformarea datelor, in intentia de a ascunde continutul lor sau de a le proteja impotriva
modificarii. Criptografia ne ajuta sa avem comunicatii mai sigure, chiar si atunci cand mediul de
transmitere (de exemplu, Internetul) nu este de incredere. De asemenea, se poate utiliza pentru
criptarea fisierelor sensibile, astfel ca probabilitatea de a fi intelese de intrusi sa fie mai mica.
Criptografia poate fi utilizata pentru a contribui la asigurarea integritatii datelor, precum si la
meninerea lor ca secrete. Criptografia ne ajuta sa verificam originea datelor si a mesajelor prin
utilizarea semnaturilor digitale si a certificatelor. Cand utilizam metode criptografice, cheile
criptografice trebuie sa ramana secrete. Algoritmii, dimensiunea cheilor si formatele de fisiere
pot fi facute publice fara a compromite securitatea.
Unul din principalele motive ale vulnerabilitatii unui sistem informatic il reprezinta faptul
ca majoritatea informatiilor pe care atacatorii le obtin de la un sistem sunt intr-o forma pe care o
pot citi si intelege. Avand in vedere milioanele de mesaje electronice care traverseaza internetul
in fiecare zi, este usor de inteles cum un sniffer bine pozitionat in retea poate captura un volum
mare de informatii pe care utilizatori nu ar dori sa le faca cunoscute unor persoane necunoscute.
Acesti oaspeti nepoftiti pot face publice aceste informatii ,ca le modifice pentru a aduce o
imagine defavorabila unui individ sau unei organizatii. O solutie la aceasta problema cu ajutorul
criptografiei ar fi ca accesul persoanelor necunoscute la astfel de informatii sa fie restrictionat.
Criptarea reprezinta procesul de transcriere a informatiei din forma sa originala numita plaintext
intr-o forma codata, incomprehensibila numita ciphertext. Decriptarea se refera la procesul
invers de transformare a informatiei din ciphertext in plaintext. Orice tip de date pot fi cripatate
inclusiv imagini digitale sau sunete .
Criptografia securizeaza informatia protejandui confidentialitatea . Criptografia poate fi folosita
deasemeni pentru a proteja integritatea si autenticitatea datelor. De exemplu sumele de verificare
sunt folosite pentru a verifica integritatea unui bloc de informatie. O astfel de verificare care este
un numar calculat din continutul unui fisier , poate fi folosit pentru a verifica daca informatia
este corecta. Totusi, un hacker ar putea falsifica acest checksum dupa ce in prealabil a modificat
blocul de informatie. Daca acest checksum nu este protejat modificarea informatiilor nu ar putea
fi sesizata. Autenticitatea datelor poate fi protejata si in alt mod. De exemplu pentru a transmite
catre un coleg un e-mail , expeditorul mai intai cripteaza informatia pentru a-si proteja
confidentialitatea si apoi ataseaza o semnatura digitala criptata acestui mesaj. In momentul in
care destinatarul primeste informatia , acesta verifica originea mesajului folosind o cheie pentru
a verifica daca semnatura digitala a expeditorului si decripteaza informatia folosind cheia de
decriptare corespunzatoare. Pentru a proteja informatia de a nu fi modificate sau falsificate
-2-

,semnatura digitala este formata prin cripatea unei combinatii a unei sume de verificare a
informatiei si a cheii private a autorului. Un efect secundar a acestei autentificari este conceptul
de non-repudiere . O persoana care a semnat un document electronic cu semnatura digitala nu
poate sa pretinda ulterior ca nu el a semnat documentul intrucat, teoretic, doar acea persoana
poate crea semnatura corecta.
Legile din ziua de azi din diferite tari ,incluzand si Statele Unite ale Americii , restrictioneaza
exportul sau importul de tehnologie criptografica. In era Internetului insa este extrem de
important cunoasterea foarte bine a reglementarilor guvernamentale care se aplica in fiecare tara
cu referiere la utilizarea criptografiei.

2. Scopul de baza al criptografiei


Din cele expuse mai sus se pot evidentia urmatoarele cerinte fata de criptografia
moderna:
1. Confidentialitate asigurarea ca nimeni nu poate citi mesajul cu exceptia destinatarului.
2. Integritatea datelor realizeaz protejarea datelor la alterare sau manipularea de ctre
persoane neautorizate. Prin manipularea datelor inelegem procese cum ar fi insertii, intarzieri
sau substituiri.
3. Autentificarea presupune posibilitatea de identificare a sursei informatiei si a entitatii (o
persoana, un terminal de computer, o carte de credit).
4. Non-repudierea care previne negarea unor angajamente sau actiuni anterioare.
Deci criptografia trebuie sa acopere in mod corespunzator aceste patru directii atat in
teorie cat si in practica. Ea trebuie sa previna si sa detecteze furtul si alte actiuni ilegale, fiind
doar una din tehnicile de asigurare a securitatii informatiei.
Asa cum am identificat anterior exista doua tipuri de sisteme criptografice:
simetrice (cu cheie secreta) care folosesc aceeasi cheie, atat la cifrarea cat si la descifrarea
mesajelor;
asimetrice (cu chei publice) care folosesc chei distincte de cifrare si descifrare (dar legate una
de alta).
Din punct de vedere algoritmic si al domeniului de aplicare criptografia poate fi divizata in patru
primitive criptografice:
o algoritmi criptografici cu cheie secreta;
o algoritmi criptografici cu chei publice;
o semnatura digitala
o functii dispersive.
o
Pentru a crea un sistem criptografic care va rezolva problemele securitatii informationale
sigur si eficient este nevoie de folosit primitivele criptografice in grup dup cerinte.
Un sistem criptografic (criptosistem) este compus din:
M-text clar;
C-text cifrat;
2 functii inverse E() si D();
un algoritm care produce cheile Ke si Kd astfel incat:
M = DKd(C) si C= EKe(M)
Grafic functionarea unui sistem criptografic se poate reprezenta astfel :
-3-

Figura 1:Modul de functionare a unui sistem criptografic.

3. Algoritmi criptografici cu cheie secreta(simetrici)


Pentru asigurarea confidentialitatii datelor memorate in calculatoare sau transmise prin
retele se folosesc preponderent algoritmi criptografici cu cheie secreta (simetrici). Ei se
caracterizeaza prin aceea ca ambii utilizatori ai algoritmului impart aceeasi cheie secreta, folosita
atit la cifrare cat si la descifrare. Cheia de criptare este necesar de pastrat in secret fata de
utilizatorii neautorizati, pentru ca cel ce are acces la acesta cheie poate avea acces si la
informatia secreta. Algoritmii criptografici simetrici se caracterizeaza printr-o viteza de cifrare
foarte mare, in comparatie cu algoritmii criptografici asimetrici si sunt comozi la cifrarea
blocurilor mari de informatie. Securitatea acestui tip de algoritm depinde in mare masura de
lungimea cheii si posibilitatea de a o pastra in secret.
Cei mai cunoscuti algoritmi criptografici simetrici sunt:
cifruri bloc
o
o
o
o
o

DES (Data Encryption Standard), Triple DES


IDEA (International Data Encryption Algorithm)
AES(Advanced Encryption Standard)
cifruri secventiale
RC4

Pentru a compara criptografia cu chei publice folosite de Pki , exista o alta metoda
numita criptografia simetrica. Aceeasi cheie este folosita atat pentru cripare cat si pentru
decriptare.

Figura 2 : criptografia simetrica

-4-

4. Functii neinversabile
O observatie importanta este aceea ca un sistem cu cheie publica nu este sigur
neconditionat ,oricine putand sa efectueze criptari, nu este exclus sa gaseasca anumite puncte
slabe care sa i permita sa si decripteze mesajele. Ideea de baza folosita este aceea de functie
neinversabila.
Criptografia prin chei publice este posibila in aplicatiile care functioneaza intr-un singur
sens. O functie in sens unic este aceea care este usor de calculat intro directie, dar este dificil de
calculat in sens invers. Pentru o astfel de functie, daca y = f(x), este simplu de determinat
valoarea lui y daca se cunoaste x, dar este foarte dificil sa-l determini pe x cunoscandu-l pe y.
Intr-o astfel de situatie se afla cautarile telefonice. Este usor sa gasesti numarul cuiva daca stii
numele si adresa, dar este foarte dificil sa gasesti pe cineva intr-o carte de telefon cunoscandu-i
doar numarul de telefon. Pentru ca functiile cu sens unic sa fie utile in contextul criptografiei
bazate pe chei publice ele trebuie s aiba o trapa(trapdoor), adica un mecanism secret care sa
permita realizarea cu usurinta a functiei inverse functiei in sens unic. Printr-o astfel de modalitate
se poate obtine x daca se da y.
Exemplul1 : Ne putem imagina usor strazile cu sens unic dintr-un oras. Astfel, este usor
ca mergand pe astfel de strazi sa ajungem de la punctul A la punctul B, dar este
imposibil sa ajungem de la B la A.In acest mod, criptarea este privita ca directia A B;
desi este foarte usor de parcurs drumul n aceasta directie, nu ne putem ntoarce napoi spre A
(adica sa decriptam mesajul).
Exemplul 2 : Sa consideram cartea de telefon a unui oras mare . Cu ajutorul ei este foarte usor sa
gasim numarul de telefon al unei anumite persoane.In schimb, este extrem de greu - practic
imposibil - sa afli persoana care are un anumit numar de telefon. Ne aflam n situatia parcurgerii
secventiale a (cel putin) unui volum gros, ceea ce conduce la o crestere exagerata a timpului.
Aceasta da o sugestie de constructie a unui sistem de criptare cu cheie publica. Criptarea se face
independent de context, litera cu litera. Pentru fiecare litera a textului clar se alege un nume care
ncepe cu acest caracter si numarul de telefon al persoanei respective va constitui criptarea.
Sistemul este homofonic; doua aparitii diferite ale aceleiasi litere vor fi
codificate foarte probabil cu numere diferite.
De exemplu, textul clar SOLIST se poate cripta astfel:
S Simion Pavel
O Olaru Stefan
L Lambru Stelian
I Ilie Romeo
S Solovean Raluca
T Tecuceanu Paul

6394502
7781594
6300037
3134971
6281142
3359962

Deci, textul criptat va fi


639450 277815 946300 037313 497162 811423 359962
De remarcat ca metoda este nedeterminista; din acelasi text clar se pot obtine enorm de
multe texte criptate. Pe de alta parte, orice text criptat conduce la un text clar unic. Bob va avea
la dispozitie pentru decriptare o carte de telefon scrisa n ordinea crescatoare
a numerelor. Aceasta i va permite sa decripteze mesajele cu un algoritm de complexitate
O(log n).
Deci, o functie neinversabila f trebuie sa verifice doua conditii:
-5-

Fiind dat x, f(x) este usor de calculat;


Calculul lui x din f(x) este imposibil.
De remarcat ca, din punct de vedere strict matematic, nu se cunosc astfel de functii. A
demonstra ca exista functii neinversabile este echivalent cu a demonstra relatia P = NP,
conjectura care sta la bazantregii teorii criptografice. De aceea, termenii folositi sunt relativi la
complexitatea calculatorie. Astfel, o problema este:
1. usoara daca se poate rezolva cu un algoritm cel mult liniar;
2. grea daca se poate rezolva cu un algoritm polinomial neliniar;
3. imposibila daca este NP - completa.

4. Securitatea sistemelor de criptare cu cheie publica


In majoritatea sistemelor de criptare, aparatul matematic folosit este bazat pe teoria
numerelor teoria functiilor recursive si teoria probabilitatilor. Pe o scara mult mai restransa apar
functiile eliptice, teoria automatelor, calcul neconventional (cuantic, molecular etc). Sistemele de
criptare cu cheie publica un avantaj major fata de sistemele clasice: aici nu mai este necesar
efortul transmiterii cheii. Un contact prealabil ntre Alice si Bob pentru a pune la punct detaliile
sistemului de criptare este inutil. Un sistem de criptare cu cheie publica nu ofera nsa o securitate
absoluta. Aceasta se datoreaza faptului ca Oscar poate oricand sa dispuna de atacuri pasive sau
active.
Anume:

Daca criptanalistul dispune de un text criptat y, el poate cauta exhaustiv


un text clar x astfel ca eK(x) = y. Singura aparare contra unui astfel de atac consta n
gradul de complexitate al sistemului.

Un criptanalist activ poate efectua cu succes un atac de tipul meet in the


middle. Sa presupunem ca Alice si Bob doresc sa stabileasca un contact. Ei fac publice
cheile de criptare eA respectiv eB. Daca contactul este nepersonalizat, Oscar poate
controla mesajele schimbate ntre cei doi, n felul urmator:

1. Oscar opacizeaza printr-un mijloc oarecare aceste chei si trimite lui Alice cheia e1B
ca din partea lui Bob; substituie similar pentru Bob cheia eA cu
e1A.
2. Fie m mesajul pe care Alice vrea sa l trimita lui Bob. Ea va cripta si va trimite y1 =
e1B(m).
3. Oscar intercepteaza mesajul (reamintim, toate canalele sunt nesigure) si afla m =
d1B(y1).
4. Oscar recripteaza y = eB(m) si trimite y lui Bob.
Bineinteles, Oscar poate modifica sau ntarzia mesajul m daca doreste. Din aceasta cauza,
aproape n toate sistemele de criptare cu cheie publica apare necesitatea autentificarii mesajului
sau a expeditorului, precum si aceea a confidentialitatii.
-6-

Definitie : Confidentialitatea asigura accesul la informatie doar partilor autorizate de a


avea acest acces.
Definitie: Autentificarea este procesul prin care un calculator (program de calculator sau
alt utilizator) incearca sa confirme unui destinatar ca mesajul primit de acesta vine (sau nu vine)
din partea sa.
Metodele prin care un expeditor uman se poate autentifica sunt clasificate in:
1. ceva ce utilizatorul este (de exemplu amprente digitale, de retina, de voce, secventa
DNA, recunoasterea semnaturii, identificatori biometrici).
2. ceva de utilizatorul are (de exemplu card ID, date de securitate soft pe calculator sau
telefon).
3. ceva ce utilizatorul stie (de exemplu un password, o parola, un numar de identificare
- PIN).
4. Orice combinatie ntre metodele anterioare (de exemplu un card bancar cu PIN asigura
o dubla autentificare).
Alt termen frecvent utilizat este cel de integritate. El se refera la validitatea datelor.
Definitie :Integritatea este siguranta ca datele la care se refera un utilizator pot fi accesate
si pot fi modificate numai de cei autorizati sa o faca.
In general integritatea poate fi compromisa n doua moduri:
1. Prin alterare intentionata (de exemplu modificarea unui cont bancar, a unei adrese de email, a unui document de indetitate);
2. In mod accidental (transmisii perturbate de zgomote de canal, zgarierea harddiscului).
Presupunem ca Alice si Bob sunt doi utilizatori, cu posibile conflicte de interese. Cand
Alice trimite un mesaj lui Bob, ambele parti trebuie sa se asigure ca:
Mesajul nu este trimis de o terta persoana care pretinde a fi Alice;
Bob sa nu poata obliga pe Alice sa tina cont de mesaje care nu-i apartin, iar Alice sa
poata recunoaste public propriile mesaje.
Intr-o oarecare masura, cele doua conditii sunt contradictorii: conform primei conditii,
Bob trebuie sa stie ceva despre modul de criptare al lui Alice, care i va permite sa autentifice
mesajul, iar conform celei de-a doua conditii, el nu trebuie sa stie prea mult.
O modalitate frecvent utilizata pentru autentificarea mesajelor este folosirea codurilor de
autentificare.
Exemplul : MAC-ul (Message Authentication Code) definit in cadrul sistemului de
criptare DES este o varianta prin care se poate asigura atat autenticitatea cat si integritatea
mesajului. Daca se solicita si autentificarea partenerilor, atunci se foloseste de obicei semnatura
electronica.

5. Schimbul de chei Diffie-Hellman


Metoda schimbului de chei Diffie-Hellman, cunoscuta si ca metoda de distributie a
cheilor publice, poarta numele a doi specialisti de la Standford University, Whitfield Diffie si
Martin Hellman. In anul 1976, ei au inventat o metoda prin care doua parti pot cadea de comun
acord sa comunice prin mesaje secrete fara sa fie nevoie de o terta parte, de un schimb off-line
sau de transmiterea vreunei valori secrete intre ele. Independent, Ralph Merkle a venit cu o
solutie de distributie a cheilor publice, numai ca metoda propusa implica substantiale cheltuieli
pentru efectuarea calculelor si a transmisiei. Varianta realizata de Diffie si Hellman a fost numita
sistemul distribuiei cheilor publice sau al schimburilor de chei publice.
-7-

Metoda de generare a cheii in cazul Diffie-Hellman presupune ca fiecare parte genereaza


doua numere , una publica si una privata . Aceste valori sunt bazate pe o baza de numeratie
prestabilita sau un grup Diffie Hellman. Cele doua parti schimba valorile publice acest lucru
putand fi facut si prin intermediul unui canal nesigur.

Figura 3: schimbul de chei Diffie Hellman


Metoda Diffie-Hellman se bazeaza pe conceptul perechii de chei public privat. Protocolul
incepe cu fiecare parte care genereaza independent cate o cheie privata. In pasul urmator, fiecare
calculeaza cate o cheie publica, aceasta fiind o functie matematica a cheilor private respective.
Urmeaza schimbul de chei publice.In final, fiecare dintre cele doua persoane calculeaza o functie
a propriei chei private si a cheii publice a celeilalte persoane. Matematica este cea care va face sa
se ajunga la aceeasi valoare, care este derivata din cheile lor private. Ele vor folosi valoarea ca pe
cheie a mesajului. Diffie si Hellman folosesc exponentierea in aritmetica modulara pentru a
calcula cheile publice si cheia mesajului. Aritmetica modulara este ca si aritmetica standard, cu
exceptia faptului ca folosete numere numai in intervalul 0 la N, numit modulo. Atunci cand o
operatie produce un rezultat care este mai mare sau egal cu N, N este scazut repetat din rezultat
pana cand valoarea se incadreaza in intervalul 0 la N-1 (ca si cum s-ar imparti la N si se ia in
seama restul). De exemplu, 3+4 mod 5 = 2. Daca rezultatul este negativ, N se adauga acestuia
pana cand se va incadra in intervalul 0 la N-1. De exemplu, 3-8 mod 7 =-5 mod 7 = 2.
In aritmetica modulara, exponentierea este o functie intr-un singur sens. Aceasta inseamna ca
este usor de calculat un numar y = gx mod N pentru o valoare secreta x, insa este mult mai dificil
sa se calculeze x din y, daca numerele sunt suficient de mari, ca de exemplu o lungime de cateva
sute de cifre (noi presupunem ca g i N sunt cunoscute). Aceasta este referita ca si problema
logaritmului discret pentru ca x este logaritm din y n baza g (mod N), iar numerele sunt finite si
intregi.
Cu metoda Diffie-Hellman a schimbului de chei publice, Alice si Bob stabilesc cheia mesajului
secret dup cum urmeaza. Alice genereaza o cheie secreta xa si Bob o cheie secreta xb. Dup
aceasta, Alice calculeaza o cheie publica ya, care este g ridicat la puterea xa modulo p, unde p
este un numar prim (adica nu poate fi descompus in produsul a doua numere), g fiind mai mic
decat p. Identic, Bob calculeaza o cheie publica yb, prin ridicarea lui g la puterea xb modulo p. Ei
vor schimba valorile publice ale acestora. Apoi, Alice ridica cheia publica a lui Bob la puterea
exponentului sau, xa modulo p, in timp ce Bob ridica cheia publica a lui Alice la exponentul sau,
-8-

xb modulo p. Amandoi vor obtine acelasi rezultat, g ridicat la puterea xa i xb, iar rezultatul
obtinut va fi folosit de amandoi drept cheia K a mesajului. Matematic, totul se va exprima astfel:
ya = gxa mod p
yb = gxb mod p
K = yaxb mod p = ybxa mod p = gxa*xb mod p
Desi in practica se folosesc numere foarte lungi, de cateva sute de cifre, pentru
a ajuta la intelegerea modului de functionare, vom folosi numere mici.
Exemplul 1
S presupunem c p = 7, g = 3, cheia lui Alice xa = 1 i a lui Bob xb = 2
Vom avea:
Alice calculeaza cheia sa publica: ya = gxa mod p = 31 mod 7 = 3
Bob calculeaza cheia sa publica: yb = gxb mod p = 32 mod 7 = 2
Alice calculeaza K = ybxa mod p = 21 mod 7 = 2
Bob calculeaza K = yaxb mod p = 32 mod 7 = 2
sau
K = gxa*xb mod p = 32x1 mod 7 = 9 mod 7 = 2.
Exemplul 2
Presupunem ca p = 5, g = 4, cheia lui Alice xa = 3 i a lui Bob xb = 2
Alice calculeaza cheia sa publica: ya = gxa mod p = 43 mod 5 = 4
Bob calculeaza cheia sa publica: yb = gxb mod p = 42 mod 5 = 1
Alice calculeaza K = ybxa mod p = 13 mod 5 = 1
Bob calculeaza K = yaxb mod p = 42 mod 5 = 1
sau
K = gxa*xb mod p = 43x2 mod 5 = 4096 mod 5 = 1.
In ambele cazuri K ia valori identice, 2, respectiv 1.Metoda Diffie-Hellamn, precum si variantele
ei sunt utilizate n cteva protocoale de securitate a retelelor si in produse comerciale, inclusiv la
AT&T 3600 Telephone Security Device, la Fortezza card o varianta de carduri criptate, si la
Pretty Good Privacy pentru criptarea e-mail-urilor si a unor fisiere.

6. Comparatie ntre criptarea asimetrica si cea cu cheie


publica
Avantaje ale sistemelor de criptare cu cheie simetrica :
1. Pot transmite volume mari de date. Exista implementari hard care pentru unele sisteme de
criptare pot asigura rate de criptare de sute de mega-octeti pe secunda
2. Cheile sunt relativ scurte.
3. Pot fi folosite ca baza de constructie a diverselor mecanisme de criptare, cum ar fi
generatori de numere pseudo-aleatoare, generatori de functii de dispersie, scheme
de semnatura.
4. Prin compunere pot conduce la sistme de criptare puternice.
5. Au o istorie bogata n evenimente si experienta.
-9-

Dezavantaje ale sistemelor de criptare cu cheie simetrica:


1. Cheia trebuie sa ramana permament secreta n (cel putn) doua locuri distincte.
2. Cu cat lungimea unui mesaj criptat este mai mare, cu atat el este mai usor de spart.
3.In retele mari, o gestionare a cheilor devine extrem de dificila.
4. Necesita un canal sigur de comunicare, cel putin pentru transmiterea cheii. Acest
lucru devine dificil mai ales pentru sistemele care necesita schimbari frecvente ale
cheilor de criptare/decriptare.
Avantaje ale sistemelor de criptare cu cheie publica :
1. Sistemul este ideal pentru transmiterea informatiei prin canale nesigure.
2. Sistemele cu cheie publica sunt simplu de definit si elegante matematic.
3. Doar cheia de decriptare trebuie tinuta secreta, la un singur punct (destinatar).
4. In functie de modul de utilizare, o pereche de chei (publica,privata) poate fi pastrata o
perioada mai lunga de timp.
5. Conduc la aplicatii de mare ntindere: semnaturi electronice, algoritmi de autentificare, componente de comert electronic etc.
Dezavantaje ale sistemelor de criptare cu cheie publica:
1. Sunt semnificativ mai lente decat sistemele simetrice.
2. Sunt necesare chei de lungimi mult mai mari.
3. Nu se poate garanta securitatea absoluta a nici unei scheme de criptare cu cheie
publica
4. Implementarea trebuie realizata cu foarte mare grija. Sisteme cu grad ridicat teoretic de
securitate pot fi sparte usor printr-o implementare neglijenta.
Dupa cum se observa, cele doua clase de sisteme de criptare dispun de o serie de avantaje
complementare. Acest lucru face ca ele sa fie folosite combinat.

- 10 -

Concluzii:
Se pare ca discutia pe tema securitatii datelor este de actualitate . Apar cateva opinii in legtura cu
ce s-a vorbit pana acum legat de acest subiect. In primul rand o precizare care sa clarifice
conceptul de securitate: ascunderea datelor (fisiere, foldere, etc.) pe un HDD nu se numeste, in
nici un caz securitate, aceasta se numeste obscuritate. Securitate este atunci cand atacatorul
(hotul) are acces la date, stie unde sa le gaseasca, stie ce algoritm de criptare a fost folosit, mai
stie si modul de funcionare a acestui algoritm si, peste toate acestea are si timp sa incerce
diferite metode de atac, insa, daca nu stie cheia de decriptare, nu are cum sa decripteze fisierele
(datele) protejate in timp util. In acest context, timpul util este mai mic decat timpul de viata
(validitate) a informatiei protejate. Se poate discuta la nesfarsit despre diferiti algoritmi de
criptare, cat de siguri sunt, cit de rapizi sunt, etc. Orice algoritm de criptare este inutil daca cheia
de decriptare este compromisa (pierduta, furata, gasita, etc.). In alta ordine de idei, in momentul
iin care un hot vrea sa jefuiasc o banca, in nici un caz nu va trece la fapte in momentul in care i
trece ideea prin cap. Inainte de furt va avea grija sa urmareasca banca respectiva, isi pregateste
lovitura. In aceeasi idee, cine vrea sa copieze date digitale, in mod sigur va urmari care sunt orele
intre care proprietarul este conectat, unde tine fisierele, ce fel de protocol de autentificare
foloseste pentru a fi recunoscut de catre sistem, etc. De aici rezulta ca, daca un hot copiaza ceva
de pe un HDD, nu copiaza doar de dragul de a copia , copiaza fiindca stie ce sa copieze si de
unde sa copieze, deci stie ca datele sunt intr-un anumit loc. Dac ai date importante, nu iti
permiti sa le ascunzi pe HDD, sperand ca hotul (atacatorul) nu le va gasi din neatentie. n
legatura cu programele care ascund sau restrictioneaz anumite drepturi in Windows 95/98,
Windows 95/98 nu a fost creat cu securitatea datelor in gand. Si asta se vede tocmai la baza
sistemului de operare, adica la sistemul de fisiere. Windows 9x se bazeaz pe sistemul de fisiere
FAT, care stim foarte bine ce performante si ce slsbiciuni are. Mai mult de atat, din dorinta de a
asigura compatibilitatea programelor scrise pentru Win 31, nucleul lui Win 9x se bazeaza pe
apeluri de functii si servicii ale vechiului DOS, care habar nu are ce nseamna mai multi
utilizatori sau mai multe task-uri. Astfel, securitatea datelor n Win 9x folosind programe care
ascund sau restrictioneaza anumite drepturi, se aseamana cu sigurana unei case de piatra
construita pe o fundatie de paie. Unica solutie pentru o adevarat securitate este
folosirea/implementarea unui sistem criptografic, care sa fie independent de sistemul de operare
si care sa preia sarcina de pe seama sistemului de operare. Prin Internet se gasesc o multime de
implementari ale celor mai buni algoritmi de criptare. Foarte multe dintre acestea sunt gratuite si
poti avea codul sursa pe care sa-l studiezi si sa-l modifici dupa bunul plac. Astfel, chiar daca nu
esti un foarte bun cunoscator in domeniu, poti sa-ti faci o securitate destul de marita a fisierelor
si a datelor.

Un nou portal informaional!


Dac deii informaie interesant si doreti s te impari cu noi atunci
scrie la adresa de e-mail : support@sursa.md
- 11 -

S-ar putea să vă placă și