Sunteți pe pagina 1din 35

Tem de cas

Reele de Calculatoare i Internet

Procedee de cifrare uzuale n Internet

Student: Zamfir Narcis


grupa de master postuniversitar ISC
1

Cuprins:
Introducere............................................................... .........................pag 1 Aspecte de baz a securitii n Internet.............................................pag 1 o Filtrarea adreselor MAC...........................................................pag 1 o Firewall.............................................................. ......................pag 2 o Protecia transmisiunilor prin criptare......................................pag 7 Criptare cu chei private(simetrice) ..................................................... pag 8 o DES.................................................................... ......................pag 9 o SDES.................................................................... ..................pag 12 o TripleDES........................................................... .....................pag 12 o AES ................................................................... .....................pag 13 o Blowfish............................................................. ....................pag 16 o IDEA................................................................... ....................pag 16 Criptare cu chei publice....................................................................p ag 18 o RSA.................................................................... ....................pag 20
2

o PGP................................................................... .....................pag 22 Exemplu de spargere a codurilor (DES) ............................................pag 25 o Atacul de forta bruta..............................................................pa g 25 o Atacuri mai rapide decat forta bruta......................................pag 26 Exemplu de spargere a codurilor (RSA) ............................................pag 27 Concluzii................................................................... ........................pag 32

1.Introducere. Nu putem vorbi n zilele noastre despre transmisia datelor prin intermediul reelelor de telecomunicaii fr s vorbim i de aspectele legate de securitate. Odat cu creterea vitezelor de transfer i creterii numarului de oameni care au acces la o conexiuni de date partajate cu ali utilizatori se pune problema dac metodele de criptare folosite pentru asigurarea spaiului privat sunt cu adevrat eficiente. De aceea imi propun ca prin acest scurt referat s prezint cteva noiuni de baz de criptografie, tehnologiile de la baza securitii ethernet si nu n ultimul rnd s trec n revist tehnicile de acces folosite n reelele fr fir de tip Wi-Fi.

2.Aspecte de baz a securitii n Internet.


3

Cele mai simple metode de asigurare a securitii se bazeaz la cel mai jos nivel la limitarea accesului. Acesta este cazul tehnologiei firewall sau a filtrrii adreselor MAC care va fi prezentat in subcapitolele urmtoare. Dar deoarece n majoritatea cazurilor reeaua folosita pentru comunicare poate fi partajat cu ali utilizatori sau sigurana ei fizic nu poate fi asigurat mereu se folosesc si metode de criptare pentru limitarea accesului la coninutul informaiei transmise; chiar dac aceasta este interceptat coninutul ei nu poate fi aflat dect prin procedee foarte complexe sau chiar deloc.

2.1. Filtrarea adreselor MAC n reelele de calculator, filtrare MAC (sau filtrare EUI, sau adresa filtrarea adreselor ptr nivelul 2 de adresare) se refer la o metod de control de securitate prin care adresa de 48 de bii asociat la fiecare plac de reea este utilizat pentru a stabili accesul la reea. Protocolul de comunicare de date Media Access Control (MAC), de asemenea cunoscut sub numele de controlul accesului la mediu , este o parte a stratului de legturi de date specificate n modelul OSI (nivelul 2). O plac de reea, sau NIC (Network interface controller = controler interfa de reea) este o bucat de hardware conceput pentru a permite computerelor s comunice ntr-o reea de calculatoare. Adresele MAC sunt unic atribuit fiecrei plci de reea, folosind astfel filtrare MAC pe o reea de permise i refuz accesul la reea la dispozitive specifice, prin utilizarea unor liste negre i liste albe. Chiar dac restricia de acces la reea prin utilizarea listelor este simpl, o persoana fizic nu este identificat printr-o adresa MAC, mai degrab este identificat un singur dispozitiv, astfel nct o persoan autorizat va trebui s aib o intrare din lista alb pentru fiecare dispozitiv pe care el sau ea ar trebui s utilize n reea. n teorie, filtrare MAC permite unui administrator de reea sa permit sau a refuze accesul la reea la gazde asociat cu adresa MAC, dei, n practic, exist metode pentru a eluda aceast form de control al accesului prin modificarea adresei ("spoofing") sau schimbul fizic al plcii de reea ntre gazde. Dei iniial nu se putea modifica adresa MAC la plcile de reea wireless
4

Wi-Fi acest lucru s-a schimbat ntre timp i acuma nu este o idee bun de a folosi ca mijloc unic de protejare a reelei, filtrarea adreselor MAC.

2.2. Firewall Termenul firewall provine din industria construciilor civile. Multe din cldirile moderne au n structura lor firewalls - perei special construii, rezisteni la foc care, n cazul izbucnirii unui incendiu, au rolul de a mpiedica sau ncetini rspndirea focului, pn la sosirea pompierilor. Termenul a migrat i n constructia de masini, unde un firewall separ compartimentul motorului unei maini de habitaclu, pentru a proteja pasagerii. Pentru tiina calculatoarelor, probabil c cel mai usor este sa descriem, mai intai, ceea ce un firewall nu este: un firewall nu este un simplu router sau un calculator gazda care asigura securitatea unei retele. in linii mari, un firewall (numit uneori si pasarela de securitate) este un sistem care impune o politica de control al accesului intre doua retele. Un firewall reprezinta implementarea acestei politici in termeni de configurare a retelei, unul sau mai multe sisteme gazda si router-e cu functiuni speciale, alte masuri de securitate, cum ar fi autentificarea prin metode criptografice a clientilor.

Fig. 1. Dispunerea unui firewall

Cu alte cuvinte, un firewall este un mecanism folosit pentru a proteja o retea sigura din punctul de vedere al securitatii de una nesigura, in care nu putem avea incredere. In mod tipic, una din retele este cea interna unei organizatii (sigura, de incredere), in timp ce cealalta este internet-ul (in care nu avem incredere din punctul de vedere al securitatii). Dat fiind numarul si mai mare de utilizatori internet multi dintre acestia avand, din nefericire, statutul de hacker (cracker sau vandal) folosirea unui firewall are sens, deoarece probabilitatea "izbucnirii unui foc" undeva in internet este foarte mare. Crearea unei politici firewall este, n esen, destul de simpl: trebuie stabilit ce este permis s ies din reeaua local, dar mai ales ce este permis s intre n ea ( ce tipuri de pachete ?) trebuie stabilite serviciile pe care o s le ofere firewall i la cine o s ofere aceste servicii trebuie descrise tipurile de atacuri poteniale pe care firewall-ul trebuie s le opreasc. Tipuri de firewall-uri Exist dou tipuri de firewall-uri: 1. Firewall-uri de filtrare care blocheaz anumite pachete specifice
System firewall
(LAN) | (HUB)

internet

calculator

(DMZ) (HUB)

Fig. 2. Firewall de filtrare 2. Servere Proxy care stabilesc conexiuni de reea n exterior pentru calculatoarele din interiorul LAN-ului
System proxy/ firewall
(LAN) | (HUB)

intern et

calculat or

proxy server

Fig. 3. Firewall cu proxy server Desi cele mai multe firewall-uri sunt, in mod curent, interpuse intre retelele interne si internet, conceptul de firewall nu vizeaza numai acest aspect, existand suficiente motive pentru folosirea firewall-urilor in oricare internet, inclusiv in retelele cu arie larga (WAN) ale diferitelor companii. Deoarece un firewall este dispus la intersectia dintre doua retele, acesta poate fi folosit si in alte scopuri decat acela de control al accesului: 1. pentru a monitoriza comunicatiile dintre o retea interna si o retea externa. De exemplu, un firewall poate jurnaliza (monitoriza, inregistra) seviciile folosite si cantitatea de date transferata prin conexiuni TCP/IP intre propria organizatie si lumea exterioara; 2. un firewall poate fi folosit pentru interceptarea si inregistrarea tuturor comunicatiilor dintre reteaua interna si exterior 3. daca o organizatie are mai multe retele, separate din punct de vedere geografic, fiecare avand cate un firewall, exista posibilitatea programarii acestor firewall-uri pentru a cripta automat continutul pachetelor transmise intre ele. in acest fel, pe suportul internet, organizatia isi poate realiza propria retea virtuala privata.

2.3. Protecia transmisiunilor prin criptare Dup cum se tie, calculatoarele trimit mesaje de date(majoritatea transmisiunilor prin protocol TCP/IP) prin Internet sub forma de pachete. ntr-o reea interceptarea transmisiunilor repezint unul dintre cele mai mari riscuri de securitate la adresa persoanelor fizice i a firmelor. Pentru protecia mpotriva atacurilor prin interceptarea pachetelor, toate transmisiunile efectuate trebuie criptate. O transmisiune criptat este o transmisiune ce conine date aezate dezordonat, care pot fi reordonate numai prin aplicarea cheii criptografice corecte. Cate lucruri de baz care trebuiesc menionate:
7

Calculatoarele realizeaz criptarea prin multimplicarea i mprirea valorilor transmise cu numere mari, decriptarea fiind efectuat prin aplicarea unui numr mare corelat datelor transmise. Cele dou tipuri eseniale de criptare sunt criptarea cu cheie unic, cunoscut sub numele de criptare cu cheie simetric, i criptare cu cheie public, sau criptare cu cheie asimetric. Criptarea cu cheie unic folosete o singur cheie, partajat de ambele pri i folosit la criptare i decriptare . Criptarea cu cheie public folosete pentru criptarea i decriptarea o cheie cunoscut disponibil pe scar larg (cheia public) i o cheie pe care nu o cunoate nimeni cu excepia utilizatorului (cheia privat). La criptarea unui document, n mod obinuit se cripteaz numai o poriune a acestuia, cunoscut sub numele de esena mesajului.(message payload) Anumite locaii WEB, cunoscute sub numele de inele de chei publice, conin multe asemenea chei. 3. Criptare cu chei private(simetrice) Securitatea criptrii simetrice (cu cheie secret) depinde de protecia cheii; managementul acestora este un factor vital n securitatea datelor i cuprinde urmtoarele aspecte: - generarea cheilor. Pot fi folosite, cu o tabel de conversie, proceduri manuale (datul cu banul, aruncarea zarurilor), dar numai pentru generarea cheilor master (folosite pentru cifrarea cheilor). Pentru cheile de sesiune sau de terminal sunt necesare proceduri automate, de generare (pseudo) aleatoare, care se pot baza pe amplificatoare de zgomot, funcii matematice i diveri parametri (numrul curent al apelurilor sistem, data, ora etc). - distribuia cheilor. Cu privire la transportul cheii secrete, problema este n general rezolvat prin folosirea unei alte chei, numit cheie terminal, pentru a o cripta. Cheile de sesiune - generate numai pentru o comunicaie - sunt transportate criptat cu cheile terminal care, de asemenea, pot fi protejate (cnd sunt memorate) cu alt cheie, numit cheie master. - memorarea cheilor. Utilizarea algoritmilor simetrici, n cazul a N entiti care doresc s comunice, implic N(N-1)/2 chei de memorat ntr-un mod sigur. n realitate, nu toate legturile bidirecionale se stabilesc la acelai timp; este motivul pentru care se utilizeaz cheile de sesiune. Cheile terminal, care cripteaz numai date foarte scurte (chei de sesiune), sunt foarte dificil de atacat.
8

Cnd sunt folosite chei publice, X500 pare cea mai bun soluie pentru managementul cheilor. Cheile publice sunt pstrate n directoare X500, ca certificate semnate cu o semntur digital a Autoritii de certificare (Certificate Authority).

Fig. 4. Modelul simplificat al criptrii convenionale

ntlnim urmtoarele tipuri de sisteme de criptare cu algoritmi cu cheie secret: - cifrul DES (DES simplu, DES cu sub-chei independente, DESX, DES generalizat GDES, DES cu cutii S alternative, DES cu cutii S dependente de cheie, precum si alte variaiuni ale DES); - cifrul IDEA; - cifrul FEAL; - cirful LOKI; - cifrul RC2 - altele

3.1. DES (Data Encryption Standard) Data Encryption Standard, sau DES este un cifru (o metoda de criptare a informatiilor) ce a ajuns cifrul oficial FIPS al Statelor Unite in 1976, raspandindu-se apoi in intreaga lume. Algoritmul a fost initial subiectul multor controverse, multe parti find secrete si avand o cheie destul de scurta, insa in cele din urma a ajutat la intelegerea ideii de cifru bloc si a dus la criptanaliza sa. Astazi, DES este considerat a fi nesigur in multe situatii, in special din cauza cheii sale de 56 biti, care este prea scurta. Astfel de chei DES au fost sparte in mai putin de 24 de ore. De asemenea exista rezultate analitice care
9

dovedesc anumite slabiciuni teoretice ale cifrului, insa care nu apar adesea in practica. Algoritmul pare sa fie sigur in forma sa Triple DES, desi pot aparea si aici slabiciuni in situatii de atac. In ultimii ani cifrul a fost detronat de Advanced Encryption Standard (AES). In unele documentatii, DES este referit ca DEA (Data Encryption Algorithm). In 17 Martie 1975, algoritmul propus ca Standard de Criptare a Datelor (DES) a fost publicat in Registul Federal. Au fost cerute compentarii publice, iar in anul umrator s-au deschis doua grupuri de discutii pentru standardul propus. Au fost cateva critici din diverse parti, incluzand pe Martin Hellman si Diffie Whitfield, pionierii criptografiei cu cheie publica. Acestia spuneau ca cifrul are o cheie prea scurta si ca NSA a slabit algoritmul ca sa poata citi mesajele criptate. Alan Konheim, unul din proiectantii DES spunea: am trimis cutii de substitutie la Washington si au venit inapoi total modificate. S-au facut cercetari cu privire la implicarea NSA in dezvoltarea algoritmului, rezultatul fiind publicat in 1978: In dezvoltarea DES, NSA a convins IBM ca o cheie de marime mai mica ar fi suficienta, au asistat apoi indirect la construirea structurii cutiilor de substitutie, in cele din urma declarand fals ca algoritmul DES final este ferit de orice slabiciune statistica sau matematica. Totusi s-a gasit si ca NSA nu s-a implicat in dezvoltarea algoritmului propriu-zis, ci IBM a considerat ca o cheie mai scurta ar fi suficienta pentru cerintele actualelor sisteme. Chiar unul din membrii DES, Walter Tuchman spunea ca noi am dezvoltat algoritmul DES folosind doar membrii echipei IBM. NSA nu a atins nici macar un fir de ata.

10

Fig. 5. Algoritmul DES DES cripteaz i decripteaz datele n blocuri de 64 bii, folosind o cheie de lungime 64 bii. Din cei 64 de bii ai cheii, doar 56 sunt folosii propriu-zis de algoritm, restul de 8 fiind folosii ca bii de paritate. Blocul de text n clar de la intrare este de 64 bii, rezultnd la ieire un bloc de 64 bii de text cifrat. Datorit faptului c opereaz pe blocuri de aceeai dimensiune i folosete att permutarea ct i substituia, DES este considerat n egal msur un cifru bloc i un cifru produs (un cifru bloc care itereaz mai multe operaii simple n urma crora rezult un cifru mai puternic). DES este alctuit din 16 pai identici de procesare, numii runde, care produc textul cifrat. n urma studiilor s-a concluzionat c numrul de runde este exponenial proporional cu timpul necesar aflrii cheii secret folosind atacul de tip for brut. Pe msur ce crete numrul de runde, securitatea algoritmului crete exponenial. Paii de procesare:
11

1. Textul n clar este mprit n blocuri de 64 bii. 2. Din cheia de 56 bii se genereaz 16 chei de 48 bii. Cheia de 56 bii folosit pentru criptare este n realitate folosit doar la generarea primei subchei i nu este folosit n mod direct pentru criptarea datelor. 3. Textul n clar, o dat mprit n blocuri, este supus unui proces de permutare bazat pe un table care specific modul n care biii sunt permutai: bitul unul este mutat pe poziia bitului 40, bitul 2 pe poziia 23 etc. 4. Dup realizarea permutrii, biii sunt trecui prin cele 16 runde, folosind cte una din cele 16 sub-chei generate. 5. Cei 64 bii creai la pasul 3 sunt pasai unei runde, unde sunt mprii n 2 blocuri de cte 32 bii i procesai cu cheia corespunztoare rundei respective. 6. Pasul 4 este repetat de 16 ori. Rezultatul unei runde este livrat urmtoarei runde. 7. Dup terminarea celei de-a 16-a runde, cele 2 jumti de cte 32 bii sunt lipite, rezultnd un bloc de 64 bii. 8. Blocul de 64 bii este din nou permutat, folosind funcia invers celei de la pasul 3.

3.2. Simple DES (S-DES) Datorit complexitii ridicate a algoritmului DES standard, n continuare v prezentm varianta simplificat a algoritmului DES, Simple-DES, care folosete blocuri de 8 bii de date. Algoritmul DES simplificat poate fi exprimat ca o compunere de cinci funcii: o permutare iniial IP, care permut biii blocului de intrare; o funcie f, care depinde de o subcheie k1 a unei chei de criptare K; funcia este foarte complex i acioneaz asupra jumtii stngi a blocului de date rezultat la pasul anterior;

12

o permutare SW, care interschimb cele dou jumti ale blocului de date rezultat la pasul anterior. Dac blocul de date este d = d1d2d3d4d5d6d7d8, atunci acesta devine d5d6d7d8d1d2d3d4, unde i reprezint al i-lea bit din blocul d; aceeai funcie f, care folosete o alt subcheie (k2) a cheii de criptare K; inversa permutrii IP, IP-1. Formula matematic ce st la baza algoritmului de criptare este: Y = Ek(X) = IP-1(fk2(SW(fk1(IP(X))))), unde EK este funcia de criptare care folosete cheia de criptare K i se aplic asupra blocului de intrare X, rezultnd blocul criptat Y; fk1 i fk2 reprezint funcia f aplicat asupra unui bloc de date, folosind subcheile k1, respectiv k2. n cazul acestui algoritm fiecare bloc de intrare are 8 bii i cheia de criptare, care este partajat ntre emitor i receptor, are lungimea de 10 bii. Cheia de criptare este folosit pentru a crea dou subchei avnd fiecare 8 bii.

3.3. Triple DES (3DES) Cnd s-a constatat c cheile de 56 bii folosite de DES nu sunt suficiente pentru a proteja datele mpotriva atacurilor de tip for brut, 3DES a fost soluia pentru mrirea spaiului cheilor fr a schimba algoritmul. 3DES, numit i Triple DES, este un cifru bloc care aplic de 3 ori DES. Utilizarea celor trei pai este important pentru a evita atacurile meet-inthe-middle.

Fig. 6. Algoritmul 3DES

13

Triple DES, cu 3 chei diferite de 56 bii are o lungime a cheii de 168 bii. Datorit atacurilor meet-in-the-middle, securitatea efectiv este doar de 112 bii. Cel mai eficient atac asupra 3DES cu trei chei necesit aproximativ aproximativ 232 texte clare cunoscute, 2113 pai, 290 criptri DES individuale, i 288 uniti de stocare. (3)

3.4.

AES(Advanced Encryption Standard)

AES (de la Advanced Encryption Standard - n limba englez, Standard Avansat de Criptare), cunoscut i sub numele de Rijndael, este un algoritm standardizat pentru criptarea simetric, pe blocuri, folosit astzi pe scar larg n aplicaii i adoptat ca standard de organizaia guvernamental american NIST. [1] Standardul oficializeaz algoritmul dezvoltat de doi criptografi belgieni, Joan Daemen i Vincent Rijmen i trimis la NIST pentru selecie sub numele Rijndael. Deoarece DES devenise vulnerabil din cauza lungimii prea mici a cheii, NIST a recomandat utilizarea 3DES, un algoritm care const n esen n aplicarea de trei ori a DES. Dei 3DES s-a dovedit a fi un algoritm puternic, el este relativ lent n implementrile software,[2] motiv pentru care NIST a lansat n 1997 o cerere de propuneri pentru un algoritm care s-l nlocuiasc. S-a pornit de la 21 de propuneri acceptate iniial, apoi prin eliminri numrul lor a fost redus la 15, i apoi la 5, din care a fost ales n cele din urm algoritmul propus de doi criptografi belgieni, Joan Daemen i Vincent Rijmen. La votarea final, algoritmul, denumit de autorii si Rijndael, a nvins la vot patru alte propuneri, printre care i algoritmul RC6, propus de o echip de criptografi n care se afla i reputatul informatician Ron Rivest. Criteriile pe baza crora au fost evaluate propunerile pentru AES au fost securitatea (rezistena la atacuri criptanalitice), costurile (eficiena computaional, complexitatea spaial, precum i licenierea liber i gratuit) i particularitile algoritmului (flexibilitatea, simplitatea, i uurina de realizare a implementrilor att software ct i hardware).[3] Acest standard precizeaz algoritmul Rijndael, un cifru simetric de tip bloc care poate procesa blocuri de date de 128 biti, folosind chei cu lungimi de
14

128, 192 sau 256 bii. n publicaia FIPS nr. 197 (4), operaiile sunt definite sub forma unor operaii pe matrice. Pasii algoritmului: -Pasul SubBytes -Pasul SubBytes este un cifru cu substituie, fr punct fix, denumit Rijndael S-box, care ruleaz independent pe fiecare octet din state. Aceast transformare este neliniar i face astfel ntreg cifrul s fie neliniar, ceea ce i confer un nivel sporit de securitate. -Pasul ShiftRows- Pasul ShiftRows opereaz la nivel de rnd al matricii de stare state. Pasul const n simpla deplasare ciclic a octeilor de pe rnduri, astfel: primul rnd nu se deplaseaz; al doilea rnd se deplaseaz la stnga cu o poziie; al treilea rnd se deplaseaz la stnga cu dou poziii; al patrulea se deplaseaz la stnga cu trei poziii.[10] Rezultatul acestui pas este c fiecare coloan din tabloul state rezultat este compus din octei de pe fiecare coloan a strii iniiale. Acesta este un aspect important, din cauz c tabloul state este populat iniial pe coloane, iar paii ulteriori, inclusiv AddRoundKey n care este folosit cheia de criptare, operaiile se efectueaz pe coloane. -Pasul MixColumns-n acest pas, fiecare coloan a tabloului de stare este considerat un polinom de gradul 4 peste corpul Galois . Fiecare coloan, 4 tratat ca polinom, este nmulit, modulo x + 1 cu polinomul a(x) = 3x3 + x2 + x + 2. Rezultatul are proprietatea c fiecare element al su depinde de toate elementele de pe coloana strii dinaintea efecturii pasului. Combinat cu pasul ShiftRows, acest pas asigur c dup cteva iteraii, fiecare octet din stare depinde de fiecare octet din starea iniial (tabloul populat cu octeii mesajului n clar). Aceti doi pai, mpreun, sunt principala surs de difuzie n algoritmul Rijndael. Coeficienii polinomului a(x) sunt toi 1, 2 i 3, din motive de performan, criptarea fiind mai eficient atunci cnd coeficienii sunt mici. La decriptare, coeficienii pasului corespunztor acestuia sunt mai mari i deci decriptarea este mai lent dect criptarea. S-a luat aceast decizie pentru c unele din aplicaiile n care urma s fie folosit algoritmul implic numai criptri, i nu i decriptri, deci criptarea este folosit mai des. -AddRoundKey -n pasul AddRoundKey, se efectueaz o operaie de sau exclusiv pe bii ntre octeii strii i cei ai cheii de rundPasul AddRoundKey este pasul n care este implicat cheia. El const ntr-o simpl operaie de sau exclusiv pe bii ntre stare i cheia de rund (o cheie care este unic pentru fiecare iteraie, cheie calculat pe baza cheii secrete). Operaia de combinare cu
15

cheia secret este una extrem de simpl i rapid, dar algoritmul rmne complex, din cauza complexitii calculului cheilor de rund (Key Schedule), precum i a celorlali pai ai algoritmului.

Fig. 7. Algoritmul AES 3.5. Blowfish Blowfish este un cifru simetric bloc care poate nlocui DES sau IDEA. El necesit o cheie de lungime variabil, ntre 32 i 448 bii. Blowfish a fost conceput n 1993 de ctre Bruce Schneier, ca o alternativ gratuit i rapid la algoritmii de criptare existeni. Blowfish este nepatentat, nu necesit cumprarea unei licene i este disponibil gratuit pentru toi utilizatorii. Articolul original care prezint cifrul a fost prezentat la workshop-ul First Fast Software Encryption de la Cambridge, UK (urmnd s fie publicat de Springer-Verlag, Lecture Notes in Computer Scrience #809,1994). Blowfish este o reea Feistel care itereaz o funcie simpl de criptare de 16 ori. Fiecare ciclu este format dintr-o permutare dependent de cheie i o substituie dependent i de cheie li de date. Dimensiunea blocului este de 64 bii, cheia are o lungime variabil de pn la 448 bii. Algoritmul const n dou pari: expandarea cheii i criptarea datelor. n urma expandrii cheii, o cheie de
16

pn la 448 bii se transform n mai multe matrici de sub-chei care totalizeaza 4168 bii. Toare operaiile sunt adunri i aplicari de funcii XOR pe cuvinte de 32 bii.

3.6 IDEA (International Data Encryption Algoritm) IDEA (International Data Encryption Algoritm) este un cifru bloc proiectat de Xuejia Lai i de James Massey n Elveia, n anul 1991. Scopul algoritmul era de a nlocui standardul DES. IDEA este o versiune revizuit a unui cifru mai vechi, PES(Proposed Encryption Standard). Iniial, IDEA a fost numit IPES(Improved PES). Cifrul a fost proiectat n cadrul unui contract de cercetare cu Fundaia Hasler, care a devenit parte din Ascom-Tech AG. Cifrul e patentat n mai multe ri dar este disponibil gratuit pentru uz non-comercial. Numele IDEA este marc nregistrat. Brevetul va expira in 2010-2011. IDEA opereaz pe blocuri de 64 bii, folosind o cheie de 128 bii i const ntr-o serie de 8 transformri (runde) identice i o transformare final. Din cheia de 128 bii sunt derivate 62 de sub-chei a cte 16 bii fiecare. Dou dintre ele sunt folosite n cadrul fiecrei runde, patru sunt folosite naintea fiecrei runde i dup ultima rund. Blocul de text n clar este divizat n 4 sub-blocuri de 16 bii. Sunt folosite 3 operaii pentru a combina dou valori de 16 bii ntr-un rezultat de 16 bii: adunare, XOR i nmulire. n diagrama de criptare (Fig. 9, Fig. 8) se folosesc urmtoarele simboluri:

17

Fig. 8,9. Diagremele de criptare ale alg. IDEA

4. Criptare cu chei publice Un alt moment foarte important n evolutia criptografiei computationale l-a constituit adoptarea unui principiu diferit de acela al cifrrii clasice, cunoscut de mii de ani. Whitfield Diffie si Martin Hellman, de la Univeritatea Stanford din California, printr-un articol celebru publicat n 1976, au pus bazele criptografiei cu chei publice. n locul unei singure chei secrete, criptografia asimetric foloseste dou chei diferite, una pentru cifrare, alta pentru descifrare. Deoarece este imposibil deducerea unei chei din cealalt, una din chei este fcut public fiind pus la dispozitia oricui doreste s transmit un mesaj cifrat. Doar destinatarul, care detine cea de-a doua cheie, poate descifra si utiliza
18

mesajul. Tehnica cheilor publice poate fi folosit si pentru autentificarea mesajelor, prin asa numita semntur digital, fapt care i-a sporit popularitatea. Folosind algoritmi cu cheie public (asimetrici), se creaz criptosisteme cu dou chei, n cadrul crora doi utilizatori (procese) pot comunica cunoscnd fiecare doar cheia public a celuilalt. n criptosistemele cu chei publice fiecare utilizator A, detine o transformare de cifrare public, EA, care poate fi memorat ntr-un registru (fisier) public si o transformare de descifrare secret, DA, ce nu este posibil s fie obtinut din EA. Cheia de descifrare (secret) este derivat din cheia de cifrare (public) printr-o transformare greu inversabil (one-way). n sistemele cu chei publice, protectia si autentificarea sunt realizate prin transformri distincte. S presupunem c utilizatorul (procesul) A doreste s emit un mesaj, M, unui alt utilizator (proces) B. Dac A cunoaste transformarea public EB, atunci A poate transmite M la B sub forma C=EB(M), asigurndu-se astfel functia de confidentialitate. La receptie, B, va descifra criptograma C utiliznd transformarea secret DB, cunoscut doar de el: DB(C)=DB(EB(M))=M. Schema nu furnizeaz facilitti de autentificare, deoarece orice utilizator (proces) are acces la transformarea public EB a lui B si i poate trimite mesaje false M' sub forma C'=EB(M'). Pentru autentificare se aplic lui M transformarea secret DA a lui A. Ignornd protectia pentru moment, A va emite C=DA(M) la B, care la receptie va aplica transformarea public, EA a lui A: EA(C)=EA(DA(M))= Autentificarea este realizat deoarece numai A poate aplica transformarea DA. Acest concept poart numele de semntur digital, fiind folosit pentru recunoasterea sigur a utilizatorilor sau proceselor. Fie B un receptor de mesaj semnat de A. Semntura lui A trebuie s satisfac urmtoarele proprietti: B 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 recunoaste semnarea unui mesaj M, trebuie s existe un judector" care s poat rezolva disputa dintre A si B. Protectia nu este asigurat, ntruct este posibil ca mesajul M s fie obtinut de oricine, aplicnd transformarea public EA. Pentru a se realiza simultan protectia si autentificarea informatiilor spatiului {M} trebuie s fie
19

echivalent spatiului {C}, asa nct orice pereche (EA, DA) s fie n msur s opereze att asupra textului clar, ct si asupra textului cifrat; n plus se cere ca EA si DA s fie mutual inverse, adic: EA(DA(M))=DA(EA(M))=M. Emittorul de mesaj A va aplica mai nti transformarea secret a sa, DA, mesajului M, semnndu-l. Apoi A va cifra rezultatul - utiliznd transformarea public a lui B, EB si va emite ctre receptor criptograma: C=EB(DA(M)). Receptorul B l obtine pe M aplicnd la nceput propria-i functie de descifrare, DB, iar apoi transformare public a lui A, EA, cea care furnizeaz autentificarea : EA(DB(C))=EA(DB(EB(DA(M)))) =EA(DA(M)) =M.

Fig. 10. Principiu criptare cu chei publice 4.1 RSA (Rivest Shamir Adleman) Cel mai cunoscut sistem cu chei publice este RSA al crui nume provine de la de cei trei cercettori de la Massachusetts Institute of Technology care l-au creat- Rivest, Shamir si Adleman. El este un adevrat standard de facto" n domeniul semnturilor digitale si al confidentialittii cu chei publice. Se bucur de o foarte mare apreciere att n mediul guvernamental ct si n cel comercial, fiind sustinut prin lucrri si studii de comunitatea academic. Sub diferite forme de implementare, prin programe sau dispozitive hardware speciale, RSA este astzi recunoscut ca cea mai sigur metod de cifrare si autentificare disponibil comercial. O serie de firme productoare de sisteme de programe si echipamente ca DEC, Lotus, Novell, Motorola precum si o serie de institutii importante (Departamentul Aprrii din SUA, National Aeronautics-SUA,
20

Boeing, reteaua bancar international SWIFT, guvernul Belgiei etc), folosesc acest algoritm pentru protejarea si autentificarea datelor, parolelor, fisierelor, documentelor memorate sau transmise prin retele. Generarea cheilor: 1. Se selecteaz dou numere ntregi prime p i q. 2. Se calculeaz produsul n=p*q. 3. Se calculeaz indicatorul lui Euler (n)=(p-1)*(q-1). 4. Se selecteaz un numr ntreg e astfel nct c.m.m.d.c.((n),e)=1, 1<e<(n). 5. Se calculeaz d astfel nct d = e-1 mod (n). 6. Cheia public este (e,n), iar cheia privat este d. Algoritmul de criptare: Presupunem c un utilizator A are cheia public (e,n) i cheia privat d. Utilizatorul B cripteaz mesajul M pentru a fi transmis la A astfel: 1. Obine cheia public (e,n) a lui A. 2. Transform mesajul ce va fi criptat ntr-un numr ntreg M n intervalul [0,n-1]. 3. Calculeaz C = Me (mod n). 4. Trimite textul cifrat C la utilizatorul A

Algoritmul de decriptare: Pentru a determina textul clar M din textul cifrat C, utiliz. A calc.: M = Cd (mod n). Numai utilizatorul A cunoaste cheia privata d.

21

Fig. 11. Etapele principale algoritm RSA

Un prim domeniu unde ntlnim algoritmi de criptare, i n special RSA, este cel al telecomunicaiilor: telefoane publice, cu cartele electronice, sau telefoanele mobile (protocoale de autentificare a persoanei apelate). De asemenea, n domeniul sntii, prin intermediul cardurilor electronice care s conin istoricul medical al unui individ. Securitatea naional: cri de identitate, paapoarte, legitimaii magnetice. i s nu uitm economia: cardurile bancare, comerul electronic, sau informatica: confidenialitatea potei electronice, a informaiilor de pe o pagin de web, pe scurt, dreptul la intimitate. Unde vom ntlni nevoia de semntur i identificare electronic, vom ntlni criptarea prin RSA. 4.2 . PGP (Pretty Good Privacy) Dezavantajul algoritmului RSA, i n general al algoritmilor cu chei publice, este c sunt destul de leni, n sensul c pentru a cripta i a decripta un mesaj (n condiiile n care avem cheile public i secret) consumm o cantitate
22

mare de timp. Din acest motiv, de multe ori, se folosesc algoritmi combinai: cu chei secrete i chei publice. Un astfel de algoritm este implementat n PGP. PGP este un program care ofera intimitate criptografica si autentificare(procesul prin care un computer,un program pentru computer, sau un user, incearca sa confirme ca acel computer, acel program pentru computer sau acel user din partea caruia o a doua parte primeste "un comunicat" este, sau nu este, acea parte care se pretinde a fi, sau a nu fi).PGP a fost initial dezvoltat de catre Phil Zimmermann in 1991.Numele i-a fost sugerat de catre un magazin prezent intr-un serial transmis la un program de radio.PGP a fost suficient de influent incat sa fie facut un standard IETF ,cunoscut ca OpenPGP.Versiunile mai recente ale PGP decat standardul sunt mai mult sau mai putin compatibile cu standardul.Cand e folosit corespunzator, PGP e capabil de o foarte inalta securitate.Observatori informati cred ca inclusiv agentiile guvernamentale (precum NSA) sunt incapabile sa patrunda mesajele criptate corespunzator cu PGP.PGP e mai usor de folosit decat multe criptosisteme,dar, la fel ca in cazul altor criptografii ,implementarea si folosirea afecteaza enorm securitatea obtinuta in realitate.

Fig. 12. Servicii oferite de PGP Erorile de implementare sunt intotdeauna posibile,si uzul neatent poate transforma texul protejat in text neprotejat.Orice sistem de criptare poate fi nesigur, indiferent de cat de bine este conceput.In general ,uzul corespunzator implica citirea si urmarea documentatiei user.In contrast cu protocoalele de securitate precum SSL care doar protejeaza datele in tranzit ,PGP poate fi folosit pentru protectia datelor stocate pe disc.Oricum, chiar si uzul corespunzator poate duce la rezultate nedorite, accentuandu-se astfel distanta
23

intre acest tip de program si protectia absoluta, imposibil de gasit deocamdata.Programele de spyware sunt o amenintare la adresa acestei tip de protectie. Nici un criptosistem , inclusiv PGP ,nu poate proteja informatii care sunt accesibile in alte moduri.Atacurile la care acest criptosistem este vulnerabil sunt de multe ori ignorate .Securitatea autentica a informatiei necesita securitatea operatorului precum si un design criptografic si o implementare criptografica de inalta calitate, iar securitatea absoluta a informatiei probabil nu poate fi atinsa.PGP poate cripta orice data sau fisier ,si e adesea folosit pentru e-mailuri care nu au nici un sistem de securizare built-in implementat.PGP si S/MIME sunt cele doua sisteme de protectie ale e-mailurilor care au curent statut de programe standard NIST.Plug-in-uri care implementeaza functionalitate PGP sunt disponibile pentru multe aplicatii e-mail(Outlook,Outlook Express, Eudora,Evolution,Mozilla Thunderbird,Apple Mail,etc).Cateva sunt incluse cu distributii PGP.Din punct de vedere al securitatii fiecare plug-in este independent de PGP.Oricare poate avea erori de implementare ,sau sa interactioneze nesigur cu PGP sau alt software.Utilizand astfel de plug-in-uri nu ofera neaparat acelasi nivel de securitate cu folosirea de sine statatoare a PGP.Distinctia intre aceste cazuri este importanta inclusiv pentru cei mai priceputi si informati din punct de vedere criptogrrafic.Cel mai bun sfat pentru utilizatorul obisnuit este sa testeze intreg sistemul trimitandu-si mesaje siesi sau unui partener,periodic.In special, dupa fiecare update sau schimbare de software.Cea mai sigura actiune operationala este criptarea manuala ,semnarea mesajelor si trimiterea lor prin e-mail, de asemenea,manual.In orice caz , la fel ca toate consideratiile de securitate,aceasta trebuie potrivita in functie de cerintele celorlalte sisteme, constangerile lor,si nevoile userului.Dar, oricare ar fi riscurile unui sistem de securitate, absenta lui este intotdeauna mult mai riscanta.PGP foloseste criptografia "public-key" dar si criptografia "symmetric key",si ,pana la un punct, foloseste si Public Key Infrastructure(PKI)(cu unele similaritati ,si multe diferente ,cu certificatul standard X.509,care il preceda).PGP foloseste "assymmetric key encryption" , modalitate in care recipientul mesajului a generat anterior operatiei o pereche inrudita de chei,cheia privata ,si cheia publica.

24

Fig 13. Etapa de criptarea in algoritmul PGP Cheia publica a recipientului e folosita de expeditor pentru criptarea unei chei impartasite de cei doi useri(cheie secreta,cheie conventionala) pentru un algoritm de tip "symmetric cipher".Acea cheie e folosita apoi pentru criptarea textul brut al mesajului.Multe chei publice PGP sunt disponibile pentru toti prin intermediul "key serverelor" PGP din lume care se comporta ca site-uri mirror reciproc.Recipientul unui mesaj protejat PGP decripteaza mesajul folosind "session key" pentru algoritmul simetric.Acea cheie a fost inclusa in mesajul trimis in forma criptata si a fost decriptat folosindu-se cheia privata a recipientului.Folosirea a doua codificari este rationala datorita diferentei vitezei de operare intre codificarile simetrice si cele asimetrice, cele simetrice fiind in general mult mai rapizi.Sunt si vulnerabilitati in algoritmii "asymmetric key" folositi de PGP cand sunt folositi ca sa cripteze direct mesajele.O strategie similara este folosita pentru a detecta daca un mesaj a fost modificat de cand a fost terminat sau daca a fost trimis de persoana care pretinde ca este trimitatorul(daca trimitatorul este persoana care pretinde ca este).Ca sa se determine acestea ,trimitorul foloseste PGP ca sa "semneze" mesajul ,fie cu RSA sau DSA (algoritmi de signatura).Pentru a face asta, PGP computeaza un "hash" din textul brut si apoi creaza semnatura digitala("digital signature") din acel "hash" , folosind cheia privata a trimitatorului.Primitorul mesajlui computeaza un "hash" din textul brut recuperat si apoi foloseste cheia publica a trimitatorului si valorea "hash"-ului mesajului semnat cu algoritmul de signatura.
25

Daca semntura se potriveste "hash"-ul textului mesajului , se presupune (cu indoieli minore) ca mesajul primit nu a fost trimis cu rea intentie deliberat ,sau accidental, din moment ce a fost semnat.Prezumtia se bazeaza pe un numar de consideratii.Este destul de improbabil cu algoritmii si protocoalele folosite in PGP ca cineva rau intentionat poate crea o signatura pentru un mesaj arbitrar si astfel un mesaj primit care trece acest test trebuie sa fi fost trimis de catre pretinsul trimitator.Oricum, oricine care are jumatatea privata a cheii de semnare poate sa creeze cu usurinta o signatura corespunzatoare pentru orice. Intr-o lume a e-mailurilor,virusurilor ,cailor troieni,si a altor forme de malware termenul non-respingere(validarea unui mesaj ca apartinand trimiatorului probabil) trebuie primit cu multa vigilenta si prudenta , pentru ca cheile private pot fi uneori corupte clandestin. Dar asta se verifica pentru orice criptosistem care foloseste algoritmi de tip "asymmetric key" pentru nonrespingere si semnatura digitala.PGP nu e in nici un sens extrem de vulnerabil ,dar Zimmerman a fost inteligent cand l-a numit "pretty good".

5.Exemplu de spargere a codurilor (DES) Desi despre criptanaliza DES au fost publicate mai multe informatii decat despre oricare alt cifru bloc, cel mai practic atac ramane cel de forta bruta. Se cunosc multe proprietati criptanalitice care permit cel putin trei feluri de atac cu complexitatea teoretica mai mica. Insa acestea au nevoie de un volum cam nerealist de informatii decriptate ca sa functioneze, nefiind practice.

5.1 Atacul de forta bruta Pentru orice cifru, metoda fundamentala de atac este forta bruta, adica incercarea tuturor cheilor posibile, pe rand. Lungimea unei chei determina numarul posibil de chei si deci complexitatea procesului. In ceea ce priveste DES, s-au pus inca de devreme intrebari cu privire la lungimea cheii sale, inainte chiar de a fi aprobat ca standard. Avand o cheie relativ scurta, se prevedea necesitatea unui algoritm nou inca de atunci. Se stie ca NSA a incurajat, daca nu chiar fortat IBM sa reduca cheia de la 128 la 64 de biti, iar
26

mai apoi la 56. Acesta este un indicator al faptului ca NSA dispunea de calculatoare capabile sa sparga asemenea chei chiar in anii '70. Masina construita sa sparga DES valora 250.000$ si continea peste 18.000 de chipuri menite sa termine o cheie DES in cateva zile. Au fost propuse multe astfel de masini. In 1977, Diffie si Hellman au propus o masina estimata a costa 20 de milioane de dolari, care putea gasi o cheie DES intr-o singura zi. Prin 1993, Wiener a propus o masina de 1 milion de dolari ce gasea o cheie in sapte ore. Vulnerabilitatea DES a fost demonstrata practic la sfarsitul anilor '90. In 1997, RSA Securiry a sposorizat o serie de competitii care ofereau 10.000$ primei echipe care spargea un mesaj criptat cu DES. Conscursul final a fost castigat de Proiectul Deschall, condus de Rocke Verser, Matt Curtin si Justin Dolske, ce folosea timpii morti a mii de procesoare din Internet. Vulnerabilitatea a fost si mai puternic pusa in evidenta in 1998, cand Electronic Frontier Foundation (EFF) a construit o masina de 250,000$. EFF dorea sa demonstreze ca DES poate fi spart atat in teorie, cat si in practica: Sunt multi oameni care nu cred un adevar pana ce nu il vad cu proprii ochi. Numai construind o masina care sparge DES in cateva zile poate convinge pe acestia sa nu se bazeze pe securitatea sa. Masina rezolva o cheie DES in mai putin de doua zile cam in acelasi timp Departamentul de Justitie USA anunta ca DES este imposibil de spart.

Fig 14. Timp necesar pentru a sparge algorimul DES prin forta brut

27

5.2 Atacuri mai rapide decat forta bruta Exista trei atacuri care pot sparge cele saisprezece runde ale algoritmului DES cu o complexitate mai mica decat forta bruta: criptanaliza diferentiala (DC), criptanaliza liniara (LC) si atacul lui Davies. Insa atacurile de aceste feluri sunt teoretice si destul de greu de implementat in practica, certificand doar slabiciunile. Criptanaliza diferentiala a fost descoperita pe la sfarsitul anilor '80 de Eli Bihan si Adi Shamir, desi era cunoscuta deja de IBM. Ca sa sparga cele saisprezece runde, criptanaliza diferentiala are nevoie de 247 texte cunoscute. DES a fost construit ca sa reziste la acest fel de criptanaliza. Criptanaliza liniara a fost descoperita de Mitsuru Matsui si are nevoie de 243 de texte cunoscute. Metoda a fost implementata si a fost primul experiment de criptanaliza DES raportat. Nu reiese de nicaieri ca DES ar fi fost construit sa reziste si unui astfel de atac. O generalizare a LC, analiza liniata multipla a fost sugerata in 1994 de Kaliski si Robhashaw, fiind rafinata apoi de Bityukov in 2004. Rezultatele acestor analize arata ca pot fi folosite mai multe aproximari liniare pentru reducerea cerintelor de date (241 in loc de 243). Atacul lui Davies este o tehnica specializata pentru DES, sugerata la inceput de Davies in anii '80, imbunatatita mai apoi de Biham si Biryukiv in 1997. Cea mai puternica forma a acestui atac are nevoie de 250 texte, are complexitatea computationala de 250 si o rata a succesului de 51%. Criptanaliza Diferential-Liniara propusa de Langford si Hellman in 1994 reduce necesarul de texte cunoscute la 215.8.

6.1 Exemplu de spargere a codurilor (RSA) Din punct de vedere matematic, exist 3 atacuri asupra RSA: 1. Factorizarea numrului n n factori primi p i q. Se poate astfel determina (n) = (p-1)*(q-1), iar apoi d = e-1 (mod (n)). 2. Determinarea lui (n) direct, fr a determina mai nti p i q. i n acest caz se poate determina apoi d = e-1 (mod (n)). 3. Determinarea lui d n mod direct, fr a determina mai nti (n). Determinarea lui (n) este echivalent cu factorizarea numrului n, iar determinarea lui d (tiind doar pe e i n) se face ntr-un timp tot aa de mare ca i factorizarea lui n.
28

Securitatea RSA se bazeaz pe dificultatea factorizrii unui numr ntreg n factori primi. RSA cu lungimea cheii de 1024 bii (aproximativ 300 cifre ) este considerat destul de puternic pentru aplicaiile actuale. Problema decriptrii unui mesaj criptat cu RSA este denumit problema RSA. Aceasta const n obinerea radicalului de ordin e modulo n, unde e i n au proprietatea c n este produsul a dou numere prime mari p i q, iar e este prim cu produsul dintre p-1 i q-1. n acest moment, cea mai eficient metod de a realiza aceasta este descompunerea n factori primi a lui n, i obinerea astfel a cheii secrete d pe baza lui e. Astfel, este demonstrat c dificultatea spargerii unui mesaj criptat cu RSA nu este mai dificil dect problema factorizrii. Nu a fost descoperit nc o alt soluie general a problemei RSA, dar nici nu s-a demonstrat matematic c nu exist o alt soluie.

Fig 15. Graficul complexitii celei mai bune metode de factorizare a ntregilor n funcie de lungimea reprezentrii binare a numrului factorizat Graficul complexitii celei mai bune metode de factorizare a ntregilor n funcie de lungimea reprezentrii binare a numrului factorizat (pe abscis, log n, adic numrul de cifre al numrului de factorizat; pe ordonat, ordinul de mrime al duratei de factorizare). Se observ c aceast complexitate este exponenial, crescnd foarte mult pentru numere mari
29

Factorizarea ntregilor prin metodele comune ajut la gsirea soluiilor n timp util doar pentru numere mici. Pentru numere mari, algoritmii de factorizare, cu complexitate exponenial, dau soluia dup foarte mult timp. Cea mai rapid metod de factorizare a ntregilor, algoritmul general al ciurului cmpurilor de numere, are o complexitate de Aici, c este un numr ce ia valori n jur de 1,9 pentru numere de tipul lui n, adic numere cu doi factori primi. Cel mai mare numr factorizat vreodat prin acest algoritm, rulat n anul 2005, de ctre specialiti de la Agenia Federal German pentru Securitatea Tehnologiei Informaiei, are 200 de cifre zecimale, iar reprezentarea binar a factorilor primi obinui ocup 663 de bii. Cheile de criptare RSA cele mai sigure au lungimi de peste 1024 de bii. Atacul RSA prin metoda forei brute, adic ncercarea fiecrei chei secrete posibile, consum chiar mai mult timp dect factorizarea[. Dei securitatea algoritmului RSA const n legtura dintre acesta i factorizarea ntregilor, el trebuie folosit cu grij n implementri, deoarece, n caz de folosire eronat, sistemele bazate pe RSA pot fi atacate n anumite maniere care ocolesc factorizarea efectiv a modulului, atacatorul ajungnd s obin mesajul clar sau cheia secret. Atac cu text cifrat ales n cazul atacului cu text cifrat ales, atacatorul dispune de cheia public a entitii atacate (exponentul de criptare e i modulul n), i intercepteaz mesaje cifrate trimise acestuia. Pentru a obine mesajul clar m dintr-un mesaj cifrat c, atacatorul poate proceda, de exemplu, astfel: 1. Calculeaz 2. Trimite entitii atacate spre semnare pe x, obinnd y = xd(mod n) 3. Se observ c 4. Se rezolv ecuaia y = (2m)(mod n) Atacatorul obine astfel mesajul cifrat. Exist mai multe feluri de atacuri cifrate, dar sunt cteva moduri de aprare mpotriva lor. Unele pot fi evitate dac pur i simplu entitatea protejat cu chei secrete refuz s semneze texte arbitrare trimise de teri. Dac acest lucru nu este posibil (ca de exemplu n cazul unui notar public care trebuie s semneze documente electronice prezentate de persoane strine), atunci atacul poate fi prevenit prin folosirea
30

unei perechi diferite de chei pentru criptare i pentru semntura electronic. De asemenea, este necesar s se foloseasc i un padding aleator pentru mesaj nainte de criptare sau, n cazul semnturii, s nu se semneze mesajul clar, ci un hash al acestuia. De asemenea, atacul poate fi evitat i dac se impune o anumit structur predefinit mesajelor primite spre semnare. Mesaje necriptate ntruct RSA se bazeaz pe ridicarea la putere (modulo un numr n), exist anumite pri de mesaje care nu sunt criptate, pri rezultate n urma mpririi mesajului pe blocuri. Astfel de mesaje sunt mesajele m cu proprietatea c m=mx (mod n) oricare ar fi x, ca de exemplu m=0, m=1, m=n-1. Numrul exact al acestor mesaje decriptate este , i deci este de minim 9 (deoarece e, p i q sunt impare). Pentru a micora numrul de astfel de pri de mesaj, este util s se foloseasc un exponent public e ct mai mic. Exponentul de criptare mic n unele aplicaii, se folosete un exponent de criptare (public) mic, de exemplu 3, pentru a mri performana, dar i pentru a rezolva unele probleme de securitate. Dac mai multe entiti care comunic folosesc acelai exponent public (dar fiecare are propriul modul i deci propria cheie secret), atunci acelai mesaj trimis mai multor destinatari are urmtoarele valori: c1 = me(mod n1) c2 = me(mod n2) c3 = me(mod n3) unde ni sunt modulele celor trei destinatari, e este exponentul comun acestora iar m este mesajul trimis tuturor celor trei. Un atacator poate folosi algoritmul lui Gauss pentru a descoperi o soluie mai mic dect n1n2n3 a unui sistem compus din urmtoarele ecuaii: x = me(mod n1) x = me(mod n2) x = me(mod n3) Aceast soluie este, conform teoremei chinezeti a resturilor, cubul mesajului m. Soluia pentru aceast problem este cea denumit srarea mesajului (din englez: salting), adic adugarea unui padding format din numere pseudoaleatoare, padding diferit pentru fiecare expediere a mesajului.
[20]

31

Dac exponentul de decriptare (cel secret) este mic, pe lng faptul c multe pri din mesaj nu se cripteaz, aa cum s-a artat mai sus, exist un algoritm rapid de gsire a lui d, cunoscnd informaiile e i n. Acest algoritm nu este eficient dac d este de acelai ordin de mrime cu n, deci dac e este mic, acesta fiind unul din motivele pentru care se alege n general e un numr mic, pentru ca d s fie ct mai mare. Recomandri pentru dimensiunea cheilor: Recentele progrese fcute n factorizarea ntregilor i n procesarea paralel au dat natere la necesitatea unor chei din ce n ce mai mari pentru sistemele de criptare cu chei publice. Ultimele recomandri fcute de laboratoarele RSA Data Security pentru alegerea dimensiunii cheilor de cifrare RSA sunt:

Fig 16. Recomandari laboratoareale RSA Data Security ptr lungimea cheilor

7. Concluzii
32

Ca o concluzie legat de performanele alg. cu chei simetrice cred c cel mai exemplificativ este urmtorul tabel din care riese c timpii de decriptare sunt aproape identici indiferent de metoda dar la timpii de criptare AES este de doua ori mai ncet ca i competitorii:

Fig.17. Exemplu de performane algoritm de criptare chei simetrice*


(*extras din bibliografie 3)

Ct despre aspectul cel mai important : securitatea datelor se poate spune c AES este cel mai recomandat dintre toate urmat la scurta distan de Blowfish. Sunt AES pe 256 bii a fost spart doar cu for bruta dar din pcate timpul necesar pentru a-l sparge in acest fel este direct proporional cu lungimea parolei; de aceea se recomanda ca pentru AES 256bii sa se foloseasc o parol de cel puin 64 de caractere. Algoritmii cu chei publice sunt n general mai rapizi ca cei cu chei simetrice(private) dar nu sunt neaparat mai siguri: RSA pe 1024 bii a fost spart recent (martie 2010) de ctre un grup de cercettori de la universitatea Michigan n domeniul securitii internet cel mai des folosite metode de criptarea au ajuns sa fie cele bazate pe chei publice sau hibride(chei private + certificate). Ca o concluzie pentru cele prezentate n aceast lucrare a vrea s afirm c nici o tehnologie de criptare nu garantez securitate absolut ci doar faptul c efortul de spargere a criptrii este mult prea mare pentru a merita sa fie depus.

Bibliografie:
33

1) Securitatea in mediul internet [prof. Cezar A., Ed. Tehnica 2008] 2) Introducere in criptografie [prof. univ. dr. Constantin Popescu, Universitatea Tehnica Oradea, 2009] 3) Tehnologii de securitatea alternative pentru aplicaii n reea [Universitatea Tehnica din Cluj Napoca, Mircea F. V,2009] 4) Retele de calculatoare - Introducere in securitate [Corneliu Buraga, Universitatea A.I.Cuza Iasi,2007] 5) Computation Algebra [prof. John C.,CALTech University, 2008] 6) Cryptography and Network Security [William Stallings,Lawrie Brown, Idaho Institute of Technology,SUA, 2006 ] 7) Cryptography and Network Security [Viorel Preoteasa, Abo Akademy.Finlanda,2009] 8) Wikipedia.org [din diferita tari] 9) networkcomputing.com [revista IT] 10) csoonline.com [revista IT] 11) searchsecurity.techtarget.com [site IT] 12) design-reuse.com[site IT] 13) garykessler.net/library/crypto.html [breviar teoretic criptografie] 14) cacr.math.uwaterloo.ca/hac/ [dictionar criptografie]]

Bibliografie figuri:
-

Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig Fig

1 wikipedia.org (uk) 2,3 bibliografie 1) 4 bibliografie 3) 5 bibliografie 10) 6 wikipedia.org (us) 7 design-reuse.com 8,9 bibliografie 6) 10 bibliografie 4) 11 via.com.tw/en/ 12 bibliografie 2) 13 zdnet.com 14 bibliografie 3) 15 wikipedia.org (ro) 16 bibliografie 2)

34

Fig 17 bibliografie 1)

35

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