Criptografia în Cyberspace

Criptografia computatională oferă cele mai puternice solutii pentru problemele ce privesc securitatea informatică a acestui mediu în care ne pregătim să trăim în anii următori si care se cheamă Cyberspace. Folosită multă vreme pentru asigurarea confidentialitătii comunicatiilor în domeniul militar si diplomatic, criptografia a cunoscut în ultimii 20 de ani progrese spectaculoase datorate aplicatiilor sale în securitatea datelor la calculatoare.

Victor-Valeriu Patriciu

Societatea umană cunoaste în momentul de fată una din cele mai profunde transformări din întreaga ei existentă, în care informatica joacă un rol determinant. Dacă deceniul trecut a fost marcat de aparitia si perfectionarea calculatoarelor personale, usor accesibile si la preturi din ce în ce mai scăzute, deceniul anilor '90 este caracterizat de conectivitatea tot mai pronuntată, adică fuziunea dintre calculatoare si comunicatii: cele mai multe calculatoare sunt folosite azi în interconectare, în retele locale-LAN si în retele de arie largă-WAN, ceea ce conferă informaticii un rol determinant în asigurarea legăturilor stiintifice, de afaceri, bancare sau de natură umană între persoane si institutii. Trăim astăzi o lume în care sute de milioane de calculatoare, deservind utilizatori foarte diversi, sunt interconectate într-o infrastructură informatică globală, numită de ziaristi si Cyberspace(Spatiul Cibernetic). Specialistii caută si găsesc, cu o viteză de-a dreptul incredibilă, solutii tehnice pentru dezvoltarea capacitătii de comunicatie a calculatoarelor si pentru sporirea calitătii serviciilor de retea oferite. În acelasi timp societatea se adaptează din mers noilor tehnologii informatice, învătând să trăiască în acestă lume nouă, dominată de calculatoare si comunicatii între acestea.

Internet, cea mai amplă retea de retele de calculatoare din lume, care se apreciază că are câteva zeci de milioane de utilizatori zilnic, interconectând peste 30 de mii de retele de pe tot globul si peste 2.5 milioane de computere, reprezintă embrionul a ceea ce se cheamă information superhighway ("autostrada informatică"). Guvernul federal al SUA investeste în următorii 5 ani 400 milioane dolari pentru dezvoltarea succesorului Internet-ului care se va numi (NREN), despre care se spune că va fi de 100 de ori mai rapid.

Societatea umană a început să transfere pe retele o parte din activitătiile obisnuite, cărora comunicatiile aproape instantanee între puncte situate geografic la mii de kilometri le conferă valente superioare. Vorbim astăzi de teleconferinte si grupuri de lucru prin retele de calculatoare, grupuri de discutii, ca niste veritabile cluburi, profilate pe cele mai variate domenii de interes, ziare distribuite prin retele, sisteme electronice de plăti prin retele, sisteme de transfer de fonduri si de comert prin retele, etc. Toate aceste servicii si încă alte sute de acest fel, au început să fie o realitate a celui mai mare si mai impresionant mediu de comunicatii între oameni care a devenit Internet-ul.

Securitatea informatică - componentă majoră a Cyberspace

Retelele de calculatoare sunt structuri deschise, la care se pot conecta un număr mare si uneori necontrolat de calculatoare. Complexitatea arhitecturală si distributia topologică a retelelor conduc la o mărire necontrolată a multimii utilizatorilor cu acces nemijlocit la resursele retelei- fisiere, baze de date, rutere etc. de aceea putem vorbi de o vulnerabilitate a retelelor ce se manifestă pe variate planuri. De aceea un aspect crucial al retelelor de calculatoare, în special al comunicatilor pe Internet, îl constituie securitatea informatiilor. Utilizatorii situati la mari distante trebuiesc bine identificati-în mod tipic prin parole. Din nefericire, sistemele de parole au devenit vulnerabile, atât datorită hacker-ilor care si-au perfectionat metodele cât si datorită alegerii necorespunzătoare a parolelor de către utilizatori. Nevoia de securitate si de autenticitate, apare la toate nivelele arhitecturale ale retelelor. La nivel înalt, utilizatorii vor să se asigure că posta electronică, de exemplu, soseste chiar de la persoana care pretinde a fi expeditorul. Uneori utilizatorii, mai ales când actionează în numele unor firme, doresc asigurarea caracterului confidential al mesajelor transmise. În tranzactiile financiare, alături de autenticitate si confidentialitate, un loc de mare importantă îl are si integritatea mesajelor, ceea ce înseamnă că mesajul receptionat nu a fost alterat în timpul tranzitiei prin retea. În tranzactiile de afaceri este foarte important ca odată receptionată o comandă, aceasta să fie nu numai autentică, cu continut nemodificat, dar să nu existe posibilitatea ca expeditorul să nu o mai recunoască, adică să se respecte proprietatea de nerepudiere. La nivel scăzut, gateway-urile si ruterele trebuie să discearnă între calculatoarele autorizate să comunice si cele intruse. De asemenea, este necesar ca, de exemplu, informatia medicală transmisă prin retele să fie confidentială si să ajungă nealterată (voit sau nu) la nodurile care retin marile baze de date ale sistemelor de asigurări medicale.

În aceste circumstante, securitatea informatică a devenit una din componentele majore ale cea ce numim Cyberspace. Analistii acestui concept au sesizat o contradictie aparentă (antinomia) între nevoia de comunicatii si conectivitate, pe de o parte si necesitatea asigurării confidentialitătii si autentificării datelor la calculatoare si retele, pe de alta parte. Domeniul relativ nou al securitătii informatice caută o serie de solutii tehnice pentru rezolvarea acestei contradictii. Viteza si eficienta pe care o aduc comunicatiile instantanee de documente si mesaje (postă electronică, mesagerie electronică, transfer electronic de fonduri, etc) actului decizional al managerilor care actionează într-o economie puternic concurentială, conduc la un fel de euforie a utilizării retelelor, bazată pe un sentiment fals de securitate a comunicatiilor, care poate transforma potentialele câstiguri generate de accesul la informatii, în pierderi majore cauzate de furtul de date sau de inserarea de date false sau denaturate.

Criptografia computatională oferă cele mai puternice solutii pentru toate aceste aceste probleme privind securitatea informatică. Folosită multă vreme pentru asigurarea confidentialitătii comunicatiilor în domeniul militar si diplomatic, criptografia a cunoscut în ultimii 20 de ani progrese spectaculoase datorate aplicatiilor sale în securitatea datelor la calculatoare.

Putem spune că domeniul criptografiei computationale a devenit azi un spatiu legitim de intense cercetări academice.

Criptografia este stiinta scrierilor secrete. Un cifru se defineste ca transformarea unui mesaj-clar sau text clar în mesaj-cifrat ori criptogramă. Procesul de transformare a textului clar în text cifrat se numeste cifrare sau criptare, iar transformarea inversă, a criptogramei în text clar, are denumirea de descifrare sau decriptare. Atît cifrarea cît si descifrarea sunt controlate de către una sau mai multe chei criptografice. Criptoanaliza studiază metodele de spargere a cifrurilor, de obicei pentru determinarea cheii de cifrare din criptogramă si text clar echivalent.

Un sistem criptografic (criptosistem) are cinci componente:

Ek: M-> C ;unde K Î{ K} 

Fiecare transformare de cifrare, Ek, este definită de un algoritm de cifrare, E, comun tuturor transformărilor familiei, si o cheie, K, distinctă de la o transformare la alta. În mod similar, fiecare transformare de descifrare, Dk, este definită de un algoritm de descifrare D, si de cheia K. Pentru un K dat, DK reprezintă inversa lui EK, adică:

Dk(Ek((M))=M, ,MÎ{M}. 

Există două mari categorii de sisteme criptografice folosite azi în securitatea informatică:sisteme simetrice si sisteme cu chei publice.

Istoria recentă a criptografiei cunoaste numeroase inovatii care au marcat o cotitură semnificativă în dezvoltarea metodelor criptografice. Acestea sunt legate de dezvoltarea retelelor de calculatoare al căror stimulent extraordinar s-a manifestat atît prin presiunea exercitată de tot mai multi utilizatori, a căror dorintă expresă era păstrarea secretului si a sigurantei postei electronice private, a transferului electronic de fonduri si a altor aplicatii, cît si prin potentarea gamei de instrumente folosite, pe de o parte pentru executia algoritmilor de cifrare iar pe de altă parte pentru spargerea sistemelor criptografice. Vom marca câteva din aspectele caracteristice ale utilizării criptografiei în domeniul calculatoarelor si retelelor.

Algoritmi criptografici cu cheie secretă

Pentru asigurarea confidentialitătii datelor memorate în calculatoare sau transmise prin retele se folosesc preponderent algoritmi criptografici cu cheie secretă (simetrici). Ei se caracterizează prin aceea că ambii utilizatori ai algoritmului împart aceeasi cheie secretă, folosită atât la cifrare cât si la descifrare (a se vedea schema criptosistemului simetric).

Deoarece algoritmul este valid în ambele directii, utilizatorii trebuie să aibă încredere reciprocă. Securitatea acestui tip de algoritm depinde de lungimea cheii si posibilitatea de a o păstra secretă. Când comunicatiile dintre numerosi utilizatori trebuie să fie criptate, apare o mare problemă a managementului cheilor; pentru n utilizatori sunt posibile n(n-1)/2 legături bidirectionale, fiind necesare tot atîtea chei. Aceasta implica în general probleme dificile în generarea, distributia si memorarea cheilor. Utilizarea calculatoarelor electronice a permis folosirea unor chei de dimensiuni mai mari, sporindu-se astfel rezistenta la atacuri criptoanalitice. Cînd cheia secretă are o dimeniune convenabilă si este suficient de frecvent schimbată, devine practic imposibilă spargerea cifrului, chiar dacă se cunoaste algoritmul de cifrare. Pe această idee se bazează si standardul american de cifrare a datelor-DES (Data Encryption Standard), larg utilizat de guvernul SUA si de diverse companii internationale. Propus initial de IBM sub forma sistemului Lucifer, DES a rezistat evaluării făcute de-a lungul a aproape două decenii nu numai de „spărgătorii de cifruri" de la NSA-National Security Agency din SUA ci si de nenumărati matematicieni de la marile universităti din lume. DES a fost adoptat ca standard federal în 1977 si a fost folosit intens datorită performantelor de viteză atinse la cifrare. Să amintim doar că DES este folosit azi pentru cifrarea datelor de către multe armate din lume sau de către comunitatea bancară internatională. Din păcate nu există o certitudine absolută că specialistii de la NSA, sau de la vreo altă organizatie, au reusit sau nu să spargă DES. Experienta a arătat însă că orice schemă criptografică are o viată limitată si că avansul tehnologic reduce, mai devreme sau mai tîrziu, securitatea furnizată de ea. Se consideră că perioada DES este aproape încheiată si că alte sisteme, cum ar fi IDEA sau Clipper îi vor lua locul.

Algoritmi criptografici cu chei publice

Un alt moment foarte important în evolutia criptografiei computationale l-a constituit adoptarea unui principiu diferit de acela al cifrării 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 făcută 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 mesajul. Tehnica cheilor publice poate fi folosită si pentru autentificarea mesajelor, prin asa numita semnătură digitală, fapt care i-a sporit popularitatea. Folosind algoritmi cu cheie publică (asimetrici), se crează criptosisteme cu două chei, în cadrul cărora doi utilizatori (procese) pot comunica cunoscînd 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 transformări 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), asigurîndu-se astfel functia de confidentialitate.

La receptie, B, va descifra criptograma C utilizînd transformarea secretă DB, cunoscută doar de el:

DB(C)=DB(EB(M))=M. 

Schema nu furnizează facilităti 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. Ignorînd 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))=M (a se vedea Crearea si Verificarea Semăturii Digitale) 

Autentificarea este realizată deoarece numai A poate aplica transformarea DA. Acest concept poartă numele de semnătură digitală, fiind folosit pentru recunoasterea sigură a utilizatorilor sau proceselor. Fie B un receptor de mesaj semnat de A. Semnătura lui A trebuie să satisfacă următoarele proprietăti:

Protectia nu este asigurată, întrucît este posibil ca mesajul M să fie obtinut de oricine, aplicînd transformarea publică EA. Pentru a se realiza simultan protectia si autentificarea informatiilor spatiului {M} trebuie să fie echivalent spatiului {C}, asa încît orice pereche (EA, DA) să fie în măsură să opereze atît asupra textului clar, cît si asupra textului cifrat; în plus se cere ca EA si DA să fie mutual inverse, adică:

EA(DA(M))=DA(EA(M))=M. 

Emitătorul de mesaj A va aplica mai întîi transformarea secretă a sa, DA, mesajului M, semnându-l. Apoi A va cifra rezultatul - utilizînd transformarea publică a lui B, EB si va emite către receptor criptograma:

C=EB(DA(M)). 

Receptorul B îl obtine pe M aplicînd 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. 

Cel mai cunoscut sistem cu chei publice este RSA al cărui nume provine de la de cei trei cercetători de la Massachusetts Institute of Technology care l-au creat- Rivest, Shamir si Adleman. El este un adevărat standard „de facto" în domeniul semnăturilor digitale si al confidentialitătii cu chei publice. Se bucură de o foarte mare apreciere atît în mediul guvernamental cît si în cel comercial, fiind sustinut prin lucrări si studii de comunitatea academică. Sub diferite forme de implementare, prin programe sau dispozitive hardware speciale, RSA este astăzi recunoscută ca cea mai sigură metodă de cifrare si autentificare disponibilă comercial. O serie de firme producătoare de sisteme de programe si echipamente ca DEC, Lotus, Novell, Motorola precum si o serie de institutii importante (Departamentul Apărării din SUA, National Aeronautics-SUA, Boeing, reteaua bancară internatională SWIFT, guvernul Belgiei etc), folosesc acest algoritm pentru protejarea si autentificarea datelor, parolelor, fisierelor, documentelor memorate sau transmise prin retele.

De exemplu firma Lotus a dezvoltat Notes, un nou concept de lucru în comun (groupware) într-o retea. La o astfel de legătură în comun a numeroase programe si persoane se cere însă o mare încredere în informatie cît si o mare confidentialitate; ca urmare Lotus foloseste semnătura digitală si secretizarea cu ajutorul criptosistemelor RSA.

În sistemul de operare NetWare, pentru retele locale, al firmei Novell, se foloseste curent RSA în mecanismele de autentificare care permit utilizatorilor să acceadă la orice server al retelei.

Motorola comercializează telefoane sigure care încorporează o serie de metode de confidentialitate si autentificare a utilizatorilor cît si a partenerilor de dialog.Toate acestea se bazează pe algoritmul RSA si se regăsesc atît în variante de uz general cît si în variante pentru comunicatii militare, fiind destinate atît transmisiilor de voce cît si de FAX.

Un alt exemplu semnificativ de utilizare a sistemului RSA este reteaua de postă electronică a guvernului belgian.Toate protocoalele de asigurare a confidentialitătii si de autentificare prin semnătură digitală folosesc acest algoritm.

Publicat în 1978, RSA este bazat pe imposibilitatea practică, la nivelul performantelor calculatoarelor de azi, de a factoriza numere prime mari. În acelasi timp găsirea unor numere prime mari este usoară. Fuctiile de criptare / decriptare sunt exponentiale, unde exponentul este cheia si calculele se fac în inelul claselor de resturi modulo n.

Dacă p si q sunt numere prime foarte mari (100-200 de cifre zecimale), cifrarea si descifrarea se fac astfel:

C=E(M)=Me mod(p*q) ; 
M=D(C)=Cd mod(p*q) ; 

Numerele e si d sunt cheile, publică si secretă. Valorile p si q sunt tinute secrete iar n=p*q este făcut public.

Cifrarea si descifrarea sunt bazate pe generalizarea lui Euler a teoremei lui Fermat, care afirmă că pentru orice M relativ prim cu n,

Mj(n) (mod n) = 1, 

unde j(n) este indicatorul lui Euler. Această proprietate implică faptul că e si d să satisfacă proprietatea:

e*d (mod j(n)) = 1, 

Rezultă:

Med = M (mod n). 

Criptosistemele cu chei publice au următoarele aplicatii mai importante în serviciile specifice retelelor de azi:

-autentificarea continutului mesajelor si al emitătorului, prin semnătură digitală;

-distributia cheilor de cifrare simetrică, prin anvelopare cu ajutorul sistemelor cu chei publice;

-autentificarea utilizatorilor si a cheilor publice prin asa numitele certificate digitale.

Dată fiind importanta pentru securitatea informatică a criptosistemelor cu chei publice guvernul SUA a initiat adoptarea unui standard de semnatură digitală bazat pe conceptul de cheie publică. Acest demers a generat controverse, soldate chiar cu acuze între organizatiile implicate. Pînă în decembrie 1990, Institutul National de Standarde si Tehnologie al SUA (NIST) recomanda pentru adoptare ca standard metoda RSA, prezentă deja în industrie. Dar nouă luni mai tîrziu, în august 1991, NIST a avansat un cu totul alt algoritm, bazat pe o metodă cu chei publice publicată de El Gamal în 1985. Noua propunere, denumită DSS (Digital Signature Standard), a fost dezvoltată de Agentia de Securitate Natională a SUA (NSA). Ea a stârnit controverse, nu datorită performantelor sale, ci mai degrabă ca urmare a suspiciunilor asupra autorului(NSA), care este si spărgător de cifruri.

Sisteme cu chei în custodie

Un alt concept este pe cale a fi implementat în SUA de către NSA (National Security Agency). El este numit sistem cu chei în custodie (Escrowed Key System) si promovează pentru SUA o nouă tehnologie criptografică sub numele de Clipper. El este destinat să permită, sub control (legal se sustine), interceptarea si decriptarea, de către institutiile abilitate ale statului, a unor informatii transmise prin telefon, fax sau Internet. Decriptarea se face cu ajutorul unor fragmente de chei obtinute prin aprobări legale de la asa numite agentii de custodie a cheilor.

Cipul Clipper, care va fi integrat atât în telefoane, fax-uri cât si în interfata de retea a calculatoarelor, contine un algoritm de criptare simetrică, pe 64 biti, numit „Skipjack". Acesta foloseste o cheie de 80 biti (în comparatie cu 56 de biti la DES) si are 32 de runde de iteratii (fată de numai 16 la DES), suportînd toate cele 4 moduri DES de operatii.

Fiecare cip include următoarele componente :

Cipurile sunt programate de Mykotronx Inc., care le denumeste MYK-78. Suportul fizic este asigurat de VLSI Tehnology Inc., în tehnologia de 0.8 microni, costînd aproximativ 30 dolari bucata, pentru cantităti mai mari de 10.000 bucăti.

Majoritatea firmelor din SUA ca si societatea civilă rejectează conceptia NSA, obiectând în principal următoarele:

Sisteme electronice de plăti

Dezvoltarea retelei globale de comunicatii între calculatoare, în ceea ce unii numesc Global Village (Satul Global), a permis introducerea si folosirea pe scară tot mai largă a sistemelor electronice de plăti. Acest gen de aplicatii pot fi văzute ca o latură a utilizării calculatoarelor si retelelor în activităti financiare si comerciale la mare distantă. Dintre numeroasele utilizări ale metodelor criptografice în aplicatiile cu caracter financiar-bancar putem aminti:

Transferarea comodă, rapidă si sigură a banilor a devenit una din cerintele fundamentale de viabilitate a noului concept de sisteme electronice de plată. De asemenea, înlocuirea formelor traditionale de numerar prin intermediul banilor electronici (digibani) oferă o mai bună flexibilitate sistemelor de plăti, în conditiile ridicării gradului de securitate al tuturor participantilor la sistem. Se diminuează mult, în aceste conditii, costurile implicate de emiterea si mentinerea în circulatie a numerarului. În sistemele de plăti electronice, cele mai multe lucrând on-line, plătitorul si plătitul comunică cu băncile în decursul tranzactiilor de plată. Acest lucru implică necesitatea asigurării unui nivel înalt de securitate al sistemului de plăti în ansamblu. Folosirea monedelor electronice, a cecurilor electronice si desfăsurarea unor repetate schimburi de date prin retele, fac necesară asigurarea confidentialitătii tranzactiilor, a autentificării sigure a entitătiilor comunicante prin semnătură si certificate digitale. Folosirea unor smart-carduri pe post de portmoneu electronic fac necesară desfăsurarea unor protocoale criptografice sigure între aceste mici calculatoare si dispozitivele care joacă rol de registru de casă. Smart-cardurile contin în spatele stratului magnetic un microprocesor pe 8 biti si o memorie de dimensiuni mici. Memoria este divizată în 3 zone:

Dispozitivele de acces si smart-card-urile trebuie să contină hard si soft securizate la deschidere-"temper proof resistant"- pentru a nu se putea opera modificări în vederea falsificărilor.

În implementarea sistemelor bazate pe digibani, se folosesc pentru cifrare si autentificare algoritmi criptografice cu chei publice. Multe solutii actuale se bazează pe schema de identificare/semnătură a lui Schnorr, a cărei tărie porneste de la intractabilitatea problemei logaritmilor discreti, problemă cu o complexitate echivalentă factorizării de la schema RSA. Alte implementări cunoscute în sistemele de plăti electronice folosesc o schemă de autentificare criptografică propusă de Fiat&Shamir sau cea propusă pentru standardizare de către ISO si publicată de Guillou&Quisquater .

În momentul de fată sunt demarate mai multe proiecte de bani electronici si portofel electronic, dintre care amintim: VISA-MASTERCARD-EUROPAY, Banksys în tările Beneluxului, Mondex al Băncii Centrale a Marii Britanii, precum si proiectul ESPRIT-CAFE (Conditional Access for Europe), dezvoltat prin finantarea Comunitătii Europene, care încearcă să impună un limbaj financiar comun bazat pe ECU între tările comunitare, în domeniul sistemelor de plăti electronice.

We are at risk

Desigur, cele prezentate în cadrul acestui articol nu sunt decât câteva dintre aplicatiile criptografiei în asigurarea securitătii informatice a acestui mediu în care ne pregătim să trăim în anii următori si care se cheamă Cyberspace. In lucrarea Computer at Risks, dedicată securitătii calculatoarelor si retelelor, National Research Council din SUA deschide primul capitol cu acest semnal de alarmă: "We are at risk". Este o afirmatie perfect acoperită de realitatea în care evoluează majoritatea retelelor din diferite tări ale lumii, pe care se execută, concurent, un mare număr de programe, insuficient protejate împotriva unor atacuri privind integritatea si autenticitatea informatiilor procesate. Tehnologii pentru ameliorarea acestui enorm risc al anilor următori nu pot veni decât din comunitatea cercetătorilor iar numitorul lor comun va fi acela că vor utiliza diferite tehnici si protocoale criptografice. Pentru că se poate aprecia cu certitudine că măsurile legislative care sunt preconizate pentru asigurarea securitătii Cyberspace-ului trebuiesc dublate de solutii tehnice de protectie, indisolubil legate de noua tinerete a criptografiei computationale.


(C) Copyright Computer Press Agora