Documente Academic
Documente Profesional
Documente Cultură
CAPITOLUL 4
TEHNOLOGII DE SECURITATE
87
Securitatea datelor în sistemele informatice economice
Criptografia simetrică
Fiecare transformare de cifrare, Ek, este definită de un algoritm de cifrare, E comun
tuturor transformărilor 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}
88
Securitatea datelor în sistemele informatice economice
89
Securitatea datelor în sistemele informatice economice
DA EB DB EA
Text
Mesaj criptat Mesaj
M M=EA(C)
Text
clar Text
Protecţie clar
Autentificare
Figura 37. Protecţia şi autentificarea în criptosistemele cu chei publice.
90
Securitatea datelor în sistemele informatice economice
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 rezultând
de fiecare dată un text cifrat. De asemenea, se poate face parcurgerea textului şi în diagonală
sau în zig zag, pornind dintr-unul din colţuri.
Să luăm textul clar: SECURITATEA DATELOR
S E C U R I T A T E A D A T E L O R
91
Securitatea datelor în sistemele informatice economice
M1 C1
M2 C2
M3 C3
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
Mn Cn
92
Securitatea datelor în sistemele informatice economice
Substituţii monoalfabetice
Substituţia în care există o singură lege de corespondenţă între literele alfabetului primar
şi cele ale alfabetului secundar se numeşte substituţie monoalfabetică. Cea mai cunoscută
substituţie monoalfabetică este Cifrul lui Cezar. Se folosesc la cele două alfabete, primar şi
secundar, 26 de litere. Legătura între cele două cifruri se obţine prin deplasarea cu un număr
stabilit al alfabetului secundar şi stabilirea apoi a corespondenţei.
În exemplul următor se va folosi o deplasare de 3 caractere. Ci=E(Mi)=Mi+3
MI A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
CI D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
În acest fel textul clar:
Mi S E C U R I T A T E A D A T E L O R
Poate deveni:
Ci V H F X U L W D W H D G D W H O R U
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, alegând B = 0, se obţine o substituţie de forma:
C(ej) = a*ej(mod 26).
Corespondenţa ej→C(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 aceeaşi literă şi
funcţia de cifrare nu admite o inversă.
Se alege a astfel încât să fie relativ prim cu N = 26, în acest fel stabilindu-se o
permutare a alfabetului primar. De exemplu, luând a = 3, se obţine următoarea corespondenţă:
Litere primare:
Litere primare A B C …….. X Y Z
Numere echivalente, Ei 0 1 2 …….. 23 24 25
3*Ej (mod 26) 0 3 6 …….. 17 20 23
Cifru rezultat A D G …….. R U X
Literele cifrului se pot obţine din alfabetul primar şi prin următorul 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 numeşte şi
factor de selectare.
Se poate obţine un alfabet de substituire prin compunerea operaţiei de deplasare cu
operaţia de selectare. Astfel, de exemplu, alegând b = 4 şi a = 3 se obţine cifrul: C(ej) = 3(ei
+ 4)(mod 26), ceea ce este echivalent cu o transformare liniară generală de forma:
C(ej) = 3ej + 12(mod26).
93
Securitatea datelor în sistemele informatice economice
Un sistem de criptare bazat pe substituţie se poate obţine şi prin folosirea unei chei
mnemonice. Ca exemplu luăm cheia literală CRIPTARE, apoi scriem cheia numerică, care
se obţine prin numărarea literelor cuvântului-cheie, după aşezarea lor în ordinea alfabetică:
Cheia literară C R I P T A R E
Cheia numerică 2 6 4 5 8 1 7 3
S-au numerotat literele din cuvântul CRIPTARE în ordinea apariţiei în alfabet. La două
apariţii ale aceleiaşi litere în cuvântul-cheie acestea se numerotează diferit. În exemplul de mai
sus litera R a apărut în cheia literară pe poziţiile 6 şi 7. Deci cheia numerică va fi 6 şi 7.
Se scriu literele alfabetului primar sub cheia numerică sub forma:
C R I P T A R E
2 6 4 5 8 1 7 3
A B C D E F G H
I J K L M N O P
Q R S T U V W X
Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
F N V A I Q Z H P X C K S D L T B J R Z G O W E M U
Se observă în acest caz o corespondenţă biunivocă între alfabetul primar şi cel secundar.
Cu ajutorul acestei corespondenţe se poate cifra orice text clar, obţinând textul cifrat. În
acest caz, numărul corespondenţelor posibile creşte de la 26 la 26! şi ca atare această metodă
de cifrare implică operaţii criptanalitice de mare complexitate.
Se mai poate aplica încă o dată acest mod de criptare folosind cuvântul-cheie
CRIPTARE obţinând o nouă permutare. Noul tabel, pentru această substituţie, va fi de
forma:
C R I P T A R E
2 6 4 5 8 1 7 3
F N V A I Q Z H
P X C K S D L T
B J R Z G O W E
M U
Un cifru de substituţie se poate obţine şi cu ajutorul unui tabel sub formă de scară.
Pentru aceasta se scriu toate literele alfabetului, în ordinea alfabetică, sub literele cheii, cu
condiţia ca linia i să se completeze începând cu coloana i, pentru i = 1, 2, ... Apoi permutarea
fixă sau alfabetul cifrat rezultă din scrierea sub literele alfabetului primar a literelor coloanelor
tabelului scară în ordinea crescătoare.
94
Securitatea datelor în sistemele informatice economice
Cheia literară A L F A B E T
Cheia numerică 1 6 5 2 3 4 7
Se obţine tabelul sub formă de scară:
A L F A B E T
1 6 5 2 3 4 7
A B C D E F G
H I J K
L M N
O P
Q R S T U
V W X Y Z
95
Securitatea datelor în sistemele informatice economice
96
Securitatea datelor în sistemele informatice economice
0 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1 B C D E F G H I J K L M N O P Q R S T U V W X Y Z A
2 C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
3 D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
4 E F G H I J K L M N O P Q R S T U V W X Y Z A B C D
5 F G H I J K L M N O P Q R S T U V W X Y Z A B C D E
6 G H I J K L M N O P Q R S T U V W X Y Z A B C D E F
7 H I J K L M N O P Q R S T U V W X Y Z A B C D E F G
8 I J K L M N O P Q R S T U V W X Y Z A B C D E F G H
9 J K L M N O P Q R S T U V W X Y Z A B C D E F G H I
10 K L M N O P Q R S T U V W X Y Z A B C D E F G H I J
11 L M N O P Q R S T U V W X Y Z A B C D E F G H I J K
12 M N O P Q R S T U V W X Y Z A B C D E F G H I J K L
13 N O P Q R S T U V W X Y Z A B C D E F G H I J K L M
14 O P Q R S T U V W X Y Z A B C D E F G H I J K L M N
15 P Q R S T U V W X Y Z A B C D E F G H I J K L M N O
16 Q R S T U V W X Y Z A B C D E F G H I J K L M N O P
17 R S T U V W X Y Z A B C D E F G H I J K L M N O P Q
18 S T U V W X Y Z A B C D E F G H I J K L M N O P Q R
19 T U V W X Y Z A B C D E F G H I J K L M N O P Q R S
20 U V W X Y Z A B C D E F G H I J K L M N O P Q R S T
21 V W X Y Z A B C D E F G H I J K L M N O P Q R S T U
22 W X Y Z A B C D E F G H I J K L M N O P Q R S T U V
23 X Y Z A B C D E F G H I J K L M N O P Q R S T U V W
24 Y Z A B C D E F G H I J K L M N O P Q R S T U V W X
25 Z A B C D E F G H I J K L M N O P Q R S T U V W X Y
97
Securitatea datelor în sistemele informatice economice
Mi C R I P T A R E A C U C H E I P R I V A T E
Kk S E C R E T
Kk S E C R E T S E C R E T S E C R E T S E C R
Mi C R I P T A R E A C U C H E I P R I V A T E
Ci U V K G X T J I C T Y V Z I K G V B N E V V
98
Securitatea datelor în sistemele informatice economice
0 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1 B C D E F G H I J K L M N O P Q R S T U V W X Y Z A
2 C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
3 D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
4 E F G H I J K L M N O P Q R S T U V W X Y Z A B C D
5 F G H I J K L M N O P Q R S T U V W X Y Z A B C D E
6 G H I J K L M N O P Q R S T U V W X Y Z A B C D E F
7 H I J K L M N O P Q R S T U V W X Y Z A B C D E F G
8 I J K L M N O P Q R S T U V W X Y Z A B C D E F G H
9 J K L M N O P Q R S T U V W X Y Z A B C D E F G H I
10 K L M N O P Q R S T U V W X Y Z A B C D E F G H I J
11 L M N O P Q R S T U V W X Y Z A B C D E F G H I J K
12 M N O P Q R S T U V W X Y Z A B C D E F G H I J K L
13 N O P Q R S T U V W X Y Z A B C D E F G H I J K L M
14 O P Q R S T U V W X Y Z A B C D E F G H I J K L M N
15 P Q R S T U V W X Y Z A B C D E F G H I J K L M N O
16 Q R S T U V W X Y Z A B C D E F G H I J K L M N O P
17 R S T U V W X Y Z A B C D E F G H I J K L M N O P Q
18 S T U V W X Y Z A B C D E F G H I J K L M N O P Q R
19 T U V W X Y Z A B C D E F G H I J K L M N O P Q R S
20 U V W X Y Z A B C D E F G H I J K L M N O P Q R S T
21 V W X Y Z A B C D E F G H I J K L M N O P Q R S T U
22 W X Y Z A B C D E F G H I J K L M N O P Q R S T U V
23 X Y Z A B C D E F G H I J K L M N O P Q R S T U V W
24 Y Z A B C D E F G H I J K L M N O P Q R S T U V W X
25 Z A B C D E F G H I J K L M N O P Q R S T U V W X Y
99
Securitatea datelor în sistemele informatice economice
Kk S E C R E T S E C R E T S E C R E T S E C R
Mi C R I P T A R E A C U C H E I P R I V A T E
Ci U V K G X T J I C T Y V Z I K G V B N E V V
100
Securitatea datelor în sistemele informatice economice
În cazul cifrării literelor singulare, frecvenţa de apariţie a literelor în textul cifrat este
aceeaşi cu frecvenţa de apariţie a literelor corespunzătoare din textul clar. Această invarianţă a
frecvenţelor furnizează o cantitate de informaţie suficientă criptoanalistului pentru spargerea
sistemului de secretizare. Pentru minimizarea informaţiei colaterale furnizate de frecvenţa de
apariţie a literelor s-a procedat la cifrarea grupurilor de n litere (n-grame). În cazul când un
grup de n litere este substituit printr-un alt grup de n-litere, substituţia se numeşte
poligramică. Substituţia poligramică cea mai simplă se obţine pentru n = 2 când digrama
m1m2 din textul clar se substituie cu digrama c1c2 din textul cifrat.
Corespondenţa biunivocă dintre digramele m1m2 şi c1c2 se poate stabili cu ajutorul unui
tabel de formă pătratică. Literele din coloană din stânga pătratului şi din rândul dispus
deasupra pătratului servesc drept coordonate pentru digrama m1m2 din textul clar, iar digrama
cifrată corespunzătoare se scrie la intersecţia liniei m1 cu coloana m2 sub forma:
A B C D E
A QX FN LB YE HJ
B AS EZ BN RD CO
C PD RA MG LU OP
C I F R U
A B D E G
H K L M N
O P Q S T
V W X Y Z
101
Securitatea datelor în sistemele informatice economice
ZECIMAL- BINARĂ
BINAR-ZECIMALĂ
CONVERSIE
CONVERSIE
Figura 39. Cutii de substituţie.
102
Securitatea datelor în sistemele informatice economice
I 48 48 48 48 I
P P
M C
Sistemul de criptare Lucifer a fost dezvoltat încă din anul 1974 de către firma IBM.
Ulterior, sistemul de criptare Lucifer a fost denumit DEA – Data Encryption Algorithm.
Acesta foloseşte o serie de cutii S şi cutii mici P, cu n = 4, prin care trec datele de
intrare. Cutiile S vor implementa două substituţii posibile S0 şi S1, făcute publice, a căror
alegere depinde de valoarea unui bit al cheii. Ţinând seama de faptul că sistemul
implementează 16 iteraţii identice, necesarul de cheie fiind de 512 biţi (1 bit/cutie S*32 cutii
S/iteraţie*16 iteraţii). Pentru a se reduce cheia de criptare de la 512 biţi la 128 biţi se
utilizează un algoritm de expandare al ei, care repetă fiecare bit al cheii de patru ori.
Fiecare cutie S de n biţi poate fi implementată ca o memorie de 2n cuvinte de n biţi.
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 biţi.
Dispozitivul Lucifer conţine şi un generator de cuvinte de trecere pentru transmisiile de
date importante. Acest generator operează la fiecare capăt al liniei de comunicaţii. Mesajele
care urmează să fie transmise sunt divizate automat în blocuri de D biţi şi combinate la fiecare
impuls de tact al unui ceas, înainte de transmisie, cu un cuvânt de trecere (CT) care
corespunde ieşirii ceasului în acel moment. Rezultă un bloc de 2D biţi care este cifrat prin
ansamblul cutiilor P şi S. Cifrul Lucifer trebuie să gestioneze corect, la descifrare, cheia
aplicată cutiilor S iar cuvântul de trecere cifrat recepţionat trebuie să corespundă cu cel
generat local de ceasul binar care este sincronizat cu cel de transmisie.
Metoda numită şi autentificarea prin înlănţuirea blocurilor prezintă următoarele
avantaje:
! fiecare bloc de text clar şi corespondentul sau cifrat sunt unice, ceea ce înseamnă că
acelaşi mesaj, repetat în transmisie, dă criptograme diferite la timpi diferiţi;
! erorile de transmisie sau utilizarea unei chei neadecvate vor fi sesizate imediat;
! încercările de a transmite mesajele vechi, înregistrate, sunt imediat detectate,
deoarece cuvintele de trecere sunt diferite la momente diferite.
103
Securitatea datelor în sistemele informatice economice
Algoritmul DES
Sistemul DES (Data Encryption Standard) este primul standard dedicat protecţiei
criptografice a datelor din sistemele de calcul. Dezvoltarea lui a început încă din 1972, dar a
fost adoptat oficial în 1976, după îmbunătăţirea cifrului Lucifer.
Sistemul de cifrare DES este o combinaţie între tehnica substituţiei şi tehnica
transpoziţiei. DES reprezintă un cifru-bloc cu lungime de 64 de biţi. Cheia de criptare are
lungimea de 64 de biţi, din care doar 56 sunt efectiv folosiţi, aceştia fiind generaţi aleatoriu,
ceilalţi 8 biţi sunt folosiţi pentru a detecta erorile de transmisie, câte un bit pentru fiecare bloc
de 8 biţi ai cheii. În acest fel, cheia este expandată la lungimea blocului. Cheia este păstrată de
către utilizatori şi este folosită în procesul de cifrare/descifrare.
Sistemul de cifrare DES constă din patru moduri de prelucrări [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 biţi (8 bytes). Cheia de criptare are de
asemenea 64 de biţi. Din aceştia sunt folosiţi efectiv 56, ceilalţi fiind folosiţi ca informaţie de control.
Se folosesc doi algoritmi distincţi, şi anume:
! algoritmi folosiţi pentru criptare;
! algoritmi pentru planificarea cheilor.
Se efectuează două tipuri de criptări în această fază:
! permutarea
! substituţia.
Pentru realizarea acestor două operaţii se folosesc cutii pentru permutări şi substituţii.
Permutarea cu ajutorul cutiilor.
Vom exemplifica o permutare care are ca date de intrare caracterul „9“ (în EBCDIC),
cu forma binară 11111011, care va fi transformat cu ajutorul cutiei în caracterul „=“ (în
EBCDIC), cu forma binară 01111110 (figura 41).
1 0
1 1
1 1
1 1
1 1
0 1
0 1
1 0
Figura 41. Cutie folosită la permutare.
Procesul de permutare realizat de cutie va disimula informaţia. Dacă considerăm 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ă aplicăm cheia la
datele de ieşire vom obţine datele de intrare.
Se aplică în continuare o operaţie de tip OR exclusivă (XOR). Aceasta poate fi văzută la
rândul 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 adiţional). Acest pas suplimentar
este exemplificat în tabelul 15.
104
Securitatea datelor în sistemele informatice economice
Schema de prelucrare într-un singur ciclu a lui ECB (nativ DES) presupune parcurgerea
următorilor 7 paşi (figura 42):
105
Securitatea datelor în sistemele informatice economice
Pasul
1 1 2 3 .. .. .. .. .. .. 63 64
Permutări iniţiale
(Initial Permutation IP)
IP 58 50 42 34 26 18 10 2
60 52 44 36 28 20 12 4
2 58 50 42 .. .. .. .. .. .. 15 7 62 54 46 38 30 22 14 6
64 56 48 40 32 24 16 8
57 49 41 33 25 17 9 1
59 51 43 35 27 19 11 3
61 53 45 37 29 21 13 5
63 55 47 39 31 23 15 7
3 5 50 L (stânga) R (dreapta) 15 7
4b 4b 4b 4b 4b 4b 4b 4b Post S box
7 Post S block
IP
Rezultat
Figura 42. Schema de prelucrare într-un singur ciclu a lui ECB (nativ DES).
106
Securitatea datelor în sistemele informatice economice
Pasul 1
! se introduc cei 64 de biţi ai mesajului de text clar (Mi).
Pasul 2
! se rearanjează datele de intrare conform cu tabela de permutări iniţiale (IP).
Pasul 3
! se împarte segmentul de date de intrare în două segmente/jumătăţi de câte 32 de biţi
care vor purta denumirea de L (left – stânga) şi respectiv R (right – dreapta);
! se face o salvare de siguranţă a jumătăţii dreapta care se va numi R0;
! se va opera în continuare numai cu jumătatea dreaptă (R) lăsând jumătatea stângă
(L).
Pasul 4
! se aplică asupra jumătăţii R un set special de permutări, numite permutări expandate
(PE), care la un număr de 32 de biţi date de intrare vor genera 48 de biţi date de
ieşire.
Pasul 5
! celor 48 de biţi rezultaţi, împreună cu alţi 48 de biţi ai unei chei, li se aplică o
operaţie XOR. Este singurul loc unde intervine cheia de criptare. În urma acestei
operaţii rezultă un bloc care se numeşte Pre S block.
Pasul 6
! se împarte Pre S block în 8 segmente de câte 6 biţi;
! fiecare segment este procesat de o casetă individuală S-Box (S1, S2, S3, …..S8).
Prelucrarea se face în paralel cu a celor 8 segmente. Fiecărui segment i se aplică o
singură cutie S-Box.
! în urma prelucrării rezultă 32 de biţi (4 biţi la ieşire * 8 casete = 32 biţi).
Succesiunea de biţi rezultată poartă denumirea de Post S block.
Pasul 7
! Post S block este supus unei operaţii finale de prelucrare-permutare;
! Prelucrarea presupune prelucrarea a 32 de biţi şi are ca date de ieşire 32 de biţi care
formează rezultatul.
Procesul de prelucrare este exemplificat în figura 43.
107
Securitatea datelor în sistemele informatice economice
Permutări iniţiale
L0 R0
K1
X ƒ
K2
X ƒ
Kn
X ƒ
K2
X ƒ
108
Securitatea datelor în sistemele informatice economice
Paşii de la 4 la 7 sunt adesea grupaţi într-o diagramă de funcţii DES f(Rn-1, Kn).
Pasul 8
! se aplică funcţia OR exclusiv (XOR) pentru jumătatea stângă rămasă de la pasul 3
împreună cu f(Rn-1, Kn). Aceasta are ca rezultat un nou R.
! R0 va deveni un nou L.
KEY
Permutări iniţiale
Co Do
C1 D1
K1
Permutare
Cn Dn
Kn
Permutare
C16 D16
K16
Permutare
109
Securitatea datelor în sistemele informatice economice
Pasul 2
! blocurilor C şi D li se aplică o permutare (shift) circulară conform unui tabel de
permutări.
Pasul 3
! blocurile C şi D rezultate sunt concatenate obţinându-se blocul CD1.
Pasul 4
! CD1 este supus unei permutări;
! După permutare sunt eliminaţi biţii 9, 18, 22, 25, 35, 38 şi 54. Rezultă o cheie de 48
de biţi (K1). Această cheie este folosită în pasul 1 al algoritmului de criptare.
Paşii de la 2 la 4 sunt repetaţi de un număr de 16 ori. Diferenţa dintre cicli este numărul
de biţi deplasaţi la fiecare deplasare circulară.
Modul ECB are câteva puncte slabe, şi anume:
! se criptează blocuri de 64 de biţi independent de criptarea altor blocuri;
! la aceleaşi chei de criptare, texte identice se vor cifra identic;
! probleme la complementaritatea blocurilor mai mici de 64 de biţi etc.
Modul CBC
Modul CBC (figura 45) este un mod de criptare prin înlănţuirea blocurilor. Criptarea
fiecărui 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 foloseşte un vector de iniţializare (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 apărută la unul dintre blocuri se va propaga la blocurile următoare, generând serioase
probleme la decriptare.
110
Securitatea datelor în sistemele informatice economice
M M M
Vector iniţializare (IV)
CRIPTARE
x x x
I I I
Algoritm DES Algoritm DES Algoritm DES
CRIPTARE CRIPTARE CRIPTARE
C C C
C C C
Algoritm DES Algoritm DES Algoritm DES
DECRIPTARE DECRIPTARE DECRIPTARE
I I I
Vector iniţializare (IV)
DECRIPTARE
x x x
M M M
111
Securitatea datelor în sistemele informatice economice
Vom trata împreună aceste două moduri deoarece nu diferă semnificativ. Modul de
funcţionare este exemplificat în figura 46 pentru OFB – Output Feedback şi în figura 47
pentru CFB – Cipher Feedback.
CRIPTARE DECRIPTARE
SHIFT SHIFT
FEEDBACK
FEEDBACK
K BITS
DES ENCRYPT K BITS DES ENCRYPT
112
Securitatea datelor în sistemele informatice economice
SHIFT SHIFT
FEEDBACK
FEEDBACK
K BITS
K BITS
DES ENCRYPT DES ENCRYPT
Se observă ca textul clar este înlocuit de un bloc de K-biţi. Modul permite criptarea
textului indiferent de lungimea acestuia.
Există şi critici la adresa algoritmului. O primă critică se referă la numărul de iteraţii
care se aplică. Sunt 16 iteraţii de ajuns pentru a se asigura o bună criptare? O altă critică se
referă la lungimea şi numărul cheilor. O altă critică se referă la posibilitatea de a iniţia atacuri
la adresa lui. Există două tipuri de atacuri criptoanalitice la adresa DES: căutarea exhaustivă şi
folosirea de tabele.
Căutarea exhaustivă utilizează un atac cu text clar cunoscut. Dacă se ştie textul cifrat C,
textul clar este cifrat, ci o cheie până când DESK(M) = C. Ştiind că DES foloseşte efectiv 56
de biţi 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 foloseşte tehnica procesării
paralele pentru reducerea timpului, decriptarea poate fi făcută sub o zi. O criptare dublă
complică însă problemele de decriptare.
Dintre slăbiciuni se remarcă din nou cheile. Două chei diferite pot decripta acelaşi
mesaj. O altă problemă o reprezintă faptul că aceste chei sunt folosite într-o ordine la criptare
şi într-o ordine inversă la decriptare. Din acest motiv, pentru transmisii de date în care este
necesară o confidenţialitate strictă se utilizează chei de dimensiuni mult mai mari, chiar
pentru algoritmul DES (de 256, 512, 1024 şi chiar 2048 sau 4096 de biţi), ştiut fiind că timpul
necesar decriptării creşte exponenţial cu dimensiunea cheii de criptare/decriptare.
113
Securitatea datelor în sistemele informatice economice
59
Clipper – un cip de criptare dezvoltat de guvernul SUA ca parte a proiectului Capstone. Foloseşte conceptul de
chei în custodie (Escrowed Key System).
60
Capstone – proiectul pe termen lung al guvernului american de dezvoltare a unui set de standarde pentru
criptografia cu chei publice.
114
Securitatea datelor în sistemele informatice economice
Cheia de descifrare (secretă) este derivată din cheia de cifrare (publică) printr-o
transformare greu inversabilă (one-way). În sistemele cu chei publice, protecţia şi
autentificarea sunt realizate prin transformări distincte.
Cheia publică a destinatarului, care se preia din registrul/fişierul public, va fi utilizată de
către expeditor pentru cifrarea mesajelor de la acesta către destinatar. Destinatarul va putea,
pe baza cheii secrete pe care o deţine, 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 căruia a intrat, textul clar şi să nu fie capabil să descopere cheia de criptare
(privată) pe baza analizei textului.
Autenticitatea impune ca emiţătorul 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, inserări sau ştergeri a unor porţiuni de mesaj.
Nerepudierea impune o protecţie împotriva unui transmiţător care poate nega o
transmisie efectuată anterior către un destinatar.
Criptarea cu chei publice este cu precădere folosită în două mari aplicaţii:
! distribuţia cheilor secrete;
! semnătura digitală.
Procesul de distribuire a cheilor secrete presupune existenţa a doi sau mai mulţi
utilizatori care împart chile de criptare (private ca în cazul folosirii algoritmului DES).
Distribuţia cheilor trebuie făcută pe un canal sigur. Folosirea unui serviciu de curierat sau o
altă autoritate pentru distribuţie măreşte riscul de aflare a cheii. Transmiterea cheii private
folosind transmiterea acesteia criptată, nemaiexistând o a treia persoană care să ştie de
existenţa acesteia, precum şi modul de transmitere, este destul de folosită.
Semnătura digitală este similară cu semnătura de mână la autentificarea unui document.
Semnătura digitală trebuie să îndeplinească două mari cerinţe:
! receptorul trebuie să fie capabil să autentifice semnătura expeditorului;
! semnătura să nu poată fi falsificată.
Există două importante variante de implementare:
! semnătura exactă;
! semnătura arbitrară.
În cazul de implementare cu semnătură exactă, mesajul este trimis direct de la emiţător
la receptor. În cazul implementării cu semnătură arbitrară, există un martor care poate fi uman
sau proces automat, care validează semnătura şi apoi se înaintează mesajul receptorului.
Semnătura digitală trebuie să asigure autenticitate, integritate şi nerepudiere. În unele cazuri
semnătura digitală este dezirabilă atâta timp cât nu se cere secretizare.
Criptarea asimetrică permite comunicarea între persoane care nu au stabilit în prealabil nici o
legătură. 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};
! transformările de cifrare, Ek: M → C, unde K ∈{ K};
! transformările de descifrare, Dk: C → M, unde K∈{K }.
115
Securitatea datelor în sistemele informatice economice
116
Securitatea datelor în sistemele informatice economice
formează un câmp Galois GF(q). Într-un câmp Galois există (q-1) numere a care sunt
elemente primitive ale câmpului 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 câmpului.
Utilizatorul A va alege în mod aleatoriu un număr XA, XA∈ {1, 2, …, q-1}.
Calculează YA = aXA (mod q).
XA devine cheie privată şi va fi ţinută strict secretă.
YA devine cheie publică şi va fi păstrată într-un director sau fişier public.
Comunicarea între doi utilizatori (A) şi (B) se va face folosind cheia de comunicaţie de
forma:
KAB = YAXB = YBXA = aXAXB (mod q).
Un atac la mesajul criptat presupune să se afle cheia KAB, adică să se caute KAB = YAlog
YB (mod q)
. Sistemul va fi foarte greu de spart datorită imposibilităţii calculării 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 fişier public), iar decriptarea se face pe baza cheii private a
destinatarului şi nu pe baza cheii publice.
Criptarea cu chei publice exponenţiale a beneficiat în ultimul timp şi de aportul unor
funcţii suplimentare care sporesc performanţele.
Printre cele mai cunoscute cifruri care folosesc criptarea cu chei publice exponenţiale se
numără cifrul Rivest-Shamir-Adleman (RSA), cifrul El Gamal, cifrul DSA (Digital Signature
Algorithm), cifrul Pohling-Hellman (PH).
Cifrul Rivest-Shamir-Adleman
Cifrul a fost conceput şi realizat de trei cercetători, 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
confidenţialităţii mesajelor şi autentificarea acestora cu ajutorul semnăturii digitale. Se găseşte
implementat (hardware sau software) în programele şi echipamentele unor firme de renume
(Lotus, Novell, Motorola, Boeing, SWIFT Bank) sau chiar la nivelul agenţiilor
guvernamentale (DoD, NA).
Se va proceda la criptarea blocului de mesaj M, M ∈ (0, n-1), calculând exponenţialele:
e
C = M (mod n),
unde n = p*q, cu p şi q două numere prime mari astfel încât să fie greu de determinat
ϕ(q) = (p-1)*(q-1). (indicatorul lui Euler). Numerele p şi q rămân secrete.
La decriptare,
d
M = C (mod n).
O parte dintre cheile pentru criptare e şi decriptare d sunt alese cu grijă, în aşa fel încât
E(D(M)) = D(E(M)) = M.
Cheile pentru criptare sunt de forma perechilor (e, n) – pentru criptare, şi (d, n) – pentru
decriptate. Numărul e este relativ prim faţă de produsul (p-1) * (q-1). Numărul d se alege
astfel încât 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, făcând imposibilă factorizarea.
Se observă că cifrarea şi descifrarea sunt funcţii inverse. Se poate folosi cifrul RSA atât
pentru cifrare, cât şi pentru autentificare.
117
Securitatea datelor în sistemele informatice economice
Exemplu: Criptarea
Mesajul clar este M = (SECRET).
p = 53
q = 61, p şi q rămân secrete.
Se obţine: n = p * q = 53*61 = 3233
(p-1) * (q-1) = 52*60 = 3120.
Alegem cheia privată: d = 791.
Calculăm 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.
Împărţim mesajul M = (SECRET) în blocuri de câte două caractere:
(SECRET) ⇒ (SE CR ET)
Atribuim fiecărui grup valorile corespunzătoare poziţiei în alfabetul cu 26 de semne (din
tabloul lui Vigenere):
S E C R E T
18 04 02 07 04 19
118
Securitatea datelor în sistemele informatice economice
Folosim transformarea:
d
M = C (mod n).
Vom obţine folosind decriptatea pentru fiecare bloc component şi realizând
corespondenţa cu alfabetul:
791
M’ = 2503 (mod 3233) = 1804 ⇒ (18 04) ⇒ ( S E )
791
M’’ = 1254 (mod 3233) = 0217 ⇒ (02 17) ⇒ ( C R )
791
M’’’ = 2509 (mod 3233) = 0419 ⇒ (04 19) ⇒ ( E T ).
Regrupând textul vom avea:
M = (SECRET).
Semnătura digitală
Vom folosi datele anterioare, unde:
p = 53
q = 61
e = 71
d = 791
şi rezumatul mesajului criptat calculat cu funcţia de hash H (H∈(0, n-1)61:
H = (250312542509) (în cazul nostru identic cu M pentru uşurare calcule).
Se împarte mesajul în trei blocuri distincte care să nu depăşească valoarea lui n:
H = (2503 1254 2509).
Expeditorul (A) va semna blocurile separat cu cheia să secretă (e = 71) şi formula:
d
S = DA(M)) = M A mod nA
S’ = 250371 mod 3233 = 1133
S’’ = 125471 mod 3233 = 1498
S’’’ = 250971 mod 3233 = 2371.
Se obţine în final semnătura: S = (1133 1498 2371).
Destinatarul (B) va autentifica acest mesaj, utilizând cheia publică a lui A (d = 791) şi
formula astfel:
d e
EA(DA(M)) = M A A mod nA = Sd.
61
Funcţia de hash realizează un rezumat al mesajului care este trimis destinatarului.
119
Securitatea datelor în sistemele informatice economice
electronic ce urmează să fie semnat electronic. H(M) este rezumatul documentului calculat cu
funcţia de hash H (H∈(0, n-1).
Semnarea documentului
Semnarea unui document se face de către utilizator (expeditor) cu cheia sa secretă
KA(priv). Orice utilizator va putea să verifice semnătura pe baza cheii publice a expeditorului.
Semnarea unui document M se face în modul următor:
! se calculează rezumatul documentului cu ajutorul funcţiei de hash H, H(M);
! se generează aleator KA(priv) în intervalul [0, n-1], a. î. cmmdc (KA(priv), n-1) = 1;
KA
! se calculează r = a (priv) (mod n);
! se calculează, cu ajutorul cheii secrete a expeditorului, valoarea lui s din ecuaţia
H(M) = KA(priv) * r * s (mod (n-1)).
Semnătura mesajului M va fi reprezentată de perechea S = (r, s).
Verificarea semnăturii
Destinatarul va primi la recepţie atât mesajul M, cât şi semnătura electronică S = (r, s) a
acestuia şi trebuie să verifice autenticitatea semnăturii.
Pentru verificare trebuie calculate următoarele:
aH(M) mod n şi (KA(priv))r * rs mod n.
Dacă aceste două valori sunt egale, atunci semnătura este veridică şi deci mesajul este
autentic.
Exemplu
Alegem n = 467 şi a = 2. Cheia privată a expeditorului va fi KA(priv) = 127.
KA
Calculăm cheia publică a expeditorului KA(publ) = a (priv) (mod n) = 2127 mod 467 = 132.
Mesajul transmis M va avea rezumatul H(M) = 100.
Expeditorul alege un K = 213, aleator astfel încât cmmdc (213, 466) şi K-1 mod 466 = 431.
Se calculează semnătura 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 recepţie se verifica semnătura 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, semnătura este validă.
120
Securitatea datelor în sistemele informatice economice
KA(publ) – cheia publică, număr întreg, obţinută astfel: KA(publ) = g KA(priv) mod g.
Pe lângă mesajul semnat M, care va fi transmis, ca o particularitate avem un număr k,
întreg aleatoriu, cuprins în intervalul (0;q) care se modifică la fiecare semnătură.
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 semnăturii
Receptorul documentului electronic primit, însoţit de semnătură, va efectua următoarele
operaţii:
! 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 semnătura este validă şi deci documentul este autentic.
Exemplu
Alegem q = 101 şi p = 78q + 1 = 7879.
Întrucât 3 este rădăcina primitivă a lui Z7879, se calculează:
g = 378 mod 7879 = 170
KA
KA(priv) = 76. Se calculează cheia publică KA(publ) = g (priv)mod 7879 = 4567.
Expeditorul (A) va semna un document, care are rezumatul H(M) = 1234, pe care-l va
trimite către destinaţie (B). Alege o constantă k = 50 drept parametru al semnăturii şi
calculează următoarele:
k-1 mod 101 = 99
Acum va calcula cele două elemente ale semnăturii (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 destinaţie se va verifica perechea (r, s) de către destinatar în felul următor cu ajutorul
cheii publice a expeditorului:
w = s-1 mod q = 97-1 mod 101 = 25
r’ = g(H(M) * w * KA(publ)* r*w mod p) mod q
H(M) * w mod q = 1234 * 25 mod 101 = 45
r*w mod p = 94 * 25 mod 101 = 27
r’ = (17045 * 456727 mod 7879) mod 101 = 2518 mod 101 = 94.
Cum r’ = r, semnătura este validă.
Implementarea hardware a fost făcută cu ajutorul cipului CLIPPER. Cipul este produs
de către AT&T, arhitectura este proiectată de MYKOTRONIX, iar specificaţiile sunt dictate
de NSA (National Security Agency). Este un chip care poate rezista cu succes tentativelor de
decodare. Poate procesa 15-20MB/s atât la criptare, cât şi la decriptare o dată ce a fost
stabilită sincronizarea cu receptorul/emiţătorul.
Sisteme de criptare de tip rucsac (knapsack)
Din această categorie de sisteme de criptate fac parte cifrurile Merkle-Hellman, Cifrul
Graham-Shamir şi Cifrul Shamir.
Cifrul Merkle-Hellman (MH)
Cunoscând greutăţile elementelor componente care se află într-un rucsac şi greutatea
rucsacului închis, să se determine setul de elemente fără a se proceda la deschiderea
rucsacului (rucsac = knapsack). Acesta ar fi enunţul problemei.
121
Securitatea datelor în sistemele informatice economice
Fiind dat un întreg pozitiv T şi un vector A = (a1, a2, a3, …, an) de numere întregi
pozitive, trebuie găsit un subset al lui A (V) a cărui sumă să fie egală cu T.
T = Σaivi, unde V = (v1, v2, v3, …, vn) de numere binare.
Exemplu:
Să luăm A = (17, 38, 73, 4, 11, 1) şi T = 53.
Se caută un element al vectorului V la care Σaivi = 53.
Să încercăm cu primul element 17 (a1) ⇒(53-17) = 36. 38 (a2) este mai mare decât 36 şi
1 + 4 + 11<36.
Să încercăm cu al doilea element 38 (a2) ⇒(53-38) = 15. 4 + 11 = 15.
Σaivi = (1*38) + (1*4) + (1*11) = 53.
Deci vectorul căutat este V = (0, 1, 0, 1, 1, 0).
Căutarea va fi îngreunată dacă A are un număr mare de elemente şi dacă elementele ai
au de asemenea valori mari.
O altă rezolvare se poate face în felul următor parcurgând paşii:
! se ordonează crescător elementele vectorului A;
! se alege T şi se testează dacă ai (i = n….1) se potriveşte;
! dacă se potriveşte, atunci i se va asigna în vectorul V valoarea vi = 1, iar dacă nu se
asignează, valoarea vi = 0;
! se înlocuieşte an cu an-1;
! se continuă operaţia până ce toate elementele au fost testate.
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 potriveşte ⇒ Asignăm 0
An-1 = 38 ⇒ T = T-an-1 = 15 ⇒ Asignăm 1
An-2 = 17 ⇒ Nu se potriveşte ⇒ Asignăm 0
An-3 = 11 ⇒ T = T-an-3 = 15 ⇒ Asignăm 1
An-4 = 4 ⇒ T = T-an-4 = 15 ⇒ Asignăm 1
An-5 = 1 ⇒ Nu se potriveşte ⇒ Asignăm 0
122
Securitatea datelor în sistemele informatice economice
123
Securitatea datelor în sistemele informatice economice
124
Securitatea datelor în sistemele informatice economice
Mesaj
M
Text clar
Cheie criptare
Se criptează hash-ul
(privată)
Criptare mesajului cu ajutorul
cheii private a
expeditorului.
Semnătura este de fapt
Semnătura
criptarea cu cheie privată
a hash-ului mesajului.
Text clar
Se compară rezultatele.
125
Securitatea datelor în sistemele informatice economice
62
IDE – Intelligent Drive Electronics sau Integrated Drive Electronics. Standard de conectare a suporturilor de
memorie magnetică.
63
xxx – numărul de biţi folosiţi la criptare. Valorile sunt 40, 64, 128 şi 192 de biţi.
126
Securitatea datelor în sistemele informatice economice
Cheie securitate
Placa de bază X-Wall (de tip stick) Disc dur
Interfaţă criptare-
Interfaţă IDE
Interfaţă IDE
decriptare
Chip
X-Wall LX-xxx
Cheia de securitate, de tipul unei memorii stick, este folosită doar la pornirea
calculatorului, putând apoi fi scoasă până la o nouă pornire, când se cere introducerea
acesteia într-un local special de tip USB64. Această cheie conţine codul DES/TDES folosit la
criptare.
În funcţie 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 18).
Tabelul 18. Tipuri de modele constructive de chip X-Wall LX.
Model chip (algoritm folosit) Aplicabilitate
X-Wall LX- 40 (DES 40 biţi) Confidenţialitate date din calculator
X-Wall LX- 40 (US DES 40 biţi) Uz general
X-Wall LX- 64 (DES 64 biţi) Uz general şi comercial
X-Wall LX-128 (TDES 128 biţi) Firme mari şi uz comercial
X-Wall LX-192 (TDES 192 biţi) Organizaţii guvernamentale şi militare
64
USB – Universal Serial Bus.
65
RAID – Redundant Array of Independent (or Inexpensive) Disks, categorie de interfeţe şi drivere de disc ce
permite conectarea a două sau mai multe discuri pentru reducerea erorilor de stocare şi sporirea performanţelor.
127
Securitatea datelor în sistemele informatice economice
Interfeţele de criptare care folosesc algoritmi TDES folosesc chei de criptare complexe,
performanţele fiind mult mai ridicate faţă de modelele comerciale.
→ Criptarea la nivel de aplicaţie este folosită în pachetele de programe produse şi livrate
de marile firme producătoare de software din domeniu. Criptarea datelor poate fi făcută
implicit de către aplicaţia respectivă sau se poate activa această facilitate de către utilizator.
Un exemplu este oferit de aplicaţia Ciel Contab, care permite criptarea fişierelor de
date specifice programului. Activarea opţiunii de criptare se face de către superutilizator66
din meniul de configurare al programului (Configurare → Opţiuni de utilizare → Diverse
→ Criptare fişiere) pe societatea (firma) respectivă (figura 51). Fişierele de date criptate
sunt XECR1.DBF şi XECR2.DBF. Acestea sunt de fapt fişierele care conţin datele senzitive
ale firmei.Criptarea rezistă doar la acţiunea cu SGBD-uri mai vechi asupra fişierelor. Pentru
SGBD-urile mai noi criptarea este inutilă.
Figura 51. Configurare program Ciel Contab (DOS) pentru opţiunea de criptare
fişiere.
→ Criptarea la nivelul transmisiei de date poate fi făcută prin criptarea legăturii sau prin
criptarea datelor. Criptarea legăturii este asigurată implicit de protocoalele de comunicare
în reţea sau de cele din Internet.
Secure Socket Layer (SSL) reprezintă un protocol Web securizat dezvoltat de firma
Netscape Communications care asigură criptarea pentru comunicările realizate între oricare
două calculatoare din Internet prin intermediul protocolului universal folosit – TCP/IP. SSL
se bazează pe criptarea cu cheie publică (PKI) şi funcţionează în două etape: într-o primă
etapă se stabileşte 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);
! confidenţialitatea transmisiilor (prin criptare);
! integritatea datelor transmise (prin coduri de verificare).
66
Superutilizatorul în această accepţiune este persoana care are drept de administrare şi configurare a
programului.
128
Securitatea datelor în sistemele informatice economice
Pentru a folosi însă aceste facilităţi este nevoie de existenţa unei identificări digitale
(Digital ID). Aceasta poate fi obţinută 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 fişiere şi poştă electronică, ce oferă mecanisme de
confidenţialitate, autentificare, semnături digitale şi compresie, într-o formă uşor de utilizat.
PGP foloseşte ca algoritm de criptare RSA şi este distribuit gratuit prin Internet, sisteme de
informare în reţele şi reţele comerciale, fiind utilizabil pe platformele MS-DOS/Windows, UNIX
şi Macintosh. Versiunile comerciale ale programului asigură pe lângă criptare fişiere şi
securizare poştă electronică şi criptarea discurilor. Versiunea gratuită a programului poate fi
descărcată de la adresa: http://www.pgp.com/products/freeware.html.
În mod intenţionat, PGP se bazează pe algoritmi de criptare existenţi. Sistemul
foloseşte amprente locale de timp67, iar în procesul de criptare se aplică şi algoritmul de
compresie al cunoscutului program ZIP (creat de Ziv şi Lempel, 1977). Pentru asigurarea
unei securităţi adecvate, utilizatorul poate alege lungimea cheii de criptare obişnuită (384
biţi = 48B), comercială (512 biţi = 64B), militară (1024 biţi = 128B). În abordarea iniţială, o
cheie de 2048 biţi = 256B era considerată inexpugnabilă, dar azi se discută şi despre chei de
4096 de biţi şi este foarte probabil ca resursele de calcul ale viitorului să poată „descifra“ şi
cifruri cu asemenea chei (figura 53).
67
Preia din sistem anumite caracteristici hardware şi software la un anumit moment pe care le foloseşte ca date
de intrare pentru crearea cheilor.
129
Securitatea datelor în sistemele informatice economice
130
Securitatea datelor în sistemele informatice economice
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.
MailSafe al firmei RSA Data Security facilitează transmisia în siguranţă a datelor între
două modemuri incluzând programe şi echipamente integrate.
Deoarece la date trebuie să aibă acces mai mult de un utilizator, MailSafe foloseşte un
sistem de chei publice şi private. Utilizatorii care vor trimite date folosesc chei publice pentru
a verifica semnătura digitală a destinatarului şi pentru cifrarea traficul pentru transmisie.
Destinatarul foloseşte o cheie privată pentru a semna fişierele emise şi pentru a descifra
mesajele primite. MailSafe foloseşte un sistem de meniuri pentru a selecta fişierele de
transmis. Expeditorul creează chei publice şi private folosind utilitarul KeyGen. Acest proces
instalează şi parolele utilizatorilor care pot avea până 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ă semnăturile digitale.
Ca particularitate, MailSafe permite şi folosirea comună a cheilor publice. Dacă doi
utilizatori doresc să cifreze fişiere pentru uz comun, ei pot îndeplini aceasta certificând 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 maşini folosite în
comun de către mai mulţi utilizatori, fără compromiterea datelor utilizatorilor individuali.
→ Criptarea fişierelor de date (documente-text, baze de date şi spreadsheet-uri) este cea
mai simplă modalitate de ascundere a conţinutului real al fişierelor. Nu trebuie făcută însă
confuzie între criptarea propriu-zisă a unui fişier şi ascunderea conţinutului acestuia. Dacă
conţinutul unui fişier nu poate fi citit atunci când se încearcă deschiderea acestuia nu
înseamnă că acest fişier conţine date criptate. Această confuzie este deseori întâlnită la
aplicaţiile de birou MS Word şi MS Excel.
Să luăm ca exemplu următorul text scris în MS Word:
Acesta este un mesaj criptat.
Fişierul cu acest conţinut a fost salvat cu opţiunile de restricţionare prin parolă la
deschidere şi modificare. Folosind un utilitar pentru vizualizarea conţinutului fişierului vom
putea să vedem textul ascuns (figura 54).
131
Securitatea datelor în sistemele informatice economice
Unul dintre cele mai rapide şi ieftine exemple de cifrare a fişierelor este File Encrypt al
firmei Wisdom Software. Acesta foloseşte Data Encryption Standard (DES) pentru a cifra
fişiere, simplu şi rapid. File Encrypt este un criptosistem convenţional cu o singură cheie,
scris în limbaj de asamblare.
Secret-Disk-II al firmei Lattice, pe lângă cifrarea datelor selectate, creează şi un disc
invizibil unic unde memorează fişierele criptate. Puteţi cripta fişiere 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 conţin doar datele cifrate în fişierele ascunse.
O singură parolă este folosită pentru blocarea şi deblocarea discurilor secrete. Chiar dacă un
intrus descoperă existenţa şi zona discurilor secrete cu un utilitar de lucru cu discul, fişierele
sunt criptate. Dezactivarea comenzii DELETE face imposibilă ştergerea accidentală a
fişierelor.
→ Există şi programe de criptare care garantează o securitate prin criptare care rezistă la
un atac de decriptare un număr de 1032ani. Este vorba de programul Cypherix SECUREIT
2000 al firmei Secure Soft (India) Pvt. Ltd (www.cypherix.com).
Programul foloseşte pentru criptare 448 de biţi. Interfaţa de lucru cu utilizatorul este
foarte prietenoasă (figura 55). Fişierele criptate o vor avea adăugată la extensia iniţială şi pe
aceea de .SIT (Secure IT).
132
Securitatea datelor în sistemele informatice economice
133
Securitatea datelor în sistemele informatice economice
134
Securitatea datelor în sistemele informatice economice
Mai multe date despre compatibilitate şi modul de efectuare a testelor se pot găsi la
adresa: http://www.virusbtn.com/vb100/about/100procedure.xml.
Numărul de viruşi care pot fi detectaţi de un program antivirus are cea mai mare greutate
în alegere. Cu cât acest număr este mai mare, cu atât posibilităţile de detectare şi anihilare cresc.
Programele antivirus pot detecta peste 67.000 de viruşi şi variante ale acestora68.
Timpul de răspuns necesar pentru crearea unui antidot împotriva unui virus este greu
de estimat. Acesta poate fi aflat doar în cazul unor viruşi care au avut efecte majore. Timpul
de răspuns depinde în foarte mare măsură de experienţa firmei.
Existenţa opţiunilor de scanare în reţea este foarte importantă atât din punct de vedere
al siguranţei şi actualizării, cât şi al costului. Vom trata acest aspect puţin mai târziu.
Dacă calculatorul sau reţeaua au acces la Internet, posibilitatea de a scana e-mail-uri
este foarte importantă, bine cunoscută fiind răspândirea viruşilor cu ajutorul Internetului.
Similar şi opţiunea de protecţie împotriva viruşilor de script.
Pentru ca un fişier de dimensiune mare să ajungă cât mai repede la destinaţie se
recurge la comprimarea acestuia. Dimensiunea unui fişier comprimat este sensibil mai mică
faţă de a celui iniţial69. Dacă fişierul sursă conţine un virus, atunci şi fişierul rezultat va
conţine şi el virusul. Din această cauză, existenţa acestei opţiuni este importantă.
Existenţa suportului tehnic, telefon sau e-mail, este necesară atunci când se întâmpină
probleme la instalare şi configurare. Este importantă atunci când instalarea este făcută de o
persoană fără cunoştinţe în domeniu.
De regulă, perioada de timp pentru care se livrează actualizări gratuite de către firma
producătoare este de un an. Această perioadă poate fi prelungită prin semnarea unui
contract de abonament.
Renumele firmei trebuie luat serios în considerare atunci când se achiziţionează un
program antivirus. Renumele firmei ţine atât de longevitatea acesteia pe piaţă, cât şi de
clasamentele întocmite de firmele de specialitate.
Localizarea firmei producătoare sau a distribuitorului trebuie luată în considerare
dacă se doreşte o colaborare strânsă atunci când pot să apară incidente legate de acţiunea
viruşilor şi când singura posibilitate de remediere este contactul direct între cele două părţi.
De asemenea, localizarea firmei are un rol important în anumite situaţii particulare. Ca
exemplu poate fi dat acela în care un virus este produs local, de angajat sau de către o altă
persoană la nivel de judeţ sau de ţară. O firmă locală va putea să descopere şi să anihileze
mai rapid virusul decât o firmă aflată la mii de kilometri distanţă.
Preţul este foarte important atunci când numărul de calculatoare este mare. Din tabelul
următor se observă că preţurile sunt comparabil egale (tabelul 20).
Tabelul 20. Principalele programe antivirus (comparaţii).
Scanare în
Scanează Control Firewall Preţ
Program antivirus fişiere
e-mail centralizat încorporat USD
comprimate
Norton AntiVirus IN/OUT Da Nu Da 50
Kaspersky Anti-Virus IN/OUT Nu Nu Da 50
PC-cillin IN/- Nu Da Da 40
McAfee VirusScan IN/- Nu Nu Nu 40
Bit Defender IN/- Nu Da Da 40
Sursa: www.antivirusebook.com/antiviruscomparison.htm
→ Să analizăm acum cheltuielile necesare achiziţionării de programe antivirus. Firma pe
care am făcut testele este o firmă de mărime medie care are o reţea cu 22 de calculatoare
cuplate în reţea (20 staţii de lucru şi 2 servere – Windows NT şi Linux).
68
Conform cu Norton Antivirus.
69
Depinde de tipul de fişier. În anumite cazuri, poate să fie chiar mai mare.
135
Securitatea datelor în sistemele informatice economice
136
Securitatea datelor în sistemele informatice economice
70
Patch – petic. Îmbunătăţire ulterioară adusă unui program care prezină goluri de securitate în funcţionare.
71
Fix – reparaţie.
137
Securitatea datelor în sistemele informatice economice
138
Securitatea datelor în sistemele informatice economice
10) Dezactivarea lui Windows Script Host (WSH) pentru a se preîntâmpina infectarea
cu viruşi de script (extensia .VBS)
11) Activarea opţiunii de protecţie la viruşi de macro (Macro Virus Protection) în
Microsoft Office (figura 59).
139
Securitatea datelor în sistemele informatice economice
Firewall
Compartiment Compartiment
Comercial Financiar
Firewall Firewall
Compartiment
Producţie
Firewall
Firewall Internet
Server Web
Figura 60. Modul de acţiune al unui dispozitiv firewall.
140
Securitatea datelor în sistemele informatice economice
Refuz trafic
Filtrare conţinut
141
Securitatea datelor în sistemele informatice economice
Nu toate router-ele pot să filtreze anumite porturi, deşi majoritatea fac acest lucru.
Uneori aceasta filtrare este dependentă de sistemul de operare care rulează pe router.
72
UDP – User Datagram Protocol – protocol de comunicaţie similar cu TCP/IP.
142
Securitatea datelor în sistemele informatice economice
73
NAT – Network Address Translation – translarea adreselor de reţea.
143
Securitatea datelor în sistemele informatice economice
NAT permite şi multiplexarea unei singure adrese IP publice către toată reţeaua locală.
Acest lucru este benefic pentru firmele mici deoarece fără această multiplexare posibilităţile
de adresare sunt relativ reduse.
Translarea adreselor are şi dezavantaje. Unul dintre ele este acela în care un administra-
tor al reţelei interne vrea să se conecteze din afară la un calculator local în vederea depanării.
Sau situaţia în care se doreşte aflarea IP-ului unui calculator local de la care s-a trimis un
mesaj senzitiv către exterior. NAT ţine la distanţă atacatorii, dar la fel de bine limitează
accesul din afară al utilizatorilor legitimi (administratori) la resursele reţelei interne în vederea
depanării. Dispozitivele NAT moderne au implementată opţiunea de port-forwarding care
permite accesul utilizatorilor legitimi la reţeaua internă.
Modul de funcţionare al unui proces NAT este exemplificat în figura 63 .
Server
Firewall Web/Public
Client
192.168.33.1 10.10.10.2.
192.168.33.10 216.109.118.64
From: 192.168.33.10
To: 216.109.118.64 From: 10.10.10.2: 145
„open default.html“ To: 216.109.118.64
Creare intrare „open default.html“
144
Securitatea datelor în sistemele informatice economice
→ Consider că pentru alegerea unui firewall trebuie să se ţină cont de următoarele 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 vânzărilor.
Dar tot la fel de bine se ştie şi că acele firewall-uri sunt şi cele mai scumpe. PIX74 Firewall
produs de firma Cisco este considerat ca fiind unul dintre cele mai bune dispozitive de acest
fel, asigurând o securitate ridicată şi un nivel crescut de performanţă.
Sistemul de operare va atârna în decizia de alegere a unui firewall în două moduri.
Unul ar fi acela că producătorii de firewall sunt de părere că firewall-urile bazate pe sisteme
de operare care au mai puţine bug-uri sunt mai sigure. Al doilea motiv ar fi acela că
bug-urile apărute în folosirea unui firewall care rulează pe un sistem de operare larg
răspândit vor putea fi raportate de un număr mai mare de utilizatori. Există însă şi reversul
la folosirea unui sistem de operare larg răspândit. Sistemul de operare Windows, care este
cel mai răspândit, e cel mai atacat deoarece este un sistem de operare comun, are suficiente
goluri de securitate şi pentru că mulţi hackeri urăsc firma Microsoft datorită politicii sale.
Atunci când 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 uşor de administrat decât cele UNIX (sau Linux). Existenţa unei interfeţe
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 număr 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 număr specificat de calculatoare
din reţeaua internă. Adăugarea de module suplimentare măreşte numărul acestora.
Achiziţionarea unui dispozitiv firewall de firmă, ca exemplu PIX Firewall, produs de
Cisco, pentru protejarea la atacuri din exterior, este de preferat în locul achiziţionării unui
produs software. Preţul de achiziţie şi cheltuielile de implementare fac ca această soluţie să
nu fie aleasă decât de firmele mari, care-şi pot permite preţul.
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. Asistenţa 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 număr de până la 100 de utilizatori şi 12.500 USD pentru un număr nelimitat de
utilizatori. Suportul tehnic este asigurat pentru sume cuprinse între 400 USD (până în 100
utilizatori) şi 1.875 USD (pentru un număr 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 multithread75 pentru a putea să folosească facilităţile
sistemelor multiprocesor.
Firmele mici vor opta pentru soluţii firewall înglobate, lucru întâlnit la serverele Internet
bazate pe sistemele de operare Linux. În cazul în care serverul respectiv are ca sistem de
operare Windows, se indică folosirea pachetului Norton Internet Security 2004 (Professional)
la preţul de 70 (100) USD. Dacă se doreşte şi protejarea staţiilor 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. Preţurile la aceste
74
PIX – Private Internet Exchange.
75
Multithread – capacitatea mai multor microprocesoare de a funcţiona ca şi cum ar fi unul singur.
145
Securitatea datelor în sistemele informatice economice
produse variază în jurul valorii de 50 USD. Unele dintre aceste produse se livrează gratuit la
achiziţionarea unui sistem de calcul. Este cazul produselor Norton Internet Security şi Norton
Antivirus (uneori sunt integrate într-un singur program – Norton Internet Security –, dar
opţional se poate instala şi Norton Antivirus). Suportul tehnic pentru actualizări gratuite este de
un an.
Instalarea şi configurarea vor fi făcute în următorii paşi:
! 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 soluţie de compromis
financiar. Cerinţele 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/RCS76. Acesta, de comun acord cu conducerea
firmei, a instalat şi configurat firewall-ul Linux cu restricţiile impuse, urmând 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ă soluţie deoarece o parte din
calculatoarele nou-achiziţionate aveau preinstalat acest program. Administrarea
calculatoarelor din reţeaua neconectată va fi făcută de către un angajat al firmei care va
actualiza permanent programele şi va monitoriza rezultatele statistice generate de firewall.
76
RDS/RCS – Grup de firme (consorţiu) specializate în distribuţia de televiziune prin cablu şi distribuţie Internet.
146
Securitatea datelor în sistemele informatice economice
147
Securitatea datelor în sistemele informatice economice
De exemplu, pentru o arhitectură Windows, testele care se vor efectua sunt următoarele:
! scanarea porturilor de reţea care utilizează UDP;
! scanarea porturilor de reţea care utilizează pachete TCP SYN, ACK, FIN;
! scanarea lui Network Neighborhood;
! testarea vulnerabilităţilor 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 opţiunilor share (Admin(S));
! verificarea abilitaţilor de querry registry;
! verificarea vulnerabilităţilor cunoscute URL şi CGI;
! verificarea vulnerabilităţilor cunoscute la atacuri DoS;
! verificarea vulnerabilităţilor MS SQL Server;
! testarea vulnerabilităţilor SMTP, FTP, POP3.
Tipurile cele mai cunoscute de scanere sunt:
! scanere de reţea (network-based scanners)
! scanere de staţie (host-based scanners)
! scanere de porturi (port scanners).
Scanerele de reţea sunt unelte software care lansează dintr-o locaţie centrală „atacuri“
asupra reţelei în vederea testării vulnerabilităţilor. O consolă centrală va fi folosită pentru
maparea întregii reţele şi pentru trimiterea de pachete către calculatoarele care vor fi scanate
pentru a culege informaţii. De la această consolă se vor direcţiona diferitele „atacuri“ care vor
scana un anume calculator din reţea.
Scanerele de reţea sunt uşor de implementat şi de utilizat. Programul de scanare va fi
încărcat pe un calculator din reţea şi de aici se va testa reţeaua (figura 64).
Scanerele de reţea au şi neajunsuri. Printre acestea se pot enumera:
! încetinesc traficul în reţea. Un scaner de reţea 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 operaţii de scanare poate să fie considerabilă
şi poate folosi resurse mari din reţea;
! acţiunea de scanare va putea să fie folosită de alte persoane (hackeri sau angajaţi
răuvoitori) pentru descoperirea vulnerabilităţilor reţelei.
148
Securitatea datelor în sistemele informatice economice
149
Securitatea datelor în sistemele informatice economice
150
Securitatea datelor în sistemele informatice economice
151
Securitatea datelor în sistemele informatice economice
câştigă“. Trebuie găsită o cale de mijloc între circulaţia liberă a informaţiilor şi nevoia de
securitate.
Accesul la informaţiile stocate într-un calculator reprezintă un risc de luat în seamă, dar
dezvăluirea informaţiilor către un competitor în afaceri poate avea efecte dezastruoase asupra
firmei. În funcţie de cât de multe şi de caracterul datelor intrate în posesia competitorului, se
poate ajunge chiar în situaţii de blocare a activităţilor 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 când se pune problema asigurării securităţii, oricine se gândeşte că prima măsură
este asigurarea unui control al accesului. Şi pe bună dreptate. Controlul accesului reprezintă o
serie de măsuri menite să interzică accesul persoanelor neautorizate la date.
Controlul accesului la date se va face prin luarea de măsuri administrative şi măsuri
hardware.
Măsurile administrative vor constitui prima linie de apărare împotriva persoanelor
neautorizate. Existenţa acestor măsuri vizează angajaţii firmei, persoanele care au contact
fizic cu firma, clienţii direcţi, precum şi intruderii care vor să pătrundă fizic în firmă pentru a
avea acces la date. Aceste măsuri nu se aplică şi nici nu au cum să se aplice împotriva unor
atacuri de la distanţă.
Măsurile 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 protecţie;
! chei de acces în anumite zone;
! carduri pentru acces la anumite zone;
! alte modalităţi de restricţionare;
! modalităţi de supraveghere.
Perimetrele de protecţie sunt constituite de gruparea calculatoarelor în anumite zone
unde accesul să poată fi supravegheat. Aceste perimetre pot fi anumite clădiri sau, într-o
anumită clădire, anumite birouri. În anumite situaţii, când o anumită încăpere are o suprafaţă
foarte mare, se folosesc pereţi despărţitori.
Accesul în anumite încăperi se va putea face doar dacă persoana respectivă are cheia sau
cardul care să-i permită accesul în acea zonă.
La categoria alte modalităţi de restricţionare pot fi incluse modalităţile biometrice de
control. Cele mai folosite modalităţi de identificare a unei persoane sunt:
! semnătura;
! 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 priveşte 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 măsuri judiciare împotriva unei anumite
persoane.
152
Securitatea datelor în sistemele informatice economice
Control acces
Cale
Single Sign-On
acces
Criptare
Sistem
supraveghere
video
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
următoarele etape77 (figura 68):
! identificare;
! autentificare;
! autorizare.
Control acces
Identificare Autentificare Autorizare
77
Cunoscute şi sub denumirea de AAA – Autentificare, Autorizare, Acces.
153
Securitatea datelor în sistemele informatice economice
Kclient Kserver
KDC
Client Server
Figura 69. Grupul de chei Kerberos.
78
RFC – Request for Comments, o serie de notaţii referitoare la Internet, începând cu anul 1969 (când Internetul
era ARPANET). Un document Internet (Internet Document) poate fi trimis către IETF de către 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.
154
Securitatea datelor în sistemele informatice economice
155
Securitatea datelor în sistemele informatice economice
Client Server
Cerere aplicaţie
3 Răspuns aplicaţie
79
LCD – Liquid Crystal Display – Ecran cu cristale lichide.
156
Securitatea datelor în sistemele informatice economice
80
RBA – Role-Based Authorization.
81
RBAC – Role-Based Acces Control.
157
Securitatea datelor în sistemele informatice economice
În alte cazuri, la sistemele de operare mai noi, producătorul oferă opţiuni 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. Opţiunile de
configurare sunt exemplificate în figura următoare (figura 72).
158
Securitatea datelor în sistemele informatice economice
Exemplu:
Dacă numărul de simboluri este format din caracterele alfabetului (26), iar lungimea
parolei este de şapte (7) caractere, atunci S = 267 = 8.031.810.176 parole.
159
Securitatea datelor în sistemele informatice economice
g g −1 g g g g −1
C =Cs s −1
+ C s −1 ⇒ C s −1 = C s − C s −1
Va rezulta în final:
(s − 1)!
g −1
P=C
(g − 1)!((s − 1) − (g − 1))! g!(s − 1)! g
s −1
= = =
C
g
s! (g − 1)!s! s
s
g!(s − g )!
Cazul 1.
Să consideram că:
I = 500, numărul de încercări de ghicire este de 500 pe minut
A = 26, numărul de caractere folosite (A-Z)
I = 500 ⇒ 500 x 60 x 24 = 720.000 de încercări pe zi
160
Securitatea datelor în sistemele informatice economice
Cazul 2.
Să consideram că:
I = 500, numărul de încercări de ghicire este de 500 pe minut
A = 36, numărul de caractere folosite (A-Z, 0-9).
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 numărul de simboluri folosite să fie de 68 (A = 68). Numărul
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 încercări de ghicire pe minut, o parolă va trebui să aibă minimum
log S log(1,3176 x1013 ) 13,11978359
L= = = = 7,15 caractere (8 caractere ),
log A log 68 1,832508913
Dacă aplicaţia permite diferenţierea între caractere mari şi mici ale alfabetului (case
sensitive), atunci se ajunge la un număr de 94 de simboluri care pot fi folosite în alcătuirea
parolei.
161
Securitatea datelor în sistemele informatice economice
162
Securitatea datelor în sistemele informatice economice
Consolă Obiectiv
(Staţie/server)
GUI Profil
Profil securitate
Raport Management Evaluare
Situaţie securitate Administrare
---
evaluare
- -- -- -
- -- -- - Slab Slab
- -- --- -- -
---
Mediu Slab
Audit şi
colectare
politici Audit/evaluare configurare
Management
obiectiv Detectare Audit politică Audit fişiere
Bază
politici de securitate
de date
Rezumat
audit Identificator de Jurnal evenimente
Alerte servicii în timp (Jurnal securitate)
Management real
Data Ora
Serviciu alerte
detectare 15/07/04 07:03:33
intruşi ! Alerte Identificator de 15/07/04
15/07/04
08:10:22
10:20:25
servicii de reţea 15/07/04 10:20:26
15/07/04 12:03:10
Răspuns
Alerte
Dispozitiv supraveghere
Jurnal evenimente
Centralizator evenimente
Arhivă audit
evenimente
163
Securitatea datelor în sistemele informatice economice
164
Securitatea datelor în sistemele informatice economice
165
Securitatea datelor în sistemele informatice economice
166
Securitatea datelor în sistemele informatice economice
În această situaţie trebuie să suprimăm cererile care au ca rezultat valori dominante (1)
sau să nu permitem afişarea rezultatelor chiar dacă cererea se execută în aşa fel încât
rezultatele să fie afişate sub forma următoare (tabelul 24):
167
Securitatea datelor în sistemele informatice economice
168
Securitatea datelor în sistemele informatice economice
Cheie criptare
Mecanism
criptare
Q
Z
A Y
B
C Înregistrare criptată
Înregistrare originală
Cheie criptare
Mecanism
criptare
V
H
A K
B
C Înregistrare criptată
Înregistrare originală
Cheie criptare
Q
Z
Mecanism criptare
A Y
B
C Înregistrare criptată
Înregistrare originală
V
A H
B K
C
Înregistrare criptată
Înregistrare originală
b) Block Chaining
Blocarea integrităţii
Reprezintă o cale folosită atât pentru blocarea integrităţii, cât şi pentru limitarea
accesului la baza de date. Metoda mai poartă şi denumirea de „spray paint“ deoarece fiecare
element este colorat în funcţie de senzitivitatea acestuia. Culoarea este menţinută cu elementul
pe care-l caracterizează şi nu într-o bază de date separată.
Fiecare dată va conţine trei elemente:
169
Securitatea datelor în sistemele informatice economice
Cheia de criptare K
Mecanism criptare
Nr. înregistrare 23
Blocarea senzitivităţii
Blocarea senzitivităţii reprezintă o combinaţie a două elemente:
! existenţa unui identificator unic (numărul de înregistrare);
! nivelul de securitate.
Trebuie să nu se permită aflarea a două elemente care au acelaşi nivel de securitate doar
prin căutarea în porţiunea de securitate a blocării integrităţii. Ca rezultat al criptării, conţinutul
blocării, în special nivelul de securitate, este ascuns (figura 78).
170
Securitatea datelor în sistemele informatice economice
Mecanism criptare
Cheia criptare K
Securitatea „front-end“
Securitatea front-end (cunoscută şi sub denumirea de gardă) este asigurată de un
mecanism de tip monitor.
Secvenţa de interacţiuni între utilizator şi mecanismul front-end este următoarea:
! utilizatorul se identifică front-end;
! utilizatorul transmite o cerere mecanismului front-end;
! mecanismul front-end verifică autorizaţia utilizatorului de a acces la date;
! mecanismul front-end trimite o cerere către sistemul de gestiune al bazei de date
(SGBD);
! sistemul de gestiune al bazei de date (SGBD) efectuează o operaţie de acces de tip
I/O;
! sistemul de gestiune al bazei de date (SGBD) trimite rezultatul interogării către
mecanismul front-end;
! mecanismul front-end verifică validitatea datelor extrase cu ajutorul sumelor de
control şi verifică dacă datele pot fi disponibile către utilizator conform nivelului de
acces al utilizatorului;
! mecanismul front-end va formata datele pentru utilizator;
! se transmit datele către utilizator.
Filtru comutativ
Filtrul comutativ interacţionează atât cu utilizatorul, cât şi cu sistemul de gestiune al
bazei de date (SGBD).
Filtrul comutativ va reformula cererile în felul următor:
! sistemul de gestiune al bazei de date (SGBD) va efectua cât mai multe sarcini
posibile rejectând cât mai multe cereri inacceptabile care dezvăluie date senzitive;
! selectarea datelor la care utilizatorul poate să aibă acces.
Filtrul comutativ poate fi folosit atât asupra înregistrărilor, cât şi asupra atributelor sau
elementelor.
La nivelul înregistrărilor, filtrul cere datele dorite plus suma de control criptografică;
dacă acestea verifică acurateţea şi accesibilitatea datelor, atunci acestea pot fi transmise către
utilizator.
171
Securitatea datelor în sistemele informatice economice
La nivel de atribut, filtrul verifică dacă toate atributele din cererea utilizatorului sunt
accesibile acestuia, şi dacă da, transmite cererea către 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ă.
Când sunt returnate, acestea verifică apartenenţa 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 celorlalţi utilizatori vor accesa acelaşi tip de date. Datele care sunt accesibile unui
utilizator se obţin prin filtrarea conţinutului bazei de date originale. Utilizatorul nu este
conştient de existenţa tuplurilor care lipsesc din vederea respectivă. O vedere poate fi definită
din mai multe tabele, pentru care utilizatorul deţine privilegiul corespunzător de utilizare, dar
nu şi de folosire a tabelelor de bază. Utilizarea, în acest caz a vederilor, este mai restrictivă
decât simpla deţinere a privilegiilor acordate utilizatorului asupra tabelelor de bază. SGBD-ul
stochează definiţia vederii în baza de date. Când SGBD-ul întâlneşte o referire la o vedere,
caută această definiţie şi transformă cererea respectivă într-o cerere echivalentă către tabelele
care constituie sursa vederii, după care efectuează cererea.
Folosirea vederilor pentru asigurarea securităţii bazelor de date mai este întâlnită în
literatura de specialitate şi sub denumirea de securitate discreţionară şi este caracteristică
sistemelor bazate pe SQL.
Folosirea vederilor bazelor de date are ca efect crearea unor facilităţi în exploatare, dar
poate aduce şi dezavantaje (tabelul 27).
Cu ajutorul instrucţiunilor SQL se pot crea vederi orizontale şi verticale. Sintaxa este
următoarea:
(- - ,nume coloană, - -)
172
Securitatea datelor în sistemele informatice economice
173
Securitatea datelor în sistemele informatice economice
Se pot aplica, de asemenea, şi combinaţii ale acestora; în acest fel se creează vederi
mixte. Vom considera următorul scenariu (figura 79):
MANA
1 N
CNP
NUME
NUME DENP
N M
STUD
STUD SALA PROI OBIE
SALB
SALB CLIE
COMP
PRIM CNP DENP
LEGA
Figura 79. 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 următoarea structură (tabelul 29):
Pentru obiectivele pe care firma le are de executat vom avea următoarea structura
(tabelul 30):
Tabelul 30. Structură proiecte firmă (PROI).
DENP OBIE CLIE MANA
MLPAT Clădire MLPAT MLPAT 1234
CPP Construcţie persoană privată Popescu Ion 1235
CI-H Construcţie industrială (hală) TIAB S.A. 1859
DENP – denumire proiect, OBIE – obiectiv, CLIE – client/beneficiar, MANA –
responsabil proiect.
174
Securitatea datelor în sistemele informatice economice
Aplicăm vederile.
şi
Acest mecanism de securitate este aplicat în SQL. La definirea vederilor prin CREATE
VIEW, se poate limita accesul numai la bazele de date al căror proprietar este utilizatorul
175
Securitatea datelor în sistemele informatice economice
respectiv, folosind o condiţie selecţie cu cuvântul cheie USER, prin care se dă identificatorul
utilizatorului. Orice operaţie din baza de date se face numai pe baza unei autorizări pentru
acea operaţie. Iniţial, sistemul acordă toate drepturile de operare pentru administratorul
sistemului (SYSADM) şi nu acordă nici un drept celorlalţi utilizatori. Ulterior, drepturile de
operare pentru utilizatori sunt stabilite de către administratorul sistemului prin intermediul
instrucţiunii GRANT şi revocate prin instrucţiunea REVOKE. Sintaxa acestor comenzi este
exemplificată în figura 80.
GRANT SELECT
INSERT
DELETE
UPDATE
(- - , column name ,- -)
,
ALL PRIVILEGES
(- - , column name ,- -)
,
ALL PRIVILEGES
176
Securitatea datelor în sistemele informatice economice
Mecanism Mecanism
de securitate de securitate
SGBD
(sigur)
Sistem de operare
(sigur)
Baza de date
82
În limba engleză OS – Operating System.
83
Cunoscută în literatura de specialitate ca arhitectura Woods Hole.
177
Securitatea datelor în sistemele informatice economice
Mecanism de securitate
„Front end“- superior
Unitate de criptare
Semnătură Verificare
semnătură
Query Răspuns
SGBD
(nesigur)
Sistem de operare
(sigur)
Baza de date
În cazul arhitecturii integrate (figura 83), 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 asemănare cu arhitectura replicată/distribuită (figura 84).
178
Securitatea datelor în sistemele informatice economice
Superutilizator Utilizator
Mecanism Mecanism
de securitate de securitate
SGBD SGBD
(sigur)
Sistem de operare
(sigur)
Baza de date
Superutilizator Utilizator
179
Securitatea datelor în sistemele informatice economice
Superutilizator Utilizator
Mecanism Mecanism
de securitate de securitate
SGBD SGBD
(sigur)
Replicator
(sigur)
Baza de date
Baza de date
Superutilizator
+ utilizator Utilizator
180