165
Cuvânt înainte Securitatea datelor este un concept legat, de obicei, de reţelele de calculatoare şi, mai nou, de Internet şi are trei aspecte distincte: protecţia datelor, autentificarea datelor şi identificarea utilizatorilor. Criptarea mesajelor este folosită ca mijloc de protecţie împotriva accesului neautorizat la date, dar şi pentru a determina situaţiile în care acest acces a avut loc. Dezvoltarea tehnologică aduce sistemelor de protecţie a datelor o nouă provocare: viteza de lucru! Este nevoie de tehnici de viteza mare atât pentru protejarea datelor, cât şi pentru accesarea lor. De-a lungul timpului au fost dezvoltate o serie de tehnici, algoritmi, mijloace fizice şi legale de protecţie a informaţiei. Epoca modernă a adus în discuţie nu numai concepte de protecţie strictă a datelor ci şi acelea de verificare a integrităţii (pentru a detecta eventuala alterare a datelor) şi autentificare (verificarea sursei datelor dar şi a entităţii - persoana sau program software - care acceseaza datele). Cifrurile sunt tehnici de criptare care se aplică asupra unităţilor de text (biţi, caractere, blocuri de caractere), independent de semantica lor sau înţelesul lingvistic. Rezultatul este un text cifrat. Prin contrast, codurile criptografice operează asupra unităţilor lingvistice: cuvinte, grupuri de cuvinte, fraze substituindu-le (înlocuindu-le) cu cuvinte anume, grupuri de litere sau numere numite grupuri de cod. O cheie este un grup de biţi, caractere, numere utilizate pentru criptarea/decriptarea unui mesaj. Poate fi, de asemenea şi o carte de coduri utilizată în acelaşi scop, de codificare/decodificare a unui mesaj. În practică este acordata o atenţie deosebită criptării asimetrice, în care o cheie este făcută publică pentru criptarea oricărui mesaj şi trimiterea lui la un destinatar A, în timp ce numai A ştie cheia privată utilizată la decriptarea mesajului. La proiectarea unui algoritm de cifrare se doreşte ca spargerea unui cod să devină cel putin o problemă computaţională. Spargerea algoritmului RSA de criptare cu chei publice, se reduce la factorizarea unui număr n, numit modul, în timp 7

Securitate Curs

Embed Size (px)

DESCRIPTION

Securitate Curs

Citation preview

Securitatea datelor n sistemele informatice economice

Cuvnt nainte

Securitatea datelor este un concept legat, de obicei, de reelele de calculatoare i, mai nou, de Internet i are trei aspecte distincte: protecia datelor, autentificarea datelor i identificarea utilizatorilor.

Criptarea mesajelor este folosit ca mijloc de protecie mpotriva accesului neautorizat la date, dar i pentru a determina situaiile n care acest acces a avut loc. Dezvoltarea tehnologic aduce sistemelor de protecie a datelor o nou provocare: viteza de lucru! Este nevoie de tehnici de viteza mare att pentru protejarea datelor, ct i pentru accesarea lor. De-a lungul timpului au fost dezvoltate o serie de tehnici, algoritmi, mijloace fizice i legale de protecie a informaiei. Epoca modern a adus n discuie nu numai concepte de protecie strict a datelor ci i acelea de verificare a integritii (pentru a detecta eventuala alterare a datelor) i autentificare (verificarea sursei datelor dar i a entitii - persoana sau program software - care acceseaza datele).

Cifrurile sunt tehnici de criptare care se aplic asupra unitilor de text (bii, caractere, blocuri de caractere), independent de semantica lor sau nelesul lingvistic. Rezultatul este un text cifrat. Prin contrast, codurile criptografice opereaz asupra unitilor lingvistice: cuvinte, grupuri de cuvinte, fraze substituindu-le (nlocuindu-le) cu cuvinte anume, grupuri de litere sau numere numite grupuri de cod. O cheie este un grup de bii, caractere, numere utilizate pentru criptarea/decriptarea unui mesaj. Poate fi, de asemenea i o carte de coduri utilizat n acelai scop, de codificare/decodificare a unui mesaj. n practic este acordata o atenie deosebit criptrii asimetrice, n care o cheie este fcut public pentru criptarea oricrui mesaj i trimiterea lui la un destinatar A, n timp ce numai A tie cheia privat utilizat la decriptarea mesajului. La proiectarea unui algoritm de cifrare se dorete ca spargerea unui cod s devin cel putin o problem computaional. Spargerea algoritmului RSA de criptare cu chei publice, se reduce la factorizarea unui numr n, numit modul, n timp ce n cazul criptarii Rabin cu cheie public, operaia este - fapt demonstrat - sigur.

Capitolul I. Sisteme criptografice

Obiectivul principal al msurilor de protecie ntr-un sistem de calcul l constituie eliminarea posibilitilor de distrugere accidental sau voit a informaiilor, precum i de consultare neautorizat a acestora. Accesul neautorizat la informaii poate provoca serioase daune prin afectarea caracterului privat al transmisiilor, introducerea unor date false sau trunchiate, falsificarea identitii unor calculatoare, terminale ori utilizatori. Dintre obiectivele importante care trebuie avute n vedere la proiectarea unor mecanisme hardware i software pentru protecia informaiilor ntr-o reea le menionm pe cele de prevenire a dezvluirii coninutului n clar al mesajelor, a inserrii de mesaje false, a analizei traficului de mesaje, precum i pe cele de detectare a modificrii, tergerii sau nlocuirii coninutului mesajelor, a ncercrilor de conectare neautorizat n reea.

Obiectivele de prevenire pot fi atinse prin cifrarea informaiilor, soluie eficient cnd memorarea sau transmiterea de date se efectueaz pe medii nesigure. Obiectivele de detectare sunt realizate dac se folosesc protocoale specifice, coroborate cu metode criptografice, care asigur schimburile de mesaje ntre entitile reelei.

Cifrarea confer protecia informaiei transmise pentru canalele ce sunt ascultate sau interceptate. n acest scop, emitorul alege un algoritm de cifrare i o cheie, pe care le comunic receptorului pe cale sigur, de exemplu, prin curier. O alt modalitate este aceea prin care se folosesc dou chei diferite . una la criptare i alta la decriptare. Criptografia modern protejeaz datele transmise pe linii de mare vitez i memorate n calculatoare.

Ea urmrete dou obiective principale, i anume:

protecia sau confidenialitatea (prevenirea dezvluirii neautorizate a unor informaii transmise sau memorate) i autenticitatea sau integritatea (prevenirea unor modificri neautorizate ale datelor).

Un sistem criptografic (criptosistem) are cinci componente:

spaiul mesajelor n text clar, {M}; spaiul mesajelor n text cifrat, {C}; spaiul cheilor, {K}; familia transformrilor de cifrare, Ek: M C, unde K {K}; familia transformrilor de descifrare, Dk: C M, unde K {K}.

Dup modul de folosire a cheilor se disting dou modaliti de criptare:

criptarea cu cheie privat - n care se folosete aceeai cheie att la criptare, ct i la decriptare. Se mai numete i criptare simetric sau convenional datorit folosirii aceleiai chei. n acest caz, transmiterea cheii n siguran ctre destinatar trebuie s se fac pe un canal absolut sigur.

criptarea cu chei publice - n care se folosesc chei diferite pentru criptare i decriptare. Se mai numete i criptare asimetric.

1.1. Criptografia simetric

Fiecare transformare de cifrare, Ek, este definit de un algoritm de cifrare, E comun tuturor transformrilor familiei, i o cheie, K, distinct de la o transformare la alta. n mod similar, fiecare transformare de descifrare, Dk, sunt definite de un algoritm de descifrare D, i de cheia K. Pentru un K dat, Dk reprezint inversa lui Ek, adic:

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

Figura 1. Sistem criptografic

n figura 1 este ilustrat modul n care transformrile de cifrare i descifrare sunt folosite pentru a se asigura protecia unui transfer de informaii.

Datele trebuie astfel protejate nct utilizatorii neautorizai s nu poat reconstitui textul clar dintr-un text cifrat interceptat. n acest sens, este necesar s se asigure:

utilizatorul neautorizat s nu poat determina sistematic transformarea de descifrare, Dk, din textul cifrat interceptat C, chiar dac se cunoate textul clar, M, corespondent; utilizatorul neautorizat s nu poat reconstitui textul clar, M, din textul cifrat, C, fr cunoaterea transformrii Dk.

Protecia datelor (confidenialitatea) impune ca transformarea de cifrare Dk (respectiv cheia) s fie protejat (figura 2).

Figura 2. Protecia datelor

Autentificarea datelor cere ca un utilizator neautorizat s nu fie capabil n mod obiectiv s substituie textul cifrat, C, cu un text cifrat fals, C, fr ca acest lucru s fie detectat. Nu trebuie s i se permit utilizatorului neautorizat: s determine sistematic transformarea Ek, cunoscnd pe C i textul clar corespunztor, M; s gseasc n mod sistematic C., astfel ca Dk(C.) s fie un text clar valid n M.

Cerinele de autentificare impun doar ca transformarea Ek (cheia de cifrare) s fie protejat

(figura 3)

Figura 3. Autentificarea datelor.

1.2. Criptosisteme cu chei publice

Conceptul de criptosistem cu dou chei (asimetric) a fost introdus de Diffie i Hellman n anul 1976. Ei propuneau o nou metod de cifrare, numit cifrare cu cheie public, n cadrul creia doi utilizatori (procese) pot comunica cunoscnd fiecare doar cheia public a celuilalt.

n criptosistemele cu chei publice, fiecare utilizator A deine o transformare de cifrare public, Ek, care poate fi memorat ntr-un registru (fiier) public i o transformare de descifrare secret, Dk, ce nu este posibil s fie obinut 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, protecia i autentificarea sunt realizate prin transformri distincte. S presupunem c utilizatorul (procesul) A dorete s emit un mesaj, M, unui alt utilizator (proces) B. Dac A cunoate transformarea public EB, atunci A poate transmite M la B sub forma C=EB(M), asigurndu-se astfel funcia de protecie (confidenialitate) (figura 4).

Figura 4. Protecia n criptosistemele cu chei publice

La recepie, B va descifra criptograma C utiliznd transformarea secret DB, cunoscut doar de el:

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

Schema nu furnizeaz faciliti de autentificare, deoarece orice utilizator (proces) are acces la transformarea public EB a lui B i i poate trimite mesaje false M sub forma

C=EB(M).

Pentru autentificare, i se aplic lui M transformarea secret DA lui A. Ignornd protecia pentru moment, A va emite C=DA(M) la B, care la recepie va aplica transformarea public, EA a lui A:

EA(C)=EA(DA(M))=M (figura 5).

Figura 5. Autentificarea n sistemele criptografice cu chei publice

Autentificarea este realizat deoarece numai A poate aplica transformarea DA. Protecia nu este asigurat, ntruct este posibil ca M s fie obinut de oricine aplicnd transformarea public EA. Pentru a se realiza simultan protecia i autentificarea informaiilor spaiului {M} trebuie s fie echivalent spaiului {C}, aa nct orice pereche (EA, DA) s fie n msur s opereze att asupra textului clar, ct i asupra textului cifrat; n plus se cere ca EA i DA s fie mutual inverse, adic:

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

Emitorul de mesaj A va aplica mai nti transformarea secret a sa, DA mesajului M. Apoi A va cifra rezultatul . utiliznd transformarea public a lui B, EB - i va emite ctre receptor criptograma: C=EB(DA(M)).

Receptorul B l obine pe M aplicnd la nceput propria-i funcie de descifrare, DB, iar apoi transformarea public a lui A, EA, cea care furnizeaz autentificarea:

EA(DB(C))=EA(DB(EB(DA(M)))) =EA(DA(M)) =M. (figura 6)

Figura 6. Protecia i autentificarea n criptosistemele cu chei publice1.2.1 Criptografia simetric

La baza criptrii convenionale stau dou modaliti de cifrare:

transpoziia; substituia.

Cifrarea prin transpoziie realizeaz o permutare a caracterelor din textul clar prin modificarea poziiei caracterelor n mesaj.

Cifrarea prin substituie presupune nlocuirea fiecrui caracter din textul clar cu un caracter din alfabetul criptogramelor.

Cifrurile prin transpoziie se pot clasifica dup: numrul de aplicare al transpoziiei: monofazic (se aplic o singur dat);

polifazic (se aplic de mai multe ori).

elementul unitate de transpoziie:

monografic (se transpune o singur liter);

poligrafic (se vor transpune grupuri de litere).

1.2.1.1. Cifrarea prin transpoziie

Transpoziia monofazic presupune aplicarea transformrii de cifrare o singur dat, n timp ce transpoziia polifazic presupune aplicarea transformrii de cifrare de mai multe ori.

Dac n procesul de cifrare elementul de coresponden n urma transpoziiei este o liter, atunci transformarea este monografic, iar dac se transpun grupuri de litere, transpoziia se numete poligrafic.

Un exemplu simplu de folosire a cifrrii prin transpoziie monofazic i monografic este urmtorul:

S lum mesajul:

S mprim mesajul n dou blocuri orizontale n felul urmtor:

Citim mesajul pe coloane vom avea cifrarea:

Sau acelai mesaj

mprit n cinci blocuri verticale:

Citind mesajul pe linii vom avea cifrarea:

O alt modalitate este aceea prin care textul mesajului se scrie ntr-o matrice i se parcurge matricea pe linii sau coloane dac textul a fost scris pe coloane sau pe linii rezultnd de fiecare dat un text cifrat. De asemenea, se poate face parcurgerea textului i n diagonal sau n zig zag, pornind dintr-unul din coluri.

S lum textul clar: SECURITATEA DATELOR

Folosim o matrice 4 x 5 pentru reprezentare i vom nlocui spaiile din text cu O.

Prin citirea pe coloan a textului, avnd n vedere c acesta a fost scris pe linie, va

rezulta mesajul:

Sau prin citirea n zig zag pornind din colul dreapta jos i apoi n sus:

Stabilirea traseelor de parcurgere a matricei se face n practic cu ajutorul unui cuvnt cheie. Cheia are un numr de litere egal cu numrul de coloane din matrice. Literele cheii, numerotate n ordine alfabetic, se scriu deasupra matricei, n ordinea stabilit de cheie, furnizat de textul cifrat.

n practica curent pentru protejarea datelor prin transpoziie se folosesc cutiile de transpoziie (figura 7).

Figura 7. Cutie folosit pentru transpoziii

1.2.1.2 Cifrarea prin substituie

Procedeul folosit la cifrurile substituie presupune nlocuirea fiecrui caracter din alfabetul mesajelor A cu un caracter din alfabetul criptogramelor C. Dac A={a1, a2, a3,., an}, atunci C={f(a1), f(a2), .., f(an)}, unde F : A C este funcia de substituie care constituie cheia cifrului.

Cifrarea unui mesaj M=m1, m2, m3, ..., mn se face astfel:

Ek(M)=f(m1)F(m2)f(m3).f(mn).

Folosindu-se de substituie, caractere ale alfabetului primar, sunt nlocuite cu caractere sau grupuri de caractere ale unui alfabet secundar. Aceasta poate fi reprezentat prin formula:

C = aM + b(mod N).

n acest mod se stabilete o coresponden biunivoc ntre literele alfabetului primar i numerele ntregi 0, 1, 2, .., N-1.

1.2.1.3 Substituii monoalfabetice

Substituia n care exist o singur lege de coresponden ntre literele alfabetului primar i cele ale alfabetului secundar se numete substituie monoalfabetic. Cea mai cunoscut substituie monoalfabetic este Cifrul lui Cezar. Se folosesc la cele dou alfabete, primar i secundar, 26 de litere. Legtura ntre cele dou cifruri se obine prin deplasarea cu un numr stabilit al alfabetului secundar i stabilirea apoi a corespondenei.

n exemplul urmtor se va folosi o deplasare de 3 caractere. Ci=E(Mi)=Mi+3

n acest fel textul clar:

Poate deveni:

Folosind o coresponden biunivoc ntre literele care formeaz mesajul (Mi), alfabetul latin de 26 de litere, i echivalentul numeric (Ei) unde Ei{0, 1, 2, .., 25}, Cifrul lui Cezar se mai poate scrie la forma general:

C(Ei) = Ei + Bi(mod 26).

Prin particularizare, alegnd B = 0, se obine o substituie de forma:

C(ej) = a*ej(mod 26).

Corespondena ejC(ej) este biunivoc dac numerele a i 26 sunt relativ prime, deci (a, N)=1, n caz contrar dou sau mai multe litere primare vor fi cifrate prin aceeai liter i funcia de cifrare nu admite o invers.

Se alege a astfel nct s fie relativ prim cu N = 26, n acest fel stabilindu-se o permutare a alfabetului primar. De exemplu, lund a = 3, se obine urmtoarea coresponden:

Litere primare:

Literele cifrului se pot obine din alfabetul primar i prin urmtorul proces de selectare: se alege prima litera A i apoi, n ordinea ciclic fiecare a treia liter; deci D, G, ..., Y. Dup Y irul cifrului se continu cu B, deoarece, n ordinea ciclic, a treia liter dup Y n alfabetul primar este B .a.m.d., motiv pentru care factorul de amplificare a = 3 se mai numete i factor de selectare.

Se poate obine un alfabet de substituire prin compunerea operaiei de deplasare cu operaia de selectare. Astfel, de exemplu, alegnd b = 4 i a = 3 se obine cifrul: C(ej) = 3(ei+ 4)(mod 26), ceea ce este echivalent cu o transformare liniar general de forma:

C(ej) = 3ej + 12(mod26).

Cifrul sau permutarea P a literelor alfabetului primar:

se poate caracteriza n mod univoc prin perechea de numere (3, 4), n care 3 reprezint factorul de selectare, iar 4 coeficientul de deplasare.

Perechea de numere (a, b) care definete n mod univoc o transformare liniar poart denumirea de cheia substituiei respective.

Un sistem de criptare bazat pe substituie se poate obine i prin folosirea unei chei mnemonice. Ca exemplu lum cheia literal CRIPTARE, apoi scriem cheia numeric, care se obine prin numrarea literelor cuvntului-cheie, dup aezarea lor n ordinea alfabetic:

S-au numerotat literele din cuvntul CRIPTARE n ordinea apariiei n alfabet. La dou apariii ale aceleiai litere n cuvntul-cheie acestea se numeroteaz diferit. n exemplul de mai sus litera R a aprut n cheia literar pe poziiile 6 i 7. Deci cheia numeric va fi 6 i 7. Se scriu literele alfabetului primar sub cheia numeric sub forma:

Corespondena monoalfabetic, corespunztoare cuvntului-cheie CRIPTARE, se obine prin scrierea sub literele alfabetului primar a literelor coloanelor de mai sus n ordinea cresctoare, adic se obine permutarea P1 (CRIPTARE):

Se observ n acest caz o coresponden biunivoc ntre alfabetul primar i cel secundar. Cu ajutorul acestei corespondene se poate cifra orice text clar, obinnd textul cifrat. n acest caz, numrul corespondenelor posibile crete de la 26 la 26! i ca atare aceast metod de cifrare implic operaii criptanalitice de mare complexitate.

Se mai poate aplica nc o dat acest mod de criptare folosind cuvntul-cheie CRIPTARE obinnd o nou permutare. Noul tabel, pentru aceast substituie, va fi de forma:

de unde rezult permutarea P2 (CRIPTARE):

Un cifru de substituie se poate obine i cu ajutorul unui tabel sub form de scar. Pentru aceasta se scriu toate literele alfabetului, n ordinea alfabetic, sub literele cheii, cu condiia ca linia i s se completeze ncepnd cu coloana i, pentru i = 1, 2, ... Apoi permutarea fix sau alfabetul cifrat rezult din scrierea sub literele alfabetului primar a literelor coloanelor tabelului scar n ordinea cresctoare.

Astfel, de exemplu, pentru cheia mnemonic:

A L F A B E T

Se obine tabelul sub form de scar:

de unde rezult permutarea P (ALFABET):

Un alt procedeu de obinere a unui alfabet cifrat const n repetarea cuvntului-cheie pn rezult un numr de litere egal cu numrul literelor din alfabetul primar. Acesta se scrie sub literele alfabetului primar i se numeroteaz n ordine alfabetic de la 0 pn la 25. Litera A se cifreaz prin acea liter care este deasupra lui 0 .a.m.d.

1.2.1.4 Substituia omofonic

Cifrurile bazate pe substituie simpl sunt n general uor de spart prin atac cu text cifrat, utiliznd ns i frecvenele de apariie a caracterelor. O variant de substituie este cea omofonic prin care se nlocuiete fiecare caracter din A cu un caracter dintr-o mulime f(A).

Funcia f se definete astfel: f : A 2C.

Un mesaj clar M = m1m2...mn va fi cifrat sub forma C = c1c2...cn, unde fiecare ci este ales aleatoriu din mulimea f(mi).

Cifrurile omofonice sunt mult mai greu de spart dect cele bazate pe substituie simpl, n special atunci cnd cardinalul mulimii f(mi) este proporional cu frecvena caracterului mi. n acest fel, se realizeaz o aplatizare a frecvenelor de apariie a diferitelor caractere, ngreunnd munca de criptoanaliz.

n cifrarea omofonic pentru caracterele cu o frecven de apariie mai mare se creeaz mai multe posibiliti de reprezentare n textul cifrat. De exemplu, n urma unor analize statistice, numrul de apariie a literelor ntr-un text de limba englez de 100.000 caractere este: E-12604, T-9042, R-8256, ...Q-318, J-198, Z-101.

Pentru literele E, T i R, avnd un numr de apariii mai mare, n cifrarea omofonic se creeaz patru posibiliti de reprezentare. Evident, cu ct alfabetul secundar este mai bogat n caractere, cu att este mai uoar mascarea caracteristicilor statistice ale textului clar. Fiecare caracter al textului clar poate avea mai multe reprezentri n textul cifrat. Pentru a ilustra acest lucru se consider cazul cnd alfabetul textului clar este format din 26 de caractere, iar alfabetul secundar conine 210 + 1024 de caractere de 10 bii fiecare. Iniial se face ca pentru fiecare liter din alfabetul primar s corespund un numr de cifruri direct proporionale cu frecvena de apariie a literei respective n textul considerat. Numrul cuvintelor de cod prin care sunt codificate literele alfabetului primar este: E-133, T-93, R-85, ..., Q-2, J-2, Z-1.

Prin acest sistem de cifrare se realizeaz ca frecvena de apariie a cuvintelor de cod s fie aproape constant.

Cifrarea monoalfabetic poate fi uor de implementat. Timpul de criptare a n caractere este proporional cu acestea. Exist un numr de 26! posibiliti de cifrare. Dac se face o descifrare ntr-o milisecund, folosind un atac brut, este nevoie de 1000 ani pentru a testa toate posibilitile. Cu toate acestea, frecvena literelor n text poate dezvlui mesajul.

1.2.1.5 Substituia polialfabetic

Cifrurile bazate pe substituie polialfabetic constau din utilizarea periodic a unor substituii simple diferite. Fie d alfabete de cifrare C1, C2, ., Cd i d funcii fi care realizeazsubstituia de forma

fi:ACi, 1 i d.

Un mesaj clar M = m1m2mdmd + 1m2d va fi cifrat prin repetarea secvenelor de funcii f1, ..., fd la fiecare al d-lea caracter:

Ek(M) = f1 (m1)...fd(md)fi (md + 1).

Utilizarea unei secvene periodice de substituii ale alfabetului mrete n mod semnificativ securitatea criptogramei prin nivelarea caracteristicilor statistice ale limbii.

Aceeai liter din textul cifrat poate reprezenta mai multe litere din textul clar, cu diverse frecvene de apariie. n acest caz, numrul cheilor posibile se mrete de la 26!, cte erau la substituia monoalfabetic, la (26!)n.

n substituia n-alfabetic caracterul m1 al mesajului clar este nlocuit cu un caracter din alfabetul A1, m2 cu un caracter din alfabetul A2, ., mn cu un caracter din alfabetul An, mn + 1din nou printr-un caracter n alfabetul A1 etc., conform tabelului:CARACTER DE INTRARE: m1, m2, m3, m4, m5, m6, m7, m8, m9, .

ALFABET SUBSTITUIE: A1, A2, A3, A4, A1, A2, A3, A4, A1.

O versiune cunoscut de substituie polialfabetic o constituie cifrul Vigenere (tabelul

1), cnd cheia K este o secven de litere de forma:

K = k1k2...kd.

Funciile fi de substituie se definesc astfel:

fi(a) = (a + ki) (mod n), unde n este lungimea alfabetului.

Tabelul 1. Cifrul lui Vigenere

Se parcurg urmtorii pai:

1. Se alege un cuvnt-cheie.

2. Se mparte textul n grupuri de 5 caractere.

3. Se scrie cuvntul cheie n fiecare din csuele atribuite.

4. Se folosete cuvntul cheie pentru a stabili coloana din tabel.

5. Se folosete textul clar pentru a stabili rndul din tabel.

6. Se cripteaz textul folosind corespondena dintre linie i coloan unde se va gsi simbolul folosit pentru cifrare.

Exemplu:

Folosim mesajul clar Mi pe care dorim s-l criptm folosind cheia Kk.

Corespondenta dintre Kk i Mi va avea ca rezultat Ci. Rezultatul este evideniat pe cifrul

lui Vigenere n tabelul 2.

Matematic se obine acelai lucru n felul urmtor:

1. Se consider aceiai cheie de cifrare (Kk) SECRET.

2. Textul clar (Mi) va fi CRIPTAREA CU CHEI PRIVATE.

3. Folosind o coresponden biunivoc ntre literele alfabetului i elementele inelului

claselor de resturi modulo26 (A = 0, B = 1, ..., Z = 25), substituia alfabeticconduce la urmtorul text cifrat:

Tabelul 2. Generarea rezultatului folosind cifrul lui Vigenere.

Textul clar este (Mi) este CRIPTAREA CU CHEI PRIVATE:

Cheie de cifrare (Kk) este SECRET.

C + S = ( 2 + 18)(mod26) = 20(mod26) = 20 = U

R + E = (17 + 4)(mod26) = 21(mod26) = 21 = V

I + C = ( 8 + 2)(mod26) = 10(mod26) = 10 = K

.

T + C = (19 + 2)(mod26) = 21(mod26) = 21 = V

E + R = ( 4 + 17)(mod26) = 21(mod26) = 21 = V

Un cifru Vigenere cu o perioada n, dei mult mai puternic dect un cifru bazat pe substituia monoalfabetic, poate fi spart dac criptanalistul dispune de cel puin 2n caractere din textul cifrat.

O variant mai nou a acestui cifru peste un alfabet binar este cifrul Vernam, care se difereniaz prin cheia de cifrare care este reprezentat de o secven de caractere aleatorii care nu se repet.

Fie M = m1m2... un mesaj clar binar i K = k1k2... un ir binar care reprezint cheia. Criptograma C = EK(M) = C1C2... se obine determinnd fiecare caracter ci astfel:

ci = (mi + ki) (mod n), i = 1, 2, ...

Utilizarea o singur dat a cheii (.one time pad.) face ca mesajul s fie foarte rezistent la criptoanaliz, practic imposibil de spart; aceste cifruri au o larg utilizare n comunicaiile diplomatice i militare.

1.2.1.6 Substituia poligramic

Cifrurile bazate pe substituie poligramic realizeaz substituirea unor blocuri de caractere (poligrame) din textul clar, distrugnd astfel semnificaia, att de util n criptoanaliz, a frecvenelor diferitelor caractere.

Vom consider un mesaj M = m1m2...mdmd + 1... i un cifru care prelucreaz poligrame de lungime d. Criptograma rezultat este C = c1...cdcd + 1...cd + d. Fiecare poligram mid + 1+...mid + d va fi prelucrat n poligrama cid + 1...cid + d prin funcia de substituie astfel:

cid + j = fj(mid + 1, ., mid + d)

n cazul cifrrii literelor singulare, frecvena de apariie a literelor n textul cifrat este aceeai cu frecvena de apariie a literelor corespunztoare din textul clar. Aceast invarian a frecvenelor furnizeaz o cantitate de informaie suficient criptoanalistului pentru spargerea sistemului de secretizare. Pentru minimizarea informaiei colaterale furnizate de frecvena de apariie a literelor s-a procedat la cifrarea grupurilor de n litere (n-grame). n cazul cnd un grup de n litere este substituit printr-un alt grup de n-litere, substituia se numete poligramic. Substituia poligramic cea mai simpl se obine pentru n = 2 cnd digrama m1m2 din textul clar se substituie cu digrama c1c2 din textul cifrat.

Corespondena biunivoc dintre digramele m1m2 i c1c2 se poate stabili cu ajutorul unui tabel de form ptratic. Literele din coloan din stnga ptratului i din rndul dispus deasupra ptratului servesc drept coordonate pentru digrama m1m2 din textul clar, iar digrama cifrat corespunztoare se scrie la intersecia liniei m1 cu coloana m2 sub forma:

Pentru simplificarea operaiei de descifrare se poate ntocmi ptratul invers care n punctul de coordonate c1 c2 ine digrama clar m1 m2.

Un exemplu clasic pentru sustituia digramelor este cifrul lui PLAYFAIR. Metoda const n dispunerea literelor alfabetului latin de 25 de litere (I J) ntr-un ptrat de cinci linii i cinci coloane de forma:

De regul, n prima linie a ptratului se scrie un cuvnt cheie, i apoi se completeaz celelalte linii cu literele alfabetului, fr repetarea literelor. Cifrarea se execut dup urmtoarele reguli:

dac m1m2 sunt dispuse n vrfurile opuse ale unui dreptunghi, atunci c1c2 sunt caracterele din celelalte vrfuri ale dreptunghiului, c2 fiind n aceeai linie cu m1. De exemplu GS devine MN, deci GSMN; dac m1 i m2 se gsesc ntr-o linie, atunci c1 i c2 se obin printr-o deplasare ciclic spre dreapta a literelor m1 i m2. De exemplu, ADBF sau CFDA etc.; dac m1m2 se afl n aceeai coloan, atunci c1 i c2 se obin printr-o deplasare ciclic a lui m1, m2 de sus n jos. De exemplu, UOBW sau EZFE etc.; pentru separarea liniilor identice alturate se introduc nite caractere de separare care, de regul, au frecven de apariie redus, cum sunt de exemplu literele X, Q n limba romn.

Descifrarea se execut dup reguli asemntoare cu cele de cifrare.

O substituie poligramic interesant este metoda algebric de cifrare care se bazeaz pe utilizarea unei transformri liniare de forma:

f(M) = PMT,

unde P este o matrice ptratic cu n linii i n coloane, iar M este un vector coloan cu n elemente. Elementele matricei transformrii P aparin inelului Z26, iar elementele lui M sunt echivalente numerice ale n-gramei M = e1, e2, ..., en.

n mod analog cu cifrarea i descifrarea digramelor se pot prelucra trigramele, tetragramele sau pentagramele, obinnd un spor de securitate prin creterea rangului matricei de cifrare. Aplicnd n mod repetat operaia de transformare liniar se obine un cifru-produs definit prin produsul matriceal de forma:

C = P1(P2( ...(PkMT).),

unde matricele Pi, i = 1, 2, ..., k sunt matrice inversabile de tipul nxn, iar M = e1, e2, ..., en este

echivalentul numeric al n-gramei.

Cele n litere ale n-gramei-text clar depind de n-grama-cifru, dar dac dou n-grame din textul clar au o liter comun, de aici nu se poate deduce c n-gramele-cifru corespunztoare au o liter comun i invers, ceea ce conduce la mascarea caracteristicilor statistice ale textului clar.

n cadrul cifrurilor computaionale, folosite n sistemele de securitate ale calculatoarelor, substituia simpl se realizeaz prin aa-numitele cutii S (figura 8).

Figura 8. Cutii de substituie.

1.2.1.7 Cifruri produs

Un algoritm produs (numit i cifru produs) reprezint o compoziie a t funcii (cifruri) f1, f2, ., ft, n care fiecare fi poate fi o substituie sau o permutare. Shannon a propus compunerea n diferite feluri a funciilor pentru crearea unor transformri mixte care distribuie n mod uniform mulimea mesajelor M pe mulimea tuturor criptogramelor C.

Aceste categorii de cifruri-produs se bazeaz pe reele de cutii S-P, n care se obine criptograma

C = EK(M) = StPt-1S2P1S1(M),

unde fiecare Si, este dependent de o cheie k, parte din cheia cifrului K.

1.2.2 Metode criptografice simetrice

1.2.2.1 Cifrul Lucifer

Un exemplu de criptare simetric l constituie cifrul Lucifer. Acesta realizeaz cifrarea/ descifrarea mesajelor divizndu-le n blocuri de 128 de bii. Mesajul poate fi de lungime oarecare, iar cheia de cifrare este de 128 bii.

Principiul este ilustrat n figura 9.

Figura 9. Sistemul de criptare Lucifer.

Sistemul de criptare Lucifer a fost dezvoltat nc din anul 1974 de ctre firma IBM. Ulterior, sistemul de criptare Lucifer a fost denumit DEA . Data Encryption Algorithm. Acesta folosete o serie de cutii S i cutii mici P, cu n = 4, prin care trec datele de intrare. Cutiile S vor implementa dou substituii posibile S0 i S1, fcute publice, a cror alegere depinde de valoarea unui bit al cheii. innd seama de faptul c sistemul implementeaz 16 iteraii identice, necesarul de cheie fiind de 512 bii (1 bit/cutie S*32 cutii S/iteraie*16 iteraii). Pentru a se reduce cheia de criptare de la 512 bii la 128 bii se utilizeaz un algoritm de expandare al ei, care repet fiecare bit al cheii de patru ori.

Fiecare cutie S de n bii poate fi implementat ca o memorie de 2n cuvinte de n bii. Pentru a se realiza un compromis ntre cost de implementare i securitate asigurat s-a ales n = 4, ceea ce nseamn pentru fiecare cutie 64 de bii.

ispozitivul Lucifer conine i un generator de cuvinte de trecere pentru transmisiile de date importante. Acest generator opereaz la fiecare capt al liniei de comunicaii. Mesajele care urmeaz s fie transmise sunt divizate automat n blocuri de D bii i combinate la fiecare impuls de tact al unui ceas, nainte de transmisie, cu un cuvnt de trecere (CT) care corespunde ieirii ceasului n acel moment. Rezult un bloc de 2D bii care este cifrat prin ansamblul cutiilor P i S. Cifrul Lucifer trebuie s gestioneze corect, la descifrare, cheia aplicat cutiilor S iar cuvntul de trecere cifrat recepionat trebuie s corespund cu cel generat local de ceasul binar care este sincronizat cu cel de transmisie.

Metoda numit i autentificarea prin nlnuirea blocurilor prezint urmtoarele avantaje:

fiecare bloc de text clar i corespondentul sau cifrat sunt unice, ceea ce nseamn c acelai mesaj, repetat n transmisie, d criptograme diferite la timpi diferii; erorile de transmisie sau utilizarea unei chei neadecvate vor fi sesizate imediat; ncercrile de a transmite mesajele vechi, nregistrate, sunt imediat detectate, deoarece cuvintele de trecere sunt diferite la momente diferite.

1.2.2.2 Algoritmul DES

Sistemul DES (Data Encryption Standard) este primul standard dedicat proteciei criptografice a datelor din sistemele de calcul. Dezvoltarea lui a nceput nc din 1972, dar a fost adoptat oficial n 1976, dup mbuntirea cifrului Lucifer.

Sistemul de cifrare DES este o combinaie ntre tehnica substituiei i tehnica transpoziiei. DES reprezint un cifru-bloc cu lungime de 64 de bii. Cheia de criptare are lungimea de 64 de bii, din care doar 56 sunt efectiv folosii, acetia fiind generai aleatoriu, ceilali 8 bii sunt folosii pentru a detecta erorile de transmisie, cte un bit pentru fiecare bloc de 8 bii ai cheii. n acest fel, cheia este expandat la lungimea blocului. Cheia este pstrat de ctre utilizatori i este folosit n procesul de cifrare/descifrare.

Sistemul de cifrare DES const din patru moduri de prelucrri [HSST95]:

ECB - Electronic Code Book

CBC - Cipher Block Chaining

OFB - Output Feedback

CFB - Cipher Feedback

Modul ECB (DES nativ)

Datele de intrare sunt divizate n blocuri de 64 de bii (8 bytes). Cheia de criptare are de asemenea 64 de bii. Din acetia sunt folosii efectiv 56, ceilali fiind folosii ca informaie de control.

Se folosesc doi algoritmi distinci, i anume:

algoritmi folosii pentru criptare; algoritmi pentru planificarea cheilor.

Se efectueaz dou tipuri de criptri n aceast faz:

permutarea substituia.

Pentru realizarea acestor dou operaii se folosesc cutii pentru permutri i substituii.

Permutarea cu ajutorul cutiilor

Vom exemplifica o permutare care are ca date de intrare caracterul 9 (n EBCDIC), cu forma binar 11111011, care va fi transformat cu ajutorul cutiei n caracterul .=. (n EBCDIC), cu forma binar 01111110 (figura 10).

Figura 10. Cutie folosit la permutare.

Procesul de permutare realizat de cutie va disimula informaia. Dac considerm cutia ca un algoritm de criptare, atunci cheia va fi format din macheta de conexiune realizat ntre conexiunile interne. Procesul de criptare este n acest caz reversibil, dac aplicm cheia la datele de ieire vom obine datele de intrare.

Se aplic n continuare o operaie de tip OR exclusiv (XOR). Aceasta poate fi vzut la rndul ei ca un nou algoritm de criptare, sau ca un pas suplimentar n criptare (n literatura de specialitate mai poart denumirea de modulul al doilea adiional). Acest pas suplimentar este exemplificat n tabelul 3.

Tabelul 3. Modulul al doilea adiional.

Se observ c procesul este reversibil cu condiia ca cheia de criptare s fie aceeai cu cheia de decriptare.

Substituia cu ajutorul cutiilor

Substituia este folosit ca un proces de neliniarizare a informaiei menit s aduc confuzie unui eventual utilizator neavizat. Procesul presupune nlocuirea unui numr cu un altul dintr-o tabel prestabilit. Informaia binar va fi nlocuit cu valori numerice din tabela.

Tabela are valori de numere cuprinse ntre 0 (0000) i 15 (1111) (tabelul 4).

Tabelul 4. Substituia cu ajutorul cutiilor.

Operaia de substituire are ca date de intrare 6 bii i returneaz 4 bii.

Principiul este exemplificat n cele ce urmeaz (tabelul 5).

Paii sunt urmtorii:

se aleg datele de intrare (binar - 101011 care are corespondent zecimal - 43); primul i ultimul bit din irul de intrare vor determina linia din tabel (11 - binar 3 - zecimal, rndul cu numrul 3); cei 4 bii din mijlocul irului vor determina numrul coloanei (0101 - binar 5 -zecimal, coloana cu numrul 5); din tabel, la intersecia coloanei nr. 5 cu rndul nr. 3 se gsete cifra zecimal 9, adic binar 1001.

Tabelul 5. Substituia cu ajutorul cutiilor - rezultatul.

Schema de prelucrare ntr-un singur ciclu a lui ECB (nativ DES) presupune parcurgerea urmtorilor 7 pai (figura 11):

Pasul 1

se introduc cei 64 de bii ai mesajului de text clar (Mi).

Pasul 2

se rearanjeaz datele de intrare conform cu tabela de permutri iniiale (IP).

Pasul 3

se mparte segmentul de date de intrare n dou segmente/jumti de cte 32 de bii care vor purta denumirea de L (left . stnga) i respectiv R (right . dreapta);

se face o salvare de siguran a jumtii dreapta care se va numi R0; se va opera n continuare numai cu jumtatea dreapt (R) lsnd jumtatea stng (L).

Pasul 4

se aplic asupra jumtii R un set special de permutri, numite permutri expandate (PE), care la un numr de 32 de bii date de intrare vor genera 48 de bii date de ieire.

Pasul 5

celor 48 de bii rezultai, mpreun cu ali 48 de bii ai unei chei, li se aplic o operaie XOR. Este singurul loc unde intervine cheia de criptare. n urma acestei operaii rezult un bloc care se numete Pre S block.

Figura 11. Schema de prelucrare ntr-un singur ciclu a lui ECB (nativ DES).

Pasul 6

se mparte Pre S block n 8 segmente de cte 6 bii; fiecare segment este procesat de o caset individual S-Box (S1, S2, S3, ...S8). Prelucrarea se face n paralel cu a celor 8 segmente. Fiecrui segment i se aplic o singur cutie S-Box. n urma prelucrrii rezult 32 de bii (4 bii la ieire * 8 casete = 32 bii). Succesiunea de bii rezultat poart denumirea de Post S block.

Pasul 7

Post S block este supus unei operaii finale de prelucrare-permutare; Prelucrarea presupune prelucrarea a 32 de bii i are ca date de ieire 32 de bii care formeaz rezultatul.

Procesul de prelucrare este exemplificat n figura 12.

Figura 12. Operaia final de prelucrare-permutare.

Paii de la 4 la 7 sunt adesea grupai ntr-o diagram de funcii DES f(Rn-1, Kn).

Pasul 8

se aplic funcia OR exclusiv (XOR) pentru jumtatea stng rmas de la pasul 3

mpreun cu f(Rn-1, Kn). Aceasta are ca rezultat un nou R. R0 va deveni un nou L.

Paii de la 3 la 7 se repet de 16 ori pentru fiecare bloc de 64 de bii n vederea criptrii. Pentru decriptare se folosete acelai algoritm cu schimbarea ordinii cheilor. Un rol important l are planificarea cheilor. Aceasta presupune existena unui set de bii de deplasare i permutare care sunt total independeni de algoritmul de criptare. Planificarea cheilor de criptare se face nainte de criptarea propriu-zis. Acest lucru este exemplificat n figura 13.

Figura 13. Planificarea cheilor.

Se parcurg urmtorii pai: Pasul 1

cheia este supus unei permutri iniiale; fiecare al optulea bit (8, 16, 32, 64) este eliminat pn va fi folosit ca bit de paritate; rezult dou perechi de cte 28 de bii care vor fi numite C0 i respectiv D0.

Pasul 2

blocurilor C i D li se aplic o permutare (shift) circular conform unui tabel de permutri.

Pasul 3

blocurile C i D rezultate sunt concatenate obinndu-se blocul CD1.

Pasul 4

CD1 este supus unei permutri; Dup permutare sunt eliminai biii 9, 18, 22, 25, 35, 38 i 54. Rezult o cheie de 48 de bii (K1). Aceast cheie este folosit n pasul 1 al algoritmului de criptare.

Paii de la 2 la 4 sunt repetai de un numr de 16 ori. Diferena dintre cicli este numrul de bii deplasai la fiecare deplasare circular.

Modul ECB are cteva puncte slabe, i anume:

se cripteaz blocuri de 64 de bii independent de criptarea altor blocuri; la aceleai chei de criptare, texte identice se vor cifra identic; probleme la complementaritatea blocurilor mai mici de 64 de bii etc.

Modul CBC

Modul CBC (figura 14) este un mod de criptare prin nlnuirea blocurilor. Criptarea fiecrui bloc depinde de criptarea blocului anterior.

C1 = E(B1)

C2 = E(E(B1) B2) = E(C1 B2)

C3 = E(E(E(B1) B2) B3) = E(C2 B3) etc.

Pentru criptare se folosete un vector de iniializare (IV) care poate fi asimilat ca o cheie de criptare secundar.

Acest mod prezint dezavantajul c, de vreme ce criptarea depinde de blocul anterior, o eroare aprut la unul dintre blocuri se va propaga la blocurile urmtoare, genernd serioase probleme la decriptare.

Figura 14. Modul CBC.

1.2.2.3 Modul Feedback (OFB . Output Feedback i CFB.

Cipher Feedback)

Vom trata mpreun aceste dou moduri deoarece nu difer semnificativ. Modul de funcionare este exemplificat n figura 15 pentru OFB - Output Feedback i n figura 16 pentru CFB - Cipher Feedback.

Figura 15. Modul OFB.

Figura 16. Modul CFB.

Se observ ca textul clar este nlocuit de un bloc de K-bii. Modul permite criptarea textului indiferent de lungimea acestuia.

Exist i critici la adresa algoritmului. O prim critic se refer la numrul de iteraii care se aplic. Sunt 16 iteraii de ajuns pentru a se asigura o bun criptare? O alt critic se refer la lungimea i numrul cheilor. O alt critic se refer la posibilitatea de a iniia atacuri la adresa lui. Exist dou tipuri de atacuri criptoanalitice la adresa DES: cutarea exhaustiv i folosirea de tabele.

Cutarea exhaustiv utilizeaz un atac cu text clar cunoscut. Dac se tie textul cifrat C, textul clar este cifrat, ci o cheie pn cnd DESK(M) = C. tiind c DES folosete efectiv 56 de bii pentru cheie, rezult c trebuie testate 256 chei.

Folosirea tabelelor realizeaz un atac cu text clar la alegere: pentru un mesaj Mo ales, se vor calcula n avans criptogramele Ci = Eki(Mo) pentru i = 1, 2, 3, ., n. Se caut, pentru un text interceptat, cheia ntr-o tabel. n ambele cazuri, dac se folosete tehnica procesrii paralele pentru reducerea timpului, decriptarea poate fi fcut sub o zi. O criptare dubl complic ns problemele de decriptare.

Dintre slbiciuni se remarc din nou cheile. Dou chei diferite pot decripta acelai mesaj. O alt problem o reprezint faptul c aceste chei sunt folosite ntr-o ordine la criptare i ntr-o ordine invers la decriptare. Din acest motiv, pentru transmisii de date n care este necesar o confidenialitate strict se utilizeaz chei de dimensiuni mult mai mari, chiar pentru algoritmul DES (de 256, 512, 1024 i chiar 2048 sau 4096 de bii), tiut fiind c timpul necesar decriptrii crete exponenial cu dimensiunea cheii de criptare/decriptare.

1.2.2.4 International Data Encryption Algorithm (IDEA)

Este considerat de unii specialiti ca fiind superior DES-ului. A fost inventat de ctre Xuejia Lai i James Massey.

Caracteristici:

lucreaz cu blocuri de 64 de bii text; folosete 128 de bii pentru cheie; folosete acelai algoritm pentru criptare i decriptare.

Se observ la o prim privire c lungimea cheii este dubl fa de DES (DES folosete efectiv 56 de bii din cei 64 alocai cheii).

Modul de funcionare este urmtorul:

se divide blocul de intrare de 64 de bii n 4 blocuri de cte 16 bii (X1, X2, X3, X4); cele 4 blocuri de cte 16 bii (X1, X2, X3, X4) devin date de intrare pentru urmtorul pas al algoritmului; fiecruia din blocurile X1, X2, X3, X4 li se vor aplica operaii de tip XOR, adunare, multiplicare cu alte blocuri i cu o parte din cheie format din 16 bii; ntre paii algoritmului se face schimbarea ntre blocurile al doilea i al treilea; numrul de pai este de 8.

Algoritmul este implementat att software, ct i hardware. Implementarea software are aceeai vitez ca la implementarea hardware a algoritmului DES. Implementarea hardware este semnificativ mai rapid dect DES. Algoritmul a fost dezvoltat pentru asigurarea comunicaiilor sigure n timp real.

1.2.2.5 Algoritmul Skipjack

Algoritmul este dezvoltat de NSA (National Security Agency) nc din anul 1985 i finalizat n anul 1990. Este clasificat ca secret. Este creat pentru utilizare cu Clipper (un cip de criptare dezvoltat de guvernul SUA ca parte a proiectului Capstone. Folosete conceptul de chei n custodie - Escrowed Key System) i Capstone (proiectul pe termen lung al guvernului american de dezvoltare a unui set de standarde pentru criptografia cu chei publice).

Este un algoritm simetric (ca i DES i IDEA). Lungimea cheilor este de 80 de bii. Poate lucra n modurile ECB, CFB, OFB i CBC. Folosete la criptare un numr superior de pai fa de ceilali algoritmi - 32 de pai. Puterea algoritmului nu se bazeaz prea mult pe algoritmul de criptare n sine.

Criptarea cu chei private presupune ca un utilizator/destinatar s cunoasc cheia privat a celuilalt utilizator/expeditor. De aici apar probleme cu transmisia i pstrarea n sigurane a cheilor de cifrare/descifrare, precum i cu numrul acestora.

Trei utilizatori au nevoie de cheile KAB, KAC i KBC. Patru utilizatori vor avea nevoie de cheile KAB, KAC, KBC, KAD, KBD, KCD. De aici rezult c pentru n utilizatori este nevoie de n*(n-1)/2 chei.

1.2.3 Criptografia asimetric

1.2.3.1 Elemente de baz

Conceptul de criptarea asimetric - cu chei publice (cu dou chei) a fost introdus de Diffie i Hellman. Se propune o nou metod de cifrare, numit cifrare cu cheie public, n cadrul creia doi utilizatori pot comunica cunoscnd fiecare doar cheia public a celuilalt.

n criptosistemele cu chei publice fiecare utilizator A deine o transformare de cifrare public, Ek, care poate fi nregistrat ntr-un registru public i o transformare de descifrare secret, Dk, ce nu este posibil s fie obinut 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, protecia i autentificarea sunt realizate prin transformri distincte.

Cheia public a destinatarului, care se preia din registrul/fiierul public, va fi utilizat de ctre expeditor pentru cifrarea mesajelor de la acesta ctre destinatar. Destinatarul va putea, pe baza cheii secrete pe care o deine, s descifreze mesajul care-i este destinat.

Serviciile asigurate de criptarea asimetric sunt:

secretizarea; autenticitatea; integritatea; nerepudierea.

Secretizarea impune ca un utilizator neavizat s nu poat s determine, pe baza textului cifrat n posesia cruia a intrat, textul clar i s nu fie capabil s descopere cheia de criptare (privat) pe baza analizei textului.

Autenticitatea impune ca emitorul s valideze sursa mesajului - mesajul s fie transmis de proprietarul acestuia i nu de o alt persoan. De asemenea, mesajul nu trebuie s fie un mesaj mai vechi retransmis.

Integritatea impune ca un mesaj transmis s nu poat fi modificat accidental sau voit prin nlocuiri, inserri sau tergeri a unor poriuni de mesaj.

Nerepudierea impune o protecie mpotriva unui transmitor care poate nega o transmisie efectuat anterior ctre un destinatar.

Criptarea cu chei publice este cu precdere folosit n dou mari aplicaii:

distribuia cheilor secrete;

semntura digital.

Procesul de distribuire a cheilor secrete presupune existena a doi sau mai muli utilizatori care mpart chile de criptare (private ca n cazul folosirii algoritmului DES).

Distribuia cheilor trebuie fcut pe un canal sigur. Folosirea unui serviciu de curierat sau o alt autoritate pentru distribuie mrete riscul de aflare a cheii. Transmiterea cheii private folosind transmiterea acesteia criptat, nemaiexistnd o a treia persoan care s tie de existena acesteia, precum i modul de transmitere, este destul de folosit.

Semntura digital este similar cu semntura de mn la autentificarea unui document. Semntura digital trebuie s ndeplineasc dou mari cerine:

receptorul trebuie s fie capabil s autentifice semntura expeditorului; semntura s nu poat fi falsificat.

Exist dou importante variante de implementare:

semntura exact; semntura arbitrar.

n cazul de implementare cu semntur exact, mesajul este trimis direct de la emitor la receptor. n cazul implementrii cu semntur arbitrar, exist un martor care poate fi uman sau proces automat, care valideaz semntura i apoi se nainteaz mesajul receptorului.

Semntura digital trebuie s asigure autenticitate, integritate i nerepudiere. n unele cazuri semntura digital este dezirabil atta timp ct nu se cere secretizare.

Criptarea asimetric permite comunicarea ntre persoane care nu au stabilit n prealabil nici o legtur. Comunicarea se va face pe baza celor dou chei, cea public a destinatarului i cheia privat a acestuia cu care se va descifra mesajul criptat n prealabil cu cheia public a acestuia.

Elementele care particip la procesul de criptare i decriptare sunt:

mesajul de text clar, {M}; mesajul de text cifrat, {C}; cheile, {K}; transformrile de cifrare, Ek: M C, unde K { K}; transformrile de descifrare, Dk: C M, unde K{K }.

Un sistem de cifrare cu chei publice trebuie s satisfac urmtoarele cerine:

dac C = E(M), atunci M = D(C) sau D(E(M)) = M, pentru M {M}; criptarea (E) i decriptarea (D) trebuie s fie uor implementabile (software sau hardware); obinerea lui D dac se afl E trebuie s fie imposibil sau foarte greu de realizat.

Suplimentar fa de acestea, pentru a se asigura autenticitatea mesajului, s-a introdus i funcia de semntur digital (S). Semntura digital reprezint o metod suplimentar de autentificare a mesajului.

S = D(M), atunci M = E(S) sau E(D(M)) = M pentru M {M}.

Autentificarea mesajului acioneaz n ambele sensuri:

receptorul va putea s fie sigur de proveniena mesajului de la expeditor; emitorul va putea s fie sigur de faptul c nimeni nu se va putea substitui lui.

Emitorul (A) poate semna mesajul ctre destinatar (B) astfel:

S = DA(M)

i apoi poate trimite mesajul cifrat

C = EB(S).

Numai destinatarul mesajului va putea s extrag semntura (S) din mesajul criptat (C) calculnd

DB(C) = DB(EB(S)) = S,

obinnd n final mesajul de text clar

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

Criptarea asimetric - cu chei publice - folosete metode matematice foarte complexe, n aritmetica numerelor foarte mari, de 256-1024 de bii, a cror implementare se face cu dificultate. Algoritmii folosii n criptarea asimetric sunt grupai ntr-o bibliotec de aritmetic criptografic. Aceasta conine un ansamblu de funcii matematice necesare implementrii algoritmilor att pentru criptarea simetric, ct i pentru cea asimetric.

Funciile cele mai utilizate sunt [HSST95]:

sum - SUM; diferen - DIF; comparare - COMP; modulo rapid - FASTMOD; nmulire modulo - AMULB; nmulire modulo 2n-1 - AMULB3; nmulire modulo 2n - AMULB4; funcia de exponeniere 2n-1 - EXP; ridicarea rapid la putere - FASTEXP; invers multiplicativ - INVERS; aflarea celui mai mare divizor comun - CMMDC; calculul operatorilor Jacobi; teste de primalitate.

Dintre sistemele de criptare asimetrice cel mai des folosite sunt:

sisteme de criptare cu chei publice exponeniale; sisteme de criptare de tip rucsac (knapsack); sisteme de criptare cu chei publice bazate pe ecuaii n cmp finit.

1.2.3.2 Sisteme de criptare cu chei publice exponeniale

Schema propus are la baz algoritmi care se bazeaz pe imposibilitatea calculului logaritmilor modulo numr prim.

Fie q un numr prim i un ntreg x, x [1, q - 1].

Se poate calcula Y = ax (mod q), unde a este un element primitiv al cmpului Galois GF(q). Clasele de resturi modulo q vor forma un inel; dac q este un numr prim acesta formeaz un cmp Galois GF(q). ntr-un cmp Galois exist (q-1) numere a care sunt elemente primitive ale cmpului Galois. Dac a, a2, a3, ., a(q) ((q) este indicatorul lui Euler, (q) = q-1) sunt puterile lui a, atunci acestea au ca resturi mod q pe 1, 2, ., (q), ceea ce nseamn c un element primitiv va genera prin ridicarea la putere toate elementele care sunt nenule ale cmpului.

Utilizatorul A va alege n mod aleatoriu un numr XA, XA {1, 2, ., q-1}. Calculeaz

YA = (mod q).

XA devine cheie privat i va fi inut strict secret.

YA devine cheie public i va fi pstrat ntr-un director sau fiier public.

Comunicarea ntre doi utilizatori (A) i (B) se va face folosind cheia de comunicaie de

forma:

Un atac la mesajul criptat presupune s se afle cheia KAB, adic s se caute

.

Sistemul va fi foarte greu de spart datorit imposibilitii calculrii logaritm modulo q n timp util sau cu mijloacele existente.

Sistemul este sigur i simplu. Criptarea se face pe baza cheii publice a destinatarului (aflat ntr-un director sau fiier public), iar decriptarea se face pe baza cheii private a destinatarului i nu pe baza cheii publice.

Criptarea cu chei publice exponeniale a beneficiat n ultimul timp i de aportul unor funcii suplimentare care sporesc performanele.

Printre cele mai cunoscute cifruri care folosesc criptarea cu chei publice exponeniale se numr cifrul Rivest-Shamir-Adleman (RSA), cifrul El Gamal, cifrul DSA (Digital Signature Algorithm), cifrul Pohling-Hellman (PH).

1.2.3.3 Rivest-Shamir-Adleman

Cifrul a fost conceput i realizat de trei cercettori, Ronald Rivest, Adi Shamir i Leonard Adelman, de la Massachusetts Institute of Technology (MIT), i are la baz generalizarea lui Euler a teoremei lui Fermat. Acest cifru este cel mai folosit pentru asigurarea confidenialitii mesajelor i autentificarea acestora cu ajutorul semnturii digitale. Se gsete implementat (hardware sau software) n programele i echipamentele unor firme de renume (Lotus, Novell, Motorola, Boeing, SWIFT Bank) sau chiar la nivelul ageniilor guvernamentale (DoD, NA).

Se va proceda la criptarea blocului de mesaj M, M (0, n-1), calculnd exponenialele:

C = Me(mod n),unde n = p*q, cu p i q dou numere prime mari astfel nct s fie greu de determinat

(q) = (p-1)*(q-1). (indicatorul lui Euler). Numerele p i q rmn secrete.

La decriptare,

M = Cd(mod n).

parte dintre cheile pentru criptare e i decriptare d sunt alese cu grij, n aa fel nct

(D(M)) = D(E(M)) = M.

cheile pentru criptare sunt de forma perechilor (e, n) - entru criptare, i (d, n) pentru decriptate. Numrul e este relativ prim fa de produsul (p-1) * (q-1). Numrul d se alege astfel nct s fie cuprins n intervalul [max(p, q) + 1, n-1] i:

d = e-1 (mod (p-1) * (q-1)) ; e * d = 1 mod (p-1) * (q-1).

Cu d ales se va calcula e. Cheia d va fi inut secret.

Pentru o bun secretizare autorii recomand folosirea a unor numere p i q de 100 de cifre, ceea ce face ca n s fie de aproximativ 200 cifre, fcnd imposibil factorizarea.

Se observ c cifrarea i descifrarea sunt funcii inverse. Se poate folosi cifrul RSA att pentru cifrare, ct i pentru autentificare.

Utilizatorul A (expeditor-surs) va obine modulul nA, precum i exponenii eA i dA. Se va nscrie n fiierul public cheia public (nA, eA).

Se pstreaz secret dA.

Un utilizator (expeditor-surs) va emite un mesaj secret utiliznd transformarea:

La destinaie se va obine mesajul clar aplicnd transformarea:

Se poate ca utilizatorul A s poat semna un mesaj ctre B calculnd:

B va autentifica acest mesaj, utiliznd cheia public a lui A astfel:

Problemele apar atunci cnd se dorete transmiterea unui mesaj criptat i n acelai timp i autentificarea acestuia. n acest caz se vor aplica transformri succesive cu module diferite.

Mesajul transmis de ctre A (expeditor-surs) lui B (destinaie), se va calcula:

C = EB(DA(M)).

La destinaie se va calcula:

EA(DB(C)) = M.

Exemplu: Criptarea

Mesajul clar este M = (SECRET).

p = 53

q = 61, p i q rmn secrete.

Se obine: n = p * q = 53*61 = 3233

(p-1) * (q-1) = 52*60 = 3120.

Alegem cheia privat: d = 791.

Calculm cheia public: d = e-1 (mod (p-1) * (q-1)) ; e * d = 1 mod (p-1) * (q-1)

791 = e-1 (mod (3120)) e = 71.

mprim mesajul M = (SECRET) n blocuri de cte dou caractere:

(SECRET) (SE CR ET)

Atribuim fiecrui grup valorile corespunztoare poziiei n alfabetul cu 26 de semne (din tabloul lui Vigenere):

S E C R E T

18 04 02 07 04 19

(SECRET) (SE CR ET) (1804 0217 0419)

Se cripteaz fiecare bloc cu formula C = Me(mod n):

C = 180471(mod 3233) = 2503

C = 021771(mod 3233) = 1254

C = 041971(mod 3233) = 2509

Va rezulta mesajul criptat C = (C, C, C) = (2503 1254 2509)

Decriptarea

Avem mesajul criptat:

C = (2503 1254 2509)

Folosim transformarea:

M = Cd(mod n).

Vom obine folosind decriptatea pentru fiecare bloc component i realiznd corespondena cu alfabetul:

M = 2503791(mod 3233) = 1804 (18 04) ( S E )

M = 1254791(mod 3233) = 0217 (02 17) ( C R )

M = 2509791(mod 3233) = 0419 (04 19) ( E T ).

Regrupnd textul vom avea:

M = (SECRET).

Vom folosi datele anterioare, unde:

p = 53

q = 61

e = 71

d = 791

i rezumatul mesajului criptat calculat cu funcia de hash (funcia de hash realizeaz un rezumat al mesajului care este trimis destinatarului) H (H(0, n-1):

H = (250312542509) (n cazul nostru identic cu M pentru uurarea calculelor).

Se mparte mesajul n trei blocuri distincte care s nu depeasc valoarea lui n:

H = (2503 1254 2509).

Expeditorul (A) va semna blocurile separat cu cheia s secret (e = 71) i formula:

S = 250371 mod 3233 = 1133

S = 125471 mod 3233 = 1498

S = 250971 mod 3233 = 2371.

Se obine n final semntura: S = (1133 1498 2371).

Destinatarul (B) va autentifica acest mesaj, utiliznd cheia public a lui A (d = 791) i formula astfel:

.

Sd = 1133791 mod 3233 = 2503

Sd= 1498791 mod 3233 = 1254

Sd = 2371791 mod 3233 = 2509.

Asamblnd se obine:

Sd = (250312542509) H.

Deci semntura este autentic.

1.2.3.4 Cifrul El Gamal (EG)

Este derivat din schema de distribuie a cheilor a lui Diffie i Hellman. i bazeaz tria criptrii pe dificultatea calculrii logaritmilor n cmpuri Galois mari. Este folosit doar pentru implementarea semnturii electronice.

Fiecare utilizator va dispune de o cheie privat KA(priv) care este un numr natural aleatoriu i de o cheie public KA(publ). Cheia public se obine din cheia privat n felul urmtor:

,

unde a este o constant a sistemului cunoscut de toi partenerii, iar n este un numr prim mare cu sute de cifre zecimale. M este un document electronic ce urmeaz s fie semnat electronic. H(M) este rezumatul documentului calculat cu funcia de hash H (H(0, n-1).

Semnarea documentului

Semnarea unui document se face de ctre utilizator (expeditor) cu cheia sa secret KA(priv). Orice utilizator va putea s verifice semntura pe baza cheii publice a expeditorului. Semnarea unui document M se face n modul urmtor:

se calculeaz rezumatul documentului cu ajutorul funciei de hash H, H(M); se genereaz aleator KA(priv) n intervalul [0, n-1], a. . cmmdc (KA(priv), n-1) = 1; se calculeaz ; se calculeaz, cu ajutorul cheii secrete a expeditorului, valoarea lui s din ecuaia

H(M) = KA(priv) * r * s (mod (n-1)).

Semntura mesajului M va fi reprezentat de perechea S = (r, s).

Verificarea semnturii

Destinatarul va primi la recepie att mesajul M, ct i semntura electronic S = (r, s) a acestuia i trebuie s verifice autenticitatea semnturii. Pentru verificare trebuie calculate urmtoarele:

aH(M) mod n i (KA(priv))r * rs mod n.

Dac aceste dou valori sunt egale, atunci semntura este veridic i deci mesajul este

autentic.

Exemplu

Alegem n = 467 i a = 2. Cheia privat a expeditorului va fi KA(priv) = 127.

Calculm cheia public a expeditorului

Mesajul transmis M va avea rezumatul H(M) = 100.

Expeditorul alege un K = 213, aleator astfel nct cmmdc (213, 466) i K-1 mod 466 = 431.

Se calculeaz semntura electronic a documentului cu ajutorul cheii secrete a expeditorului:

r = aK (mod n) = 2213 mod 467 = 29 i

s = (H(M) - KA(priv) * r) * K-1 (mod n-1) = (100-127*29)*431*(mod 466) = 51.

La recepie se verifica semntura S = (r, s).

Vom calcula aH(M) mod n i (KA(priv))r * rs mod n.

aH(M) mod n = 2100 (mod 467) = 189

(KA(priv))r * rs mod n = 132292951 (mod 467) = 189.

Cum cele dou numere sunt egale, semntura este valid.

1.2.3.5 Cifrul Digital Signature Standard (DSS)

Digital Signature Algorithm reprezint standardul de semntur digital al cifrului DSS. A fost elaborat de NIST (National Institute of Standard & Technology) n anul 1991. Folosete metoda El Gamal i aceasta i bazeaz tria pe imposibilitatea calculrii logaritmilor n cmp finit. Se ncearc impunerea standardului n locul celui RSA, construindu-se chiar un chip care implementeaz algoritmul.

Se dispune de un set de parametri globali i de un set de parametri privai.

Parametrii globali sunt:

p - un numr prim cuprins n intervalul (2511;2512)-512 bii;

q - un divizor al lui (p-1) -160 bii, q n (2159, 2160);

g - un numr ntreg cu proprietatea c g = h(p-1)/q mod p, n care h este un ntreg relativ prim cu p, h n (0, p) astfel nct h(p-1)/q mod p>1;

H - funcia hash de calcul al rezumatului unui mesaj.

Parametrii specifici fiecrui utilizator sunt:

KA(priv) - cheia privat a utilizatorului A, un ntreg n (0;q);

KA(publ) - cheia public, numr ntreg, obinut astfel: .

Pe lng mesajul semnat M, care va fi transmis, ca o particularitate avem un numr k, ntreg aleatoriu, cuprins n intervalul (0;q) care se modific la fiecare semntur.

Semnarea documentului

Semnarea documentului presupune determinarea perechii S = (r, s). Aceasta se face folosind cheia secret a emitentului KA(priv) .

Se alege un ntreg k n intervalul (0, q) prim cu q.

Se va calcula;

r = (gk mod p) mod q.

s = ((k-1) (H(M) + KA(priv) *r)) mod q.

Verificarea semnturii

Receptorul documentului electronic primit, nsoit de semntur, va efectua urmtoarele operaii: va calcula w = s-1 mod q (s trebuie s fie inversabil); va calcula r = g(H(M) * w * KA(publ)r*w mod p) mod q.

Dac r = r, atunci semntura este valid i deci documentul este autentic.

Exemplu

Alegem q = 101 i p = 78q + 1 = 7879.

ntruct 3 este rdcina primitiv a lui Z7879, se calculeaz:

g = 378 mod 7879 = 170

KA(priv) = 76. Se calculeaz cheia public

.

Expeditorul (A) va semna un document, care are rezumatul H(M) = 1234, pe care-l va trimite ctre destinaie (B). Alege o constant k = 50 drept parametru al semnturii i calculeaz urmtoarele:

k-1 mod 101 = 99

Acum va calcula cele dou elemente ale semnturii (r, s):

r = (gk mod p) mod q = (17050 mod 7879) mod 101 = 2518 mod 101 = 94.

s = ((k-1) (H(M) + KA(priv) *r)) mod q = (1234 + 75 * 94) mod 101 = 97.

La destinaie se va verifica perechea (r, s) de ctre destinatar n felul urmtor cu ajutorul cheii publice a expeditorului:

w = s-1 mod q = 97-1 mod 101 = 25

r = g(H(M) * w * KA(publ)* r*w mod p) mod q

H(M) * w mod q = 1234 * 25 mod 101 = 45

r*w mod p = 94 * 25 mod 101 = 27

r = (17045 * 456727 mod 7879) mod 101 = 2518 mod 101 = 94.

Cum r = r, semntura este valid.

Implementarea hardware a fost fcut cu ajutorul cipului CLIPPER. Cipul este produs de ctre AT&T, arhitectura este proiectat de MYKOTRONIX, iar specificaiile sunt dictate de NSA (National Security Agency). Este un chip care poate rezista cu succes tentativelor de decodare. Poate procesa 15-20MB/s att la criptare, ct i la decriptare o dat ce a fost stabilit sincronizarea cu receptorul/emitorul.

1.2.4 Sisteme de criptare de tip rucsac (knapsack)

Din aceast categorie de sisteme de criptate fac parte cifrurile Merkle-Hellman, Cifrul Graham-Shamir i Cifrul Shamir.

1.2.4.1 Cifrul Merkle-Hellman (MH)

Cunoscnd greutile elementelor componente care se afl ntr-un rucsac i greutatea rucsacului nchis, s se determine setul de elemente fr a se proceda la deschiderea rucsacului (rucsac = knapsack). Acesta ar fi enunul problemei.

Fiind dat un ntreg pozitiv T i un vector A = (a1, a2, a3, ., an) de numere ntregi pozitive, trebuie gsit un subset al lui A (V) a crui sum s fie egal cu T.

T = aivi, unde V = (v1, v2, v3, ., vn) de numere binare.

Exemplu:

S lum A = (17, 38, 73, 4, 11, 1) i T = 53.

Se caut un element al vectorului V la care aivi = 53.

S ncercm cu primul element 17 (a1) (53-17) = 36. 38 (a2) este mai mare dect 36 i

1 + 4 + 11LungimeaMinimDePotrivire){scrie perechea (poziie, lungime);mut fereastra cu Lungime caractere mai n fa;}altfel{scrie primul caracter din buffer-ul de naintare;mut "fereastra" cu un caracter mai n fa;}}

Decompresia, se face astfel: de cte ori este gsit o pereche (poziie, lungime), du-te la acea poziie i copiaz lungime octei n fiierul de ieire.

7.5. Fractali. Dimensiunea fractala

Fractalii sunt forme geometrice, care pot fi mprite n buci, fiecare dintre ele, fiind o copie la scar redus a ntregului. Fractali pot fi considerai norii, muntii, copacii, malurile, etc.

Denumirea de "fractal", a fost dat prima oar de Benoit Mandelbrot (un matematician de la IBM) de la adjectivului latin "fractus". Verbul corespunzator, este "frngere", care nseamn "a sparge".

Obiectele geometrice, au o dimensiune topologic; de exemplu, liniile au dimensiunea 1, suprafeele plane (ptrate, cercuri, etc.) au dimensiunea 2, spatiul, dimensiunea 3. Dar, s-au construit figuri, care nu se puteau caracteriza prin nici una dintre dimensiunile cunoscute; unei linii curbe care unete dou puncte, nu i se putea determina lungimea, iar dac se fceau detalieri succesive asupra fiecrui punct de pe dreapta, lungimea liniei cretea (conturul unui munte se detaliaz cu ct distana de la care este privit este mai mic).

Astfel, n 1919, matematicianul Hausdorff, a introdus o noua dimensiune, dimensiunea fractal sau dimensiunea Hausdorff. Aceast dimensiune, msoara numrul de mulimi de diametre mai mici, necesare pentru a acoperi o figur. Dac acest numar este ntreg, atunci dimensiunea este topologic, altfel, dimensiunea este fractal. De exemplu, o linie dreapt mrit de 2 ori, este de dou ori mai mare decat linia iniial; dimesniunea ei, este log2/log2=1. Un ptrat mrit de 2 ori, este de 4 ori mai mare dect ptratul iniial (aria sa cuprinde 4 arii a ptratului iniial), iar dimensiunea lui, este log4/log2=2. ntr-un cub, mrit de 2 ori, ncap 8 cuburi iniiale, iar dimensiunea lui este log8/log2=3. Dac se ia o dreapt, n care se nlocuiete repetat __ cu _/\_, unde fiecare 4 linii sunt 1/3 din lungimea vechii linii i se mrete de 3 ori, rezult o linie care este de 4 ori mai mare i care are dimensiunea log4/log3=1.261..., dimensiune care nu este o valoare ntreag, fiind deci o dimensiune fractal.

Fractalii, sunt folosii mai ales la compresia imaginilor. Este o tehnica relativ nou i care nu d rezultate destul de bune n comparaie cu alte tehnici de compresie a imaginilor. De exemplu, dac se ia un portret alb-negru, cu culori pe 8 biti i se trece prin programul de compresie, se obine un fiier de 2500 octei (se obine o compresie de 25:1). Dac se mrete prul persoanei din portret de 4-5 ori, se va vedea o textur care seamn cu prul. Dar, detaliile nu s-au artat, ci s-au generat; deci, dac se va mri faa persoanei, nu se vor vedea porii pielii, ci aceai textur, ca i cum ar fi mrit cu lupa.

Bibliografie

IEEE Transactions on Computers, 1986 - 2004

C. Bacivarov, Securitatea sistemelor informatice - Rubrica permanent "Societatea informaional" - Calitatea, 2003 - 2004

R. Lupan, A.Kobi, C. Robledo, I. Bacivarov, ISO 9000:2000 Quality System Improvement Using the Six Sigma Methology, Proceedings of the 3rd International Conference on the Management of Technological Changes, Chania, Greece, August 2003, pp.131 137

Andrew S. Tanenbaum: Retele de calculatoare (editia a treia), Computer Press AGORA (1998) Victor-Valeriu Patriciu, Monica Pietrosanu-Ene, Ion Bica, Costel Cristea: Securitatea informatica in UNIX si INTERNET , Editura tehnica (1998) Marshall Wilensky & Candace Leiden , TCP/IP pentru toti, Editura Teora (1996) Iosif Ignat, Adrian Kacso: Unix - gestionarea proceselor, Editura Albastra (1995) V. Cristea, A. Paunoiu, E. Kalisz, I. Athanasiu, L. Negreanu, S. Calinoiu, F. Baboescu: UNIX, Editura Teora (1993) Valer Bocan Stadiul actual al dezvolt_rii sistemelor de securitate pentru re!ele de calculatoare de nalt_ siguran!_, Referat doctorat nr. 1, Universitatea Politehnica Timi4oara, Facultatea de Automatic% 4i Calculatoare, 2001 Valer Bocan Developments in DOS Research and Mitigating Technologies, Periodica Politehnica, Transactions on Automatic Control and Computer Science, Vol. 49 (63), CONTI 2004 Valer Bocan Threshold Puzzles: The Evolution of DOS-resistant Authentication, Periodica Politehnica, Transactions on Automatic Control and Computer Science, Vol. 49 (63), CONTI 2004 Computer Emergency Response Team - CERT advisory CA-2000.01 Denial of service developments, 2000 (http://www.cert.org/advisories/CA-2000-01.html) Scott A. Crosby, Dan S. Wallach Denial of Service via Algorithmic Complexity Attacks, Proceedings of the12th USENIX Security Symposium, 2003 Drew Dean, Adam Stubblefield Using Client Puzzles to Protect TSL, http://www.csl.sri.com/users/ddean/papers/usenix01b.pdf, Proceedings of the10th USENIX Security Symposium, 2001 Digital Equipment Corporation Performance tuning tips for Digital Unix, iunie 1996, http://www.abdn.ac.uk/local/apache/manual_1.3.4/misc/perfdec.html Prashant Dewan, Partha Dasgupta, Vijay Karamcheti Defending Against Denial of Service Attacks Using Name Secure Resolution, The 23rd International Conference on Distributed Computing, 2003 The Distributed.net Organization, http://www.distributed.net Peter Druschel, Gaugrav Banga Lazy receiver processing (LRP): a network subsystem architecture for server systems, Proceedings of the 2nd USENIX Symposium on OSDI, Seattle, 1996

Cynthia Dwork, Moni Naor Pricing via Processing or Combating Junk Mail, Proceedings of CRYPTO 92, Springer Verlag, 1992 P. Ferguson, D. Senie Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing, RFC 2267, 1998 Alan O. Freier, Philip Karlton, Paul C. Kocher The SSL Protocol, Version 3.0 (Internet Draft), Transport Layer Security Working Group, 1996 Ari Juels, John Brainard Client puzzles: A cryptographic defense against connection depletion attacks, Proceedings of the NDSS 1999 Charlie Kaufman, Radia Perlman, Mike Speciner Network Security. Private Communication in a Public World, Prentice Hall, 2002 Catherine Meadows A formal framework and evaluation method for network denial of service, Proceeding of the 1999 IEEE Computer Security Foundations Workshop, Mordano, Italy, 1999 R. C. Merkle Secure Communications Over Insecure Channels, Communications of the ACM, 1978 Rolf Oppliger Authentication Systems for Secure Networks, Artech House, Inc., 1996 Victor-Valeriu Patriciu Criptografia i securitatea reelelor de calculatoare, Editura Tehnic, 1994 Ping-Herng Denny Lin Survey of the Denial of Service Countermeasures, California State University, Fullerton, 2000 Valentin Razmov Denial of Service Attacks and How to Defend Against Them, University of Washington, 2000 Ronald R. Rivest, Adi Shamir, David A. Wagner Time-lock Puzzles and Timed-release Cryptography, 1996, http://lcs.mit.edu/~rivest/RivestShamirWagner-timelock.pdf Stefan Savage, David Wetherall, Anna Karlin, Tom Anderson Practical network support for IP traceback, technical report UW-CSE-00/02/0, SIGCOMM 00, 2000 Bruce Schneier Distributed denial of service attacks, Crypto-gram newsletter, 2000 SETI @home Program, http://setiathome.ssl.berkely.edu Shon Harris DOS Defense, Information Security Magazine, 2001 Oliver Spatscheck, Larry Peterson Defending against denial of service in Scout, Proceedings of 3rd USENIX/ACM Symposium on OSDI, p. 59-72, 1999 Tuomas Aura, Pekka Nikander, Jussipekka Leiwo DOS-resistant authentication with client-puzzles, Proceeding of the Cambridge Security Protocols Workshop 2000, LNCS, Cambridge, UK, 2000

PAGE 124

_1216802207.unknown

_1216820433.unknown

_1217228164.unknown

_1217239153.unknown

_1217252125.unknown

_1217252185.unknown

_1217252246.unknown

_1217252037.unknown

_1217231028.unknown

_1217231077.unknown

_1217228668.unknown

_1217227791.unknown

_1217227815.unknown

_1217227296.unknown

_1216819750.unknown

_1216820038.unknown

_1216820170.unknown

_1216819785.unknown

_1216819694.unknown

_1216819737.unknown

_1216819670.unknown

_1216715216.unknown

_1216801842.unknown

_1216802178.unknown

_1216717212.unknown

_1216715090.unknown

_1216715200.unknown

_1216715070.unknown