Sunteți pe pagina 1din 131

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.
8

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).
9

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.

10

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).

11

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)

12

Figura 6. Protecia i autentificarea n criptosistemele cu chei publice

1.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.
13

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.


14

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


15

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).
16

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 stabilinduse 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
17

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
18

literele alfabetului primar a literelor coloanelor tabelului scar n ordinea


cresctoare.
Astfel, de exemplu, pentru cheia mnemonic:
ALFABET

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
19

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
realizeaz
substituia 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).
20

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 + 1
din 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

21

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.

22

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 alfabetic
conduce la urmtorul text cifrat:

23

Tabelul 2. Generarea rezultatului folosind cifrul lui Vigenere.

24

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.
25

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,
26

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 ngrame din textul clar au o liter comun, de aici nu se poate deduce c n-gramelecifru 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.
27

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.

28

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;
29

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

30

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.
31

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

Pasul

Pasul

1
se introduc cei 64 de bii ai mesajului de text clar (Mi).
2
se rearanjeaz datele de intrare conform cu tabela de permutri iniiale (IP).
3
32

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.

33

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;
34

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.

35

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.

36

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.

este

Paii de la 2 la 4 sunt repetai de un numr de 16 ori. Diferena dintre cicli


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.

37

38

Figura 14. Modul CBC.

1.2.2.3 Modul Feedback (OFB . Output Feedback i CFB.


39

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.

40

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.
41

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 ntro 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).

42

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.
43

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:
44

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;
45

calculul operatorilor Jacobi;


teste de primalitate.
Dintre sistemele
o sisteme de
o sisteme de
o sisteme de

de criptare
criptare cu
criptare de
criptare cu

asimetrice cel mai des folosite sunt:


chei publice exponeniale;
tip rucsac (knapsack);
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 = a X A (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).
46

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).
47

Se pstreaz secret dA.


Un utilizator (expeditor-surs)
transformarea:

va

emite

un

mesaj

secret

utiliznd

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)
48

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:
.
791

Sd = 1133 mod 3233 = 2503


Sd= 1498791 mod 3233 = 1254
49

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:
50

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:
51

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
52

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 MerkleHellman, 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 + 11<36.
S ncercm cu al doilea element 38 (a2) (53-38) = 15. 4 + 11 = 15.
aivi = (1*38) + (1*4) + (1*11) = 53.
Deci vectorul cutat este V = (0, 1, 0, 1, 1, 0).
Cutarea va fi ngreunat dac A are un numr mare de elemente i dac
elementele ai au de asemenea valori mari.
O alt rezolvare se poate face n felul urmtor parcurgnd paii:
se ordoneaz cresctor elementele vectorului A;
se alege T i se testeaz dac ai (i = n...1) se potrivete;
dac se potrivete, atunci i se va asigna n vectorul V valoarea vi = 1, iar
dac nu se asigneaz, valoarea vi = 0;
se nlocuiete an cu an-1;
se continu operaia pn ce toate elementele au fost testate.
53

Exemplu:
A = (17, 38, 73, 4, 11, 1), se ordoneaz i rezult A = (1, 4, 11, 17, 38, 73).
T = 53
An
=
73
Nu se potrivete
Asignm
0

An-1
=
38
T = T-an-1 = 15
Asignm
1

An-2
=
17
Nu se potrivete
Asignm
0

An-3
=
11
T = T-an-3 = 15
Asignm
1

An-4
=
4
T = T-an-4 = 15
Asignm
1

An-5
=
1
Nu se potrivete
Asignm
0

Vectorul cutat va fi V = (0, 1, 0, 1, 1, 0) (similar cu rezultatul anterior).


Cifrarea Merkle-Hellman folosete i aritmetica modular alturi de teorema lui
Fermat pentru rezolvarea problemei. De asemenea, cifrarea Merkle-Hellman poate fi
fcut la modul simplu (anterior) sau variante mai complexe, cum ar fi cifrarea
Merkle-Hellman cu trap aditiv sau cu trap multiplicativ.
Conform Teoremei lui Fermat:
Pentru orice numr prim p i orice element a<p, atunci:
(1) ap mod p = a sau ap-1 mod p = 1
pentru p prim i a<p, numrul x este inversul lui a dac:
(2) ax mod p = 1.
Combinnd (1) i (2), rezult
(3) ax mod p = 1 = ap-1 mod p
sau
x = a p-2 mod p.
Exemplu:
x = a p-2 mod p = 35-2 mod 5= 33 mod 5= 27 mod 5= 2.
Secvena de transformare pentru algoritmul Merkle-Hellman mbuntit este
urmtoarea:
se alege un .rucsac. simplu (exemplu A = (1, 2, 4, 9));
se alege un multiplicator w i modulul n (unde n>sm);
se nlocuiete orice ntreg ai din algoritmul simplu cu valoarea hi = w*ai mod n.
Exemplu:
A = (1, 2, 4, 9) i w = 15
h1 = 1*15 = 15 mod 17 = 15
h2 = 2*15 = 30 mod 17 = 13
h3 = 4*15 = 60 mod 17 = 9
h4 = 9*15 = 135 mod 17 = 16.
Va rezulta vectorul H = (h1, h2, h3, h4) = (15, 13, 9, 16).

54

Exemplificarea criptrii i decriptrii folosind algoritmul Merkle-Hellman


mbuntit este prezentat n cele ce urmeaz.
Se divide mesajul M n blocuri de m bii (atia bii cte elemente are
vectorul A). Se utilizeaz algoritmul mbuntit pentru crearea ntregilor pozitivi
T pentru fiecare grup de m bii.
Exemplu:
Criptarea Merkle-Hellman (knapsack)
S = ( 1, 2, 4, 9) (cheie privat)
H = (15, 13, 9, 16) (cheie public).
Alegem:
w = 15
w-1 = 8
n = 17
m = 4.
Mesajul de criptat este: P = 0100 1011 1010 0101
[0,
[1,
[1,
[0,

1,
0,
0,
1,

0,
1,
1,
0,

0]
1]
0]
1]

*
*
*
*

[15,
[15,
[15,
[15,

13,
13,
13,
13,

9,
9,
9,
9,

16]
16]
16]
16]

=
=
=
=

13
40
24
29.

Mesajul criptat va fi E(P) = 13, 40, 24, 29.


Decriptarea Merkle-Hellman (knapsack)
S = ( 1, 2, 4, 9) (cheie privat)
H = (15, 13, 9, 16) (cheie public).
Mesaju
l pentru decriptat va fi E(P) = 13, 40, 24, 29.
Se apeleaz H = w * S mod n.
Textul cifrat este de forma: C = H * P = w * S * P mod n.
Trebuie gsit: w-1 * C = (w -1 * w) * S * P = S * P mod n.
13 * 8 = 104 mod 17 = 2 = [0100]
40 * 8 = 320 mod 17 = 14 = [1011]
24 * 8 = 192 mod 17 = 5 = [1010]
29 * 8 = 232 mod 17 = 11 = [0101].

1.2.4.2 Cifrul Graham-Shamir (GS)


Cifrul Graham-Shamir vine cu mbuntiri menite s ascund aa-numitele
proprieti de dominan ale cifrului Merkle-Hellman. Cifrul este mai sigur dect
55

Merkle-Hellman, dar are dezavantajul c nu poate fi folosit dect pentru cifrarea


datelor, nu i n autentificare.

1.2.4.3 Cifrul Shamir (SH)


Se poate spune c acest tip de cifru este complementar cifrului Graham-Shamir.
El realizeaz doar procesul de autentificare neasigurnd i protecia prin criptare.
Este folosit doar n implementarea semnturii digitale.

1.2.5 Sisteme de criptare cu chei publice bazate pe ecuaii n cmp finit


Din aceast categorie fac parte sistemele de criptare Brndstorm cu inele
polinomiale, sistemele Pieprzyk cu inele polinomiale i sistemele cu registre de
deplasare.
Criptarea Brndstorm este similar cu criptarea RSA, numai c aici, n loc de
numerele foarte mari folosite, avem polinoame n cmp finit (cu coeficieni binari n
cmp finit).
Criptarea Pieprzyk folosete o schem Merkle-Hellman modificat utiliznd inele
polinomiale, plecnd de la premisa c operaiile definite n aceste inele sunt mai
accesibile dect cele din inelul ntregilor.
Sistemele cu registre de deplasare au fost propuse de Niederreiter i
utilizeaz un registru de deplasare cu reacie (Feedback Shift Register . FSB) care
genereaz o secven ntr-un cmp finit, ceea ce l face uor de implementat.

1.3 Semntura digital


Semntura digital reprezint un atribut al unui utilizator sau proces, fiind
folosit pentru recunoaterea acestuia. Fie B un receptor de mesaj semnat de A.
Semntura lui A trebuie s satisfac urmtoarele proprieti:
B s fie capabil s valideze semntura lui A;
s fie imposibil pentru oricine, inclusiv B, s falsifice semntura lui A;
n cazul n care A nu recunoate semnarea unui mesaj M, trebuie s existe un
judector care s poat rezolva disputa dintre A i B.
Semntura digital rezolv att problema autentificrii emitorului, ct i pe
cea a autentificrii datelor. Sistemele de autentificare cu chei publice permit o
implementare simpl a semnturilor digitale. Deoarece este deinut doar de A,
transformarea DA poate servi ca semntur digital pentru A. Receptorul B al
mesajului M semnat (transformat prin DA) este sigur att de autenticitatea
emitorului, ct i de aceea a datelor. Deoarece transformarea invers este public,
receptorul B va putea valida semntura. Procesele se desfoar astfel:
A semneaz pe M calculnd S = DA(M);
B valideaz semntura lui A, verificnd dac EA(S) = M;
Un .judector. rezolv eventuala disput dintre A i B controlnd dac EA(S)
56

conduce la M, n aceeai manier ca i B.


Pentru crearea i utilizarea unei semnturi digitale se parcurg urmtorii pai:
1. Crearea perechii de cheie public i cheie privat pentru expeditorul A.
2. Trimiterea cheii publice ctre receptorul B.
3. Expeditorul A creeaz un mesaj pentru destinatarul B i folosete documentul ca
dat de intrare pentru funcia hash.
4. Expeditorul cripteaz rezultatul prelucrrii documentului cu funcia hash cu cheia
proprie. Rezultatul este semntura digital. Funcionarea schematic este
exemplificat n
figura urmtoare (figura 17).

57

Figura 17. Crearea unei semnturi digitale


Mesajul este trimis la destinaie nsoit de semntura digital. Semntura
digital trebuie
s ateste c acesta este trimis de cel care pretinde.
5. Destinatarul va separa mesajul original de semntura digital.
6. Semntura digital este decriptat cu ajutorul cheii publice a expeditorului.
7. Documentului original i se aplic aceiai funcie hash ca la expediie.
8. Se compar dac cele dou rezultate, de la decriptarea semnturii digitale cu
cheia public i de la aplicarea funciei hash mesajului, sunt identice. Dac se
confirm atunci mesajul este trimis de cel care pretinde. Utilizarea semnturii
digitale este exemplificata n figura urmtoare (figura 18).

58

Figura 18. Utilizarea semnturii digitale.


Semntura digital nu confer confidenialitate coninutului mesajului. Ea doar
autentific c expeditorul este cel care pretinde c este. Semntura digital este
diferit de semntura electronic. Semntura digital reprezint o prelucrare a unui
mesaj, n timp ce semntura electronic este o reprezentare electronic a semnturii
clasice.

1.4 Modalitii de
informatice

utilizare

criptografiei

sistemele

Toate noile faciliti implementate de ctre Microsoft n sistemele de operare Windows 2000/2003 se
bazeaz pe metode criptografice pentru a asigura de la criptarea fiierelor i pn la securizarea
informaiilor transmise. Sistemele de operare Windows NT foloseau criptografia doar pentru criptarea
parolelor. Versiunile ulterioare, ncepnd cu Windows NT4, au adugat noi faciliti criptografice la
sistemul de operare. Active Directory din Windows 2000/2003 reprezint ultimele implementri menite s
asigure o securitate sporit impus de aplicarea politicilor de securitate la nivel de firm.
Pe lng acestea mai exist i programe sau dispozitive hardware care implementeaz criptarea
n sistemele de calcul.
n cadrul sistemelor informatice economice criptografia se face simit la urmtoarele niveluri:
59

hardware;
aplicaie;
transmisie de date;
fiiere i foldere.

Criptarea hardware este foarte costisitoare, din care cauz este cu precdere folosit de marile firme.
Criptarea i decriptarea datelor de pe suporturile de memorie trebuie s se fac n timp real. Din aceast
cauz, componentele care fac ca preul acestor dispozitive s fie ridicat sunt create cu ajutorul noilor
tehnologii de fabricaie. Aceste dispozitive speciale, de regul ataate suporturilor de memorie, fac
criptarea la nivel de sector de pe disc.
Dispozitivele de criptare din aceast categorie folosesc implementri hardware de algoritmi compleci de
criptare, cu chei de criptare care depesc 128 de bii.
n ultimul timp se observ un transfer de tehnologie de criptare hardware i ctre piaa medie. Ca
exemplu, firma taiwanez Abit (www.abit.com.tw) livreaz pe pia, alturi de placa de baz Abit IC7MAX3, i un dispozitiv hardware de criptare a datelor de pe discul dur. Acesta se interpune pe panglica
IDE (Intelligent Drive Electronics sau Integrated Drive Electronics. Standard de conectare a suporturilor
de memorie magnetic) ntre discul dur i placa de baz. Codarea i decodificarea datelor la scriere i la
citire este fcut de ctre a treia generaie de cipuri de tipul X-Wall LX-xxx (numrul de bii
folosii la criptare; valorile sunt 40, 64, 128 i 192 de bii) ASIC (Application Specific
Integrated Circuit) produs de eNova Technology (www.enovatech.net). Aceste cipuri cripteaz i
decripteaz n timp real ntreaga informaie de pe discul dur, incluznd sectorul de boot, fiierele
temporare, fiierele swap i fiierele sistem, utiliznd algoritmi de criptare DES (Dat Encription
Standard) i TDES (Triple DES) certificai de ctre NIST (National Institute of Standard and
Technology).
Criptarea poate fi extins i asupra altor suporturi de memorie, firma eNova Technology producnd i
dispozitive similare pentru unitile de disc flexibil.
Schema de funcionare a unui astfel de dispozitiv este urmtoarea (figura 19):

Figura 19. Schema de funcionare a dispozitivului X-Wall LX-xxx.

60

Cheia de securitate, de tipul unei memorii stick, este folosit doar la pornirea calculatorului,
putnd apoi fi scoas pn la o nou pornire, cnd se cere introducerea acesteia ntr-un local special de
tip USB (Universal Serial Bus). Aceast cheie conine codul DES/TDES folosit la criptare.
n funcie de lungimea cheii de criptare, i evident de arhitectura intern i viteza de lucru a
chipului, se pot distinge cinci tipuri de modele constructive ale acestuia (tabelul 5).

Tabelul 5. Tipuri de modele constructive de chip X-Wall LX.

Avantajele folosirii acestor dispozitive sunt:


sunt compatibile cu toate sistemele de operare;
nu necesit instalare de programe suplimentare;
nu ncrca microprocesorul sau memoria intern;
compatibil cu toate discurile IDE care au capaciti pn la 180GB;
permite rate de transfer real de 1,6 Gb/sec.
se poate folosi i pe matrice RAID (Redundant Array of Independent (or Inexpensive) Disks, categorie de
interfee i drivere de disc ce permite conectarea a dou sau mai multe discuri pentru reducerea erorilor de
stocare i sporirea performanelor) 0,1 sau 0 + 1.
Dezavantajele folosirii unui astfel de dispozitiv sunt:
la instalare se cere efectuarea operaiilor de FDISK i FORMAT asupra discului dur, datele
existente trebuind s fie salvate (backup);
se poate cripta doar un singur disc dur;
sistemul dispune de backdoors (n caz c se pierde cheia de criptare).
Interfeele de criptare care folosesc algoritmi TDES folosesc chei de criptare complexe,
performanele fiind mult mai ridicate fa de modelele comerciale.

Criptarea la nivel de aplicaie este folosit n pachetele de programe produse i livrate de marile
firme productoare de software din domeniu. Criptarea datelor poate fi fcut implicit de ctre aplicaia
respectiv sau se poate activa aceast facilitate de ctre utilizator.
Un exemplu este oferit de aplicaia Ciel Contab, care permite criptarea fiierelor de date specifice
programului. Activarea opiunii de criptare se face de ctre superutilizator (Superutilizatorul n aceast
accepiune este persoana care are drept de administrare i configurare a
programului) din meniul de configurare al programului (Configurare Opiuni de utilizare
Diverse
Criptare fiiere) pe societatea (firma) respectiv (figura 20). Fiierele de date criptate sunt
XECR1.DBF i XECR2.DBF. Acestea sunt de fapt fiierele care conin datele senzitive ale firmei.
61

Criptarea rezist doar la aciunea cu SGBD-uri mai vechi asupra fiierelor. Pentru SGBD-urile mai noi
criptarea este inutil.

Figura 20. Configurare program Ciel Contab (DOS) pentru opiunea de criptare fiiere
Criptarea la nivelul transmisiei de date poate fi fcut prin criptarea legturii sau prin criptarea
datelor. Criptarea legturii este asigurat implicit de protocoalele de comunicare n reea sau de cele din
Internet.
Secure Socket Layer (SSL) reprezint un protocol Web securizat dezvoltat de firma Netscape
Communications care asigur criptarea pentru comunicrile realizate ntre oricare dou calculatoare
din Internet prin intermediul protocolului universal folosit . TCP/IP. SSL se bazeaz pe criptarea cu cheie
public (PKI) i funcioneaz n dou etape: ntr-o prim etap se stabilete o cheie special de sesiune
(transmis ntr-o form criptat folosind cheia public); aceast cheie va fi utilizat n cea de a doua
faz pentru o criptare rapid a datelor.
SSL asigur:
autentificarea serverului pe baza certificatelor digitale (care descurajeaz impostorii);
confidenialitatea transmisiilor (prin criptare);
integritatea datelor transmise (prin coduri de verificare).
Un alt protocol de transmitere securizat a datelor este SHTTP - Secured HyperText Transfer
Protocol -, care constituie o variant sigur a protocolului nativ de transfer al paginilor web - HTTP.
62

SHTTP a fost dezvoltat de asociaia CommerceNet i asigur criptarea documentelor web transmise,
utilizarea semnturilor digitale i a unui cod de autentificare pentru integritatea mesajelor.
n mod evident, transferul protejat al datelor n procesul de navigare pe web este de mare interes
n comerul electronic i permite realizarea de tranzacii financiare confideniale i operaii comerciale
pe cale electronic.
Implementri similare au fost dezvoltate i pentru sistemele de pot electronic: S/MIME sau
PGP/MIME .
Majoritatea aplicaiilor de pot electronic folosesc criptarea pentru asigurarea
confidenialitii.
Un exemplu elocvent este Outlook-Outlook Express, care folosete att criptarea, ct i semntura
digital ca modaliti de securizare i autentificare a informaiei (figura 21).

Figura 20. Opiunile de semntur digital i criptare la Outlook Express.


Pentru a folosi ns aceste faciliti este nevoie de existena unei identificri digitale (Digital ID).
Aceasta poate fi obinut de la una din firmele specializate, cum ar fi: VeriSign, GlobalSign, BT sau
ThawteCertification
PGP - Pretty Good Privacy este creat de Phil Zimmerman (a fost publicat n 1995) ca un pachet
complet de securitate pentru criptare fiiere i pot electronic, ce ofer mecanisme de confidenialitate,
autentificare, semnturi digitale i compresie, ntr-o form uor de utilizat.
PGP folosete ca algoritm de criptare RSA i este distribuit gratuit prin Internet, sisteme de
informare n reele i reele comerciale, fiind utilizabil pe platformele MS-DOS/Windows, UNIX i
Macintosh. Versiunile comerciale ale programului asigur pe lng criptare fiiere i securizare pot
electronic i criptarea discurilor. Versiunea gratuit a programului poate fi descrcat de la adresa:
http://www.pgp.com/products/freeware.html.
n mod intenionat, PGP se bazeaz pe algoritmi de criptare existeni. Sistemul folosete amprente
locale de timp (preia din sistem anumite caracteristici hardware i software la un anumit moment pe care
le folosete ca date de intrare pentru crearea cheilor), iar n procesul de criptare se aplic i algoritmul de
compresie al cunoscutului program ZIP (creat de Ziv i Lempel, 1977). Pentru
asigurarea
unei
securiti adecvate, utilizatorul poate alege lungimea cheii de criptare obinuit (384bii = 48B),
comercial (512 bii = 64B), militar (1024 bii = 128B). n abordarea iniial, o cheie de 2048 bii =
256B era considerat inexpugnabil, dar azi se discut i despre chei de 4096 de bii i este foarte
probabil ca resursele de calcul ale viitorului s poat descifra i cifruri cu asemenea chei (figura 22).

63

Figura 22. Opiuni n criptarea PGP

PEM - Privacy Enhanced Mail (pot cu confidenialitate sporit) este un standard oficial Internet
care asigur secretul i autentificarea sistemelor de mail bazate pe standardul uzual. Exist cteva
diferene ntre modurile de abordare i tehnologiile pachetului PGP, respectiv ale lui PEM.
n procesul de codificare se folosete i algoritmul DES, ceea ce este considerat suspect de
specialitii n codificare, innd cont de lungimea mic a cheii DES (56 de bii).
Cheile folosite de PEM sunt certificate de o autoritate de certificare, fiind valabile pentru o
anumit perioad, un utilizator i o cheie public. Practic, fiecare utilizator va folosi o asemenea cheie
privat, specific i confidenial, acordat i validat dup reguli riguroase de certificare; aceast cheie
va fi folosit n paralel cu cheia public. Politica autoritilor de certificare este destul de complex,
existnd o organizaie ierarhic (cu trei niveluri). Astfel, administrarea cheilor este structurat dup
principii mai complexe dect n PGP. Evident, exist i un mecanism de revocare a cheilor (de exemplu,
n cazul compromiterii lor), ceea ce face ca trimiterea unui mesaj s fie n mod necesar precedat de
verificarea automat a celei mai recente liste de revocri.
n PEM, autentificarea este obligatorie, pe cnd n PGP este opional. Paradoxal este ns faptul
c PGP, care nu este un standard oficial, are acumulrile Internet-ului, corespunznd principiilor nescrise
care au dus la expansiunea acestuia, pe cnd standardul oficial PEM . mai puin. Programul lui
Zimmerman s-a dovedit a fi o soluie foarte performant i, n plus, a fost distribuit gratuit, pe cnd PEM
s-a dezvoltat n etape, folosind mai multe standarde Internet pentru diverse componente i o structur
organizaional rigid, pe cele trei niveluri, cu tipuri diferite de autoriti de certificare i completat cu
reglementri oficiale de certificare. Implementrile PEM au aprut mai trziu dect PGP i s-au dovedit
ceva mai puin inspirate (din punct de vedere calitativ, cantitativ i al disponibilitii pe diverse
platforme). De aceea, PGP a devenit un pachet tipic pentru Internet, mult mai larg folosit dect PEM.
Norton Your Eyes Only este un program performant, care permite criptarea fiierelor i controlul
accesului la fiierele dintr-un calculator individual sau cuplat n reea. Folosete un sistem de criptare cu
chei de pn la 512 bii (versiunea pentru Europa) i 2048 (versiunea pentru Statele Unite). Permite
criptarea cu chei private sau chei publice folosind algoritmi de tip DES sau RC4. Programul mai ofer i
blocarea ecranului atunci cnd utilizatorul nu folosete calculatorul, prin opiunea ScreenLock, precum i
posibilitatea de a se face ncrcarea sistemului de operare de pe dischet sau de pe alt disc, prin opiunea
BootLock.
Boca - Data Secure este un program folosit pentru controlul accesului i criptare. Metodele de
criptare folosite sunt: DES, NEP1 (metod de criptare foarte rapid), NEP4 i BlowFish.
64

MailSafe al firmei RSA Data Security faciliteaz transmisia n siguran a datelor ntre dou
modemuri incluznd programe i echipamente integrate.
Deoarece la date trebuie s aib acces mai mult de un utilizator, MailSafe folosete un sistem de
chei publice i private. Utilizatorii care vor trimite date folosesc chei publice pentru a verifica semntura
digital a destinatarului i pentru cifrarea traficul pentru transmisie.
Destinatarul folosete o cheie privat pentru a semna fiierele emise i pentru a descifra mesajele
primite. MailSafe folosete un sistem de meniuri pentru a selecta fiierele de transmis. Expeditorul
creeaz chei publice i private folosind utilitarul KeyGen. Acest proces instaleaz i parolele utilizatorilor
care pot avea pn la 80 de caractere lungime. MailSafe nu poate folosi parola pentru a genera o cheie. n
schimb, utilitarul KeyGen creeaz chei noi, n orice moment n care este apelat. MailSafe creeaz
semnturile digitale.
Ca particularitate, MailSafe permite i folosirea comun a cheilor publice. Dac doi utilizatori
doresc s cifreze fiiere pentru uz comun, ei pot ndeplini aceasta certificnd cheile publice unul altuia. n
consecin, cu toate c nici unul nu tie parola celuilalt, mesajul poate trece nainte sau napoi ntre cei doi
utilizatori. MailSafe poate fi utilizat pe maini folosite n comun de ctre mai muli utilizatori, fr
compromiterea datelor utilizatorilor individuali.
Criptarea fiierelor de date (documente-text, baze de date i spreadsheet-uri) este cea mai simpl
modalitate de ascundere a coninutului real al fiierelor. Nu trebuie fcut ns confuzie ntre criptarea
propriu-zis a unui fiier i ascunderea coninutului acestuia. Dac coninutul unui fiier nu poate fi
citit atunci cnd se ncearc deschiderea acestuia nu nseamn c acest fiier conine date criptate.
Aceast confuzie este deseori ntlnit la aplicaiile de birou MS Word i MS Excel.
S lum ca exemplu urmtorul text scris n MS Word:
Acesta este un mesaj criptat.
Fiierul cu acest coninut a fost salvat cu opiunile de restricionare prin parol la deschidere i
modificare. Folosind un utilitar pentru vizualizarea coninutului fiierului vom putea s vedem textul
ascuns (figura 23).

65

Figura 23. Evidenierea coninutului fiierului MS Word.


Unul dintre cele mai rapide i ieftine exemple de cifrare a fiierelor este File Encrypt al firmei
Wisdom Software. Acesta folosete Data Encryption Standard (DES) pentru a cifra fiiere, simplu i
rapid. File Encrypt este un criptosistem convenional cu o singur cheie, scris n limbaj de asamblare.
Secret-Disk-II al firmei Lattice, pe lng cifrarea datelor selectate, creeaz i un disc invizibil
unic unde memoreaz fiierele criptate. Putei cripta fiiere folosind ori algoritmul DES ori algoritmul
FAST ale firmei Lattice. Avantajul lui FAST este, evident, viteza sa. Discurile logice invizibile ale lui
Secret-Disk-II conin doar datele cifrate n fiierele ascunse. O singur parol este folosit pentru blocarea
i deblocarea discurilor secrete. Chiar dac un intrus descoper existena i zona discurilor secrete cu un
utilitar de lucru cu discul, fiierele sunt criptate. Dezactivarea comenzii DELETE face imposibil
tergerea accidental a fiierelor.
Exist i programe de criptare care garanteaz o securitate prin criptare care rezist la un atac de
decriptare un numr de 1032ani. Este vorba de programul Cypherix SECUREIT 2000 al firmei Secure
Soft (India) Pvt. Ltd (www.cypherix.com).
Programul folosete pentru criptare 448 de bii. Interfaa de lucru cu utilizatorul este foarte
prietenoas (figura 24). Fiierele criptate o vor avea adugat la extensia iniial i pe aceea de .SIT
(Secure IT).

Figura 24. Programul de criptare Cypherix (interfaa).


Unitile de band magnetic folosite pentru operaiile de salvri periodice de siguran ofer
posibilitatea utilizatorului de a cripta datele care se vor salva.
O problem care a aprut n cadrul firmei a fost aceea c angajaii i criptau fiierele de lucru, iar
atunci cnd era nevoie de datele din acestea, iar angajatul nu era la serviciu din diferite motive, era
imposibil s se acceseze datele. Situaia a fost rezolvat prin comunicarea acestora ctre conducere, care
le folosea atunci cnd era nevoie (lucru destul de rar).

66

Capitolul II. Modaliti de utilizare a programelor antivirus


n cadrul firmei
2.1. Detectarea viruilor
Ce mai simpl i mai la ndemn modalitate de a ne proteja mpotriva programelor maliioase
este aceea de a folosi un program antivirus.
Un program antivirus este un utilitar care detecteaz i anihileaz aciunea programelor maliioase.
Programul antivirus va sesiza existena unui cod maliios (virus) n calculator folosindu-se de amprenta
(semntura) lsat de fiecare program maliios (virus). O dat sesizat existena unui virus, programul
antivirus va lansa n execuie o subrutin, vaccinul, care va anihila aciunea virusului.
Un program antivirus nu va putea detecta dect viruii a cror semntur sunt n baza lui de
semnturi. Trebuie inut cont de faptul c nti apare virusul i apoi antivirusul.
Productorii de programe antivirus livreaz periodic, la interval de cteva zile, noile semnturi de
virui. Actualizarea cu noile semnturi este uor de fcut dac exist o conexiune internet. Sunt i
productori care livreaz actualizrile folosind suporturi de memorie de tip disc flexibil sau compact
disc. Este cazul firmei Kaspersky.
Teama de aciunea viruilor este aa de mare nct, uneori, anumite subrutine de testare a
autenticitii unui program sunt luate drept virui. Este cazul procedurii de verificare de la programul
Ciel Contab. Ulterior, acest neajuns a fost remediat.
Aciunea programelor antivirus poate fi configurat de ctre utilizator de la stadiul de maxim
protecie (real time protection) pn la stadiul de inactiv (disable). Evident c ultima stare este cea mai
nefericit, aceasta este similar cu inexistena programului antivirus.
Existenta activitii sau inactivitii programului antivirus poate fi evideniat prin icon-urile care
apar n bara de .tray. la sistemele de operare de tip Windows.

2.2. Alegerea i configurarea programului antivirus pentru firme


Alegerea unui program antivirus este uneori dificil datorit existenei mai multor programe pe
pia, dar i datorit cerinelor care trebuie ndeplinite de acestea.
Pentru alegerea unui program antivirus trebuie s inem cont de urmtoarele criterii de alegere:
67

platforma de lucru;
numrul de virui care pot fi detectai;
timpul de rspuns la un virus;
existena opiunilor de scanare n reea;
existena opiunilor de scanare n e-mail;
protecia mpotriva scripturilor;
scanarea n fiiere comprimate;
existena suportului tehnic;
perioada de timp pentru care se livreaz actualizri gratuite;
renumele firmei;
localizarea firmei productoare sau a distribuitorului;
preul.
Este cunoscut faptul c programele antivirus sunt fcute s funcioneze pe mai multe sisteme de
operare. Unele firme productoare livreaz programe antivirus care funcioneaz doar pe anume sisteme
de operare, dar sunt i programe antivirus care funcioneaz pe mai multe platforme. Exist mai multe
reviste de specialitate care efectueaz periodic un audit al acestor programe antivirus. Una dintre cele
mai cunoscute este Virus Bulletin (www.virusbtn.com).
Rezultatele testelor efectuate de ctre
specialitii acestei reviste pe diferite platforme sunt exemplificate n tabelul urmtor (tabelul 6):
Mai multe date despre compatibilitate i modul de efectuare a testelor se pot gsi la adresa:
http://www.virusbtn.com/vb100/about/100procedure.xml.
Numrul de virui care pot fi detectai de un program antivirus are cea mai mare greutate n
alegere. Cu ct acest numr este mai mare, cu att posibilitile de detectare i anihilare cresc.
Programele antivirus pot detecta peste 67.000 de virui i variante ale acestora (conform cu
Norton Antivirus).
Timpul de rspuns necesar pentru crearea unui antidot mpotriva unui virus este greu de estimat.
Acesta poate fi aflat doar n cazul unor virui care au avut efecte majore. Timpul de rspuns depinde n
foarte mare msur de experiena firmei.
Existena opiunilor de scanare n reea este foarte important att din punct de vedere al
siguranei i actualizrii, ct i al costului. Vom trata acest aspect puin mai trziu. Dac calculatorul
sau reeaua au acces la Internet, posibilitatea de a scana e-mail-uri este foarte important, bine
cunoscut fiind rspndirea viruilor cu ajutorul Internetului. Similar i opiunea de protecie mpotriva
viruilor de script.

68

Tabelul 6. Teste comparative de funcionare programe antivirus pe diferite platforme

69

Pentru ca un fiier de dimensiune mare s ajung ct mai repede la destinaie se recurge la


comprimarea acestuia. Dimensiunea unui fiier comprimat este sensibil mai mic
70

fa de a celui iniial (depinde de tipul de fiier. n anumite cazuri, poate s fie chiar mai mare). Dac
fiierul surs conine un virus, atunci i fiierul rezultat va conine i el virusul. Din aceast cauz,
existena acestei opiuni este important. Existena suportului tehnic, telefon sau e-mail, este necesar
atunci cnd se ntmpin probleme la instalare i configurare. Este important atunci cnd instalarea
este fcut de o persoan fr cunotine n domeniu.
De regul, perioada de timp pentru care se livreaz actualizri gratuite de ctre firma
productoare este de un an. Aceast perioad poate fi prelungit prin semnarea unui contract de
abonament.
Renumele firmei trebuie luat serios n considerare atunci cnd se achiziioneaz un program
antivirus. Renumele firmei ine att de longevitatea acesteia pe pia, ct i de clasamentele ntocmite de
firmele de specialitate.
Localizarea firmei productoare sau a distribuitorului trebuie luat n considerare dac se
dorete o colaborare strns atunci cnd pot s apar incidente legate de aciunea viruilor i cnd
singura posibilitate de remediere este contactul direct ntre cele dou pri. De asemenea, localizarea
firmei are un rol important n anumite situaii particulare. Ca exemplu poate fi dat acela n care un virus
este produs local, de angajat sau de ctre o alt persoan la nivel de jude sau de ar. O firm local va
putea s descopere i s anihileze mai rapid virusul dect o firm aflat la mii de kilometri distan.
Preul este foarte important atunci cnd numrul de calculatoare este mare. Din tabelul urmtor
se observ c preurile sunt comparabil egale (tabelul 7).
Tabelul 7. Principalele programe antivirus (comparaii).

Sursa: www.antivirusebook.com/antiviruscomparison.htm
S analizm acum cheltuielile necesare achiziionrii de programe antivirus. Firma pe care am fcut
testele este o firm de mrime medie care are o reea cu 22 de calculatoare cuplate n reea (20 staii de
lucru i 2 servere - Windows NT i Linux).
Achiziionarea de programe antivirus pentru toate calculatoarele ar duce la un cost cuprins ntre
840 USD i 1.050 USD (21 buc. X 40 USD i 21 buc. X 50 USD, pe unul dintre servere ruleaz Linux server de Internet).
Suma este acceptabil pentru aceast firm. Achiziionarea va fi fcut i programele vor fi
instalate pe cele 21 de calculatoare. n anumite situaii, la achiziionarea unui nou sistem de calcul, se
livreaz gratuit i programele antivirus pentru nevoile locale. n ultimul timp, tot mai muli productori
de plci de baz (sau de calculatoare) livreaz i programe antivirus o dat cu produsul. Este cazul
programelor antivirus Norton Antivirus (livrat separat sau integrat n Norton Internet Security) i PCcillin.
n situaia n care se folosesc programe antivirus care funcioneaz separat pe fiecare calculator,
atunci pot s apar disfuncionaliti n funcionarea ntregului mecanism de protecie antivirus, i
anume:
actualizarea i scanarea periodic de virui este lsat la latitudinea angajatului;
este greu de urmrit aciunea fiecrui program antivirus pe staiile de lucru.
71

Este necesar s existe un program antivirus care s ofere un control centralizat, repararea
fiierelor infectate, capaciti de carantin pentru acestea i posibilitatea de actualizare din Internet.
n aceast situaie, achiziionnd un program antivirus care s ofere aceste faciliti, Norton
Antivirus Enterprise/Corporate Edition, preul total este de 1.050 USD (care include 21 de licene i
suportul de program pe compact disc). Suma este comparabil cu cea anterioar, numai c n acest caz
facilitile sunt multiple:
protecia i monitorizarea de la o singur consol;
scaneaz mesajele de e-mail att la recepionare, ct i la transmisie;
recunoate aplicaiile nesolicitate ca spyware i adware;
identific sursa n cazul anumitor atacuri;
alerteaz n cazul n care anumite calculatoare nu sunt conectate la reea;
scaneaz n memorie i oprete procesele suspecte nainte ca acestea s cauzeze daune;
permite o detectare centralizat a nodurilor neprotejate din reea.
Achiziionarea de ctre firm a programului antivirus Norton Antivirus Enterprise/Corporate
Edition a permis un mai bun control al viruilor. Anterior acestei achiziii, cnd se lucra cu diferite
programe antivirus pe diverse calculatoare sau cnd actualizrile nu erau fcute la zi, problemele
generate de virui erau multiple. La o testare antivirus iniial fcut cu Norton Antivirus am descoperit
10 calculatoare virusate dintr-un total de 22. Numrul de fiiere virusate era de ordinul sutelor la fiecare
calculator. Din aceast cauz a trebuit s efectuez operaia n dou etape . pe grupuri de calculatoare.
Dup terminarea complet a operaiei am constatat c situaia era identic cu cea iniial. Aceast
situaie s-a datorat n mare parte strategiei de lucru folosite la devirusare. Existena resurselor partajate
n reea fcea ca dup devirusare calculatoarele curate s se reinfecteze la accesarea acestor resurse, n
mare parte cu acordul utilizatorului. O alt cauz o reprezenta aciunea utilizatorului neinstruit. Pentru a
nu mai avea astfel de probleme am procedat la o scanare n afara orelor de program, la anularea
resurselor partajate i la anularea accesului la Internet. O dat cu instalarea unor sisteme de operare
Windows XP care nu mai ddeau utilizatorului drepturi de partajare foldere sau fiiere, a folosirii noului
pachet de program antivirus corect configurat i a anulrii conexiunii la Internet problemele datorate
viruilor s-au diminuat.
Chiar i viruii de pe dischetele mai vechi nu mai constituiau o problem deoarece programul a
fost configurat pe aciunea automat de devirusare (autorepair).

2.3. Reguli i restricii


Pentru a se evita o infecie cu virui este necesar s fie impuse o serie de reguli i restricii n
utilizarea calculatorului.
Ca prim msur se impune informarea i instruirea personalului asupra msurilor care trebuie
luate.
A doua msur care se impune este configurarea corect, hardware i software, a calculatorului
i a reelei.
Un calculator corect configurat este vulnerabil dac factorul uman nu este bine instruit i
contient de consecinele unei infecii cu virui.
De asemenea, personalul bine instruit nu poate s acopere golurile de securitate hardware i
software lsate.
Principalele reguli i restricii care consider c se impun pentru a se evita o infectare cu virui sunt:
1) Instalarea i rularea unui program antivirus foarte bun. Ce nseamn aceasta? Un program antivirus
bun sau foarte bun este acela care satisface cerinele de securitate impuse. Dac programul antivirus se
instaleaz local i dac pe acel calculator nu se ruleaz programe de pot electronic, atunci nu trebuie
luat n considerare facilitatea de scanare e-mail. Dac n schimb calculatorul respectiv este conectat la
Internet i se face browsing, atunci cerinele sunt foarte mari.
Nu este suficient ca un program
72

antivirus s detecteze foarte muli virui. Este important s detecteze i s anihileze virusul care ncearc
s infecteze acel sistem.
2) Actualizarea periodic a programului antivirus cu noile faciliti, dar mai ales cu noile semnturi de
virui. Actualizarea poate fi fcut manual, periodic de ctre utilizator sau poate fi configurat pe
opiunea automat
3) Actualizarea programelor de e-mail i a web browserelor cu noile patch-ur (patch - petic.
mbuntire ulterioar adus unui program care prezin goluri de securitate n funcionare) sau .fix.-uri
(Fix - reparaie )
Este bine cunoscut exploatarea golurilor de securitate din aceste programe de ctre viruii care
se folosesc de Internet pentru a se propaga. Actualizarea acestor programe micoreaz posibilitatea de
infectare.
4) Configurarea optim a programelor de e-mail i a web browserelor. Ca nivel de securitate, acestea
sunt configurate implicit pe opiunea Medium (mediu), dar pot fi configurate pe niveluri mult mai
ridicate. De asemenea, se poate configura i restricionarea anumitor site-uri.
Aceste opiuni pot fi configurate, la sistemele de operare Windows, din Control Panel
Internet Option Security, Privacy i Advanced (figura 25).

Figura 25. Configurarea opiunilor de securitate n Windows.


5) Nu se fac descrcri (download) de programe din surse dubioase. Actualizrile de programe trebuie
s se fac numai de pe site-ul productorului i nu din alte surse.
6) Nu se deschid fiierele ataate la e-mail dac acestea nu provin de la o surs de ncredere. Regula de
baz este: .nu deschide un attachement care vine de la o persoan pe care nu o cunoti..
Programele de pot electronic au posibilitatea de a bloca accesul la e-mail-uri care par
dubioase.
n programul Outlook Express 6 acest lucru poate fi fcut din opiunile:
Tools Option Security, unde trebuie bifat opiunea Do not allow attachements to be saved or
opened that could potentially be a virus (Blocheaz deschiderea sau salvarea fiierelor ataate care
pot fi/conine virui) (figura 26).
73

Figura 26. Blocarea opiunilor de deschidere automat a fiierelor ataate.


7) Atenie la e-mail-urile i site-urile de tip pcleal. Nu se va da curs ferestrelor aprute n timp ce faci
browsing i care-i propun un ctig n bani sau bunuri dac execui click pe OK / Yes sau care conin
mesaje alarmiste referitoare la securitatea calculatorului tu. Nu se vor retrimite e-mail-uri primite ctre
cunoscui cu urarea c vei avea noroc dac faci asta.
8) Scanarea de virui. Aceast aciune poate fi fcut manual sau poate fi fcut automat de ctre
program prin configurarea acestuia ca la pornire sau la o anumit dat, periodic, s fac acest lucru.
Orice nou suport de memorie accesat (disc flexibil, CD-ROM, pendrive etc.) trebuie s fie scanat.
La majoritatea programelor antivirus opiunea este automat.
9) Dezactivarea lui ActiveX din opiunile browserului de Internet (figura 27).

74

Figura 27. Dezactivarea lui ActiveX din opiunile browserului de Internet.


10) Dezactivarea lui Windows Script Host (WSH) pentru a se prentmpina infectarea cu virui de script
(extensia .VBS)
11) Activarea opiunii de protecie la virui de macro (Macro Virus Protection) n Microsoft Office
(figura 28).

Figura 28. Activarea opiunii de protecie la virui de macro.


75

12) Achiziionarea unui firewall.


13) Salvarea periodic a datelor (backup).
14) Informarea permanent asupra aciunii viruilor. Acest lucru poate fi fcut din publicaiile de
specialitate sau din atenionrile periodice trimise de firmele din domeniu.

76

Capitolul III. Folosirea dispozitivelor firewall


n cadrul firmei
3.1. Principii
Implementarea unui sistem firewall reprezint msura de securitate cea mai avansat care poate fi
implementat. Un firewal este considerat ca fiind prima linie de protejare a informaiilor private.
Termenul de firewall (zid de foc) este folosit pentru prima dat la nceputul anilor 1700 de ctre
muncitorii forestieri pentru a proteja pdurile de propagarea incendiilor. Acetia efectuau o degajare n
masa copacilor i n acest fel focul nu mai putea s se propage. Acelai termen este folosit n industrie, n
construcia de locuine, hale industriale, depozite i este folosit i n industria IT&C.
Un firewall este un sistem folosit pentru implementarea politicii de control a accesului ntr-o
organizaie sau ntre organizaii. Acesta va proteja un calculator sau o reea mpotriva accesului
neautorizat.
Firewall-ul va crea un singur punct de legtur cu o reea care va putea s fie nesigur. n acest fel
se vor concentra toate resursele spre aprarea acelui punct de trecere (gateway).
Un firewall este constituit dintr-un calculator sau din mai multe calculatoare, mpreun cu
programele asociate, care vor asigura politica de control a accesului.
Firewall-ul va permite sau va interzice traficul dintr-o parte n alta a sa. Traficul care poate s
treac sau s nu treac prin firewall poate fi ntre dou sau mai multe reele sau ntre dou sau mai multe
calculatoare.
Firewall-ul va putea s separe traficul dintre diferitele compartimente ale firmei sau s separe
traficul din interiorul firmei de Internet. Un singur dispozitiv firewall poate fi folosit pentru a se crea
partiii logice la nivelul firmei. n aceast situaie se impune ca tot traficul, inclusiv cel de Internet, s
treac printr-un singur server. De regul, acel server este serverul central (figura 29).

77

Figura 29. Modul de aciune al unui dispozitiv firewall


Politica de securitate poate fi implementat cu ajutorul firewall-ului folosind una dintre cele dou
metode fundamentale:
ce nu este n mod expres specificat ca fiind permis este interzis;
ce nu este n mod expres specificat ca fiind interzis este permis.
Prima strategie este cea mai sigur, aceasta asigurnd doar trecerea pachetelor care sunt
specificate. A doua strategie este mai permisiv, dar i mai nesigur.
Proteciile asigurate de un firewall sunt urmtoarele:
protejarea mpotriva serviciilor i protocoalelor nesigure;
protejarea informaiilor despre utilizatori prin ascunderea adreselor de reea;
creeaz fiiere jurnal care vor asigura auditarea reelei;
permite avertizarea n cazul unor tentative de intruziune;
n cazul n care sunt mai multe dispozitive firewall ntr-o reea care are acces la internet, se poate
permite o eviden centralizat a reelei fa de exterior.
Nici o reea de firm ataat la Internet nu va putea s fie n totalitate sigur. ntotdeauna vor
exista goluri care vor fi exploatate de hackeri.
n aceste situaii, un firewall nu poate s fac fa urmtoarelor tipuri de atacuri:
o provenite din interiorul firmei. Un angajat din firm va putea s atace reeaua local cunoscnd
caracteristicile acesteia;
o anumite categorii de virui, cai Troieni, Backdoors;
o dezvluiri de conturi i parole prin metoda .social engineering.;
78

o atacuri folosind conexiunile prin modem. O conexiune modem este bidirecional, lucru care
uureaz mult munca unui hacker.

3.2. Tipuri de dispozitive firewall


Pe pia exist mai multe variante de dispozitive firewall comerciale. n esen acestea se pot
clasifica n dispozitive firewall:
o de nivel reea;
o de aplicaie;
o hibride.
n literatura de specialitate aceste tehnologii mai sunt cunoscute i sub numele de filtrarea
pachetelor (pachet filters), pori de aplicaii (applications gateways) i inspectarea complet a pachetelor
(stateful pachet inspection).
Dispozitivele firewall de nivel reea sau cu filtrarea pachetelor folosesc ca component hardware
router-ele. Regulile referitoare la acces vor fi definite la nivel de router.
n funcie de politica implementat de firewall, unele pachete (numite i datagrame) vor fi admise,
iar altele vor fi respinse n funcie de setul de reguli codificate de software-ul care ruleaz pe firewall
(figura 30)

Figura 30. Dispozitivele firewall de nivel reea.


Fitrarea se va face innd cont de urmtoarele criterii:
adresa IP a sursei;
adresa IP a destinaiei;
numrul portului TCP sau UDP (User Datagram Protocol . protocol de comunicaie similar cu
TCP/IP) al sursei;
numrul portului TCP sau UDP al destinaiei;
identificatorul de protocol care se gsete rezident n header-ul IP.
Un exemplu de regul firewall poate fi urmtorul:

79

Nu toate router-ele pot s filtreze anumite porturi, dei majoritatea fac acest lucru. Uneori aceasta
filtrare este dependent de sistemul de operare care ruleaz pe router.
Dispozitivele firewall de nivel aplicaie folosesc tehnica de substituire sau intermediere a
aplicaiilor sau proxy (application-proxy firewall), denumit uneori i poart de aplicaie (application
gateway). Acest tip de firewall are funcionare diferit fa de tipul bazat pe router i filtrarea de pachete.
Porile de aplicaie sunt bazate pe componente software.
ncercarea de conexiune de la distan a unui utilizator va fi blocat i se vor examina diferitele
cmpuri ale cererii. Dac se ndeplinesc un set de reguli predefinite, poarta creeaz o punte (bridge) ntre
gazd de la distan i cea intern. ntr-o schem care folosete o aplicaie gateway, pachetele IP nu sunt
transferate mai departe n reeaua intern, ci sunt translatate avnd poarta ca interpretor. Aceast
configuraie mai este denumit i configuraie cu intermediar (man-in-the-middle configuration) (figura
21).

Figura 21. Dispozitivele firewall de nivel aplicaie.


Avantajul modelului proxy, cu poarta de aplicaie, este lipsa transferului de pachete IP
(forwarding). Avantajul important este acela c pe conexiunea astfel intermediat se pot folosi mai multe
tipuri de controale. Un alt avantaj este acela c astfel de instrumente ofer opiuni i posibiliti de
nregistrare foarte avansate ale traficului.
Dezavantajul modelului proxy se reflect n viteza reelei. Deoarece fiecare conexiune i tot
traficul de pachete sunt acceptate, negociate, translatate i transmise mai departe, aceast implementare
poate fi mai lent dect filtrarea de pachete bazat pe router.
Un transfer de IP (IP forwarding) poate fi periculos deoarece permite unui cracker experimentat s
aib acces la staiile de lucru din reeaua intern a firmei.
Un alt dezavantaj al acestei scheme este acela c pentru aplicarea tuturor regulilor de filtrare pe un
singur firewall va putea s genereze o ncetinire a traficului i va presupune o munc laborioas pentru
implementare. Din aceast cauz, trebuie creat un proxy (intermediar) pentru fiecare serviciu de reea.
80

Aceasta presupune existena unui proxy pentru FTP, pentru Telnet, pentru HTTP etc. De aceea se prefer
ca uneori s fie mai mult de un firewall care s mpart i s preia o parte din sarcinile primului.
Dispozitivele firewall hibride combin funciile de la dispozitivele firewall de nivel reea cu cele
de la dispozitivele firewall de nivel aplicaie. Acestea funcioneaz ca un firewall care va monitoriza
sesiunea i informaiile despre aceasta, va filtra pachetele, dar nu este un proxy. Informaiile despre
sesiune vor include IP-ul sursei i al destinaiei, informaii despre porturi i un jurnal al autentificrilor.
Firewall-urile hibride asigur o securitate foarte bun.
Sunt mai rapide ca firewall-urile de aplicaie, dar mai lente dect firewall-urile bazate pe filtrarea
pachetelor.
O comparaie ntre modul de funcionare al celor trei modele de firewall-uri folosind modelul de
reea OSI este exemplificat n tabelul urmtor (tabelul 8)
Tabelul 8. Aciunea tipurilor de firewall asupra nivelurilor de reea OSI.

Ca metod de securizare a reelei interne mpotriva atacurilor din exterior majoritatea


dispozitivelor firewall se folosesc translarea adreselor de reea (NAT - Network Address Translation translarea adreselor de reea). Aceasta presupune ascunderea identitii (IP locale) a calculatoarelor locale
pentru reeaua public.
Sistemele de operare Windows 2000/2003 Server, XP, Linux i majoritatea sistemelor de operare
UNIX moderne dispun de aceasta facilitate. Windows NT nu beneficiaz de aceast facilitate.
NAT ascunde adresele IP locale prin convertirea lor la adresele firewall. n Internet tot traficul
care provine de la calculatoarele reelei locale va fi vzut c provine de la un singur calculator/server al
crui IP va fi singurul cunoscut. Un atacator nu va putea vedea dect IP-ul dispozitivului NAT i nu pe
cele interne.
Translarea adreselor permite de asemenea folosirea oricrui IP n reeaua local, chiar dac acestea
sunt folosite oriunde altundeva n Internet. Singurele probleme pot s apar atunci cnd se acceseaz din
Internet o locaie care are acelai IP cu cel al calculatorului local. Din aceast cauz, este de preferat s se
foloseasc pentru calculatoarele din reeaua local IP-urile rezervate 192.168.0.0 sau 10.0.0.0. Aceste
clase nu se regsesc n adresele de host-uri din Internet.
NAT permite i multiplexarea unei singure adrese IP publice ctre toat reeaua local. Acest lucru
este benefic pentru firmele mici deoarece fr aceast multiplexare posibilitile de adresare sunt relativ
reduse.
Translarea adreselor are i dezavantaje. Unul dintre ele este acela n care un administrator al reelei
interne vrea s se conecteze din afar la un calculator local n vederea depanrii. Sau situaia n care se
dorete aflarea IP-ului unui calculator local de la care s-a trimis un mesaj senzitiv ctre exterior. NAT ine
la distan atacatorii, dar la fel de bine limiteaz accesul din afar al utilizatorilor legitimi (administratori)
la resursele reelei interne n vederea depanrii. Dispozitivele NAT moderne au implementat opiunea de
port-forwarding care permite accesul utilizatorilor legitimi la reeaua intern.
81

Modul de funcionare al unui proces NAT este exemplificat n figura 32 .

Figura 32. Funcionarea unui proces NAT.

82

3.3. Alegerea, instalarea i configurarea firewall


Prima decizie n achiziionarea unui dispozitiv firewall este dac alegem unul hardware, software sau
o combinaie a celor dou. O dat ales dispozitivul firewall, acesta va trebui s fac invizibil reeaua
firmei pentru un neautorizat i s o protejeze mpotriva atacurilor.
Pentru alegerea unui firewall trebuie s se in cont de urmtoarele criterii:
gradul de securitate;
sistemul de operare;
administrarea.
Gradul de securitate asigurat de un dispozitiv firewall este uneori greu de cuantificat. Este bine
tiut c un firewall hardware produs de firma Cisco reprezint topul vnzrilor. Dar tot la fel de bine se
tie i c acele firewall-uri sunt i cele mai scumpe. PIX (PIX - Private Internet Exchange.) Firewall
produs de firma Cisco este considerat ca fiind unul dintre cele mai bune dispozitive de acest fel,
asigurnd o securitate ridicat i un nivel crescut de performan.
Sistemul de operare va atrna n decizia de alegere a unui firewall n dou moduri. Unul ar fi
acela c productorii de firewall sunt de prere c firewall-urile bazate pe sisteme de operare care au
mai puine bug-uri sunt mai sigure. Al doilea motiv ar fi acela c bug-urile aprute n folosirea unui
firewall care ruleaz pe un sistem de operare larg rspndit vor putea fi raportate de un numr mai mare
de utilizatori. Exist ns i reversul la folosirea unui sistem de operare larg rspndit. Sistemul de
operare Windows, care este cel mai rspndit, e cel mai atacat deoarece este un sistem de operare
comun, are suficiente goluri de securitate i pentru c muli hackeri ursc firma Microsoft datorit
politicii sale.
Atunci cnd se alege un firewall software este obligatoriu ca acesta s fie suportat de sistemul de
operare.
Administrarea unui firewall trebuie s fie familiar. Este bine cunoscut c firewall-urile Windows
sunt mai uor de administrat dect cele UNIX (sau Linux). Existena unei interfee greoaie va face ca
firewall-ul s nu fie configurat optim, mai ales dac persoana care-l configureaz nu are experien.
Dispozitivele firewall comerciale sunt disponibile n dou categorii:
Single gateway, care are suport pentru un numr specific de utilizatori i consola de management
instalat pe un singur calculator. Se preteaz foarte bine la firmele mici.
Firewall Enterprise, care permit protejarea unui numr specificat de calculatoare din reeaua
intern. Adugarea de module suplimentare mrete numrul acestora.
Achiziionarea unui dispozitiv firewall de firm, ca exemplu PIX Firewall, produs de Cisco,
pentru protejarea la atacuri din exterior, este de preferat n locul achiziionrii unui produs software.
Preul de achiziie i cheltuielile de implementare fac ca aceast soluie s nu fie aleas dect de firmele
mari, care-i pot permite preul.
Firewall-ul produs de firma Checkpoint cost pentru un modul cu 5 utilizatori 300 USD, iar
pentru un modul de 250 de utilizatori cost 6.000 USD. Asistena tehnic este asigurat telefonic pentru
suma de 400 USD pentru incident.
Symantec Enterprise Firewall (care este un proxy) cost (cu suport de VPN) 4.000 USD pentru un
numr de pn la 100 de utilizatori i 12.500 USD pentru un numr nelimitat de utilizatori. Suportul
tehnic este asigurat pentru sume cuprinse ntre 400 USD (pn n 100 utilizatori) i 1.875 USD (pentru
un numr nelimitat de utilizatori). Symantec Enterprise Firewall ruleaz pe platforme Windows NT 4 SP
6a, Windows 2000/2003, precum i pe platforme Sun Solaris (SPARC), i este multithread (Multithread .
capacitatea mai multor microprocesoare de a funciona ca i cum ar fi unul singur) pentru a putea s
foloseasc facilitile sistemelor multiprocesor.
Firmele mici vor opta pentru soluii firewall nglobate, lucru ntlnit la serverele Internet bazate
pe sistemele de operare Linux. n cazul n care serverul respectiv are ca sistem de operare Windows, se
83

indic folosirea pachetului Norton Internet Security 2004 (Professional) la preul de 70 (100) USD. Dac
se dorete i protejarea staiilor de lucru din interiorul firmei mpotriva atacurilor din interior, se poate
opta ntre produsele existente pe pia: Norton Firewall (Norton Internet Security), Zone Alarm Pro,
CheckPoint Firewall. Preurile la aceste produse variaz n jurul valorii de 50 USD. Unele dintre aceste
produse se livreaz gratuit la achiziionarea unui sistem de calcul. Este cazul produselor Norton Internet
Security i Norton Antivirus (uneori sunt integrate ntr-un singur program . Norton Internet Security .,
dar opional se poate instala i Norton Antivirus). Suportul tehnic pentru actualizri gratuite este de un
an.
Instalarea i configurarea vor fi fcute n urmtorii pai:
instalare i configurare platform sistem de operare;
instalare i configurare module firewall;
instalare i configurare server management;
instalare i configurare console de administrare;
instalare servicii suplimentare (antivirus, antispam);
configurare politici de securitate;
configurare translatare adrese (NAT);
implementare metode de autentificare.
Conform celor expuse, n cadrul firmei, am optat pentru o soluie de compromis financiar. Cerinele
au fost ca s fie protejate calculatoarele care au acces la Internet i de asemenea s fie protejate i cele
neconectate. Pentru prima categorie am ales varianta de externalizare a serviciului de securitate.
Serverul de Internet, pe care rula Linux, s fie dat n administrarea distribuitorului local RDS/RCS
(RDS/RCS . Grup de firme (consoriu) specializate n distribuia de televiziune prin cablu i distribuie
Internet. ).
Acesta, de comun acord cu conducerea firmei, a instalat i configurat firewall-ul Linux cu
restriciile impuse, urmnd ca periodic s trimit la sediul firmei liste cu atacurile asupra serverului.
Totodat, firma RDS/RCS se obliga s monitorizeze permanent activitatea de pe acest server. Pentru
calculatoarele neconectate la Internet varianta aleas a fost aceea a programelor firewall Norton
Personal Firewall/Norton Internet Security. S-a ales aceast soluie deoarece o parte din calculatoarele
nou-achiziionate aveau preinstalat acest program. Administrarea calculatoarelor din reeaua
neconectat va fi fcut de ctre un angajat al firmei care va actualiza permanent programele i va
monitoriza rezultatele statistice generate de firewall.

3.4. Administrarea firewall


Administrarea unui firewall poate fi o activitate care poate s ocupe foarte mult timp. Aceasta
depinde i de mrimea firmei, n cazul firmelor mari administrarea putnd fi o operaie permanent.
n esen, administrarea unui firewall presupune:
monitorizarea performantei firewall-ului;
monitorizarea log-urilor de securitate;
mentenana securitii prin aplicarea de patch-uri i hotfix-uri i actualizri;
intervenia n caz de nevoie.
La nivelul firmei un firewall este acel produs care mparte o singur politic centralizat peste
multiple firewall-uri. Firewall-urile la nivel de firm permit un control centralizat al politicii de securitate.
Politica de securitate, definit la nivel de staie de lucru, este apoi replicat peste celelalte puncte de lucru.
La firma studiat o mare parte dintre probleme se datorau conexiunii la Internet. Nu am contorizat
pierderile de productivitate datorate conexiunii la Internet, dar mai toi angajaii firmei pierdeau n
fiecare diminea, uneori zeci de minute, ca s citeasc presa prin Internet sau pentru alte activiti care
nu aveau nici o legtur cu activitatea firmei. O mare parte dintre virusrile calculatoarelor se datorau
84

conexiunii la Internet. Am decis c cea mai sigur cale de a limita atacurile din Internet i de a nu mai
avea pierderi de productivitate este aceea de a separa reeaua. Aceasta va presupune o conexiune la
Internet numai a staiilor care au ntr-adevr nevoie de asta. Accesul publicului la serverele de web, FTP,
email se va face doar pe o poriune mic din reea. Staiile de lucru de aici vor conine toate datele
necesare publicului, dar nu date senzitive.
n acest fel, se asigur urmtoarele beneficii:
poriunea de reea neconectat la Internet este absolut sigur. Transferul de date din reeaua
conectat la Intenet n cea neconectat se va face folosind suporturi de memorie de capacitate
mare care i acestea vor fi scanate de virui. Dar acest transfer se face doar atunci cnd este
absolut necesar;
soluia este foarte simpl i nu necesit echipamente speciale;
reduce riscurile de atac i infectare cu virui;
reduce timpul pe care angajaii l pierd navignd pe web sau descrcnd programe care nu au
nici o legtur cu activitatea firmei;
reducerea traficului n cele dou reele a crescut performanele n ambele.
Dup realizarea separrii reelei problemele generate de virui aproape c au disprut n reeaua
neconectat. Periodic, i n afara orelor de program, se conectau cele dou reele pentru a se face
actualizrile de semnturi de virui, actualizrile de programe firewall i alte (hot)fix-uri de programe.
Au rmas conectate la Internet numai calculatoarele la care acest lucru era absolut necesar (5 la numr).
Fcnd un calcul aproximativ, au rezultat ctiguri de productivitate de 17.250.000 lei (15 calculatoare
neconectate x 1 or ctigat n fiecare zi x 50.000 lei media tarifar orar x 23 de zile). Aceast nou
configurare nu a fost pe placul angajailor. Acetia au fost nemulumii de acest lucru n primele zile,
situaia intrnd apoi n normalitate.

85

Capitolul IV. Scanere de vulnerabilitate


4.1. Tipuri de scanere
Un scaner este o component software care va analiza o reea i va detecta eventualele slbiciuni
ale acesteia, precum i golurile de securitate. Un scaner va lansa atacuri secveniale asupra calculatoarelor
din reea. De aceast dat, atacul nu este unul maliios. Dac un atac a fost nsoit de succes, atunci
scanerul va crea o not ntr-un raport i apoi va continua procesul. La sfritul procesului de scanare se va
afia un raport referitor la aciunile scanerului i la calculatoarele vulnerabile. Acest raport va putea fi
folosit pentru a nelege care calculator din reea are nevoie de o mare atenie pentru a mbunti
securitatea a lui i a ntregii reele.
Dei aciunea unui scaner este nsoit de termeni ca gol de securitate etc., succes (al atacului),
vulnerabilitate, de aceast dat aceti termeni au o cu totul alt conotaie. S nu uitm c aceast scanare
este folosit nu pentru iniierea unui atac, ci tocmai pentru ca atacurile maliioase s nu poat fi
ncununate de succes.
Un gol de securitate nu va fi exploatat, cum fac hackerii, ci va fi umplut cu ajutorul patch-urilor, al
fix-urilor sau prin modificarea configuraiei. Atacul va fi executat doar pentru a se determina
vulnerabilitile i nu pentru a le exploata. Succesul unui atac nu va fi o victorie ca n cazul unui atac real,
ci va fi un motiv de ngrijorare i un obiectiv.
Vulnerabilitatea zero sau redus va reprezenta de aceast dat un lucru bun. O vulnerabilitate
ridicat va reprezenta un motiv de ngrijorare care va necesita msuri urgente. Majoritatea scanerelor
testeaz calculatorul-gazd i informeaz asupra serviciilor de reea care funcioneaz pe acel calculator.
n plus, un scaner va spune i unde acele servicii sunt susceptibile de o vulnerabilitate cunoscut sau sunt
greit configurate.
De exemplu, pentru o arhitectur Windows, testele care se vor efectua sunt urmtoarele:
scanarea porturilor de reea care utilizeaz UDP;
scanarea porturilor de reea care utilizeaz pachete TCP SYN, ACK, FIN;
scanarea lui Network Neighborhood;
testarea vulnerabilitilor DNS i SNMP;
scanarea pentru detectarea cailor troieni i a backdoors-urilor cunoscute;
Server Message Block Querying;
testarea Active Services;
verificarea protocoalelor de transport i sesiune;
posibilitatea de a stabili sesiunile NULL IPC$ locale;
verificarea Service pack i Hotfix;
verificarea opiunilor share (Admin(S));
verificarea abilitailor de querry registry;
verificarea vulnerabilitilor cunoscute URL i CGI;
verificarea vulnerabilitilor cunoscute la atacuri DoS;
verificarea vulnerabilitilor MS SQL Server;
testarea vulnerabilitilor SMTP, FTP, POP3.

Tipurile cele mai cunoscute de scanere sunt:


scanere de reea (network-based scanners)
scanere de staie (host-based scanners)
scanere de porturi (port scanners).

86

Scanerele de reea sunt unelte software care lanseaz dintr-o locaie central atacuri asupra
reelei n vederea testrii vulnerabilitilor. O consol central va fi folosit pentru maparea ntregii reele
i pentru trimiterea de pachete ctre calculatoarele care vor fi scanate pentru a culege informaii. De la
aceast consol se vor direciona diferitele .atacuri. care vor scana un anume calculator din reea.
Scanerele de reea sunt uor de implementat i de utilizat. Programul de scanare va fi ncrcat pe
un calculator din reea i de aici se va testa reeaua (figura 33).

Figura 33. Interfa scaner de reea.

Scanerele de reea au i neajunsuri. Printre acestea se pot enumera:


ncetinesc traficul n reea. Un scaner de reea va putea s foloseasc pentru lansarea atacurilor
foarte mult band;
pot duce la blocarea unor calculatoare. Anumite teste pot s blocheze calculatoarele supuse
procesului de scanare;
durata de timp pentru efectuarea unei operaii de scanare poate s fie considerabil i poate folosi
resurse mari din reea;
aciunea de scanare va putea s fie folosit de alte persoane (hackeri sau angajai ruvoitori) pentru
descoperirea vulnerabilitilor reelei.

Scanerele de staie difer de scanerele de reea n primul rnd prin arhitectur. Pachetele de
testare de la consol vor fi trimise ctre un calculator din reea i nu ctre toat reeaua (figura 34). Tot
traficul se desfoar ntre aceste dou puncte. A dou diferen este aceea c aciunea de testare se face
pentru testarea unei configurri locale defectuoase fr s se ncerce exploatarea unor goluri de securitate.
Scanerele de staie au cteva avantaje n fa scanerelor de reea. Unul dintre avantaje este acela c
traficul din reea e sensibil diminuat, int nefiind reeaua, ci numai un calculator din reea. Din aceast
cauz, un scaner de staie este de preferat n locul unuia de reea deoarece nu folosete resurse mari de
reea n care ar avea repercusiuni asupra traficului prin scderea acestuia. Calculatoarele testate nu mai
sunt n pericol de a cdea, ca la un atac cu scaner de reea, deoarece se testeaz doar vulnerabilitatea i nu
posibilitatea de exploatare a acesteia.
Scanerul de staie nu va mai putea fi folosit de o alt persoan pentru scanarea reelei deoarece
scanarea de la consol la calculatorul supus testului se face pe un canal securizat care nu poate fi folosit
dect de o singur persoan.

87

Figura 34. Scaner de staie.


Scanerele de porturi reprezint o categorie aparte de scanere folosite pentru maparea
calculatoarelor din reea i testarea porturilor pe care acestea le folosesc. Un port este o adres a
calculatorului folosit pentru comunicare. Oricare din cele peste 10.000 de posibile porturi pot fi folosite,
dac sunt deschise, pentru iniierea unui atac (figura 35).

Figura 35. Scaner de porturi.


Multitudinea de scanere existente ca programe gratuite n Internet face ca acestea s constituie un
pericol la adresa calculatoarelor din reeaua firmei. Chiar dac nu au succes n descoperirea golurilor de
securitate, un scaner ngreuneaz traficul n reea atunci cnd este n lucru. Acesta poate s fie unul din
semnalele c se face o scanare a reelei locale.

88

4.2. Scanere comerciale


Majoritatea scanerelor au abilitatea de scanare de porturi pentru gsirea unui calculator n reea.
Exist ns unelte specializate n scanarea de porturi.
NMAP (NetworkMAPer) i NMAPFE sunt unele dintre cele mai folosite unelte n acest scop.
NMAP este un utilitar care exploreaz arhitectura reelei foarte rapid. Acesta folosete pachete IP pe care
le trimite n reea pentru a determina care calculator este disponibil, serviciile (asigurate de porturi) care
sunt deschise, sistemele de operare i versiunile acestora care ruleaz pe acel calculator, precum i
firewall-urile active. Mai multe date, documentaii, precum i programul n format comprimat sau codul
sursa vor putea fi gsite la adresa http://www.insecure.org/nmap/ .
GNIT este un scaner pentru platforme Windows NT i Windows 2000. Acesta va face o verificare
amnunit a reelei, va furniza detalii despre fiecare cont, precum i o list cu conexiunile i serviciile
care ruleaz. Mai multe detalii se pot gsi la adresa http://security.ellicit.org/.
Winfingerprint scaneaz calculatoarele i culege informaii referitoare la NetBIOS, utilizatori,
grupuri, protocoale de transport, servicii etc. Programul va scana calculatoarele existente n Network
Neighborhood oferind un raport n format HTML - http://winfingerprint.sourceforge.net/
Security Administrators Integrated Network Tools (SAINT) este folosit pentru a testa i
evalua
reele.
Versiunea
gratuit
poate
fi
descrcat
de
la
adresa
ftp://ciac.llnl.gov/pub/ciac/sectools/unix/satan/
Cerberus Information Scanner (CIS) scaneaz reeaua pentru a determina serviciile care ruleaz.
Programul funcioneaz pe platforme Windows NT i 2000 i determin dac conturile utilizatorilor,
informaiile partajate, grupurile i anumite servicii pot fi accesate de ctre intruderi. n plus, se mai poate
face o scanare pentru a se determina vulnerabilitile SQL Server. Versiunea gratuit poate fi descrcat
de la adresa www.cerberusinfosec.co.uk/cis.shtml.
Pe lng aceste site-uri mai exist n Internet foarte multe alte site-uri care pot da informaii despre
securitate i cum poate fi aceasta mbuntit. Informaiile de aici includ descrieri despre vulnerabiliti,
platformele care sunt afectate, precum i msurile care trebuie luate pentru remedierea acestor
vulnerabiliti.
Cele mai importante biblioteci cu baze de date despre vulnerabilitate se pot gsi la urmtoarele
adrese:
BugTraq (www.securityfocus.com/bid). Este cea mai mare i mai important baz de date care
cuprinde informaii legate de vulnerabiliti, descrierea acestora, detalii despre exploatarea acestora i
procedurile de eliminare.
CERT (www.cert.org). Computer Emergency Response Team (CERT) este un centru federal de
cercetare i dezvoltare n domeniu localizat la Carnegie Mellon University.
X-Force (xforce.iss.net). Internet Security Systems (ISS) este un scaner de firm care are
posibilitatea de a asigura securitatea asupra unor grupuri.
CIAC (www.ciac.org). Computer Incident Advisory Center (CIAC) este sponsorizat de U.S.
Department of Energy i include tiri, avertizri despre virui, precum i o baz de date extins referitoare
la vulnerabiliti.
NtBugTraq (www.ntbugtraq.com). Aceast baz de date aparine unei persoane private, Russ
Cooper, i conine informaii referitoare la vulnerabilitile Microsoft.

89

4.3. Procedurile de scanare la nivel de firm


Scanerele trebuie folosite n strns legtur cu procesele i procedurile aplicate pentru asigurarea
politicii de securitate impuse la nivel de firm.
Procedurile de scanare n vederea detectrii vulnerabilitilor sunt mari consumatoare de timp. Din
acesta cauz, operaiile incluse n procesul de scanare trebuie s se fac n afara orelor de program.
Consider c operaiile de scanare la nivelul firmei, n vederea testrii vulnerabilitilor, trebuie s se
fac innd cont de mrimea firmei. De asemenea, aceast operaie trebuie s se fac obligatoriu de
oricte ori se modific arhitectura reelei din firm.
La nivelul firmelor mici, procedura de scanare se va efectua de cel puin dou ori pe an, n condiiile
n care nu se face nici o modificare n arhitectura reelei. Dac se fac modificri n arhitectura reelei,
atunci dup fiecare modificare se va face o nou verificare a vulnerabilitilor folosind scanarea. n
funcie de numrul de calculatoare existente n firm, operaia de scanare poate s dureze de la cteva
ore pn la cteva zile. Dac numrul de calculatoare este mic, atunci operaia va putea fi fcut n
afara orelor de program, n zilele lucrtoare. Dac numrul de calculatoare este relativ mare, pn la
100, atunci procesul de scanare se va face n zilele nelucrtoare.
La nivelul firmelor medii, operaia de scanare se va efectua n mod regulat. n acest caz, operaia este
mult mai laborioas, deoarece poate exista un numr de servere mult mai mare ca la firmele mici,
acestea necesitnd un timp mai ndelungat de scanare. Din aceast cauz, procesul de scanare poate fi
fcut pe seciuni ale reelei. De asemenea, n funcie de anumite criterii de politic sau de arhitectur,
anumite poriuni de reea pot fi scanate mai des, n timp ce altele mai rar.
La nivelul firmelor mari, operaia de scanare reprezint o prioritate. Operaia este extrem de
laborioas i de aceea trebuie s existe personal extrem de bine pregtit i responsabil. Operaia de
scanare poate s nu rezolve n totalitate anumite probleme legate de securitate, dar poate ateniona
asupra punctelor vulnerabile n care trebuie concentrat atenia.
n situaia n care firma, indiferent de mrime, nu are personal calificat pentru aceast operaie, se
poate apela la firme specializate care s preia aceast sarcin.

90

Capitolul V. Controlul accesului i


detectoare de intruziune
5.1. Modaliti de control al accesului
Un proces de asigurare complet a securitii presupune protecia, detectarea i rspunsul la atacuri.
Detectarea intruilor reprezint miezul problemei pentru a monitoriza calculatorul sau reeaua de
calculatoare n vederea detectrii golurilor de securitate, a hackerilor i a abuzurilor angajailor.
Majoritatea detectoarelor de intruziune au n componen i mecanisme de limitare a pierderilor.
Mecanismele folosite pentru interzicerea accesului persoanelor neautorizate la datele stocate n
calculator poarta denumirea de funcii de control al accesului. Pn unde trebuie mers ns cu limitarea i
controlul accesului? Limitarea excesiv de acces a clientului la anumite informaii poate s nu fie benefic
n afaceri. Msurile de securitate excesive impuse partenerilor de afaceri s-ar putea s fie suprtoare
pentru acetia. Accesul la anumite date, restricionat de o mulime de parole de acces, va putea s fie
enervant pentru partenerul de afaceri care poate n final s renune.
Paradoxul securitii este acela c poi avea o securitate excesiv n detrimentul afacerilor sau o
securitate rezonabil i afacerile s fie prospere. Adic .Cine nu risc nu ctig.. Trebuie gsit o cale de
mijloc ntre circulaia liber a informaiilor i nevoia de securitate.
Accesul la informaiile stocate ntr-un calculator reprezint un risc de luat n seam, dar
dezvluirea informaiilor ctre un competitor n afaceri poate avea efecte dezastruoase asupra firmei. n
funcie de ct de multe i de caracterul datelor intrate n posesia competitorului, se poate ajunge chiar n
situaii de blocare a activitilor pentru o perioad de timp sau chiar faliment. Acesta este principalul
motiv pentru care firmele trebuie s se preocupe de securitatea datelor din propriile calculatoare.
Atunci cnd se pune problema asigurrii securitii, oricine se gndete c prima msur este
asigurarea unui control al accesului. i pe bun dreptate. Controlul accesului reprezint o serie de msuri
menite s interzic accesul persoanelor neautorizate la date.
Controlul accesului la date se va face prin luarea de msuri administrative i msuri hardware.
Msurile administrative vor constitui prima linie de aprare mpotriva persoanelor neautorizate.
Existena acestor msuri vizeaz angajaii firmei, persoanele care au contact fizic cu firma, clienii direci,
precum i intruderii care vor s ptrund fizic n firm pentru a avea acces la date. Aceste msuri nu se
aplic i nici nu au cum s se aplice mpotriva unor atacuri de la distan.
Msurile administrative vor presupune montarea unor serii de dispozitive fizice menite s limiteze
i s supravegheze accesul ntr-o anumit zon.
Aceste dispozitive pot fi:
perimetre de protecie;
chei de acces n anumite zone;
carduri pentru acces la anumite zone;
alte modaliti de restricionare;
modaliti de supraveghere.
Perimetrele de protecie sunt constituite de gruparea calculatoarelor n anumite zone unde accesul
s poat fi supravegheat. Aceste perimetre pot fi anumite cldiri sau, ntr-o anumit cldire, anumite
birouri. n anumite situaii, cnd o anumit ncpere are o suprafa foarte mare, se folosesc perei
despritori.
Accesul n anumite ncperi se va putea face doar dac persoana respectiv are cheia sau cardul
care s-i permit accesul n acea zon.
La categoria alte modaliti de restricionare pot fi incluse modalitile biometrice de control. Cele
mai folosite modaliti de identificare a unei persoane sunt:
91

o
o
o
o
o
o

semntura;
amprenta digital;
amprenta palmar;
scanarea retinei;
timbrul vocal;
modul de tastare.
Ca modalitate de supraveghere destul de folosit n ultimul timp este utilizarea camerelor video de
supraveghere. Camerele video de supraveghere nu au un rol preventiv n ceea ce privete accesul
persoanelor ntr-o anumit zon, dar pot fi folosite n procesul de identificare a intruderilor, de localizare a
calculatoarelor i echipamentelor supuse atacului, precum i ca prob n eventualitatea c se iau msuri
judiciare mpotriva unei anumite persoane.
Un mecanism complex de control al accesului, n care se regsesc i camere video de
supraveghere este exemplificat n figura urmtoare (figura 36).

Figura 36. Mecanisme de control al accesului.


O dat trecut cu bine prima linie de securitate se ajunge la cea de-a doua care, o dat trecut,
presupune accesul direct la date. Aici se vor implementa o serie de mecanisme care s interzic accesul
persoanelor neautorizate.
Controlul accesul la datele din calculatoare trebuie s se fac numai dup ce se parcurg
urmtoarele etape, cunoscute i sub denumirea de AAA (Autentificare, Autorizare, Acces) (figura 37):
identificare;
autentificare;
autorizare.
92

Figura 37. Controlul accesului.


O dat ajuns n faa calculatorului, utilizatorul trebuie s se identifice. Aceasta va presupune
tastarea unui cont de identificare i a unei parole. Pe baza unui mecanism de autentificare existent pe
calculator se va confirma sau se va infirma veridicitatea celor tastate anterior. Dac aceast etap este
trecut cu bine, atunci se primete o autorizare care-i va permite utilizatorului s acceseze resursele
calculatorului sau ale reelei. Acesta este de fapt un mecanism de control al accesului.
Termenii de autentificare i identificare sunt strns folosii n literatura de specialitate.
Identificarea i autentificarea unui utilizator nu trebuie lsat numai pe seama unui cont i a unei
parole. Firmele trebuie s se concentreze foarte atent asupra metodelor de identificare i autentificare.
Exist dou cazuri care impun ca acest lucru s fie fcut temeinic:
senzitivitatea crescut a anumitor date;
lucrul din afar.
Unele date din calculator pot fi de o foarte mare importan pentru firm, dar de o i mai mare
importan pentru concuren. Simpla identificare i autentificare nu sunt suficiente. Unele firme folosesc
ca modalitate de lucru cu angajaii lucrul de acas. Pentru acesta folosesc Internetul. Ori, un simplu cont i
o parol trimise n Internet devin vulnerabile. Acesta este doar un exemplu care impune folosirea unor
tehnologii performante de autentificare. Se folosesc cu precdere patru tipuri de tehnologii:
Kerberos;
token-uri;
biometric;
certificate;
smart carduri.
Tehnologia Kerberos se folosete atunci cnd contul i parola sunt trimise n reea i n acest fel
pot deveni vulnerabile, putnd s fie folosite de o alt persoan care s se substituie posesorului legal. De
asemenea, tehnologia rezolv situaia n care un utilizator poate avea acces la mai multe calculatoare i s
nu fie nevoit de fiecare dat cnd reacceseaz un calculator s introduc contul i parola. Aceast
tehnologie a fost dezvoltat de ctre Massachusetts Institute of Technology (MIT), care folosete
algoritmi de criptare i autentificare Data Encryption Standard (DES). Versiunea 5 a tehnologiei Kerberos
reprezint un standard Internet specificat n RFC 1510 (RFC - Request for Comments, o serie de notaii
referitoare la Internet, ncepnd cu anul 1969 (cnd Internetul era ARPANET). Un document Internet
(Internet Document) poate fi trimis ctre IETF de ctre orice persoan, dar IETF decide care document
devine RFC. n eventualitatea n care acel document prezint suficient de mult interes, acesta poate s
devin un standard Internet).
Tehnologia Kerberos se bazeaz pe conceptul de a treia parte de ncredere care permite o
verificare sigur a utilizatorului i serviciilor. Aceast a treia parte poart denumirea de Server de
Autentificare (Authentfication Server) sau Centru de Distribuie a Cheilor (Key Distribution Center .
93

KDC). Prima operaie efectuat de Kerberos este de a verifica dac utilizatorii i serviciile pe care acetia
le folosesc sunt cei care pretind a fi. Pentru a realiza aceasta KDC trimite ctre utilizator un ticket care
va fi folosit de ctre utilizator.
Iniial se creeaz o cheie de legtur ntre client i KDC, numita Kclient, i o alt cheie ntre KDC
i serverul de aplicaii, numit Kserver (figura 38).

Figura 38. Grupul de chei Kerberos.


Cnd un client vrea s creeze o asociere pe un server de aplicaii, clientul folosete o cerere de
autentificare i rspuns pentru a obine un ticket i o cheie de sesiune de la KDC (figura 39).

Figura 39. Autentificarea Kerberos.

Paii sunt urmtorii:


Pasul 1. Clientul trimite o cerere de autentificare ctre KDC. Aceast cerere conine urmtoarele
informaii:
declararea identitii;
numele serverului de aplicaii;
cerere de validitate n timp pentru ticket;
un numr aleator folosit pentru autentificare.
94

Pasul 2. KDC verific drepturile de acces ale clientului i creeaz o autentificare de rspuns.
Pasul 3. KDC trimite rspunsul de autentificare ctre client. Acesta conine urmtoarele informaii:
cheia de sesiune, K session;
timpul de expirare al cheii;
un numr aleatoriu folosit pentru autentificare;
numele serverului de aplicaie;
alte informaii.
Pasul 4. Cnd clientul primete rspunsul de autentificare, Clientul introduce numele de utilizator pentru
a obine parola, Kclient, folosit pentru a decripta cheia de sesiune de lucru Ksession.
O dat obinute acestea, clientul este abilitat s comunice cu serverul de aplicaii.
Acest lucru se va face conform figurii urmtoare (figura 40).

Figura 40. Cererea i rspunsul la aplicaie.


Paii sunt urmtorii:
Pasul 1. Clientul va trimite ctre server dou informaii importante:
Kerberos ticket;
Un Autentificator, care conine:
timpul curent;
sum de control;
cheie de criptare opional.
Acestea sunt criptate cu cheia de sesiune, Ksession, cu ajutorul ticket-ului.
Pasul 2. La primirea cererii de aplicaie, serverul decripteaz ticket-ul cu ajutorul cheii de server, Kserver,
extrage cheia de sesiune, Ksession, i folosete cheia de sesiune pentru a decripta Autentificatorul.
95

Dac aceeai cheie este folosit att pentru criptarea, ct i pentru decriptarea Autentificatorului,
suma de control este corect i se concluzioneaz c Autentificatorul este cel generat de ctre clientul
respectiv cruia i aparine cheia de sesiune. Pentru ca un atacator s nu poat s intercepteze
Autentificatorul i s-l foloseasc mai trziu, se verific i timpul.
Pasul 3. Identitatea clientului este, n majoritatea cazurilor, verificat de ctre server. Sunt ns situaii n
care clientul vrea s fie sigur de autenticitatea serverului. n acest caz, serverul genereaz un rspuns prin
extragerea timpului clientului din Autentificator i returnarea acestuia ctre client mpreun cu alte
informaii, toate criptate cu cheia de sesiune, Ksession.
Tehnologia Kerberos a fost adoptat de ctre Microsoft atunci cnd a creat Single Sign On (SSO).
Token-urile vor s rezolve problema furtului de parole i este de fapt un complement al acestora.
Deinerea unui cont i a unei parole a unui utilizator nu nseamn c eti acel utilizator. Majoritatea tokenurilor arat ca o carte de credit i au pe una dintre fee un dispozitiv de afiare cu LCD (Liquid Crystal
Display - Ecran cu cristale lichide). Folosire token-ului poate fi fcut n urmtoarele moduri:
dup introducerea contului i a parolei se cere i introducerea unui numr afiat pe ecran. Dac
toate trei sunt valide, accesul este garantat. Numerele de pe ecranul token-ului se schimb la
fiecare minut.
dup introducerea contului i a parolei, calculatorul va rspunde cu un numr care va trebui s fie
introdus n token-ul special de la o mic tastatur ncorporat n acesta. Dup introducerea
numrului se va genera de ctre token un altul care va fi introdus n calculator. Dac acesta este un
numr valid, accesul este garantat.
Token-ul este introdus ntr-un cititor special ataat la calculator. Se introduc contul i parola, iar
calculatorul va prelua din token informaia necesar pentru identificare i autentificare.
Tehnologia biometric, dei folosit i n alte domenii sau niveluri de securitate, este folosit i
aici. Aceasta presupune identificarea i autentificarea utilizatorului dup caracteristicile individuale ale
fiecrui utilizator. Acestea au fost enumerate anterior.
Tehnologia biometric este implementat centralizat n majoritatea firmelor care o folosesc. Unele
firme nu accept ns aceast tehnologie din cauza imaturitii controlului centralizat. Certificatele sunt
folosite n autentificarea Public Key Infrastructure (PKI). Tehnologia PKI este folosit n Secure Sockets
Layer i Virtual Private Network (VPN). Un certificat reprezint de fapt un set de nregistrri stocate pe
calculator. Acest set de nregistrri formeaz cheia privat care va fi folosit n comunicarea cu un server.
Stocarea certificatului pe disc creeaz dou dezavantaje. Unul ar fi acela c acesta poate fi sustras. Al
doilea dezavantaj este acela c folosirea certificatului este posibil doar de la acel calculator. Acest ultim
dezavantaj a fost remediat prin folosirea smart cardurilor.
Smart cardurile arat ca o carte de credit, numai c au ncorporate un mic calculator care stocheaz
cheia privat. Calculatorul care se dorete s fie accesat sau de la care se dorete accesarea reelei va
trebui s aib un cititor de smart carduri ataat. Se vor introduce contul i parola i se va citi de pe smart
card cheia privat. Contul i parola nu vor fi trimise ctre calculator, ci ctre smart card. Acestea,
mpreun cu cheia privat, nu vor prsi niciodat smart cardul.
Autorizarea, dup ce se trece de autentificare i identificare, va da drepturi de acces la anumite
resurse locale sau din reea. Pentru a autoriza un utilizator se folosesc dou metode.
Prima, i cea mai comun, este de a pstra cile de autentificare pentru fiecare utilizator ntr-un
director i apoi de a lista n directorul lui fiecare intrare (calculator sau program) la care are acces. Soluia
este eficient pentru grupuri reduse de calculatoare i programe. La grupuri mari este greu de gestionat. A
doua soluie se numete regul de baz a autorizrii (RBA - Role-Based Authorization) sau regul de
baz a controlului accesului (RBCA - Role-Based Acces Control).
Construirea unei liste cu reguli
standard pentru firm i asignarea autorizaiilor la aceste reguli vor simplifica foarte mult procedeele de
autorizare.
96

Autorizarea este o problem complicat la nivelul oricrei firme deoarece trebuie gestionat un
foarte mare numr de reguli i sarcini.
Majoritatea sistemelor de operare au ncorporate ca funcie controlul accesului. Funciile de
control al accesului sunt unele dintre cele mai complexe funcii pe care un sistem de operare trebuie s le
implementeze. Se estimeaz c aceste funcii au nevoie de foarte muli ani pentru a fi .mature.. O
mbuntire sau mai multe aduse unui sistem de operare la care sau descoperit goluri de securitate va
avea ca efect apariia pe pia a aceluiai sistem de operare, cu golurile de securitate acoperite, dar cu alt
nume. Cazurile cele mai elocvente sunt cele ale firmei Microsoft cu sistemele de operare Windows 9x.
n unele cazuri, dac sistemul de operare este nesigur sau se dorete o mbuntire a securitii, se
poate apela la alte produse care s completeze sau s sporeasc facilitile sistemului de operare.
n alte cazuri, la sistemele de operare mai noi, productorul ofer opiuni de configurare sporite
care vor ridica gradul de control al accesului. Ca exemplu putem da sistemul de operare Windows XP
(Pro), destul de des folosit n firmele mici i medii. Opiunile de configurare sunt exemplificate n figura
urmtoare (figura 41).

Figura 41. Opiuni de configurare Windows XP (Pro)


Radicalizarea peste un anume prag a msurilor de control al accesului va putea s duc la stopri
ale folosirii anumitor programe.
Un puternic control al accesului va reduce riscul unei folosiri neautorizate a calculatorului, dar va
face ca folosirea acestuia s fie foarte dificil. Dac se folosete un sistem de operare .matur. i se
configureaz bine opiunile de control al accesului, atunci nu vor fi probleme de exploatare.
Sarcina de control a accesului poate fi mprit sau atribuit unui Sistem de Gestiune a Bazelor de
Date (SGBD). Acesta va conine propriile funcii de control al accesului.
97

Nu este ns suficient s se tie cine are acces i cine nu. Uneori este necesar ca s fie monitorizate i
aciunile i operaiile pe care le execut un utilizator cu drept de acces la nregistrrile dintr-un fiier
baz de date. Este tiut faptul c este mai simplu de implementat un program care s monitorizeze
accesul la fiiere dect unul care s monitorizeze accesul la nregistrrile dintr-un fiier. Situaia este cu
att mai complicat cu ct fiecare SGBD are drivere i funcii specifice care monitorizeaz aceste
operaii. Cu toate acestea, un astfel de program poate fi realizat.
Se poate concepet un astfel de program care-i propune s realizeze urmtoarele operaii de
monitorizare:
indicarea locaiei de unde se face accesul;
fiierul accesat;
tipul de operaiile efectuate pe acesta;
afiarea instruciunii tastate de utilizator;
data i ora la care au fost efectuate;
afiarea de jurnale de log pentru fiecare utilizator;
afiarea pe diverse criterii a jurnalelor de acces (nume utilizator, data i ora, fiiere).

5.2. Stabilirea lungimii parolelor de acces


Alegerea unei parole care s reziste un timp predefinit la atacuri de ghicire trebuie s fie principala
directiv atunci cnd se aleg i se distribuie parolele pentru angajaii firmei. Este lesne de neles c o
parol cu ct este mai lung i este compus dintr-un numr mai mare de caractere cu att va fi mai greu
de ghicit. Ct de lung trebuie s fie ns parola? O parol lung i greu de reinut l va determina pe
proprietar s o scrie undeva la ndemn sau s o tasteze aa de ncet nct s poat fi citit de o persoan
care se uit la tastatur.
Stabilirea lungimii parolei se face innd cont de urmtoarele date de intrare:
T - timpul n care o parol va fi utilizat n sistem
P - probabilitatea ca o parol s poat fi ghicit n perioada ei de funcionare
I - numrul de ncercri de descoperire a parolei n unitatea de timp
S - spaiul parolelor (numrul total de parole unice care pot fi generate)
S = AL, unde A - numrul simbolurilor din alfabet
L - lungimea parolei
Exemplu:
Dac numrul de simboluri este format din cifre (0 - 9), iar lungimea parolei este de cinci (5)
caractere, atunci S = 105 = 100.000 parole.
Exemplu:
Dac numrul de simboluri este format din caracterele alfabetului (26), iar lungimea parolei este
de apte (7) caractere, atunci S = 267 = 8.031.810.176 parole.
Ct de repede se poate ghici o parol?
P - probabilitatea ca o parol s poat fi ghicit n perioada ei de funcionare va fi:

98

Numrul total de cazuri/ncercri de ghicire G a unei parole din spaiul S este:

Numrul de cazuri/ncercari favorabile G de ghicire a unei parole este:


innd cont de faptul c:
Va rezulta n final:

Deci probabilitatea (P) de a ghici o parol n perioada ei de funcionare este dat de formula:

G
S
i innd cont de faptul c numrul total de ghiciri (G) care pot fi fcute pe perioada cnd o parol
este activ e G = T x I, va rezulta n final c probabilitatea (P) de a ghici o parol pe parcursul funcionarii
acesteia este:
P=

P=

T I
S

Exemplu:
S se gseasc lungimea unei parole (L) care s reziste la ncercri de ghicire cu o probabilitate (P)
de unu la un milion pentru o perioad (T) de 6 luni i respectiv 12 luni.
Cazul 1.
S consideram c:
I = 500, numrul de ncercri de ghicire este de 500 pe minut
A = 26, numrul de caractere folosite (A-Z)
I = 500 500 x 60 x 24 = 720.000 de ncercri pe zi
Pentru 6 luni vom avea:
T = 30, 5 zile x 6 luni = 183 zile

innd cont de faptul ca S = AL, vom avea:

Se aleg 10 caractere pentru parol.


Pentru 12 luni vom avea:
99

T = 365 zile

Se aleg 11 caractere pentru parol.


Cazul 2
S consideram c:
I = 500, numrul de ncercri de ghicire este de 500 pe minut
A = 36, numrul de caractere folosite (A-Z, 0-9).
Pentru 6 luni vom avea:

Se aleg 9 caractere pentru parol.


Pentru 12 luni vom avea:

Se aleg 10 caractere pentru parol.


Dac se ine cont c se pot folosi, n afara de literele alfabetului (A la Z), i cifrele (0 la 9), i
simbolurile suplimentare (~, , !, @, #, $, %, ^, &, *, (, ), _, + , -, = , [, ], \, {, }, |, ;, , :, ., , , ., /, <, >, ?), se
ajunge ca numrul de simboluri folosite s fie de 68 (A = 68). Numrul total de parole, formate din apte
caractere, care va putea s fie generat cu acestea va fi
S = AL= 687 = 6, 7222*1012.
n acest caz, pentru a rezista 6 luni, cu o probabilitate de ghicire de unu la un milion i 500 de
ncercri de ghicire pe minut, o parol va trebui s aib minimum

iar pentru 12 luni va trebui s aib minimum

Dac aplicaia permite diferenierea ntre caractere mari i mici ale alfabetului (case sensitive),
atunci se ajunge la un numr de 94 de simboluri care pot fi folosite n alctuirea parolei.

100

5.3. Detectoare de intruziune


Un detector de intruziune este un proces de detectare i rspuns la folosirea abuziv a
calculatorului. Folosirea unui detector de intruziune va crea beneficii pentru firm n ce privete
detectarea, stoparea, rspunsul la atacuri, suport n evaluarea pagubelor produse, precum i ca dovad care
poate fi folosit n justiie mpotriva persoanelor bnuite de folosirea abuziva a calculatorului.
n funcie de specificul i mrimea firmei, se poate opta pentru un anume tip de detector de
intruziune. La nivelul firmelor mici aceste detectoare de intruziune se gsesc ncorporate n dispozitivele
firewall existente. Analiza jurnalelor de firewall sau router va putea s evidenieze ncercri de intruziune.
De asemenea, sistemele de operare au ca facilitate detectarea intruziunilor.
Tipurile de detectoare de intruziune se pot clasifica n:
locale (host-based) sau de staie;
reea (network-based);
hibride.
Principiile sunt asemntoare la aceste tipuri numai ca aciunea acestora este diferit. Principul de
baz n funcionarea unui detector de intruziune l constituie analizarea pe o anume perioad de timp a
unui set discret de evenimente pentru a se descoperi eventualele folosiri abuzive. nregistrrile secveniale
din diferitele puncte ale reelei vor fi analizate i se va determina comportamentul unui potenial intruder.
Detectoarele de intruziune de tip local (host-based) vor examina toate aciunile care au fost
efectuate pe acel calculator (staie de lucru). Aceasta presupune analiza fiierelor care i de unde au fost
accesate, precum i a aplicaiilor care au fost executate din acel punct.
Detectoarele de intruziune de reea (network-based) vor analiza traficul de reea ntre punctele
acesteia. Aceste detectoare folosesc dou tipuri de tehnologii. Una presupune folosirea modului
promiscuos al reelei. n acest mod este suficient s se monteze un singur senzor pentru a se analiza tot
traficul din reea. A doua tehnologie se folosete de modul nonpromiscuous al reelei i presupune
montarea unui senzor pentru fiecare conexiune care se dorete analizat. Aceti senzori vor fi montai n
punctele strategice ale reelei. Evident c dac se dorete analiza mai multor conexiuni aceasta poate fi
fcut cu mai muli senzori sau pe o perioad de timp mai ndelungat prin aplicarea senzorilor n
punctele necesare.
Senzorii sunt programe care ruleaz n punctele critice ale reelei - calculatoare, servere, router-e,
firewall-uri.
Detectoarele de intruziune hibride combin avantajele celor dou, dar sunt i mai costisitoare. Cu
toate acestea, ele sunt folosite deoarece asigur date complete att asupra reelei, ct i asupra
calculatoarelor n sine.
Detectoarele de intruziune comerciale ofer, pe lng capabilitile standard de a detecta i
rspunde la atacuri, i alte capabiliti suplimentare. Printre acestea se pot enumera:
analiza evenimentelor pentru a se detecta atacurile din interior;
analiza traficului din reea pentru a se detecta atacurile ntr-o anumit zon a reelei;
management al configuraiei pentru asigurarea securitii;
verificarea integritii fiierelor.
Majoritatea detectoarelor de intruziune de tip hibrid ofer o parte dintre aceste capabiliti.
Arhitectura unui sistem hibrid de detectare a intruziunilor este prezentat n figura urmtoare (figura 42).

101

Figura 42. Arhitectura unui sistem hibrid de detectare a intruziunilor.

102

ntr-un sistem de detectare a intruziunilor, consola reprezint elementul central. Aceasta reprezint
un calculator dedicat care dispune de un set de dispozitive necesare pentru configurarea politicii de
securitate i procesarea mesajelor de avertizare. Pentru ca s nu existe posibilitatea de scurgere de
informaii pe traseul consola i obiectiv, legtura ntre acestea este criptat. Firme consacrate n domeniu
livreaz att calculatorul dedicat, ct i restul de echipamente necesare testrii i criptrii comunicaiilor
ntre consol i punctele testate. Aceste echipamente sunt ns scumpe i de aceea se opteaz pentru
produse software mai ieftine sau gratis. Unul dintre aceste produse este SNORT. Sursa poate fi descrcat
gratuit de la adresa: http://www.snort.org/dl/, iar manualul de utilizare de la adresa
http://www.snort.org/docs/snort_manual/. Chiar dac nu se compar ca performane cu unul comercial,
rezultatele pot fi comparabile.
Consola efectueaz anumite funcii de baz, i anume: management evaluare, management
obiectiv i management alerte. Funcia de management evaluare colecteaz informaiile statice referitoare
la configurarea calculatorului obiectiv. Funcia de management obiectiv va ine o legtur permanent
ntre consol i obiectiv, iar funcia de management alerte va colecta i va administra alertele. Consola
dispune, de asemenea, de un serviciu de detectare intrui, arhivare i generare rapoarte.
La nivelul obiectivului testat se vor lansa procese care fac parte din procedurile de testare, cum ar
fi sniffer-ele de pachete TCP/IP, procesarea jurnalelor de evenimente, centralizarea datelor, verificarea
integritii fiierelor, verificarea configuraiei, executarea rspunsurilor. Aceste procese ruleaz de regul
n fundal (background), cum ar fi daemon-ii din UNIX sau serviciile din Windows 2000/XP Pro.
Funcionarea acestor procese nu trebuie s aib efecte negative asupra performanelor calculatorului sau a
reelei.
La apariia unei ncercri de intruziune detectorul va genera mesaje de avertizare ctre operatorul
de consol (responsabil cu asigurarea securitii). Mesajele de alert pot cpta diferite forme, de la alerte
vizuale i sonore pe ecran i pn la avertizare pe e-mail sau telefon.
ncercarea de intruziune, evideniat de alerte, va putea fi contracarat automat sau se va face
manual de ctre operator. n majoritatea cazurilor, aceste rspunsuri sunt o reconfigurare a router-ului sau
firewall-ului, izolarea i ntreruperea conexiunii de unde se execut atacul. Centralizarea tuturor
evenimentelor i a ncercrilor de intruziune n baza de date va fi benefic pentru a efectua o statistic a
ncercrilor de intruziune i a dezvolta msurile necesare de stopare. De asemenea, pot fi fcute calcule
statistice privind incidena acestor evenimente.
Dispozitivele de supraveghere sunt menite s preia informaia din reea i s o analizeze pentru a
se prentmpina pierderea de date.

5.4. Procesul de detectare a intruziunii la nivelul firmei


Pentru majoritatea firmelor, asigurarea securitii se limiteaz la programele antivirus.
Folosirea de dispozitive firewall reprezint pentru acestea un obiectiv prea greu de realizat. Despre
detectoare de vulnerabilitate i intruziune nici nu poate fi vorba. Sunt ns i firme, chiar de mrime
medie, care au implementate toate aceste msuri.
Implementarea unor msuri de securitate minime este de preferat fa de absena acestora.
Msurile de securitate trebuie ns s implementeze politica de securitate a firmei. n absena
acesteia, msurile de securitate vor fi haotice.
Prima msur ar fi una administrativ care va presupune asigurarea unui perimetru de securitate
pentru tehnica de calcul i restricii de acces la aceasta.
Apoi se vor implementa msurile de acces care presupun controlul accesului propriu-zis la date.
Se vor alege conturile i parolele pentru fiecare utilizator, precum i regulile de autorizare.
Alegerea i folosirea parolelor trebuie s fie fcut innd cont de urmtoarele reguli:
nu vor exista conturi fr parole;
103

nu se vor lsa conturile i parolele cu care vin o parte din calculatoare sau programe. De
exemplu, contul SUPER i parola VALID la programele de contabilitate i gestiune CIEL, cele
mai frecvent folosite;
contul i parola sunt individuale i vor fi folosite ca atare;
nu se scriu conturile i parolele la vedere. Este de preferat ca acestea s se scrie n agenda
personal, s fie memorate i apoi s fie terse din agend;
nu se vor introduce contul i parola de la tastatur atunci cnd cineva se uit;
nu se va trimite parola n reea sau prin e-mail;
nu se vor folosi sub nici o form ca parol numele, prenumele, diminutivul, data de natere a
utilizatorului sau numele i prenumele persoanelor din familia acestuia;
nu se va folosi o parol mai mic de ase caractere;
nu se va folosi o parol care conine cuvinte dintr-un dicionar din limba respectiv sau din orice
alt limb;
se vor folosi parole prin mixarea caracterelor mari i mici. Anumite programe sunt case
sensitive., fcnd difereniere ntre caracterele mici i mari ale alfabetului;
schimbarea parolei cnd se suspecteaz compromiterea acesteia;
schimbarea acesteia regulat.
n acest punct se poate spune c firma are asigurat o minim securitate. Majoritatea firmelor fac
aceste operaii i se opresc. Nu merg cu asigurarea securitii pn la capt. n cazul firmelor medii sau
mari, operaia este continuat i se vor introduce dispozitive firewall i de detectare a intruziunilor. Ce se
face ns n cazul unei ncercri de intruziune? Toate intruziunile sunt att de periculoase nct s
blocheze o parte a reelei sau un calculator? De exemplu, o comand ping www.firma.ro .t, executat de
un utilizator cruia nu-i merge bine conexiunea de internet i vrea s aib acces la datele publice din
site-ul firmei, nu trebuie s fie urmat de msuri dramatice. Sau acelai lucru dac unui angajat nu-i
funcioneaz la parametri conexiunea cu serverul i folosete o comand ping n ateptarea personalului
de depanare.
Detectoarele de intruziune sunt configurate, n majoritatea cazurilor, s dea ele replica la o ncercare
de intruziune. Acest lucru este benefic dac ncercarea este una cunoscut. Experii recomand ca acest
lucru s se fac totui manual, deoarece un rspuns automat poate fi folosit de un mecanism de
interzicere a serviciului (DoS). Dar acest lucru presupune existena unui personal extracalificat n firma
care s monitorizeze traficul. i unele firme, cele mici, nu i-l permit.
n cazul unor ncercri de intruziune din partea angajailor firmei, inerea unor jurnale de activiti la
nivel de reea este obligatorie i benefic pentru a se dovedi intenia. Aceste jurnale pot fi folosite ca
probe n acionarea n justiie a vinovailor. n anumite situaii, angajaii folosesc serviciul de e-mail
pentru diferite farse adresate colegilor de serviciu. O configurare static a adreselor IP va permite
extragerea cu uurin din header-ul de e-mail a adresei calculatorului-surs i pedepsirea vinovatului.
Dac spre exemplu mesajul primit are urmtoarea identitate (se afieaz din opiunile .Properties.,
.Detail. la Outlook sau Outlook Express sau din .Header Detail. la Yahoo):
Message-ID: 002201c47593$a4f7c4c0$1e0ba8c0@x, putem determina din ultimul grup de cifre,
cuprins ntre ultimul .$.i .@., IP-ul calculatorului de la care a fost trimis mesajul. Gruparea 1e0ba8c0 n
hexazecimal citit invers n grupuri de cte dou cifre este 192.168.11.30 n zecimal.
Aflarea
fptaului este uneori dificil atunci cnd acesta folosete tehnici de ascundere a identitii sau programe
de anonimizare.

104

Capitolul VI. Securizarea bazelor de date


6.1. Tehnici de securizare
Sarcina de a se asigura securitatea bazelor de date este mprit ntre sistemul de gestiune al
bazelor de date i sistemul de operare. Acestea pot s asigure fiecare n totalitate o parte din funciile de
asigurare a securitii sau pot s fie complementare n realizarea acestora. Atribuiile n asigurarea
securitii bazelor de date sunt exemplificate n tabelul urmtor (tabelul 8):
Tabelul 9. Atribuii n asigurarea securitii bazelor de date.

Controlul asupra atacurilor


Anterior am vzut c, din date nesenzitive, prin diverse interogri ale bazei de date au rezultat date
senzitive.
Pentru a se prentmpina acest lucru se pot aplica urmtoarele metode:
suprimarea cererilor cu rezultate senzitive;
aproximarea rezultatelor;
limitarea rezultatelor unei cereri care dezvluie date senzitive;
combinarea rezultatelor.
Cererile de acces la elementele bazei de date care au ca rezultat afiarea unor rezultate senzitive
sunt rejectate fr nici un rspuns. Datele senzitive nu vor fi afiate. Rezultatul unei astfel de interogri va
fi corect, dar nu va fi afiat ctre utilizator.
n cazul unei astfel de cereri sistemul va putea s afieze rezultate apropiate de cele reale.
Acurateea rezultatului la o interogare care poate dezvlui date senzitive trebuie s fie mic. Limitarea
rezultatului unei cereri, care dezvluie date senzitive se poate face n cazul n care acesta este 1 (unu).
Dac vom aplica pe rnd atacuri (figura 43) cu funcii de forma exemplificat n figura 44 i vom
centraliza rezultatele sub form de tabel (tabelul 9), vom vedea c avem rezultate dominante care trebuie
suprimate.

105

Figura 43. Tabela supus atacului.

Figura 44. Atacul indirect folosind funcia COUNT condiionat.


Tabelul 9. Centralizarea rezultatelor

n aceast situaie trebuie s suprimm cererile care au ca rezultat valori dominante (1) sau s nu
permitem afiarea rezultatelor chiar dac cererea se execut n aa fel nct rezultatele s fie afiate sub
forma urmtoare (tabelul 10):
Tabelul 10. Afiarea cu suprimare a rezultatelor

106

Se observ c situaia nu este rezolvat, trebuind s modificm i sumele pe linii i pe coloane


pentru a se crea confuzie i a nu se mai putea extrage date senzitive.
Combinarea rezultatelor se face prin afiarea acestora ntr-o plaj de valori care s nu permit
extragerea datelor exacte. Fcnd o contorizare pe tip de sanciuni i gruparea acestora pe sexe, vom avea
situaii dominante (tabelul 11):
Tabelul 11. Rezultate contorizri

Soluia ar fi combinarea coloanelor pentru a nu se putea extrage date exacte.


Combinm coloanele cu 0cu 1 i 2 cu 3. Rezultatul este urmtorul (tabelul 12):
Tabelul 12. Combinarea rezultatelor

Pentru a se prentmpina atacurile este necesar s se in o eviden amnunit pentru fiecare


utilizator, chiar dac acest lucru presupune o activitate complex i implic timp.
De asemenea, trebuie fcut o analiz a cererilor care pot fi ru intenionate.
Pentru a prentmpina extragerea datelor senzitive din bazele de date am realizat un program care
monitorizeaz toate operaiile efectuate de utilizatori pe bazele de date.
Operaiile de monitorizare efectuate de acest program au fost prezentate n acest capitol,
paragraful 5.1. La acest punct suntem interesai doar de fiierul baz de date accesat de utilizator, tipul
de operaii efectuate i listarea acestora. n acest mod, toate operaiile efectuate de utilizatori pot fi
analizate i se pot trage concluzii privind securitatea bazelor de date ale firmei.

Securitatea bazelor de date multinivel


Se disting trei caracteristici de baz ale securitii bazelor de date:
1. Securitatea unui singur element poate fi diferit de securitatea altui element din aceeai
nregistrare sau de valoarea aceluiai atribut. Aceasta implic implementarea securitii pentru
fiecare element n parte.
2. Sunt necesare cteva perimetre se securitate care vor reprezenta arii de acces la anumite date care
uneori se pot suprapune.
3. Securitatea unui ntreg poate fi diferit de securitatea unui element individual.
Aceasta poate fi mai mare sau mai mic.
Pentru a se asigura securitatea bazelor de date se pot aplica urmtoarele metode:
partiionarea bazei de date;
criptarea;
blocarea integritii;
107

blocarea senzitivitii;
securitatea front-end;
filtru comutativ;
vederi ale bazei de date.
Partiionarea bazei de date

Baza de date este mprit n baze de date separate, fiecare dintre acestea cu propriul ei nivel de
securitate. Operaia mai poart numele de atomizarea bazei de date. Ca efect secundar, aceast operaie va
distruge avantajul principal al bazei de date dar mbuntete precizia.
Criptarea
Dac datele senzitive sunt criptate, un utilizator care ajunge din ntmplare n posesia unor date
senzitive nu va putea s le interpreteze i s se foloseasc. Aceasta criptare este ns vulnerabil la atacuri
cu text clar sau cnd atacatorul substituie forma de criptare cu o alta. Pentru a se prentmpina aceasta se
pot face urmtoarele:
folosirea de criptri diferite pentru aceeai nregistrare i diferite chei pentru fiecare cmp;
criptarea cmpurilor nregistrrii folosind metoda block chaining (CBC, CFB etc.).
Aceste metode de criptare sunt exemplificate n figura urmtoare (figura 45).

108

Figura 45. Criptarea nregistrrii.


Blocarea integritii
Reprezint o cale folosit att pentru blocarea integritii, ct i pentru limitarea accesului la baza
de date. Metoda mai poart i denumirea de .spray paint. deoarece fiecare element este colorat n funcie
de senzitivitatea acestuia. Culoarea este meninut cu elementul pe care-l caracterizeaz i nu ntr-o baz
de date separat.
Fiecare dat va conine trei elemente:

109

Datele vor fi stocate n text clar pentru sporirea eficienei.


Referitor la clasificare, aceasta trebuie s fie:
nefalsificabil - un utilizator ruvoitor nu va putea crea o nou dat senzitiv pentru un element;
unic - utilizatorul ruvoitor nu va putea s copieze un nivel de senzitivitate dintr-un alt element;
secret - utilizatorul ruvoitor nu va putea s determine senzitivitatea pentru un obiect oarecare.

Suma de control criptografic, pentru a putea s fie unic, trebuie s conin date despre:
nregistrare;
cmp;
date ale elementului (figura 46).

Figura 46. Suma de control criptografic.


Blocarea senzitivitii
Blocarea senzitivitii reprezint o combinaie a dou elemente:
existena unui identificator unic (numrul de nregistrare);
nivelul de securitate.
Trebuie s nu se permit aflarea a dou elemente care au acelai nivel de securitate doar prin
cutarea n poriunea de securitate a blocrii integritii. Ca rezultat al criptrii, coninutul blocrii, n
special nivelul de securitate, este ascuns (figura 47).

110

Figura 47. Blocarea senzitivitii.


Securitatea front-end
Securitatea front-end (cunoscut i sub denumirea de gard) este asigurat de un mecanism de tip
monitor.
Secvena de interaciuni ntre utilizator i mecanismul front-end este urmtoarea:
utilizatorul se identific front-end;
utilizatorul transmite o cerere mecanismului front-end;
mecanismul front-end verific autorizaia utilizatorului de a acces la date;
mecanismul front-end trimite o cerere ctre sistemul de gestiune al bazei de date (SGBD);
sistemul de gestiune al bazei de date (SGBD) efectueaz o operaie de acces de tip I/O;
sistemul de gestiune al bazei de date (SGBD) trimite rezultatul interogrii ctre mecanismul frontend;
mecanismul front-end verific validitatea datelor extrase cu ajutorul sumelor de control i verific
dac datele pot fi disponibile ctre utilizator conform nivelului de acces al utilizatorului;
mecanismul front-end va formata datele pentru utilizator;
se transmit datele ctre utilizator.
Filtru comutativ
Filtrul comutativ interacioneaz att cu utilizatorul, ct i cu sistemul de gestiune al bazei de date
(SGBD).
Filtrul comutativ va reformula cererile n felul urmtor:
sistemul de gestiune al bazei de date (SGBD) va efectua ct mai multe sarcini posibile rejectnd
ct mai multe cereri inacceptabile care dezvluie date senzitive;
selectarea datelor la care utilizatorul poate s aib acces.
Filtrul comutativ poate fi folosit att asupra nregistrrilor, ct i asupra atributelor sau
elementelor.
111

La nivelul nregistrrilor, filtrul cere datele dorite plus suma de control criptografic; dac acestea
verific acurateea i accesibilitatea datelor, atunci acestea pot fi transmise ctre utilizator.
La nivel de atribut, filtrul verific dac toate atributele din cererea utilizatorului sunt accesibile
acestuia, i dac da, transmite cererea ctre managerul bazei de date. La revenire va terge toate cererile la
care utilizatorul nu poate s aib acces.
La nivel de element, sistemul va cere datele solicitate i suma de control criptografic. Cnd sunt
returnate, acestea verific apartenena la niveluri de securitate pentru fiecare element.

Vederile
Vederile reprezint un subset al bazei de date la care utilizatorul poate avea acces. Vederile pot
reprezenta un subset al bazei de date pentru un singur utilizator, n acest caz cererile celorlali utilizatori
vor accesa acelai tip de date. Datele care sunt accesibile unui utilizator se obin prin filtrarea coninutului
bazei de date originale. Utilizatorul nu este contient de existena tuplurilor care lipsesc din vederea
respectiv. O vedere poate fi definit din mai multe tabele, pentru care utilizatorul deine privilegiul
corespunztor de utilizare, dar nu i de folosire a tabelelor de baz. Utilizarea, n acest caz a vederilor,
este mai restrictiv dect simpla deinere a privilegiilor acordate utilizatorului asupra tabelelor de baz.
SGBD-ul stocheaz definiia vederii n baza de date. Cnd SGBD-ul ntlnete o referire la o vedere,
caut aceast definiie i transform cererea respectiv ntr-o cerere echivalent ctre tabelele care
constituie sursa vederii, dup care efectueaz cererea.
Folosirea vederilor pentru asigurarea securitii bazelor de date mai este ntlnit n literatura de
specialitate i sub denumirea de securitate discreionar i este caracteristic sistemelor bazate pe SQL.
Folosirea vederilor bazelor de date are ca efect crearea unor faciliti n exploatare, dar poate
aduce i dezavantaje (tabelul 12).
Tabelul 12. Avantajele i dezavantajele folosirii vederilor

Cu ajutorul instruciunilor SQL se pot crea vederi orizontale i verticale. Sintaxa este urmtoarea:

112

Exemplificm pe tabela urmtoare (SALA)(tabelul 13).


Tabelul 13. Tabela SALA (salariai)

Crearea vederii orizontale se face n felul urmtor:


CREATE VIEW SORT_O
SELECT *
FROM SALA
WHERE SALB >6000000
Rezultatul va fi urmtorul:
SORT O

Crearea vederii verticale se face n felul urmtor:


CREATE VIEW SORT_V
SELECT NUME, SALB, COMP
FROM SALA
Rezultatul va fi urmtorul:

SORT V

113

Se pot aplica, de asemenea, i combinaii ale acestora; n acest fel se creeaz vederi mixte. Vom
considera urmtorul scenariu (figura 48):

Figura 48. Scenariu de lucru pentru crearea vederilor mixte.


Structura bazelor de date pentru acest scenariu este exemplificat n cele ce urmeaz.
Pentru personalul angajat vom avea urmtoarea structur (tabelul 14):

114

Tabelul 14. Structura personal angajat (SALA).

Pentru obiectivele pe care firma le are de executat vom avea urmtoarea structura (tabelul 15):
Tabelul 15. Structur proiecte firm (PROI).

DENP - denumire proiect, OBIE - obiectiv, CLIE - client/beneficiar, MANA - responsabil


proiect.

Tabela de legturi are urmtorul coninut (tabelul 16):


Tabelul 16. Tabela de legturi (LEGA).

Aplicm vederile.
CREATE VIEW SALA_PROD AS
SELECT CNP, NUME, COMP FROM SALA
WHERE COMP = P
Cu rezultatul (tabelul 17):
115

Tabelul 17. Vedere SALA_PROD.

i
CREATE VIEW COMP_ANTR AS SELECT DENP, OBIE, COMP FROM PROI,
LEGA, ANGA WHERE SALA.CNP = LEGA.CNP AND LEGA.DENP = PROI.DNP
Cu rezultatul (tabelul 18):
Tabelul 18. Vedere COMP_ANTR.

Acest mecanism de securitate este aplicat n SQL. La definirea vederilor prin CREATE VIEW, se
poate limita accesul numai la bazele de date al cror proprietar este utilizatorul respectiv, folosind o
condiie selecie cu cuvntul cheie USER, prin care se d identificatorul utilizatorului. Orice operaie din
baza de date se face numai pe baza unei autorizri pentru acea operaie. Iniial, sistemul acord toate
drepturile de operare pentru administratorul sistemului (SYSADM) i nu acord nici un drept celorlali
utilizatori. Ulterior, drepturile de operare pentru utilizatori sunt stabilite de ctre administratorul
sistemului prin intermediul instruciunii GRANT i revocate prin instruciunea REVOKE. Sintaxa acestor
comenzi este exemplificat n figura 49.

116

Figura 49. Sintaxa comenzilor GRANT i REVOKE.

6.2. Arhitecturi pentru asigurarea securitii bazelor de date


La ora actual exist dou abordri majore pentru asigurarea securitii bazelor de date. Acestea au
n vedere ncrederea care poate fi acordat celor dou elemente care vor interaciona cu bazele de date, i
anume: sistemul de gestiune al bazelor de date (SGBD) i sistemul de operare (SO - Operating System).
innd cont de acestea, vom avea urmtoarele dou abordri:
arhitectur cu subieci siguri;
arhitectur cu subieci nesiguri (arhitectura Woods Hole).
Arhitectura cu subieci siguri pornete de la presupunerea c att SGBD-ul, ct i SO care vor
interaciona cu bazele de date sunt sigure (de ncredere). Aceast abordare se ntlnete la majoritatea
SGBD-urilor (Sybase, Informix, Ingres, Oracle, DEC, Rubix).
Arhitectura cu subieci nesiguri pornete de la presupunerea c SO este sigur, dar SGBD-ul este
nesigur.
117

Aceast arhitectur este implementat n trei variante:


arhitectur cu blocarea integritii;
arhitectur integrat;
arhitectur replicat/distribuit.

Acest tip de arhitectur se implementeaz la SGBD-urile TRUEDATA i Oracle, precum i la


altele mai puin cunoscute, aflate n faza de prototipuri, Mitre i SeaView.
Arhitectura cu subieci siguri este prezentat n figura 50.

Figura 50. Arhitectur cu subieci siguri.


ntruct se pleac de la presupunerea c att SDBD-ul, ct i SO asigur o protecie suficient,
mecanismele de securitate de tip .front end. nu sunt implementate n versiuni sofisticate. Se observ c
att utilizatorii cu drepturi depline (superutilizatorii), ct i utilizatorii cu restricii au acces la date
beneficiind de securitatea asigurat de SGBD i SO.
Arhitecturile cu subieci nesiguri merg pe presupunerea c SO asigur o protecie de nivel nalt, iar
SGBD-ul o protecie medie. n acest caz, mecanismele de securitate de tip front end trebuie s asigure o
securitate ridicat.
Arhitectura cu blocarea integritii este prezentat n figura 51.
118

Figura 51. Arhitectur cu blocarea integritii


Se observ c mecanismul de securitate front end dispune de o puternic unitate de criptare, care
asigur accesul la date att pentru utilizatorul cu drepturi depline, ct i pentru utilizatorul care are
restricii la accesare. Fiecare, ns, la datele pentru care are drepturi de accesare.

119

Figura 52. Arhitectur integrat.


n cazul arhitecturii integrate (figura 52), accesul se face prin dou tipuri distincte de SGBD-uri.
Sistemul de operare, care este considerat sigur, va avea un rol important n asigurarea accesului la datele
care sunt dispuse pe disc. Din punct de vedere al accesului la date se observ o asemnare cu arhitectura
replicat/distribuit (figura 53).

120

Figura 53. Arhitectur replicat/distribuit.


Arhitectura replicat/distribuit (figura 53) folosete un mecanism de replicare sigur care va
canaliza cererile. Utilizatorul cu drepturi depline (superutilizatorul) va avea acces, prin intermediul acestui
mecanism, i la datele utilizatorului cu restricii (dac este specificat aceasta n drepturile de acces).

121

Capitolul VII. Steganografia


7.1. Introducere
Steganografia, este tiina ascunderii datelor. Cuvntul steganografie, provine din limba greac i
nseamn scris ascuns; acest cuvant, a folosit pentru prima oara de un stare care a publicat n 1499 o
lucrare intitulat "Steganographia" i care trata tehnici de scris ascuns. Steganografia, include o varietate
mare de metode de comunicare secret. Printre aceste metode, se numr: scrierea cu cerneal invizibila,
microfotografii, aranjarea caracterelor (o alta aranjare dect cea obinut prin criptografiere), s.a.
Steganografia, nu nlocuiete criptografia, ea oferind nc un strat de protecie dac acestea dou
sunt folosite mpreun.
Importana steganografiei, a fost evideniata mai ales n timpul razboaielor, ea fiind folosit de
sute de ani, sub diferite forme. Primul document care descrie folosirea steganografiei pentru ascunderea
mesajelor transmise, este scris de Herodot. n Grecia antica, se scria pe tablie de lemn acoperite cu ceara.
Astfel, pentru a transmite mesaje care s nu dea de bnuit, ceara era dat jos de pe tblia de lemn,
mesajul era ncrustat direct pe lemn, dup care era acoperit din nou cu cear.
O alt metod era raderea n cap a unui mesager, tatuarea pe cap a unui mesaj, dup care se atepta
creterea prului.
O alt cale de transmitere a mesajelor, era scrierea cu substane invizibile. Asemenea substane au
fost folosite cu mare succes n al doi-lea rzboi mondial. Astfel, o scrisoare care prea banal, putea
conine diferite mesaje scrise ntre rnduri. La nceputurile celui de-al doi-lea rzboi mondial, tehnicile de
steganografie, constau aproape n exclusivitate din scrierea cu substane invizibile. Aceste substane
puteau fi: lapte, oet, suc de fructe, urina, etc.
Cu avansarea tehnologiei, aceste "cerneluri" au fost nlocuite cu substane tot mai sofisticate, care
reacionau la diferite substante chimice, iar pentru obinerea mesajului, hrtia era trecut prin bi cu
diferite substane.
O alta cale de transmitere a mesajelor, era "spargerea" textelor n litere i punerea lor ntr-o
anumit poziie n cuvinte care formeaz un text care nu trezete nici o suspiciune. O astfel de tehnic, a
fost folosit de un spion german n cel de-al doilea razboi mondial. Unul din textele pe care le-a trimis,
era urmtorul:
"Apparently neutral's protest is thoroughly discounted and ignored. Isman hard hit. Blockade issue
affects pretext for embargo on by products, ejecting suets and vegetable oils."
Astfel, dac se ia a doua liter din fiecare cuvnt, se obine mesajul: "Pershing sails from NY June
1".
Cu dezvoltarea tehnicilor de detectare a mesajelor, s-au dezvoltat i tehnicile de steganografie,
inventndu-se noi metode care puteau s transmit mai mult informaie ntr-o form mai ascuns.
Germanii, au inventat microfotografiile, metod prin care se putea transmite printr-o fotografie de
mrimea unui caracter, pagini de ziar cu o claritate uimitoare. Prima microfotografie, a fost descoperit pe
un plic, care era dus de un agent german n 1941.
Dar, cu fiecare metod de steganografie care a fost descoperit, o alta a fost inventat. Chiar i
aranjarea n pagin a unui document, poate ascunde un mesaj. De exemplu, dac se ia textul :
"We explore new steganographic and cryptographic
algorithms and techniques throughout the world to
122

produce wide variety and security in the electronic web


called the Internet."
i se muta cu cteva spaii unele cuvinte din text, se obine textul:
"We explore new steganographic and cryptographic
algorithms and techniques throughout the world to
produce wide variety and security in the electronic web
called the Internet."
Dac cele dou texte se suprapun, se obine:
"We explore new steganographic and cryptographic
algorithms and techniques throughout the world to
produce wide variety and security in the electronic web
called the Internet."
Aceasta, este obinut prin expandarea cu un spaiu nainte de "explore", "the", "wide" i "web" n
primul text i condensarea cu un spaiu dup "explore", "the", "wide" i "web" n al doilea text.

7.2. Software steganografic


Software-ul steganografic, este nou i foarte eficace. Asemenea software, permite ascunderea
informaiilor n fiiere de sunet, imagini i pe medii care aparent par goale.
O imagine, este reprezentat ca un ir de numere, care reprezint intensitile luminii n diferite
puncte (pixeli). O rezolutie destul de folosit a unei imagini este cea de 640 pe 480 pixeli, avnd 256 de
culori (8 biti pe pixel). O astfel de imagine conine aproximativ 300K de date.
De obicei, sunt dou tipuri de fiiere folosite pentru a ascunde date ntr-o imagine: fiierul imagine
iniial, numit container i mesajul care se dorete a se ascunde. Mesajul care se ascunde poate fi simplu
text, un text criptat, o alt imagine sau orice altceva ce poate fi ascuns n biii cel mai puin semnificativi
(ultimul bit al unui byte).
De exemplu, o imagine cu rezoluia de 1024x768 pe 24 de biti (3 bytes sau octeti), poate produce
un fiier de peste 2MB (1024x768x24/3). Toate variaiile de culori, sunt derivate din 3 culori principale:
rou, verde i albastru. n aceast imagine, fiecare culoare este reprezentat de 3 octei (fiecrei culori
principale, i revine cte un octet). Dac informaia este ascuns n fiecare cel mai puin semnificativ bit, 3
bii, pot fi ascuni n fiecare pixel. Imaginea container, va arta exact la fel cu imaginea n care au fost
ascunse datele (deoarece ochiul uman nu face distincie ntre 2 culori att de apropiate) i va avea aceai
mrime (deoarece doar se nlocuiete ceva cu altceva, neadugndu-se sau tergndu-se nimic).
Fiierele imagine care sunt cele mai recomandate, sunt imaginile pe 24 de bii (alternativa puin
acceptat deoarece ocup un spaiu mare) care pot ascunde mult informaie sau fiierele care conin
imagini alb-negru, deoarece diferenele de culoare sunt foarte departate. Astfel, imaginea din figura 54
conine culorile posibile ale unei imagini alb-negru pe 1 octet (2 =256 culori).

123

Figura 54. culorile posibile ale unei imagini alb-negru pe 1 octet


Orice culoare dintr-o astfel de imagine, poate fi nlocuit cu o alt culoare pe 4 bii, iar restul de
patru s fie folosii pentru ascunderea datelor. Exemplu de paleta de culori pe 4 bii:

7.3. Exemple
Pentru a arta diferena dintre o imagine obinuit i o imagine steganografiat, am inclus nite
teste (cam vechi, de prin 1998) fcute cu diferite softuri steganografice.
Mesajele care se doresc transmise, sunt un text n limba engleza i o imagine, astfel:
Mesajul 1, notat cu M1:
"Steganography is the art and science of communicating in a way which hides the existence of the
communication. In contrast to cryptography, where the "enemy" is allowed to detect, intercept and modify
messages without being able to violate certain security premises guaranteed by a cryptosystem, the goal
of steganography is to hide messages inside other "harmless" messages in a way that does not allow any
"enemy" to even detect that there is a second secret message present [Markus Kuhn 1995-07-03].".
Mesajul 2, notat cu M2, este o imagine din satelit a unei baze sovietice de bombardiere din Dolon,
Kazakstan, fcut pe 20 August 1966 i esste redat n figura 55.

124

Figura 55. Imaginea M2 din satelit a unei baze sovietice de bombardiere din Dolon, Kazakstan
Astfel de fotografii (din anii 1960), pot fi luate de pe site-ul http://edcwww.cr.usgs.gov/dclass.
Imaginile container care vor fi folosite, sunt o poz a unui Renoir i un portret al lui William
Shakespeare.
Primul fiier container, notat cu C1, se poate gsi pe site-ul unui muzeu francez la
http://www.cnam.fr/wm/paint/auth/renoir.

125

Figura 56. Imagine container C1 repezentnd o pictura de Renoir


Al doi-lea fiier container, notat cu C2, (portretul lui William Shakespeare) poate fi luat de pe
site-ul http://www.cultureware.com/cultureware/shakespeare

Figura 57. Imagine container C2 repezentnd o portretul lui William Shakespeare


Imaginea lui Shakespeare, este prea mic pentru a ascunde mesajul M2, dar se poate ascunde
mesajul M1, fr s se observe aproape nici o diferen. Din soft-urile testate, doar dou au reuit s
ascund mesajul M2, mesajul M1, fiind ascuns de orice soft, n orice container. n al doi-lea set de teste sa incercat ascunderea ambelor mesaje (M1 si M2) ntr-un singur container (s-au folosit tot C1 i C2, sau
alte containere).
Soft-urile cu care s-au fcut testele, sunt: Hide and Seek, StegoDos, White Noise Storm si STools. Toate aceste programe sunt shareware.
126

Aproape fiecare autor al acestor soft-uri a recomandat criptarea mesajelor naintea


steganografierii, unele chiar folosind-o direct.

7.3.1. Hide and Seek


Nu a reusit dect s ascund mesajul M1. Acesta este ascuns n containerul C2. Imaginea din
stnga este imaginea original, iar cea din dreapta, imaginea cu mesajul M1.

7.3.2. StegoDos
Este destul de dificil de folosit, att la "punerea" textului, ct i la "luarea" lui. La fel, imaginea din
stnga reprezint imaginea original. Nu s-a reuit dect includerea mesajului M1.

127

7.3.3. White Noise Storm


Cu acest soft, s-a reuit ascunderea i a mesajului M2. Este destul de usor de folosit i se obine o
degradare foarte mic a containerului. Imaginea de mai jos, conine rezultatul nscrierii lui M1 n C2.
Acest soft, include i o rutina de criptare nainte de a ascunde mesajul n container.

Rezulatul includerii bazei aviatice n Renoir, este dat mai jos.

128

7.3.4. S-Tools
Este cel mai bun soft testat. Cuprinde mai multe aplicaii, printre care ascunderea de mesaje n
fiiere .bmp, .gif, n fiiere .wav i chiar pe dischete goale. i acest soft, cuprinde posibilitatea de criptare
a mesajului, el folosind algoritmii Idea, MPJ2, DES, 3DES si NSEA. Imaginea de mai jos, cuprinde
containerul C2, nainte (dreapta) i dup inscripionarea lui M1.

Imaginea de mai jos, cuprinde containerul C1, n care este mesajul M2:

129

Concluzii
Steganografia, nu este facut pentru a nlocui criptarea, ea fiind un element suplimentar
care sporete posibilitatea transmiterii de mesaje, fr a fi detectate. Astfel, dac se tie c
o imagine conine un mesaj, acel mesaj, va trebui nti scos din container i apoi decriptat
(lucru nu tocmai uor).
Avantajul steganografiei, este c nu trezete nici o bnuiala, deoarece este un fiier text,
grafic, etc. care la prima vedere pare inofensiv. Dar, dac un anumit mesaj, criptat i apoi
trimis, este vzut de o a treia persoan, acesta poate atrage suspiciuni.

Esenta:

Scopul criptografiei este de a nu dezvlui nelesul unui mesaj. Criptografia


dezvluie faptul c exist comunicaie ntre dou pri.
Scopul steganografiei este de a ascunde existena comunicaiei secrete.
Steganografia implic ascunderea datelor intr-un mesaj deschis, astfel inct s fie
dificil pentru un adversar s detecteze i s nlture aceste date. Pentru a urma acest scop,
exist trei principii importante folosite pentru a msura eficacitatea unei anumite tehnici
steganografice: cantitatea de date, dificultatea detectiei si dificultatea inlaturarii.
Cantitatea de date - cu cat de pot ascunde mai multe date cu atat tehnica este mai
buna.
Dificultatea detectiei - se refera la cat de usor este pentru cineva sa detecteze ca un
mesaj a fost ascuns. De obicei, exista o legatura directa intre cat de multe date se pot
ascunde si cat de usor este pentru cineva sa le detecteze. Cu cat se mareste
cantitatea de date, cu atat se maresc sansele ca cineva sa descopere ca exista
infomatie ascunsa n acel fisier.
Dificultatea stergerii implica faptul ca : o persoana care intercepteaza fisierul nu
trebuie sa fie capabila sa stearga n mod usor datele ascunse.

Aplicatii:
1. Lucent Technologies, numit Media TraX, care integreaz informatie digital in
imaginile TV intr-un mod imperceptibil pentru ochiul uman. Aceast informatie
poate fi ins recuperat si folosit ulterior
2. digital watermarking, procedeul de introducere a informatiei in imagine, muzic
sau software, utilizand principiul steganografiei. Un model de biti inserat intr-o
imagine digital, intr-un fisier audio sau video, poate contine toate informatiile
legate de copyright (autori, anumite drepturi etc.). Watermark-urile digitale trec
complet neobservate, vizual sau auditiv. Ele trebuie s fie indeajuns de stabile
pentru a putea face fat schimbrilor normale fcute fisierului, ca de exemplu
aplicarea unor algoritmi de compresie.
3. fingerprinting: Internetul a creat noi modalitti de atragere si mentinere a
utilizatorilor, acum aprand din ce in ce mai multe posibilitti de a construi servicii
cu valoare adugat. Aceste cercetri sunt utile in urmrirea si detectarea celor care
incalc regulile de copyright
130

7.4. Compresia
Dup partea de grafic, partea de compresie, este cea mai grea (datorit lipsei de documentaii). n
aceast categorie, vom include informaii despre fractali i despre unele formate de fiiere. Cu toate c
este vorba tot de compresie, aici nu vom include informaii despre fiierele imagine sau film, lsndu-le
pentru partea de grafic.
Compresia, este folosirea unor funcii recursive pentru a crea fiiere de dimensiuni mai mici prin
eliminarea redundanei (a repetiiilor). Un arhivator, este un program care ia ca argumente unul sau mai
multe fiiere, le comprim i produce un singur fiier arhiv.

7.4.1. Compresia Huffman


Compresia Huffman, este o tehnic de compresie statistic, care d o reducere a codului folosit
pentru reprezenta simbolurilor alfabetului; adica, cu biti mai putini sunt reprezentate caracterele care apar
mai des, iar caracterele care apar mai rar, cu bii mai muli. Un cod Huffman, poate fi construit n felul
urmtor:
se ornduiesc toate simbolurile n ordinea probabilitii de apariie
succesiv, se combin dou simboluri cu probabilitate mic, pentru a crea un simbol compus nou;
eventual, se creaz arborele binar, unde fiecare nod, este probabilitatea tuturor nodurilor de la
nivelele inferioare
se caut un drum la fiecare frunz, observndu-se direcia.
Pentru o frecven de distribuie dat, sunt mai multe coduri posibile Huffman, dar lungimea
fiierului comprimat, va fi aceai.
O alt tehnic de compresie nrudit cu compresia Huffman, este Shannon-Fano, care funcioneaza
astfel:
1. se mparte mulimea de simboluri n dou submulimi egale sau cel puin egale ca mrime pe baza
probabilitii de apariie a caracterelor din mulimea-mama. Primei mulimi ii este asociat un zero
binar, iar celei de-a doua un unu binar.
2. se repet pasul 1 pn cnd toate submulimile au un singur element
Algoritmul Huffman, acioneaza de jos n sus, iar algoritmul Shannon-Fano, acioneaza de sus n
jos; cea mai bun compresie o d algoritmul Huffman, algoritmul Shannon-Fano, dnd cteodat civa
bii n plus. Cei doi algoritmi, dau o compresie bun dac probabilitatea apariiei simolurilor, sunt intregi,
puteri ai lui (care, de obicei, nu este aa).

7.4.2. Codarea aritmetica


Codarea aritmetic, este folosit cnd probabilitatea apariiei simbolurilor nu sunt ntregi, puteri ai
lui 1/2; aceast codare, obine acelai efect ca i codarea Huffman, tratnd mesajul ca un tot unitar, i,
teoretic obine compresia maxim pentru orice surs.
Codarea aritmetic, funcioneaz prin reprezentarea unui numar, printr-un interval de numere reale
ntre 0 i 1. Cu ct mesajul devine mai lung, cu att intervalul folosit pentru a-l reprezenta devine tot mai
131

mic i numrul de bii utilizai pentru a reprezenta respectivul interval devine tot mai mare. Simbolurile
succesive din mesaj, reduc acest interval, n conformitate cu probabilitatea apariiei simbolului.
Aceasta, este una dintre cele mai bune tehnici de compresie, dar nu este prea folosit deoarece este
o mare consumatoare de resurse (att de memorie, ct i de procesor), folosindu-se alte alternative, cum ar
fi compresia prin substituie.

7.4.3. Compresia prin substitutie


Ideea de baz la aceast compresie, este nlocuirea apariiilor repetate a unei fraze sau a unui grup
de simboluri (litere, cifre, etc.) cu o referin, care s indice prima apariie a frazei, grupului de simboluri,
etc. Aceast familie de compresoare, are dou clase, numite dup (iniialele numelor) Jakob Ziv i
Abraham Lempel, primii care le-au propus, n 1977 i 1978.
Familia LZ78
Aceast familie funcioneaza prin introducerea de fraze ntr-un dicionar, i cnd este gsit o
repetiie a acelei fraze, se nlocuiete fraza cu indexul din dicionar. Exist mai muli algoritmi care se
bazeaz pe aceast idee, dar diferena principal, este modul n care lucreaz cu dicionarele. Cel mai
cunoscut algoritm de acest tip, este LZW, creat n 1984 de Terry Welch, care a fost implementat i n
controller-ele de hard disk.
LZW ncepe cu un dicionar de 4K, din care intrrile de la 0 la 255, fac referire la simboluri
individuale, i intrrile 256-4095 la subiruri. De fiecare dat cnd un cod nou este generat, nseamn c
un nou ir a fost analizat. Noi iruri sunt generate, prin adugarea caracterului curent K, la sfritul unui
sir deja existent, w. Algoritmul de compresie LZW, este:
repet{
citete caracterul K
dac wK exist n dicionar, w=wK
altfel{
adaug wK la tabela de iruri
w=K}
}
Un exemplu al algoritmului pe irul "/WED/WE/WEE/WEB", este dat n tabelul 19:

Tabelul 19. Exemplu de algoritm pe irul "/WED/WE/WEE/WEB"


Caracterul
Codul de
Noile valori i asocierile
de intrare
ieire
de iruri
/W
/
256=/W
132

E
D
/
WE
/
WEE
/W
EB
SFARSIT

W
E
D
256
E
260
261
257
B

257=WE
258=ED
259=D/
260=/WE
261=E/
262=/WEE
263=E/W
264

irul rezultat dup aplicarea algoritmului asupra codului de intrare, este


"/WED<256>E<260><261><257>B".
Decompresia LZW, ia ca intrare codul i l folosete pentru a crea exact textul original. La fel ca i
algoritmul de compresie, algoritmul de decompresie adaug un nou ir dicionarului de fiecare dat cnd
citeste un nou cod. Un exemplu de decompresie a irului
"/WED<256>E<260><261><257>B", este dat n tabelul 20:
Tabelul 19. Exemplu de decompresie
Caracterul
Codul de
Noile valori i asocierile
de intrare
ieire
de iruri
/
/
W
W
256=/W
E
E
257=WE
D
D
258=ED
256
/W
259=D/
E
E
260=/WE
260
/WE
261=E/
261
E/
262=/WEE
257
WE
263=E/W
B
B
264=WEB
Cea mai remarcabil caracteristic a acestui tip de compresie este accea c ntreg dicionarul a fost
transmis decompresorului fr ca dicionarul s fie transmis ca un pachet suplimentar lng datele
comprimate; adic, el a putut fi recreat doar datorit datelor primite. Deci, ntreg dicionarul va fi gata
doar la terminarea procesului de decompresie.
Familia LZ77
Aceast familie de compresoare, funcioneaz astfel: pstreaz ultimii n octei vzui i cnd este
gsit o fraz care a mai fost vzut, nlocuiete fraza gsit cu poziia frazei gsite prima oara i cu
lungimea frazei. Deci, compresorul mut o "fereastr" deasupra datelor, "fereastr" care conine pe lng
133

fraz i o pereche (poziie, lungime), care indic locul, respectiv lungimea frazei din fereastr. Cei mai
folosii algoritmi, sunt cei derivai din algoritmul LZSS, descris pentru prima oar n 1982, de James
Storer i Thomas Szymanski. Aceti algoritmi, in o "fereastr" de N octei i un buffer de naintere, n al
crui coninut ncearc s gseasc o "potrivire" a "ferestrei":
Ct timp (buffer-ul de naintare nu este gol){
obine o pereche (poziie, lungime) a celei mai lungi potriviri din "fereastr", n buffer-ul de naintare;
dac (Lungime>LungimeaMinimDePotrivire){
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.
134

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

135

R. Lupan, A.Kobi, C. Robledo, I. Bacivarov, ISO 9000:2000 Quality System Improvement Using the Six Sigma
rd
Methology, Proceedings of the 3 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
136

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 clientpuzzles, Proceeding of the Cambridge Security Protocols Workshop 2000, LNCS,
Cambridge, UK, 2000

137