Criptografia si tipuri de criptare - Securitatea Informatica

Criptografia si tipuri de criptare

Criptografia este stiinta scrierilor secrete. Ea sta la baza multor servicii si mecanisme de securitate folosite in internet, folosind metode matematice pentru transformarea datelor, in intentia de a ascunde continutul lor sau de a le proteja impotriva modificarii. Criptografia are o lunga istorie, confidentialitatea comunicarii fiind o cerinta a tuturor timpurilor. Daca ar trebui sa alegem un singur exemplu al criptografiei “clasice”, acesta ar fi cifrul lui Cezar, nu atat datorita celebritatii imparatului roman de care se leaga folosirea lui, ci pentru ca principiul sau de baza, al substitutiei, s-a mentinut nealterat aproape doua milenii.

Multa vreme, eforturile criptografilor au fost dirijate spre intarirea cifrurilor prin complicarea algoritmului, combinand substitutii si transpozitii asupra unor simboluri sau asupra unor blocuri (grupe de simboluri). Istoria moderna a criptografiei cunoaste numeroase inovatii in aceasta privinta. Doua sunt elementele ce au marcat insa cotitura semnificativa in dezvoltarea metodelor criptografice.

Primul este legat de dezvoltarea retelelor de calculatoare, al caror stimulent extraordinar s-a manifestat atat prin presiunea exercitata de tot mai multi utilizatori (a caror dorinta obiectiva este pastrarea secretului si a sigurantei asupra postei electronice private, a transferului electronic de fonduri si a altor aplicatii) cat si prin potentarea gamei de instrumente folosite efectiv in executia algoritmilor de cifrare. Utilizarea calculatoarelor electronice a permis folosirea unor chei de dimensiuni mai mari, sporindu-se atfel rezistenta la atacuri criptoanalitice. Cand cheia secreta are o dimeniune convenabila si este suficient de frecvent schimbata, devine practic imposibila spargerea cifrului, chiar daca se cunoaste algoritmul de cifrare. Pe aceasta idee se bazeaza si standardul american de cifrare a datelor – DES (Data Encryption Standard) larg utilizat de guvernul SUA si de diverse companii internationale. Propus intr-o forma initiala de IBM in 1975, DES a rezistat evaluarii facute de “spargatorii de cifruri” de la U.S. National Security Agency (NSA), care au recomandat doar reproiectarea anumitor componente (casete de substitutie). DES a fost adoptat ca standard federal in 1977 si a fost folosit intens datorita performantelor de viteza atinse la cifrare (peste 100 de milioane de biti/secunda). Din pacate, nu se stie cu certitudine daca cei de la NSA sau de la vreo alta organizatie au reusit sau nu sa sparga DES. Experienta a aratat insa ca orice schema criptografica are o viata limitata si ca avansul tehnologic reduce, mai devreme sau mai tarziu, securitatea furnizata de ea.

Al doilea moment important in evolutia criptografiei moderne l-a constituit adoptarea unui principiu diferit de acela al cifrarii simetrice. Whitfield Diffie si Martin Hellman, cercetatori la Univeritatea Stanford din California, prin articolul “New Directions in Criptography”, publicat in 1976 in revista IEEE Tranactions on Information Theory, au pus bazele “criptografiei asimetrice” cu chei publice. in locul unei singure chei secrete, criptografia asimetrica foloseste doua chei diferite, una pentru cifrare, alta pentru descifrare. Deoarece este imposibila deducerea unei chei din cealalta, una din chei este facuta publica, fiind pusa la indemana oricui doreste sa transmita un mesaj cifrat. Doar destinatarul, care detine cea de-a doua cheie, poate descifra si utiliza mesajul. Tehnica cheilor publice poate fi folosita si pentru autentificarea mesajelor, fapt care i-a sporit popularitatea. Nu este, deci, de mirare ca guvernul SUA a initiat adoptarea unui standard de semnatura digitala bazat pe conceptul de cheie publica. Acest demers a generat controverse, soldate chiar cu acuze intre organizatiile implicate. Pana in decembrie 1990, Institutul National de Standarde si Tehnologie ai SUA (NIST) recomanda pentru adoptare ca standard metoda RSA, prezenta deja in industrie. Dar noua luni mai tirziu, in august 1991, NIST a avansat un cu totul alt algoritm, bazat pe o metoda cu chei publice, publicata de Taher El Gamal in 1986. Noua propunere, denumita DSS (Digital Signature Standard), a fost dezvoltata de Agentia de Securitate Nationala a SUA (NSA). Ea a dezamagit nu datorita performantelor, ci “gratie” autorului, care este nu doar priectant, dar si spargator de cifruri, ceea ce a starnit, inevitabil, suspiciuni. Un cifru se defineste ca transformarea unui mesaj clar sau text clar in mesaj cifrat ori criptograma. Procesul de transformare a textului clar in text cifrat se numeste cifrare sau criptare, iar transformarea inversa, a criptogramei in text clar, are denumirea de descifrare sau decriptare. Atat cifrarea cat si descifrarea sunt controlate de catre una sau mai multe chei criptografice. Exista doua tipuri de sisteme criptografice:

  • simetrice (cu cheie secreta) care folosesc aceeasi cheie, atat la cifrarea cat si la descifrarea mesajelor.
  • asimetrice (cu chei publice) care folosesc chei distincte de cifrare si descifrare (dar legate una de alta). Una din chei este tinuta secreta si este cunoscuta doar de proprietarul ei. A doua cheie (perechea ei) este facuta publica, de unde si numele de criptografie cu cheie publica.

Algoritmi criptografici cu cheie secreta

Securitatea criptarii simetrice (cu cheie secreta) depinde de protectia cheii; managementul acestora este un factor vital in securitatea datelor si cuprinde urmatoarele aspecte:

  • generarea cheilor. Pot fi folosite, cu o tabela 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, functii matematice si diversi parametri (numarul curent al apelurilor sistem, data, ora etc).
  • distributia cheilor. Cu privire la transportul cheii secrete, problema este in general rezolvata prin folosirea unei alte chei, numita cheie terminal, pentru a o cripta. Cheile de sesiune – generate numai pentru o comunicatie – sunt transportate criptat cu cheile terminal care, de asemenea, pot fi protejate (cand sunt memorate) cu alta cheie, numita cheie master.
  • memorarea cheilor. Utilizarea algoritmilor simetrici, in cazul a N entitati care doresc sa comunice, implica N(N-1)/2 chei de memorat intr-un mod sigur. in realitate, nu toate legaturile bidirectionale se stabilesc la acelasi timp; este motivul pentru care se utilizeaza cheile de sesiune. Cheile terminal, care cripteaza numai date foarte scurte (chei de sesiune), sunt foarte dificil de atacat. Cand sunt folosite chei publice, X500 pare cea mai buna solutie pentru managementul cheilor. Cheile publice sunt pastrate in directoare X500, ca certificate semnate cu o semnatura digitala a Autoritatii de certificare (Certificate Authority).

Intalnim urmatoarele tipuri de sisteme de criptare cu algoritmi cu cheie secreta:

  • 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);
  • cifrul IDEA;
  • cifrul FEAL;
  • cirful LOKI;
  • cifrul RC2.

Algoritmi criptografici cu cheie publica

Un moment important in evolutia criptografiei moderne l-a constituit crearea, in anul 1976, de catre Whitfield Diffie si Martin Hellman, cercetatori la Univeritatea Stanford din California, a unui principiu diferit de acela al cifrarii simetrice. Ei au pus bazele criptografiei asimetrice cu chei publice. In locul unei singure chei secrete, criptografia asimetrica foloseste doua chei diferite, una pentru cifrare, alta pentru descifrare. Deoarece este imposibila deducerea unei chei din cealalta, una din chei este facuta publica, fiind pusa la indemana oricui doreste sa transmita un mesaj cifrat. Doar destinatarul, care detine cea de-a doua cheie, poate descifra si utiliza mesajul. Tehnica cheilor publice poate fi folosita si pentru autentificarea meajelor prin semnatura digitala, fapt care i-a sporit popularitatea. Intalnim urmatoarele tipuri de sisteme de criptare cu algoritmi cu cheie publica:

  • sisteme de cifrare exponentiala RSA (Rivert-Shamir-Adleman);
  • cifrul EL GAMAL (EG);
  • standardul DSS de semnatura digitala.

Utilizarea criptografiei in retele

Putem privi securitatea – securitatea datelor, securitatea comunicatiilor, in general securitatea informatiilor de orice fel – ca un lant. Securitatea intregului sistem este o combinatie puternica de legaturi slabe. Totul trebuie securizat: algoritmii criptografici, protocoalele, programele de administrare etc. Daca, de exemplu, algoritmii sunt puternici, insa sunt probleme cu generatorul de numere aleatoare, orice criptanalist va ataca sistemul pe aceasta cale. Daca nu sunt securizate locatiile de memorie care contin cheia, criptanalistul va sparge sistemul utilizand aceasta slabiciune. In timp ce proiectantul securitatii unui sistem trebuie sa identifice toate caile posibile de atac si sa le asigure, un criptanalist are nevoie doar de o singura slabiciune pentru a patrunde in sistem.

Criptografia este doar o parte a securitatii; ea acopera problematica realizarii securitatii unui sistem, ceea ce este diferit de ceea ce inseamna realizarea unui sistem securizat. Traditionala imagine a criptografiei ca “spion” in tehnologie este destul de departe de realitate. Peste 99% din aplicatiile criptografice utilizate in lume nu protejeaza secrete militare; ele sunt intalnite in banci, plati-TV, taxe de drum, acces la terminale, contoare de electricitate etc. Rolul criptografiei in aceste aplicatii este de a impiedica efectuarea de furturi si inselaciuni. in cele mai multe dintre aceste aplicatii s-a utilizat prost criptografia, atacurile reusite neavand insa nimic in comun cu criptanaliza. Chiar si NSA a admis ca marea parte a erorilor aparute in activitatile sale provin din erorile de implementare si nu din algoritmi sau protocoale. in acest conditii, nu conteaza cat de buna a fost criptografia, atacurile reusite anuland acest lucru si speculand erorile de implementare.

Criptarea hardware

Pana recent, toti producatorii de criptare isi ofereau produsele sub forma unor cutii ce se atasau unei linii de comunicatii si criptau toate datele de-a lungul liniei. Desi criptarea software devine tot mai dominanta, cea hardware este inca cea mai ceruta in aplicatiile militare sau comerciale de mare importanta. NSA, de exemplu, autorizeaza doar criptari hardware. Exista si motive pentru aceasta.

Primul este viteza. Criptarea consta dintr-o multime de operatii complicate ce se efectueaza asupra unui sir de biti clar, operatii care trebuie simulate intr~un calculator. Cei doi algortmi comuni de criptare, DES si RSA, lucreaza ineficient pe procesoare normale. Daca o serie de criptografi si-au facut propriii algoritmi adaptati implementarilor software, hardware-ul specializat castiga prin viteza.

In plus, criptarea este adesea o sarcina complexa. Introducerea in procesor a acestor operatii ete ineficienta. Sistemul va fi mult mai rapid daca operatiile de acest gen se fac de catre un chip sau procesor dedicat.

Un al doilea motiv este securitatea. Un algoritm de criptare ce lucreaza pe un calculator obisnuit nu are protectie fizica. Dispozitivele de criptare hardware sunt incapsulate, iar protectia se poate face destul de usor. Chip-urile VLSI dedicate pot fi tratate chimic, astfel incat orice incercare de patrundere poate distruge chip-ul.

IBM a dezvoltat un sistem criptografic de criptare a datelor si comunicatiilor pentru maiframe-uri, ce include module inviolabile care pastreaza cheile.

Radiatia electromagnetica poate uneori arata ce este in interiorul unei piese a unui echipament electronic. Dispozitivele de criptare pot fi ecranate, astfel incat sa nu ofere informatii la o astfel de incercare. Calculatoarele obisnuite pot fi ecranate la fel de bine, insa este o problema mult mai complexa (programul este cunoscut sub numele de TEMPEST). Motivul final este usurinta in instalare. Se poate dori ca secretizarea sa fie facuta pentru conversatiile telefonice, transmisiile de fax sau pentru legaturi de date.

Chiar daca datele criptate vin de la un calculator, este mai usor de instalat un dispozitiv specializat, decat sa se modifice sistemul software al calculatorului. Criptarea trebuie sa fie invizibila; ea nu trebuie sa fie accesibila utilizatorului. Singura cale de a face acest lucru software este de a scrie criptarea in sistemul de operare, ceea ce nu este usor. Pe de alta parte, chiar si unui calculator slab i se poate atasa un dispozitiv de criptare, intre el si modem-ul de comunicatie.

Cele trei lucruri de baza ale criptarii hardware oferite pe piata sunt: module de criptare (care realizeaza operatii de genul verificarea parolei sau administrare de chei pentru banci), dispozitive dedicate de criptare pentru legaturi de comunicatie si placi atasate in calculatorul personal.

Exista diferente majore intre dispozitive proiectate pentru criptare sincrona sau asincrona. Un dispozitiv nu va accepta niciodata o viteza a datelor mai mare decat cea pentru care a fost proiectat. In aceasta familie de dispozitive exista o serie de incompatibilitati. Problema principala este daca exista compatibilitate intre necesitatile particulare ale propriei aplicatii si caracteristicile principale ale dispozitivului de criptare oferit.

Tot mai multe companii isi secretizeaza datele prin hardware specializat. Administrarea interna a cheilor pentru aceste dispozitive este in general sigura, desi sunt tot atatea scheme cati producatori sunt.

Criptarea software

Orice algoritm de criptare poate fi implementat software. Dezavantajele constau in viteza, cost si usurinta in manipulare si modificare. Avantajul este oferit de flexibilitate si portabilitate, usurinta in folosire si in efectuarea de upgrade-uri. Programele criptografice pot fi copiate foarte usor si instalate pe orice masina si se pot incorpora in aplicatii complexe, cum ar fi cele de comunicatii si procesoarele de texte.

Programele de criptare software sunt foarte populare si sunt valabile pentru majoritatea sistemelor. Ele sunt destinate sa protejeze fisiere individuale. Utilizatorul, in general, cripteaza si decripteaza fisiere. Este important ca schema de administrare a cheilor sa fie sigura. Cheile nu trebuie pastrate oriunde pe disc. Textele clare ce se cripteaza trebuie, de asemenea, sterse dupa efectuarea operatiei.

Twitter Digg Delicious Stumbleupon Technorati Facebook


Nici un comentariu inca... Fii primul care lasa un comentariu!

Lasa un raspuns

This site is protected by Comment SPAM Wiper. This site is protected by WP-CopyRightPro