Sunteți pe pagina 1din 17

Aspecte de securitate n retele de calculatoare

Criptografia traditional Cteva principii practice de criptare Caracteristici ale criptografiei moderne Implicatii sociale ale problemelor de securitate

Importanta aspectelor de securitate n retelele de calculatoare a crescut odat cu extinderea prelucrrilor electronice de date si a transmiterii acestora prin intermediul retelelor. n cazul operrii asupra unor informatii confidentiale, este important ca avantajele de partajare si comunicare aduse de retelele de calculatoare s fie sustinute de facilitti de securitate substantiale. Acest aspect este esential n conditiile n care retelele de calculatoare au ajuns s fie folosite inclusiv pentru realizarea de operatiuni bancare, cumprturi sau plata unor taxe. n urma implementrii unor mecanisme de securitate ntr-o retea de calculatoare, informatiile nu vor putea fi accesate sau interceptate de persoane neautorizate (curioase sau, eventual, chiar ru intentionate) si se va mpiedica falsificarea informatiilor transmise sau utilizarea clandestin a anumitor servicii destinate unor categorii specifice de utilizatori ai retelelor. Persoanele care atenteaz la securitatea retelelor pot apartine unor categorii diverse, comitnd delicte mai mult sau mai putin grave: studenti care se amuz ncercnd s fure posta electronic a celorlalti, "hacker"-i care testeaz securitatea sistemelor sau urmresc s obtin n mod clandestin anumite informatii, angajati care pretind c au atributii mai largi dect n realitate, accesnd servicii care n mod normal le-ar fi interzise, sau fosti angajati care urmresc s distrug informatii ca o form de rzbunare, oameni de afaceri care ncearc s descopere strategiile adversarilor, persoane care realizeaz fraude financiare (furtul numerelor de identificare a crtilor de credit, transferuri bancare ilegale etc.), spioni militari sau industriali care ncearc s descopere secretele / strategiile adversarilor, sau chiar teroristi care fur secrete strategice. n conditiile n care pot exista interese att de numeroase de "spargere" a unei retele, este evident c proiectantii resurselor hard si soft ale acesteia trebuie s ia msuri de protectie serioase mpotriva unor tentative ru intentionate. Metode de protectie care pot stopa "inamici" accidentali se pot dovedi inutile sau cu un impact foarte redus asupra unor adversari redutabili - dedicati si cu posibilitti materiale considerabile. Problemele de asigurare a securittii retelelor pot fi grupate n urmtoarele domenii interdependente: confidentialiatea se refer la asigurarea accesului la informatie doar pentru utilizatorii autorizati si mpiedicarea accesului pentru persoanele neautorizate; integritatea se refer la asigurarea consistentei informatiilor (n cazul transmiterii unui mesaj prin retea, integritatea se refer la protectia mpotriva unor tentative de falsificare a mesajului);

autentificarea asigur determinarea identittii persoanei cu care se comunic (aspect foarte important n cazul schimbului de informatii confidentiale sau al unor mesaje n care identitatea transmittorului este esential); ne-repudierea se refer la asumarea responsabilittii unor mesaje sau comenzi, la autenticitatea lor. Acest aspect este foarte important n cazul contractelor realizate ntre firme prin intermediul mesajelor electronice: de exemplu, un contract / comand cu o valoare foarte mare nu trebuie s poat fi ulterior repudiat() de una din prti (s-ar putea sustine, n mod fraudulos, c ntelegerea initial se referea la o sum mult mai mic). Aspectele de securitate enumerate anterior se regsesc, ntr-o oarecare msur, si n sistemele traditionale de comunicatii: de exemplu, posta trebuie s asigure integritatea si confidentialitatea scrisorilor pe care le transport. n cele mai multe situatii, se cere un document original si nu o fotocopie. Acest lucru este evident n serviciile bancare. n mesajele electronice ns, distinctia dintre un original si o copie nu este deloc evident. Procedeele de autentificare sunt foarte rspndite si ele: recunoasterea fetelor, vocilor sau scrisului sau semnturilor unor persoane pot fi ncadrate n aceast categorie. Semnturile si sigiliile sunt metode de autentificare folosite extrem de frecvent. Falsurile pot fi detectate de ctre experti n grafologie prin analiza scrisului si chiar a hrtiei folosite. Evident, aceste metode nu sunt disponibile electronic si trebuie gsite alte solutii valabile. Dintr-un punct de vedere mai pragmatic, implementarea unor mecanisme de securitate n retelele de calculatoare de arie larg, n particular - Internet-ul, priveste rezolvarea urmtoarele aspecte 1. bombardarea cu mesaje - asa numitul spam - trimiterea de mesaje nedorite, de obicei cu un continut comercial. Acest fenomen este neplcut n cazul unui numr mare de mesaje publicitare nedorite si poate avea efecte mai grave n cazul invadrii intentionate cu mesaje ("flood"), uzual cu un continut nesemnificativ. Pentru utilizatorii de Internet conectati prin intermediul uni modem, numrul mare de mesaje are ca efect cresterea perioadei necesare pentru "descrcarea" postei electronice si deci un cost de conectare mai ridicat. Exist programe de post electronic care permit vizualizarea antetelor mesajelor primite nainte ca acestea s fie aduse pe calculatorul local, selectarea explicit a mesajelor care se doresc transferate si stergerea celorlalte. n plus, programele de e-mail pot ncorpora facilitti de blocare a mesajelor de tip "spam" prin descrierea de ctre utilizator a unor actiuni specifice de aplicat asupra mesajelor, n functie de anumite cuvinte cheie sau de adresele (listele de adrese) de provenient. 2. rularea unui cod (program) duntor, adesea de tip virus - acesta poate fi un program Java sau ActiveX, respectiv un script JavaScript, VBScript etc. ; Asemenea programe sunt n general blocate de navigatoarele moderne dar au ajuns s se rspndeasc ca fisiere atasate mesajelor de mail, un caz renumit n acest sens fiind cel al virusului "Love Letter" (care deterioreaz fisiere de tip sunet si imagine) si mutantilor lui, mai distructivi dect prima versiune. n general marile firme care produc navigatoare testeaz riguros riscurile impuse de programele duntoare rulate de pe site-uri web, uneori create cu intentii distructive, si intervin n general prin versiuni superioare imediat ce un astfel de risc a fost descoperit si corectat. n plus, cea mai mare parte a programelor de navigare permit utilizarea unor filtre specifice pe baza crora s se decid dac un anumit program va fi rulat sau nu, si cu ce

restrictii de securitate (decizia se realizeaz n general pe baza "ncrederii" indicate n mod explicit de utilizator). O alt solutie la aceast problem va fi prezentat ulterior. 3. infectarea cu virusi specifici anumitor aplicatii - se previne prin instalarea unor programe antivirus care detecteaz virusii, deviruseaz fisierele infectate si pot bloca accesul la fisierele care nu pot fi "dezinfectate". n acest sens, este important devirusarea fisierelor transferate de pe retea sau atasate mesajelor de mail, mai ales dac contin cod surs sau executabil, nainte de a le deschide / executa. 4. accesarea prin retea a calculatorului unui anumit utilizator si "atacul" asupra acestuia.. La nivelul protocoalelor de retea, protejarea accesului la un calculator sau la o retea de calculatoare se realizeaz prin mecanisme de tip fire-wall, prin comenzi specifice; acestea pot fi utilizate si n sens invers, pentru a bloca accesul unui calculator sau a unei retele de calculatoare la anumite facilitti din Internet. 5. interceptarea datelor n tranzit si eventual modificarea acestora - snooping. Datele se consider interceptate atunci cnd altcineva dect destinatarul lor le primeste. n Internet, datele se transmit dintr-un router[1] n altul (vezi Retele de arie larg) fr a fi (uzual) protejate. Routerele pot fi programate pentru a intercepta, eventual chiar modifica datele n tranzit. Realizarea unei astfel de operatii este destul de dificil, necesitnd cunostinte speciale de programare n retele si Internet, dar exist numeroase programe (de tip hacker care pot fi utilizate n aceste scopuri, ceea ce duce la cresterea riscului de ) interceptare a datelor. n paragraful Caracteristici ale criptografiei moderne se va discuta modul n care se poate preveniri interceptarea informatiilor transmise prin aplicarea unor algoritmi de codificare a datelor. Transmisia protejat a datelor trebuie s garanteze faptul c doar destinatarul primeste si citeste datele trimise si c acestea nu au fost modificate pe parcurs (datele primite sunt identice cu cele trimise). Modificarea datelor s-ar putea realiza n mod intentionat, de ctre o persoan care atenteaz la securitatea retelei sau printr-o transmisie defectuoas 6. expedierea de mesaje cu o identitate fals, expeditorul impersonnd pe altcineva (pretinde c mesajul a fost trimis de la o alt adres de post electronic)? spoofing. Aceast problem se revolv prin implementarea unor mecanisme de autentificare a expeditorului. Se poate remarca faptul c problemele ridicate la punctele 3 si 4 sunt riscuri generice, specifice pentru utilizatorii care fac schimb de fisiere si respectiv pentru toti cei care sunt conectati la o retea de calculatoare - local sau de arie larg. Problemele de interceptare si autentificare, cele mai importante din punctul de vedere al utilizatorilor obisnuiti, sunt rezolvate prin aplicarea unor tehnici de codificare, dup cum se va vedea n paragraful Caracteristici ale criptografiei moderne. Pentru asigurarea securittii retelei este important implementarea unor mecanisme specifice pornind de la nivelul fizic (protectia fizic a liniilor de transmisie ), continund cu proceduri de blocare a accesului la nivelul retelei (fire-wall), pn la aplicarea unor tehnici de codificare a datelor (criptare), metod specific pentru protectia comunicrii ntre procesele de tip aplicatie care ruleaz pe diverse calculatoare din retea. mpiedicarea interceptrii fizice este n general costisitoare si dificil; ea se poate realiza mai facil pentru anumite tipuri de medii (de exemplu, detectarea interceptrilor pe fibre optice este mai simpl dect pentru cablurile cu fire de cupru). De aceea, se prefer implementarea unor mecanisme de asigurare a securittii la nivel logic, prin tehnici de codificare / criptare a datelor transmise care urmresc transformarea mesajelor astfel nct s fie ntelese numai de destinatar; aceste tehnici devin mijlocul principal de protectie a retelelor.

Avnd n vedere importanta dezvoltrii procedeelor de criptare pentru asigurarea securittii, dedicm urmtoarele paragrafe acestui subiect. Pentru nceput, se prezint problema criptrii si metodele traditionale de criptare iar apoi - cteva directii de evolutie n criptografia modern. Routerele sunt aparate special concepute pentru a transmite datele mai departe astfel nct, n funcie de expeditorul i destinaia acestora, s aleag calea de urmat. Cel mai adesea, routerele sunt chiar calculatoare.

Criptografia traditional
Istoria criptografiei este lung si pitoreasc. Se spune c la dezvoltarea procedeelor de criptare (codificare) au contribuit: armata, corpurile diplomatice, persoanele care au tinut jurnale si ndrgostitii. Evident, dezvoltarea tehnicilor de criptare a constiuit o prioritate pentru organizatiile militare, care utilizau frecvent asemenea procedee. nainte de aparitia calculatoarelor, volumul mare de mesaje criptate sau transmise a fost gestionat de un numr mare de functionari "codori". Evident, tehnicile folosite erau limitate de capacitatea codorilor de realizare a transformrilor necesare si de nsusirea de ctre acestia a unor tehnici criptografice noi. Totusi, pericolul de capturare a codurilor de ctre "inamici" fcea necesar schimbarea periodic a metodei de criptare. Modelul clasic de criptare presupune transformarea unui text surs ("plain text") printr-o functie dependent de o cheie ("key"), transformare n urma creia rezult textul cifrat ("ciphertext"). nainte de aparitia retelelor de calculatoare, acesta era transmis printr-un curier sau prin radio. n cazul interceptarii mesajelor cifrate, ele nu puteau fi decodificate prea usor n absenta cheii de criptare. Uneori, "intrusii" puteau nu numai s asculte canalele de comunicatie (intrusi pasivi), ci si s nregistreze mesajele si s le retransmit mai trziu, s introduc propriile mesaje sau s modifice mesajele legitime nainte ca ele s ajung la receptor (intrus activ). Domeniul care se ocup de spargerea (decodificarea) cifrurilor se numeste criptanaliz ("cryptanalysis") iar conceperea cifrurilor (criptografia) si spargerea lor (criptanaliza) sunt cunoscute global sub numele de criptologie ("cryptology"). ntr-o ncercare de formalizare matematic a proceselor de criptare si decriptare, se pot folosi urmtoarele notatii: S - textul surs, CK - functia de criptare, dependent de o cheie K, R codul rezultat si DK - functia de decriptare. Cu aceste notatii, criptarea este exprimat prin formula R = CK(S) iar decriptarea - prin S = DK(R). Se observ c DK(CK(S)) = S. O regul de baz n criptografie stabileste necesitatea cunoasterii metodei generale de criptare de ctre orice criptanalist. Acest principiu are la baz constatarea c pentru a inventa, testa si instala o nou metod de criptare este necesar o cantitate prea mare de efort pentru ca acest procedeu s fie practic. n consecint, cel mai important element devine cheia de criptare. Cheia const ntr-un sir de caractere care defineste / selecteaz una sau mai multe criptri potentiale. Spre deosebire de metoda general, care, n mod traditional, se schimba doar la ctiva ani, cheia putea fi schimbat orict de des era necesar.

n concluzie, modelul de baz al criptrii foloseste o metod general cunoscut, care este parametrizat cu o cheie secret, ce poate fi schimbat usor. n mod paradoxal, publicarea algoritmului de criptare, prin faptul c d posibilitatea unui numr mare de criptologi s sparg sistemul, i poate dovedi stabilitatea, n caz c dup ctiva ani nici unul din specialistii care au ncercat s-l sparg nu a reusit. Componenta secret a criptrii este, n consecint, cheia, a crei lungime devine foarte important. n mod evident, cu ct cheia este mai lung lung, cu att elementele ei sunt mai greu de determinat. De exemplu, pentru o secvent de n cifre (0,...,9), exist 10n posibilitti de a o crea. Astfel, pentru determinarea unei secvente de 6 cifre ar trebui parcurse 1 milion de posibilitti. n cazul n care cheile ar contine litere, numrul de alternative creste fiindc n alfabet exist 26 de litere. Se poate deduce c lungimea cheii produce cresterea exponential a volumului de munc al criptanalistului. O cheie care s poat tine la distant adversari profesionisti ar trebui s aib cel putin 256 de biti (cel putin 32 de cifre), n timp ce uzual se pot folosi chei de 64 de biti (n jur de 8 cifre). Cnd un criptanalist trebuie s decodifice un text, el se confrunt cu una din urmtoarele probleme: problema textului cifrat ("ciphertext only problem"), cnd are la dispozitie o cantitate de text cifrat si nici un fel de text surs; problema textului surs cunoscut ("known plaintext problem"), cnd are la dispozitie un text surs si textul cifrat corespunztor; problema textului surs ales ("chosen plaintext problem"), dac poate cripta la alegere zone din textul surs (poate afla criptarea unui anumit text). n multe situatii, criptanalistul poate ghici unele prti din textul surs, chiar dac teoretic sar gsi n situatia de a rezolva o problem de text cifrat. (De exemplu, initierea unei sesiuni de lucru ntr-un sistem multiutilizator va contine uzual cuvntul "LOGIN".) De aceea, pentru a asigura securitatea, criptograful trebuie s se asigure c metoda propus este sigur, chiar dac inamicul su poate cripta cantitti arbitrare de text ales. Exist dou metode traditionale de criptare: cifruri cu substitutie si cifruri cu transpozitie. Aceste tehnici de baz sunt folosite, n forme evoluate, si n sistemele moderne de criptare. Cifrurile cu substitutie. ntr-un asemenea cifru, fiecare liter sau grup de litere este nlocuit() cu o alt liter sau cu un grup de litere. Cel mai vechi exemplu este cifrul lui Cezar, prin care a devine D, b devine E, ..., z devine C. Prin generalizare, alfabetul poate fi deplasat cu k litere n loc de 3. n acest caz, k devine cheia pentru metoda general a alfabetelor deplasate circular. O alt metod de substitutie este nlocuirea fiecrei litere din textul surs cu o anumit liter corespondent. Sistemul se numeste substitutie monoalfabetic si are ca si cheie un sir de 26 de litere. Pentru o persoan neavizat, acest sistem ar putea fi considerat sigur fiindc ncercarea tuturor celor 26! de chei posibile ar necesita unui calculator 1013 ani alocnd 1msec pentru fiecare solutie. Totusi, folosind o cantitate foarte mic de text cifrat, cifrul va putea fi spart cu usurint. Abordarea de baz porneste de la propriettile statistice ale limbajelor naturale. Cunoscnd frecventa statistic a fiecrei litere si a fiecrui grup de dou sau trei litere (de exemplu, n limba romn: ce, ci, ge, gi, oa, ua etc.) ntr-o anumit limb, numrul mare de alternative initiale se reduce considerabil. Un criptanalist va numra frecventele relative ale tuturor literelor n textul cifrat si va ncerca s fac asocierea cu literele a cror frecvent este cunoscut. Apoi va cuta grupurile de litere, ncercnd s coroboreze indiciile date de acestea cu cele furnizate de frecventele literelor.

O alt abordare, aplicabil dac exist informatii despre domeniul la care se refer textul, este de a ghici un cuvnt sau o expresie probabil (de exemplu, "financiar" pentru un mesaj din contabilitate) si de a cuta corespondentul su, folosind informatii despre literele repetate ale cuvntului si pozitiile lor relative. Abordarea se poate combina cu informatiile statistice legate de frecventele literelor. Cifruri cu transpozitie. Spre deosebire de cifrurile cu substitutie, care pstreaz ordinea literelor din textul surs dar le transform, cifrurile cu transpozitie ("transposition ciphers") reordoneaz literele, fr a le "deghiza". Un exemplu simplu este transpozitia pe coloane, n care textul surs va fi scris liter cu liter si apoi citit pe coloane, n ordinea dat de o anumit cheie. Ca si cheie se poate alege un cuvnt cu litere distincte, de o lungime egal cu numrul de coloane folosite n cifru. Ordinea alfabetic a literelor din cuvntul cheie va da ordinea n care se vor citi coloanele. Exemplu: Dac textul surs este: "acestcurssipropunesprezintefacilittiledecomunicareoferitedereteleledecalculatoare" iar cheia este "PRECIS", atunci asezarea sa pe coloane va genera urmtorul text cifrat: P R E C I S 4 5 2 1 3 6 a c e s t c u r s s i p r o p u n e s p r e z i n t e f a c i l i t t i l e d e c o m u n i c a r e o f e r i t e d e r e t e l e l e d e c a l c u l a t o a r e "spptllmrieecaesoniioarrllotsureieuettduraupezaeifdlcacrrsictcceeeatcineftdnoeeele". Spargerea unui cifru cu transpozitie ncepe cu verificarea dac acesta este ntr-adevr de acest tip prin calcularea frecventelor literelor si compararea acestora cu statisticile cunoscute. Dac aceste valori coincid, se deduce c fiecare liter este "ea nssi", deci este vorba de un cifru cu transpozitie. Urmtorul pas este emiterea unei presupuneri n legtur cu numrul de coloane. Acesta se poate deduce pe baza unui cuvnt sau expresii ghicite ca fcnd parte din text. Considernd sintagma "sprezinte", cu grupurile de litere (luate pe coloane) "si", "n", "pt", "re", se poate deduce numrul de litere care le separ, deci numrul de coloane. Notm n continuare cu k acest numr de coloane. Pentru a descoperi modul de ordonare a coloanelor, dac k este mic, se pot considera toate posibilittile de grupare a cte dou coloane (n numr de k(k-1) ). Se verific dac ele formeaz mpreun un text corect numrnd frecventele literelor si comparndu-le cu cele statistice. Perechea cu cea mai bun potrivire se consider corect pozitionat. Apoi se ncearc, dup acelasi

principiu, determinarea coloanei succesoare perechii din coloanele rmase iar apoi - a coloanei predecesoare. n urma acestor operatii, exist sanse mari ca textul s devin recognoscibil. Unele proceduri de criptare accept blocuri de lungime fix la intrare si genereaz tot un bloc de lungime fix. Aceste cifruri pot fi descrise complet prin lista care defineste ordinea n care caracterele vor fi trimise la iesire (sirul pozitiilor din textul de intrare pentru fiecare caracter din succesiunea generat). Problema construirii unui cifru imposibil de spart a preocupat ndelung pe criptanalisti; ei au dat o rezolvare teoretic simpl nc de acum cteva decenii dar metoda nu s-a dovedit fiabil din punct de vedere practic, dup cum se va vedea n continuare. Tehnica propus presupune alegerea unui sir aleator de biti pe post de cheie si aducerea textului surs n forma unei succesiuni de biti prin nlocuirea fiecrui caracter cu codul su ASCII. Apoi se aplic o operatie logic - de tip Sau exclusiv (operatia invers echivalentei: 0 xor 0 = 0, 0 xor 1 = 1, 1 xor 0 = 1, 1 xor 1 = 0) - ntre cele dou siruri de biti. Textul cifrat rezultat nu poate fi spart pentru c nu exist indicii asupra textului surs si nici textul cifrat nu ofer criptanalistului informatii. Pentru un esantion de text cifrat suficient de mare, orice liter sau grup de litere (diftong, triftong) va aprea la fel de des. Acest procedeu este cunoscut sub numele de metoda cheilor acoperitoare. Desi este perfect din punct de vedere teoretic, metoda are, din pcate, cteva dezavantaje practice: cheia nu poate fi memorat, astfel nct transmittorul si receptorul s poarte cte o copie scris a ei fiindc n caz c ar fi "capturati", adversarul ar obtine cheia; cantitatea total de date care poate fi transmis este determinat de dimensiunea cheii disponibile; o nesincronizare a transmittorului si receptorului care genereaz o pierdere sau o inserare de caractere poate compromite ntreaga transmisie fiindc toate datele ulterioare incidentului vor aprea ca eronate.

Cteva principii practice de criptare


Se recomand ca informatiile criptate s contin informatii redundante, adic informatii care nu sunt necesare pentru ntelegerea mesajului. Acest principiu constituie o protectie mpotriva "intrusilor activi" care ncearc trimiterea unor mesaje fictive n locul celor reale, folosind structura de mesaj original si date eronate. Astfel, o list de comenzi de produse ale unor clienti ar putea fi nlocuit, de ctre o persoan ru-voitoare care cunoaste structura comenzilor, cu o list generat aleator, pornind de la o list partial de nume de clienti. Dac ns mesajele criptate ale comenzilor contin, n afara informatiei utile, zone de informatii redundante, atunci este mult mai putin probabil ca mesajele generate aleator s contin comenzi corecte. Pe de alt parte, introducerea de informatie aleatoare poate usura spargerea mesajelor de ctre criptanalisti fiindc acestia vor putea distinge mai usor mesajele valide de cele invalide (se simplific spargerea sistemului de ctre intrusii pasivi). De aceea, se recomand construirea aleatoare a secventelor redundante. Un alt principiu important urmreste mpiedicarea intrusilor activi de a retransmite mesaje vechi ca fiind actuale; n acest scop, se folosesc marcaje numite amprente de timp.

Caracteristici ale criptografiei moderne. Rezolvarea problemelor legate de interceptarea, autentificarea si modificarea mesajelor
Avnd n vedere faptul c transmisia de date n Internet este neprotejat, a aprut necesitatea dezvoltrii tehnicilor de criptare n directia automatizrii acestora si a implementrii lor n retele de calculatoare. Astfel, utilizarea unor algoritmi pentru criptarea informatiilor transmise va deveni principalul mijloc de rezolvare a problemelor de interceptare n retele. n descrierea unei transmisii de date prin retea se obisnuieste s se numeasc generic "mesaj" un ansamblu de date trimis de un "emittor" unui "receptor". Printr-o metod de criptare, mesajele vor fi transformate, pe baza unei chei de criptare, astfel nct s poat fi ntelese doar de destinatar. Unul din principiile mai recent aprute n criptanaliz const n utilizarea unei alte chei pentru decodificarea mesajului dect cea folosit la codificare; aceast tehnic este mai eficient dar complic putin procedeul general si de aceea se prefer cnd criptarea / decriptarea se realizeaz automat. Evident, dimensiunea unei chei de criptare (exprimate n general n biti) este o msur a nivelului de securitate dat de acea cheie, ea indicnd rezistenta mesajului cifrat la ncercrile de descifrare de ctre cineva care nu detine cheia de descifrare potrivit. Principiile de criptare din algoritmii cu cheie secret au evoluat odat cu aparitia calculatoarelor; ele continu ns s se bazeze pe metodele traditionale, cum ar fi transpozitia si substitutia. Algoritmii cu cheie secret sunt caracterizati de faptul c folosesc aceeasi cheie att n procesul de criptare, ct si n cel de decriptare (vezi figura de mai jos). Din acest motiv, acesti algoritmi mai sunt cunoscuti sub numele de algoritmi simetrici; pentru aplicarea lor este necesar ca naintea codificrii / decodificrii, att emittorul ct si receptorul s posede deja cheia respectiv. n mod evident, cheia care caracterizeaz acesti algoritmi trebuie s fie secret. Principalul dezavantaj al algoritmilor simetrici const n faptul c impun un schimb de chei private nainte de a se ncepe transmisia de date. Altfel spus, pentru a putea fi utilizati, este necesar un canal cu transmisie protejat pentru a putea fi transmise cheile de criptare / decriptare.

Schema de aplicare a unui algoritm simetric Ulterior, vor aprea si algoritmi cu cheie public, caracterizati prin faptul c criptarea si decriptarea folosesc chei diferite (vezi figura de mai jos). Aceast caracteristic a dat algoritmilor cu cheie public si numele de algoritmi asimetrici. n acest caz, una dintre chei poate fi public (general cunoscut - poate fi distribuit oricui) iar cealalt va trebui s privat / secret (cunoscut doar de cel care o foloseste). Fiecare dintre aceste chei poate cripta mesajul, dar un mesaj criptat cu o anumit cheie nu poate fi decriptat dect cu cheia sa pereche. Astfel, n cazul utilizrii unui algoritm asimetric n comunicarea dintre un emittor si un receptor, fiecare dintre acestia va detine cte o pereche de chei - public si privat. Emittorul poate cripta mesajul cu cheia public a receptorului, astfel nct doar acesta s poat decripta mesajul cu cheia sa privat. n cazul unui rspuns, receptorul va utiliza cheia public a emittorului astfel nct decriptarea s se poat face exclusiv de ctre emittor (cu cheia sa pereche, privat). Cheile algoritmilor asimetrici sunt obtinute pe baza unei formule matematice din algebra numerelor mari, pentru numere prime ntre ele, iar din valoarea unei chei nu poate fi dedus valoarea cheii asociate. Remarcm faptul c aplicarea n informatic a calculelor modulo numere prime s-a dovedit extrem de benefic pentru multi algoritmi moderni.

Schema de aplicare a unui algoritm asimetric Traditional, criptografii foloseau algoritmi simpli asociati cu chei de securitate foarte lungi. Azi se urmreste crearea unor algoritmi de criptare att de complecsi nct s fie practic ireversibili, chiar dac un criptanalist achizitioneaz cantitti foarte mari de text cifrat. O alt caracteristic a criptografiei moderne const n automatizarea tehnicilor clasice, prin folosirea unor dispozitive special concepute. Transpozitiile si substitutiile vor fi implementate cu circuite simple, de vitez mare, care vor fi conectate n cascad astfel nct dependenta iesirii de intrare devine extrem de complicat si dificil de descoperit. n 1977, guvernul SUA a adoptat ca standard oficial pentru informatiile nesecrete un cifru produs si dezvoltat de IBM, numit DES (Data Encryption System), care a fost larg adoptat n industrie. DES este cel mai popular algoritm cu cheie secret; el continu s stea la baza unor sisteme folosite n mod curent. DES foloseste (uzual) o cheie de 56 de biti; aceasta a fost n cele din urm adoptat n locul uneia de 128 de biti, neagreat de NSA (National Security Agency), agentia "sprgtoare de coduri a guvernului", care dorea suprematia n domeniul criptografic. Din 1977, cercettorii n criptografie au ncercat s proiecteze masini pentru a sparge DES. Prima asemenea masin (1977) a fost conceput de Diffie si Hellman, avea nevoie de mai putin de o zi iar costul ei a fost estimat la 20 de milioane de dolari. Dup aproape 2 decenii, costul unei astfel de masini a ajuns la 1 milion de dolari iar timpul necesar spargerii codului a scazut la 4 ore. Ulterior, s-au dezvoltat si alte metode, cum ar fi folosirea unui cip DES ncorporat (loteria chinezeasc). n scopul decriptrii s-ar mai putea folosi mecanisme soft specifice (cum ar fi algoritmul asimetric Diffie-Hellman) si resursele libere ale unor calculatoare cu destinatie universal. Astfel, s-a demonstrat c rularea pe mai multe calculatoare a unor programe distribuite de criptare (uzual, pe un numr mare de masini, de ordinul miilor sau chiar zecilor de mii) creste considerabil eficienta procesului de decriptare. Un alt cifru renumit este IDEA (International Data Encryption Algorithm), realizat de doi cercettori la Politehnica Federal din Zrich (ETHZ). Acest algoritm foloseste o cheie de 128 de biti si este inspirat din metodele anterioare - DES si cele imaginate pentru spargerea DES. Un alt algoritm performant a fost descoperit de un grup de cercettori de la MIT - Ronald Rivest, Adi Shamir, Leonard Adelman - si s-a numit cu initialele creatorilor lui: RSA. Algoritmul de criptare RSA foloseste o cheie public.

Se observ c utilizarea unor astfel de algoritmi de criptare a datelor asigur transmisii confidentiale de date n retele neprotejate, rezolvnd problema interceptrii. De fapt, riscul de interceptare / modificare nu dispare cu totul, din cauz c orice mesaj criptat poate fi n general decriptat fr a detine cheia corespunztoare, dac se dispune de suficiente resurse materiale si de timp. Evident, dimensiuni variate ale cheii asigur diferite grade de confidentialitate iar perioada de timp necesar pentru decriptare poate fi prevzut n functie de mrimea cheii utilizate. Totusi, dac procesul de decriptare este lent, este posibil ca n momentul n care s-ar obtine datele dorite, acestea s nu mai fie actuale sau utile. Timpul de decriptare depinde n mod natural si de puterea procesoarelor utilizate n acest scop, astfel nct utilizarea distribuit a unui foarte mare numr de procesoare poate duce la o micsorare considerabil a timpului necesar. Din acest motiv, pentru transmisii de date n care este necesar o confidentialitate stric se utilizeaz chei de dimensiuni mult mai mari, chiar pentru algoritmul DES (de 256, 512, 1024 si chiar 2048 sau 4096 de biti), stiut fiind c timpul necesar decriptrii creste exponential cu dimensiunea cheii de criptare / decriptare. Pentru utilizatorii obisnuiti ai Internet-ului, cei mai convenabili algoritmi de criptare sunt cei cu cheie public fiindc folosirea lor nu implic schimbul preliminar de chei pe canale de transmisie protejate, ca n cazul algoritmilor cu cheie secret. Cheia public poate fi distribuit fr restrictii pe intranet (reteaua local) sau Internet, iar mesajele criptate cu aceast cheie de un emitator vor putea fi decriptate numai utiliznd cheia privat, care este detinut exclusiv de ctre destinatar. Astfel, nici mcar expeditorul nu ar putea realiza decriptarea mesajului trimis. Problema autentificrii Un alt domeniu n care a evoluat criptografia modern este cel al crerii unor protocoale de autentificare - tehnica prin care un proces verific dac partenerul de comunicatie este cel presupus si nu un impostor. Verificarea identittii unui proces de la distant este dificil si necesit utilizarea unor protocoale complexe, bazate pe tehnici criptografice. Problema poate fi imaginat intuitiv sub forma a doi parteneri care comunic si a altuia care doreste s se introduc fraudulos n comunicatie, simulnd pe oricare din partenerii de discutie. Ca o metod de protectie, cei doi utilizatori pot stabili, de exemplu, o cheie secret de sesiune, dar aceast metod presupune transmiterea cheii printr-un canal sigur; de aceea, se prefer, ca si n cazul mpiedicrii interceptrilor, utilizarea criptrilor cu chei publice. Unul din protocoalele de autentificare folosit n sistemele n timp real se numeste Kerberos (omonimul cinelui-paznic al lui Hades, care i tinea pe cei nedoriti afar). Conectia securizat la un server aflat la distant cu ssh foloseste pentru autentificare un alt protocol, bazat pe algoritmul cu cheie public RSA. Problema autentificrii impune gsirea unui corespondent electronic pentru semnturile autorizate de pe documentele legale. Un asemenea corepondent se numeste semntur digital (vezi figura de mai jos) si presupune existenta unui sistem prin care una din prti s poat transmite mesaje "semnate" celeilalte prti, astfel nct: 1. receptorul s poat verifica identitatea pe care pretinde c o are emittorul. Aceast cerint este necesar, de exemplu, n sistemele financiare: calculatorul trebuie s se asigure c un ordin de cumprare sau de plat apartine companiei cu al crei cont bancar se va opera.

2. transmittorul s nu poat renega ulterior continutul mesajului. Aceast necesitate asigur protejarea bncilor mpotriva fraudelor: un client necinstit ar putea acuza banca implicat n tranzactie, pretinznd, de exemplu, c nu a emis un anumit ordin (de plat). 3. receptorul s nu poat pregti el nsusi mesajul. n cazul unei tranzactii financiare cu o banc, aceast cerint protejeaz clientul dac banca ncearc s-i falsifice mesajul. Ca semnturi digitale, se pot folosi semnturi cu cheie secret sau public dar, asa cum s-a explicat anterior, de obicei se prefer cheile publice. n cazul mesajelor transmise prin post electronic, riscul legat de impersonificarea expeditorului este destul de mare fiindc standardele utilizate pentru transmiterea postei electronice sunt simple si n plus au fost fcute publice (ceea ce nseamn ca oricine are acces la ele si poate s le studieze). Standardul de e-mail (vezi 6) nu are la baz nici un sistem pentru verificarea identittii celui care trimite un mesaj de post electronic, bazndu-se pe o ncredere reciproc ntre utilizatori. Acest neajuns ar putea fi fructificat de ctre persoane ruvoitoare pentru a trimite mesaje de post electronic de pe adrese false, sau chiar de pe adrese existente, pretinznd c sunt utilizatorii care detin acele adrese de post electronic. Practic, este (aproape) imposibil identificarea unei persoane care a emis astfel de mesaje fiindc n Internet exist servere care asigur transmiterea anonim a mesajelor ("anonymous remailers"), trimitndu-le de la un server la altul de mai multe ori nainte de a le directiona ctre adevrata destinatie. Pentru autentificarea expeditorului unui mesaj (de post electronic sau un ansamblu de date transmis prin Internet n alte scopuri) se foloseste cel mai adesea un sistem cu cheie public. Astfel, dac expeditorul cripteaz mesajul cu cheia privat proprie, datele pot fi decriptate doar utiliznd cheia public pereche (vezi figura de mai jos), deci oricine poate verifica faptul c mesajul a fost transmis ntr-adevr de expeditor, si nu de o persoan ce pretinde a fi expeditorul (dup cum s-a explicat deja, mesajul criptat cu o cheie poate fi decriptat doar utiliznd cheia pereche acesteia si se presupune c expeditorul este singurul care are acces la cheia sa privat). Evident c este posibil s se realizeze o criptare a mesajelor n paralel cu autentificarea, astfel nct inclusiv datele transmise s fie codificate. n acest caz, se vor utiliza perechile de chei privat, public nu numai pentru autentificare, ci si pentru criptarea, respectiv decriptarea mesajelor transmise. Practic, pentru codificarea si semnarea digital a unui mesaj emis, se va realiza o criptare cu cheia privat a emittorului si apoi o criptare cu cheia public a destinatarului. Astfel, destinatarul va putea decripta mesajul si autentifica provenienta sa n conditii de securitate. Avnd n vedere faptul c algoritmii de criptare cu cheie public consum foarte mult timp, n general se implementeaz o tehnic putin diferit: se utilizeaz o criptare cu cheie public pentru transmiterea unei chei secrete generate aleator (deci cheia secret este criptat si eventual se poate utiliza si autentificarea expeditorului), dup care datele propriu-zise vor fi transmise criptate cu un algoritm simetric utiliznd cheia secret schimbat anterior. Aceast metod mbuntteste considerabil viteza de transmisie si de criptare / decriptare.

Semnarea digital a mesajelor necriptate Practic, pentru o identificare ct mai riguroas a expeditorului se utilizeaz un sistem complex, bazat pe certificare, n care fiecare utilizator detine un certificat (ce are atasat o cheie public si o cheie privat, secret). Acesta este emis de o autoritate de certificare recunoscut, n urma examinrii, pe baz de acte, a identittii reale a persoanei. n momentul n care se doreste identificarea unei persoane, o cutare n baza de date a organizatiei respective va indica indentitatea expeditorului (pe baza cheii publice a acestuia, care este unic n lume). Acest sistem este implementat sub forma unei structuri n care fiecare autoritate de certificare poate mputernici la rndul ei alte organizatii s emit certificate de autentificare, astfel nct originea unui certificat poate fi verificat n mod complet testnd validitatea certificatului, apoi validitatea certificatului detinut de organizatia care a emis certificatului respectiv, si asa mai departe. Sistemul de certificate digitale este utilizat nu numai pentru protejarea comunicatiilor, ci si pentru certificarea originii programelor. Astfel, prin folosirea unei criptri a programului de instalare cu cheia public a firmei productoare, utilizatorul poate verifica relativ usor c acel program a fost creat ntr-adevr de o anumit firm si pentru a decide dac s instaleze sau nu programul. Aceasta este practic cea mai bun solutie de rezolvare a problemei rulrii de programe / coduri duntoare, enuntat la nceputul acestui capitol. Problema modificrii mesajelor Pentru a preveni modificarea unui mesaj, se utilizeaz o tehnic specific, denumit tehnic hash (sau a rezumatului), care permite construirea unui cod de identificare a datelor transmise, numit "rezumatul datelor". Principiile de baz ale tehnicii hash se aplic n numeroase domenii ale informaticii. Rezumatul unui mesaj se construieste prin aplicarea, n sens unic ("unisens"), a unei

functii de transformare (functie "hash") ntr-o secvent de biti - de lungime mare, pentru a fi dificil "spart". Sensul unic de transformare asigur faptul c nu se pot deduce datele de intrare pe baza datelor de iesire. Datele ce trebuie transmise sunt utilizate ca si date de intrare, obtinndu-se astfel o valoarea de transformare ("hash value"). Dac datele n tranzit sunt modificate, la destinatie se va obtine o alt valoarea de transformare, ceea ce va indica falsificarea datelor. Valoarea de transformare este n general criptat ulterior prin utilizarea aceleiasi chei secrete ca si pentru criptarea datelor transmise. Astfel, se formeaz o "semntur digital" a datelor, care nu mai pot fi modificate fr ca acest lucru s fie depistat. Cteva protocoale "sigure"

Implicatii sociale ale problemelor de securitate


Din motive strategice lesne de nteles, dezvoltarea tehnicilor criptografice este o problem delicat si n general politicile guvernamentale ncearc s tin sub control acest domeniu. Evident c aceast abordare nu este pe placul cercettorilor care urmresc evolutia algoritmilor n primul rnd din ratiuni stiintifice si nici al publicului larg, n msura n care s-ar leza liberttile individuale. Un caz renumit de reactie guvernamental negativ la distribuirea unui soft criptografic, dezbtut n cele din urm instant juridic, este cel al sistemului de post electronic criptat Pretty Good Privacy, creat de Phil Zimmerman si distribuit pe Internet. n unele tri (de exemplu, Franta), criptografia neguvernamental este interzis, cu exceptia cazurilor n care guvernul primeste toate cheile utilizate. De asemenea, interceptrile guvernamentale ale comunicatiilor private s-au practicat pe scar destul de extins. De exemplu, guvernul SUA a propus o tehnic de criptare a viitoarelor telefoane digitale care include o caracteristic special ce ar permite institutiilor autorizate (si care detin un ordin judectoresc n acest sens) interceptarea si decriptarea oricrui apel telefonic din SUA. Acest subiect a iscat numeroase discutii contradictorii att din punct de vedere din punct de vedere tehnologic (au fost propuse chiar metode de contracarare a procedeului), ct si juridic fiindc, pe de o parte, ar putea fi lezate liberttile individuale iar, pe de alt parte, s-ar putea asigura depistarea unor actiuni antisociale.

Retele de arie larg


Retelele cu arie larg de rspndire geografic sau WAN-urile (Wide Area Networks) acoper o arie extins (o tar, un continent). Reteaua contine masini care execut programele utilizatorilor (aplicatii), numite masini gazd sau sisteme finale. Gazdele sunt conectate printr-o

subretea de comunicatie care transport mesajele de la o gazd la alta (ca n sistemul telefonic, ntre doi vorbitori). Separarea activittilor de comunicare (subretele) de cele referitoare la aplicatii (gazde) simplific proiectarea retelei. O subretea este format din linii de transmisie (circuite, canale, trunchiuri) care asigur transportul datelor si elemente de comutare (noduri de comutare a pachetelor, sisteme intermediare, comutatoare de date), numite cel mai frecvent routere. Cnd sosesc date pe o anumit linie si ajung ntr-un nod de comutare, acesta trebuie s aleag o nou linie pentru retransmisia datelor. Dac se conecteaz mai multe LAN-uri, atunci fiecare ar trebui s aib o masin gazd pentru executarea aplicatiilor si un router pentru comunicarea cu alte componente ale retelei globale; routerele conectate vor apartine subretelei. WAN-urile pot contine cabluri sau linii telefonice ntre routere. Dou routere pot comunica nu numai direct, ci si prin intermediul altor routere; acestea retin fiecare pachet primit n ntregime si l retransmit cnd linia de iesire cerut devine liber. O subretea care functioneaz pe aceste principii se numeste "punct-la-punct" (sau "memoreaz si retransmite" sau cu "comutare de pachete"). Acest tip de retele este foarte rspndit. O problem important este topologia de conectare a routerelor din subretele: stea, inel, arbore, complet, inele intersectate, neregulat. Retelele locale folosesc de obicei topologii simetrice iar retelele de arii largi - topologii neregulate. Comunicarea dintre routere se mai poate realiza prin intermediul satelitilor de comunicatii sau folosind sisteme radio terestre (n acest caz, routerele sunt dotate cu antene de emisie-receptie). Se pot conecta retele diferite (teoretic incompatibile) prin intermediul unor masini numite gateways (porti de comunicare). Acestea realizeaz conectarea si asigur translatrile necesare din punct de vedere hard si soft. O colectie de retele interconectate se numeste inter-retea sau internet. O inter-retea ar putea fi constituita din mai multe LAN-uri conectate printr-un WAN. Dac comunicrile se realizeaz prin routere, este vorba de o subretea, pe cnd dac apar n plus gazde si util proprii, este un WAN. Un LAN contine doar gazde si cabluri, deci nu are o subretea. Internet-ul - cea mai cunoscut retea mondial - este un internet specific, care conecteaz universitti, birouri guvernamentale, firme si chiar persoane particulare, oferind o multitudine de servicii de informare, comunicare si chiar de realizar activitti pe cale electronic (de la distant).

Cteva protocoale "sigure"


Pentru a se asigura aplicarea metodelor de criptare si autentificare anterior descrise, au fost dezvoltate sisteme specifice de transmisii de date, bazate pe un transfer securizat al datelor. Secured Socket Layer este un sistem dezvoltat de firma Netscape Communications care asigur criptarea pentru comunicrile realizate ntre dou orice calculatoare din Internet prin intermediul protocolului universal folosit - TCP/IP. SSL se bazeaz pe criptarea cu cheie public si functioneaz n dou etape: ntr-o prim etap se stabileste o cheie special de sesiune (transmis ntr-o form criptat folosind cheia public); aceast cheie va fi utilizat n cea de a doua faz pentru o criptare rapid a datelor. SSL asigur: autentificarea serverului pe baza certificatelor digitale (care descurajeaz impostorii); confidentialitatea transmisiilor (prin criptare); integritatea datelor transmise (prin coduri de verificare).

Un alt protocol de transmitere securizat a datelor este SHTTP - Secured HyperText Transfer Protocol, care constituie o variant "sigur" a protocolului nativ de transfer al paginilor web - HTTP. SHTTP a fost dezvoltat de asociatia CommerceNet si asigur criptarea documentelor web transmise, utilizarea semnturilor digitale si a unui cod de autentificare pentru integritatea mesajelor. n mod evident, transferul protejat al datelor n procesul de navigare pe web este de mare interes n comertul electronic si permite realizarea de tranzactii financiare confidentiale si operatii comerciale pe cale electronic. Implementri similare au fost dezvoltate si pentru sistemele de post electronic: S/MIME sau PGP/MIME.

Bibliografie: Lars Klander, "Anti-hacker. Ghidul securittii retelelor de calculatoare", 679 p., ALL Educational, Bucuresti 1998; Andrew S. Tanenbaum, "Retele de calculatoare", Ed. Computer Press Agora, 1997.

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