Referat Aspecte De Securitate In Retele De Calculatoare
Mai jos puteti citi fragmente din
Referat Aspecte De Securitate In Retele De Calculatoare si de asemenea puteti face
Download Referat Aspecte de securitate in retele de calculatoareCiteste fragmente din Referat Aspecte De Securitate In Retele De Calculatoare
Aspecte de securitate în retele de calculatoare
HYPERLINK l "crptrad" Criptografia traditională
HYPERLINK l "practic" Câteva principii practice de criptare
HYPERLINK l "modern" Caracteristici ale criptografiei moderne
HYPERLINK l "securitate" Implicatii sociale ale problemelor de
securitate
Importanta aspectelor de securitate în retelele de calculatoare a
crescut odată cu extinderea prelucrărilor electronice de date si a
transmiterii acestora prin intermediul retelelor. În cazul operării
asupra unor informatii confidentiale, este important ca avantajele de
partajare si comunicare aduse de retelele de calculatoare să fie
sustinute de facilităti de securitate substantiale. Acest aspect este
esential în conditiile în care retelele de calculatoare au ajuns să
fie folosite inclusiv pentru realizarea de operatiuni bancare,
cumpărături sau plata unor taxe.
În urma implementării unor mecanisme de securitate într-o retea de
calculatoare, informatiile nu vor putea fi accesate sau interceptate de
persoane neautorizate (curioase sau, eventual, chiar rău intentionate)
si se va împiedica falsificarea informatiilor transmise sau utilizarea
clandestină a anumitor servicii destinate unor categorii specifice de
utilizatori ai retelelor.
Persoanele care atentează la securitatea retelelor pot apartine unor
categorii diverse, comitând delicte mai mult sau mai putin grave:
studenti care se amuză încercând să fure posta electronică a
celorlalti, "hacker"-i care testează securitatea sistemelor sau
urmăresc să obtină în mod clandestin anumite informatii, angajati
care pretind că au atributii mai largi decât în realitate, accesând
servicii care în mod normal le-ar fi interzise, sau fosti angajati care
urmăresc să distrugă informatii ca o formă de răzbunare, oameni de
afaceri care încearcă să descopere strategiile adversarilor, persoane
care realizează fraude financiare (furtul numerelor de identificare a
cărtilor de credit, transferuri bancare ilegale etc.), spioni militari
sau industriali care încearcă să descopere secretele / strategiile
adversarilor, sau chiar teroristi care fură secrete strategice.
În conditiile în care pot exista interese atât de numeroase de
"spargere" a unei retele, este evident că proiectantii resurselor hard
si soft ale acesteia trebuie să ia măsuri de protectie serioase
împotriva unor tentative rău intentionate. Metode de protectie care
pot stopa "inamici" accidentali se pot dovedi inutile sau cu un impact
foarte redus asupra unor adversari redutabili - dedicati si cu
posibilităti materiale considerabile.
Problemele de asigurare a securitătii retelelor pot fi grupate în
următoarele domenii interdependente:
confidentialiatea se referă la asigurarea accesului la informatie doar
pentru utilizatorii autorizati si împiedicarea accesului pentru
persoanele neautorizate;
integritatea se referă la asigurarea consistentei informatiilor (în
cazul transmiterii unui mesaj prin retea, integritatea se referă la
protectia împotriva unor tentative de falsificare a mesajului);
autentificarea asigură determinarea identitătii persoanei cu care se
comunică (aspect foarte important în cazul schimbului de informatii
confidentiale sau al unor mesaje în care identitatea transmitătorului
este esentială);
ne-repudierea se referă la asumarea responsabilitătii unor mesaje sau
comenzi, la autenticitatea lor. Acest aspect este foarte important în
cazul contractelor realizate între firme prin intermediul mesajelor
electronice: de exemplu, un contract / comandă cu o valoare foarte mare
nu trebuie să poată fi ulterior repudiat(ă) de una din părti (s-ar
putea sustine, în mod fraudulos, că întelegerea initială se referea
la o sumă mult mai mică).
Aspectele de securitate enumerate anterior se regăsesc, într-o
oarecare măsură, si în sistemele traditionale de comunicatii: de
exemplu, posta trebuie să asigure integritatea si confidentialitatea
scrisorilor pe care le transportă. În cele mai multe situatii, se cere
un document original si nu o fotocopie. Acest lucru este evident în
serviciile bancare. În mesajele electronice însă, distinctia dintre
un original si o copie nu este deloc evidentă.
Procedeele de autentificare sunt foarte răspândite si ele:
recunoasterea fetelor, vocilor sau scrisului sau semnăturilor unor
persoane pot fi încadrate în această categorie. Semnăturile si
sigiliile sunt metode de autentificare folosite extrem de frecvent.
Falsurile pot fi detectate de către experti în grafologie prin analiza
scrisului si chiar a hârtiei folosite. Evident, aceste metode nu sunt
disponibile electronic si trebuie găsite alte solutii valabile.
Dintr-un punct de vedere mai pragmatic, implementarea unor mecanisme de
securitate în retelele de calculatoare de arie largă, în particular -
Internet-ul, priveste rezolvarea următoarele aspecte
bombardarea cu mesaje - asa numitul spam - trimiterea de mesaje
nedorite, de obicei cu un continut comercial.
Acest fenomen este neplăcut în cazul unui număr mare de mesaje
publicitare nedorite si poate avea efecte mai grave în cazul invadării
intentionate cu mesaje ("flood"), uzual cu un continut nesemnificativ.
Pentru utilizatorii de Internet conectati prin intermediul uni modem,
numărul mare de mesaje are ca efect cresterea perioadei necesare pentru
"descărcarea" postei electronice si deci un cost de conectare mai
ridicat.
Există programe de postă electronică care permit vizualizarea
antetelor mesajelor primite înainte ca acestea să fie aduse pe
calculatorul local, selectarea explicită a mesajelor care se doresc
transferate si stergerea celorlalte. ÃŽn plus, programele de e-mail pot
încorpora facilităti de blocare a mesajelor de tip "spam" prin
descrierea de către utilizator a unor actiuni specifice de aplicat
asupra mesajelor, în functie de anumite cuvinte cheie sau de adresele
(listele de adrese) de provenientă.
rularea unui cod (program) dăunător, adesea de tip virus - acesta
poate fi un program Java sau ActiveX, respectiv un script JavaScript,
VBScript etc. ;
Asemenea programe sunt în general blocate de navigatoarele moderne dar
au ajuns să se răspândească ca fisiere atasate mesajelor de mail, un
caz renumit în acest sens fiind cel al virusului "Love Letter" (care
deteriorează fisiere de tip sunet si imagine) si mutantilor lui, mai
distructivi decât prima versiune.
În general marile firme care produc navigatoare testează riguros
riscurile impuse de programele dăunătoare rulate de pe site-uri web,
uneori create cu intentii distructive, si intervin în general prin
versiuni superioare imediat ce un astfel de risc a fost descoperit si
corectat. ÃŽn plus, cea mai mare parte a programelor de navigare permit
utilizarea unor filtre specifice pe baza cărora să se decidă dacă un
anumit program va fi rulat sau nu, si cu ce restrictii de securitate
(decizia se realizează în general pe baza "încrederii" indicate în
mod explicit de utilizator). O altă solutie la această problemă va fi
prezentată ulterior.
infectarea cu virusi specifici anumitor aplicatii - se previne prin
instalarea unor programe antivirus care detectează virusii,
devirusează fisierele infectate si pot bloca accesul la fisierele care
nu pot fi "dezinfectate". În acest sens, este importantă devirusarea
fisierelor transferate de pe retea sau atasate mesajelor de mail, mai
ales dacă contin cod sursă sau executabil, înainte de a le deschide /
executa.
accesarea prin retea a calculatorului unui anumit utilizator si "atacul"
asupra acestuia.. La nivelul protocoalelor de retea, protejarea
accesului la un calculator sau la o retea de calculatoare se realizează
prin mecanisme de tip fire-wall, prin comenzi specifice; acestea pot fi
utilizate si în sens invers, pentru a bloca accesul unui calculator sau
a unei retele de calculatoare la anumite facilităti din Internet.
interceptarea datelor în tranzit si eventual modificarea acestora -
snooping. Datele se consideră interceptate atunci când altcineva
decât destinatarul lor le primeste. În Internet, datele se transmit
dintr-un router HYPERLINK l "a2" [1] în altul (vezi HYPERLINK l
"reteledearielarga" Retele de arie largă ) fără a fi (uzual)
protejate. Routerele pot fi programate pentru a intercepta, eventual
chiar modifica datele în tranzit. Realizarea unei astfel de operatii
este destul de dificilă, necesitând cunostinte speciale de programare
în retele si Internet, dar există numeroase programe (de tip
“hackerÂâ€) care pot fi utilizate în aceste scopuri, ceea ce duce la
cresterea riscului de interceptare a datelor. ÃŽn paragraful HYPERLINK
l "modern" Caracteristici ale criptografiei moderne se va discuta
modul în care se poate preveniri interceptarea informatiilor transmise
prin aplicarea unor algoritmi de codificare a datelor.
Transmisia protejată a datelor trebuie să garanteze faptul că doar
destinatarul primeste si citeste datele trimise si că acestea nu au
fost modificate pe parcurs (datele primite sunt identice cu cele
trimise). Modificarea datelor s-ar putea realiza în mod intentionat, de
către o persoană care atentează la securitatea retelei sau printr-o
transmisie defectuoasă
expedierea de mesaje cu o identitate falsă, expeditorul impersonând pe
altcineva (pretinde că mesajul a fost trimis de la o altă adresă de
postă electronică)? spoofing. Această problemă se revolvă prin
implementarea unor mecanisme de autentificare a expeditorului.
Se poate remarca faptul că problemele ridicate la punctele 3 si 4 sunt
riscuri generice, specifice pentru utilizatorii care fac schimb de
fisiere si respectiv pentru toti cei care sunt conectati la o retea de
calculatoare - locală sau de arie largă. Problemele de interceptare si
autentificare, cele mai importante din punctul de vedere al
utilizatorilor obisnuiti, sunt rezolvate prin aplicarea unor tehnici de
codificare, după cum se va vedea în paragraful HYPERLINK l "modern"
Caracteristici ale criptografiei moderne .
Pentru asigurarea securitătii retelei este importantă implementarea
unor mecanisme specifice pornind de la nivelul fizic (protectia fizică
a liniilor de transmisie ), continuând cu proceduri de blocare a
accesului la nivelul retelei (fire-wall), până la aplicarea unor
tehnici de codificare a datelor (criptare), metodă specifică pentru
protectia comunicării între procesele de tip aplicatie care rulează
pe diverse calculatoare din retea.
Împiedicarea interceptării fizice este în general costisitoare si
dificilă; ea se poate realiza mai facil pentru anumite tipuri de medii
(de exemplu, detectarea interceptărilor pe fibre optice este mai
simplă decât pentru cablurile cu fire de cupru). De aceea, se preferă
implementarea unor mecanisme de asigurare a securitătii la nivel logic,
prin tehnici de codificare / criptare a datelor transmise care urmăresc
transformarea mesajelor astfel încât să fie întelese numai de
destinatar; aceste tehnici devin mijlocul principal de protectie a
retelelor.
Având în vedere importanta dezvoltării procedeelor de criptare pentru
asigurarea securitătii, dedicăm următoarele paragrafe acestui
subiect. Pentru început, se prezintă problema criptării si metodele
traditionale de criptare iar apoi - câteva directii de evolutie în
criptografia modernă.
HYPERLINK l "inapoi" inapoi
HYPERLINK l "_ftnref1"
[1] Routerele sunt aparate special concepute pentru a transmite datele
mai departe astfel încât, în funcţie de expeditorul şi destinaţia
acestora, să aleagă calea de urmat. Cel mai adesea, routerele sunt
chiar calculatoare.
HYPERLINK l "inapoi" inapoi
Criptografia traditională
Istoria criptografiei este lungă si pitorească. Se spune că la
dezvoltarea procedeelor de criptare (codificare) au contribuit: armata,
corpurile diplomatice, persoanele care au tinut jurnale si
îndrăgostitii. Evident, dezvoltarea tehnicilor de criptare a constiuit
o prioritate pentru organizatiile militare, care utilizau frecvent
asemenea procedee. ÃŽnainte de aparitia calculatoarelor, volumul mare de
mesaje criptate sau transmise a fost gestionat de un număr mare de
functionari "codori". Evident, tehnicile folosite erau limitate de
capacitatea codorilor de realizare a transformărilor necesare si de
însusirea de către acestia a unor tehnici criptografice noi. Totusi,
pericolul de capturare a codurilor de către "inamici" făcea necesară
schimbarea periodică a metodei de criptare.
Modelul clasic de criptare presupune transformarea unui text sursă
("plain text") printr-o functie dependentă de o cheie ("key"),
transformare în urma căreia rezultă textul cifrat ("ciphertext").
ÃŽnainte de aparitia retelelor de calculatoare, acesta era transmis
printr-un curier sau prin radio. ÃŽn cazul interceptarii mesajelor
cifrate, ele nu puteau fi decodificate prea usor în absenta cheii de
criptare. Uneori, "intrusii" puteau nu numai să asculte canalele de
comunicatie (intrusi pasivi), ci si să înregistreze mesajele si să le
retransmită mai târziu, să introducă propriile mesaje sau să
modifice mesajele legitime înainte ca ele să ajungă la receptor
(intrus activ).
Domeniul care se ocupă de spargerea (decodificarea) cifrurilor se
numeste criptanaliză ("cryptanalysis") iar conceperea cifrurilor
(criptografia) si spargerea lor (criptanaliza) sunt cunoscute global sub
numele de criptologie ("cryptology").
Într-o încercare de formalizare matematică a proceselor de criptare
si decriptare, se pot folosi următoarele notatii: S - textul sursă, CK
- functia de criptare, dependentă de o cheie K, R - codul rezultat si
DK - functia de decriptare. Cu aceste notatii, criptarea este exprimată
prin formula
R = CK(S) iar decriptarea - prin S = DK(R).
Se observă că DK(CK(S)) = S.
O regulă de bază în criptografie stabileste necesitatea cunoasterii
metodei generale de criptare de către orice criptanalist. Acest
principiu are la bază constatarea că pentru a inventa, testa si
instala o nouă metodă de criptare este necesară o cantitate prea mare
de efort pentru ca acest procedeu să fie practic. În consecintă, cel
mai important element devine cheia de criptare.
Cheia constă într-un sir de caractere care defineste / selectează una
sau mai multe criptări potentiale. Spre deosebire de metoda generală,
care, în mod traditional, se schimba doar la câtiva ani, cheia putea
fi schimbată oricât de des era necesar.
În concluzie, modelul de bază al criptării foloseste o metodă
generală cunoscută, care este parametrizată cu o cheie secretă, ce
poate fi schimbată usor. În mod paradoxal, publicarea algoritmului de
criptare, prin faptul că dă posibilitatea unui număr mare de
criptologi să spargă sistemul, îi poate dovedi stabilitatea, în caz
că după câtiva ani nici unul din specialistii care au încercat să-l
spargă nu a reusit.
Componenta secretă a criptării este, în consecintă, cheia, a cărei
lungime devine foarte importantă. În mod evident, cu cât cheia este
mai lungă lungă, cu atât elementele ei sunt mai greu de determinat.
De exemplu, pentru o secventă de n cifre (0,...,9), există 10n
posibilităti de a o crea. Astfel, pentru determinarea unei secvente de
6 cifre ar trebui parcurse 1 milion de posibilităti. În cazul în care
cheile ar contine litere, numărul de alternative creste fiindcă în
alfabet există 26 de litere. Se poate deduce că lungimea cheii produce
cresterea exponentială a volumului de muncă al criptanalistului. O
cheie care să poată tine la distantă adversari profesionisti ar
trebui să aibă cel putin 256 de biti (cel putin 32 de cifre), în timp
ce uzual se pot folosi chei de 64 de biti (în jur de 8 cifre).
Când un criptanalist trebuie să decodifice un text, el se confruntă
cu una din următoarele probleme:
problema textului cifrat ("ciphertext only problem"), când are la
dispozitie o cantitate de text cifrat si nici un fel de text sursă;
problema textului sursă cunoscut ("known plaintext problem"), când are
la dispozitie un text sursă si textul cifrat corespunzător;
problema textului sursă ales ("chosen plaintext problem"), dacă poate
cripta la alegere zone din textul sursă (poate afla criptarea unui
anumit text).
În multe situatii, criptanalistul poate ghici unele părti din textul
sursă, chiar dacă teoretic s-ar găsi în situatia de a rezolva o
problemă de text cifrat. (De exemplu, initierea unei sesiuni de lucru
într-un sistem multiutilizator va contine uzual cuvântul "LOGIN".) De
aceea, pentru a asigura securitatea, criptograful trebuie să se asigure
că metoda propusă este sigură, chiar dacă inamicul său poate cripta
cantităti arbitrare de text ales.
Există două metode traditionale de criptare: cifruri cu substitutie si
cifruri cu transpozitie. Aceste tehnici de bază sunt folosite, în
forme evoluate, si în sistemele moderne de criptare.
Cifrurile cu substitutie. Într-un asemenea cifru, fiecare literă sau
grup de litere este înlocuit(ă) cu o altă literă sau cu un grup de
litere. Cel mai vechi exemplu este cifrul lui Cezar, prin care a devine
D, b devine E, ..., z devine C. Prin generalizare, alfabetul poate fi
deplasat cu k litere în loc de 3. În acest caz, k devine cheia pentru
metoda generală a alfabetelor deplasate circular.
O altă metodă de substitutie este înlocuirea fiecărei litere din
textul sursă cu o anumită literă corespondentă. Sistemul se numeste
substitutie monoalfabetică si are ca si cheie un sir de 26 de litere.
Pentru o persoană neavizată, acest sistem ar putea fi considerat sigur
fiindcă încercarea tuturor celor 26! de chei posibile ar necesita unui
calculator 1013 ani alocând 1msec pentru fiecare solutie. Totusi,
folosind o cantitate foarte mică de text cifrat, cifrul va putea fi
spart cu usurintă.
Abordarea de bază porneste de la proprietătile statistice ale
limbajelor naturale. Cunoscând frecventa statistică a fiecărei litere
si a fiecărui grup de două sau trei litere (de exemplu, în limba
română: ce, ci, ge, gi, oa, ua etc.) într-o anumită limbă, numărul
mare de alternative initiale se reduce considerabil. Un criptanalist va
număra frecventele relative ale tuturor literelor în textul cifrat si
va încerca să facă asocierea cu literele a căror frecventă este
cunoscută. Apoi va căuta grupurile de litere, încercând să
coroboreze indiciile date de acestea cu cele furnizate de frecventele
literelor.
O altă abordare, aplicabilă dacă există informatii despre domeniul
la care se referă textul, este de a ghici un cuvânt sau o expresie
probabilă (de exemplu, "financiar" pentru un mesaj din contabilitate)
si de a căuta corespondentul său, folosind informatii despre literele
repetate ale cuvântului si pozitiile lor relative. Abordarea se poate
combina cu informatiile statistice legate de frecventele literelor.
Cifruri cu transpozitie. Spre deosebire de cifrurile cu substitutie,
care păstrează ordinea literelor din textul sursă dar le transformă,
cifrurile cu transpozitie ("transposition ciphers") reordonează
literele, fără a le "deghiza".
Un exemplu simplu este transpozitia pe coloane, în care textul sursă
va fi scris literă cu literă si apoi citit pe coloane, în ordinea
dată de o anumită cheie. Ca si cheie se poate alege un cuvânt cu
litere distincte, de o lungime egală cu numărul de coloane folosite
în cifru. Ordinea alfabetică a literelor din cuvântul cheie va da
ordinea în care se vor citi coloanele.
Exemplu: Dacă textul sursă este:
"acestcursîsipropunesăprezintefacilitătiledecomunicareoferitederetele
ledecalculatoare" iar cheia este "PRECIS", atunci asezarea sa pe coloane
va genera următorul text cifrat:
P R E C I S
4 5 2 1 3 6
a c e s t c
u r s î s i
p r o p u n
e s ă p r e
z i n t e f
a c i l i t
ă t i l e d
e c o m u n
i c a r e o
f e r i t e
d e r e t e
l e l e d e
c a l c u l
a t o a r e
"sîpptllmrieecaesoăniioarrllotsureieuettduraupezaăeifdlcacrrsictcceee
atcineftdnoeeele".
Spargerea unui cifru cu transpozitie începe cu verificarea dacă acesta
este într-adevăr de acest tip prin calcularea frecventelor literelor
si compararea acestora cu statisticile cunoscute. Dacă aceste valori
coincid, se deduce că fiecare literă este "ea însăsi", deci este
vorba de un cifru cu transpozitie.
Următorul pas este emiterea unei presupuneri în legătură cu numărul
de coloane. Acesta se poate deduce pe baza unui cuvânt sau expresii
ghicite ca făcând parte din text. Considerând sintagma "săprezinte",
cu grupurile de litere (luate pe coloane) "si", "ăn", "pt", "re", se
poate deduce numărul de litere care le separă, deci numărul de
coloane. Notăm în continuare cu k acest număr de coloane.
Pentru a descoperi modul de ordonare a coloanelor, dacă k este mic, se
pot considera toate posibilitătile de grupare a câte două coloane
(în număr de k(k-1) ). Se verifică dacă ele formează împreună un
text corect numărând frecventele literelor si comparându-le cu cele
statistice. Perechea cu cea mai bună potrivire se consideră corect
pozitionată. Apoi se încearcă, după acelasi principiu, determinarea
coloanei succesoare perechii din coloanele rămase iar apoi - a coloanei
predecesoare. În urma acestor operatii, există sanse mari ca textul
să devină recognoscibil.
Unele proceduri de criptare acceptă blocuri de lungime fixă la intrare
si generează tot un bloc de lungime fixă. Aceste cifruri pot fi
descrise complet prin lista care defineste ordinea în care caracterele
vor fi trimise la iesire (sirul pozitiilor din textul de intrare pentru
fiecare caracter din succesiunea generată).
Problema construirii unui cifru imposibil de spart a preocupat îndelung
pe criptanalisti; ei au dat o rezolvare teoretică simplă încă de
acum câteva decenii dar metoda nu s-a dovedit fiabilă din punct de
vedere practic, după cum se va vedea în continuare.
Tehnica propusă presupune alegerea unui sir aleator de biti pe post de
cheie si aducerea textului sursă în forma unei succesiuni de biti prin
înlocuirea fiecărui caracter cu codul său ASCII. Apoi se aplică o
operatie logică - de tip Sau exclusiv (operatia inversă echivalentei:
0 xor 0 = 0, 0 xor 1 = 1, 1 xor 0 = 1, 1 xor 1 = 0) - între cele două
siruri de biti. Textul cifrat rezultat nu poate fi spart pentru că nu
există indicii asupra textului sursă si nici textul cifrat nu oferă
criptanalistului informatii. Pentru un esantion de text cifrat suficient
de mare, orice literă sau grup de litere (diftong, triftong) va apărea
la fel de des.
Acest procedeu este cunoscut sub numele de metoda cheilor acoperitoare.
Desi este perfectă din punct de vedere teoretic, metoda are, din
păcate, câteva dezavantaje practice:
cheia nu poate fi memorată, astfel încât transmitătorul si
receptorul să poarte câte o copie scrisă a ei fiindcă în caz că ar
fi "capturati", adversarul ar obtine cheia;
cantitatea totală de date care poate fi transmisă este determinată de
dimensiunea cheii disponibile;
o nesincronizare a transmitătorului si receptorului care generează o
pierdere sau o inserare de caractere poate compromite întreaga
transmisie fiindcă toate datele ulterioare incidentului vor apărea ca
eronate.
HYPERLINK l "inapoi" inapoi
Câteva principii practice de criptare
Se recomandă ca informatiile criptate să contină informatii
redundante, adică informatii care nu sunt necesare pentru întelegerea
mesajului. Acest principiu constituie o protectie împotriva "intrusilor
activi" care încearcă trimiterea unor mesaje fictive în locul celor
reale, folosind structura de mesaj originală si date eronate. Astfel, o
listă de comenzi de produse ale unor clienti ar putea fi înlocuită,
de către o persoană rău-voitoare care cunoaste structura comenzilor,
cu o listă generată aleator, pornind de la o listă partială de nume
de clienti. Dacă însă mesajele criptate ale comenzilor contin, în
afara informatiei utile, zone de informatii redundante, atunci este mult
mai putin probabil ca mesajele generate aleator să contină comenzi
corecte.
kd-
kdÃŽ
愀̤ÂÂ欀á¤
愀̤ÂÂ欀녤
de altă parte, introducerea de informatie aleatoare poate usura
spargerea mesajelor de către criptanalisti fiindcă acestia vor putea
distinge mai usor mesajele valide de cele invalide (se simplifică
spargerea sistemului de către intrusii pasivi). De aceea, se recomandă
construirea aleatoare a secventelor redundante.
Un alt principiu important urmăreste împiedicarea intrusilor activi de
a retransmite mesaje vechi ca fiind actuale; în acest scop, se folosesc
marcaje numite amprente de timp.
HYPERLINK l "inapoi" inapoi
Caracteristici ale criptografiei moderne. Rezolvarea problemelor legate
de interceptarea, autentificarea si modificarea mesajelor
Având în vedere faptul că transmisia de date în Internet este
neprotejată, a apărut necesitatea dezvoltării tehnicilor de criptare
în directia automatizării acestora si a implementării lor în retele
de calculatoare. Astfel, utilizarea unor algoritmi pentru criptarea
informatiilor transmise va deveni principalul mijloc de rezolvare a
problemelor de interceptare în retele.
În descrierea unei transmisii de date prin retea se obisnuieste să se
numească generic "mesaj" un ansamblu de date trimis de un "emitător"
unui "receptor". Printr-o metodă de criptare, mesajele vor fi
transformate, pe baza unei chei de criptare, astfel încât să poată
fi întelese doar de destinatar.
Unul din principiile mai recent apărute în criptanaliză constă în
utilizarea unei alte chei pentru decodificarea mesajului decât cea
folosită la codificare; această tehnică este mai eficientă dar
complică putin procedeul general si de aceea se preferă când
criptarea / decriptarea se realizează automat. Evident, dimensiunea
unei chei de criptare (exprimate în general în biti) este o măsură a
nivelului de securitate dat de acea cheie, ea indicând rezistenta
mesajului cifrat la încercările de descifrare de către cineva care nu
detine cheia de descifrare potrivită.
Principiile de criptare din algoritmii cu cheie secretă au evoluat
odată cu aparitia calculatoarelor; ele continuă însă să se bazeze
pe metodele traditionale, cum ar fi transpozitia si substitutia.
Algoritmii cu cheie secretă sunt caracterizati de faptul că folosesc
aceeasi cheie atât în procesul de criptare, cât si în cel de
decriptare (vezi figura de mai jos). Din acest motiv, acesti algoritmi
mai sunt cunoscuti sub numele de algoritmi simetrici; pentru aplicarea
lor este necesar ca înaintea codificării / decodificării, atât
emitătorul cât si receptorul să posede deja cheia respectivă. În
mod evident, cheia care caracterizează acesti algoritmi trebuie să fie
secretă.
Principalul dezavantaj al algoritmilor simetrici constă în faptul că
impun un schimb de chei private înainte de a se începe transmisia de
date. Altfel spus, pentru a putea fi utilizati, este necesar un canal cu
transmisie protejată pentru a putea fi transmise cheile de criptare /
decriptare.
Schema de aplicare a unui algoritm simetric
Ulterior, vor apărea si algoritmi cu cheie publică, caracterizati prin
faptul că criptarea si decriptarea folosesc chei diferite (vezi figura
de mai jos). Această caracteristică a dat algoritmilor cu cheie
publică si numele de algoritmi asimetrici. În acest caz, una dintre
chei poate fi publică (general cunoscută - poate fi distribuită
oricui) iar cealaltă va trebui să privată / secretă (cunoscută doar
de cel care o foloseste). Fiecare dintre aceste chei poate cripta
mesajul, dar un mesaj criptat cu o anumită cheie nu poate fi decriptat
decât cu cheia sa pereche.
Astfel, în cazul utilizării unui algoritm asimetric în comunicarea
dintre un emitător si un receptor, fiecare dintre acestia va detine
câte o pereche de chei - publică si privată. Emitătorul poate cripta
mesajul cu cheia publică a receptorului, astfel încât doar acesta să
poată decripta mesajul cu cheia sa privată. În cazul unui răspuns,
receptorul va utiliza cheia publică a emitătorului astfel încât
decriptarea să se poată face exclusiv de către emitător (cu cheia sa
pereche, privată).
Cheile algoritmilor asimetrici sunt obtinute pe baza unei formule
matematice din algebra numerelor mari, pentru numere prime între ele,
iar din valoarea unei chei nu poate fi dedusă valoarea cheii asociate.
Remarcăm faptul că aplicarea în informatică a calculelor modulo
numere prime s-a dovedit extrem de benefică pentru multi algoritmi
moderni.
PRIVATE "TYPE=PICT;ALT=f5-2.GIF (5112 bytes)" INCLUDEPICTURE d
"img/f5-2.GIF"
Schema de aplicare a unui algoritm asimetric
Traditional, criptografii foloseau algoritmi simpli asociati cu chei de
securitate foarte lungi. Azi se urmăreste crearea unor algoritmi de
criptare atât de complecsi încât să fie practic ireversibili, chiar
dacă un criptanalist achizitionează cantităti foarte mari de text
cifrat.
O altă caracteristică a criptografiei moderne constă în
automatizarea tehnicilor clasice, prin folosirea unor dispozitive
special concepute. Transpozitiile si substitutiile vor fi implementate
cu circuite simple, de viteză mare, care vor fi conectate în cascadă
astfel încât dependenta iesirii de intrare devine extrem de
complicată si dificil de descoperit.
ÃŽn 1977, guvernul SUA a adoptat ca standard oficial pentru informatiile
nesecrete un cifru produs si dezvoltat de IBM, numit DES (Data
Encryption System), care a fost larg adoptat în industrie. DES este cel
mai popular algoritm cu cheie secretă; el continuă să stea la baza
unor sisteme folosite în mod curent. DES foloseste (uzual) o cheie de
56 de biti; aceasta a fost în cele din urmă adoptată în locul uneia
de 128 de biti, neagreată de NSA (National Security Agency), agentia
"spărgătoare de coduri a guvernului", care dorea suprematia în
domeniul criptografic.
Din 1977, cercetătorii în criptografie au încercat să proiecteze
masini pentru a sparge DES. Prima asemenea masină (1977) a fost
concepută de Diffie si Hellman, avea nevoie de mai putin de o zi iar
costul ei a fost estimat la 20 de milioane de dolari. După aproape 2
decenii, costul unei astfel de masini a ajuns la 1 milion de dolari iar
timpul necesar spargerii codului a scazut la 4 ore. Ulterior, s-au
dezvoltat si alte metode, cum ar fi folosirea unui cip DES încorporat
(loteria chinezească).
În scopul decriptării s-ar mai putea folosi mecanisme soft specifice
(cum ar fi algoritmul asimetric Diffie-Hellman) si resursele libere ale
unor calculatoare cu destinatie universală. Astfel, s-a demonstrat că
rularea pe mai multe calculatoare a unor programe distribuite de
criptare (uzual, pe un număr mare de masini, de ordinul miilor sau
chiar zecilor de mii) creste considerabil eficienta procesului de
decriptare.
Un alt cifru renumit este IDEA (International Data Encryption
Algorithm), realizat de doi cercetători la Politehnica Federală din
Zürich (ETHZ). Acest algoritm foloseste o cheie de 128 de biti si este
inspirat din metodele anterioare - DES si cele imaginate pentru
spargerea DES.
Un alt algoritm performant a fost descoperit de un grup de cercetători
de la MIT - Ronald Rivest, Adi Shamir, Leonard Adelman - si s-a numit cu
initialele creatorilor lui: RSA. Algoritmul de criptare RSA foloseste o
cheie publică.
Se observă că utilizarea unor astfel de algoritmi de criptare a
datelor asigură transmisii confidentiale de date în retele
neprotejate, rezolvând problema interceptării. De fapt, riscul de
interceptare / modificare nu dispare cu totul, din cauză că orice
mesaj criptat poate fi în general decriptat fără a detine cheia
corespunzătoare, dacă se dispune de suficiente resurse materiale si de
timp.
Evident, dimensiuni variate ale cheii asigură diferite grade de
confidentialitate iar perioada de timp necesară pentru decriptare poate
fi prevăzută în functie de mărimea cheii utilizate. Totusi, dacă
procesul de decriptare este lent, este posibil ca în momentul în care
s-ar obtine datele dorite, acestea să nu mai fie actuale sau utile.
Timpul de decriptare depinde în mod natural si de puterea procesoarelor
utilizate în acest scop, astfel încât utilizarea distribuită a unui
foarte mare număr de procesoare poate duce la o micsorare
considerabilă a timpului necesar. Din acest motiv, pentru transmisii de
date în care este necesară o confidentialitate strică se utilizează
chei de dimensiuni mult mai mari, chiar pentru algoritmul DES (de 256,
512, 1024 si chiar 2048 sau 4096 de biti), stiut fiind că timpul
necesar decriptării creste exponential cu dimensiunea cheii de criptare
/ decriptare.
Pentru utilizatorii obisnuiti ai Internet-ului, cei mai convenabili
algoritmi de criptare sunt cei cu cheie publică fiindcă folosirea lor
nu implică schimbul preliminar de chei pe canale de transmisie
protejate, ca în cazul algoritmilor cu cheie secretă. Cheia publică
poate fi distribuită fără restrictii pe intranet (reteaua locală)
sau Internet, iar mesajele criptate cu această cheie de un emitator vor
putea fi decriptate numai utilizând cheia privată, care este detinută
exclusiv de către destinatar. Astfel, nici măcar expeditorul nu ar
putea realiza decriptarea mesajului trimis.
Problema autentificării
Un alt domeniu în care a evoluat criptografia modernă este cel al
creării unor protocoale de autentificare - tehnica prin care un proces
verifică dacă partenerul de comunicatie este cel presupus si nu un
impostor. Verificarea identitătii unui proces de la distantă este
dificilă si necesită utilizarea unor protocoale complexe, bazate pe
tehnici criptografice.
Problema poate fi imaginată intuitiv sub forma a doi parteneri care
comunică si a altuia care doreste să se introducă fraudulos în
comunicatie, simulând pe oricare din partenerii de discutie. Ca o
metodă de protectie, cei doi utilizatori pot stabili, de exemplu, o
cheie secretă de sesiune, dar această metodă presupune transmiterea
cheii printr-un canal sigur; de aceea, se preferă, ca si în cazul
împiedicării interceptărilor, utilizarea criptărilor cu chei
publice.
Unul din protocoalele de autentificare folosit în sistemele în timp
real se numeste Kerberos (omonimul câinelui-paznic al lui Hades, care
îi tinea pe cei nedoriti afară). Conectia securizată la un server
aflat la distantă cu ssh foloseste pentru autentificare un alt
protocol, bazat pe algoritmul cu cheie publică RSA.
Problema autentificării impune găsirea unui corespondent electronic
pentru semnăturile autorizate de pe documentele legale. Un asemenea
corepondent se numeste semnătură digitală (vezi figura de mai jos) si
presupune existenta unui sistem prin care una din părti să poată
transmite mesaje "semnate" celeilalte părti, astfel încât:
receptorul să poată verifica identitatea pe care pretinde că o are
emitătorul. Această cerintă este necesară, de exemplu, în sistemele
financiare: calculatorul trebuie să se asigure că un ordin de
cumpărare sau de plată apartine companiei cu al cărei cont bancar se
va opera.
transmitătorul să nu poată renega ulterior continutul mesajului.
Această necesitate asigură protejarea băncilor împotriva fraudelor:
un client necinstit ar putea acuza banca implicată în tranzactie,
pretinzând, de exemplu, că nu a emis un anumit ordin (de plată).
receptorul să nu poată pregăti el însusi mesajul. În cazul unei
tranzactii financiare cu o bancă, această cerintă protejează
clientul dacă banca încearcă să-i falsifice mesajul.
Ca semnături digitale, se pot folosi semnături cu cheie secretă sau
publică dar, asa cum s-a explicat anterior, de obicei se preferă
cheile publice.
În cazul mesajelor transmise prin postă electronică, riscul legat de
impersonificarea expeditorului este destul de mare fiindcă standardele
utilizate pentru transmiterea postei electronice sunt simple si în plus
au fost făcute publice (ceea ce înseamnă ca oricine are acces la ele
si poate să le studieze). Standardul de e-mail (vezi 6) nu are la bază
nici un sistem pentru verificarea identitătii celui care trimite un
mesaj de postă electronică, bazându-se pe o încredere reciprocă
între utilizatori. Acest neajuns ar putea fi fructificat de către
persoane răuvoitoare pentru a trimite mesaje de postă electronică de
pe adrese false, sau chiar de pe adrese existente, pretinzând că sunt
utilizatorii care detin acele adrese de postă electronică. Practic,
este (aproape) imposibilă identificarea unei persoane care a emis
astfel de mesaje fiindcă în Internet există servere care asigură
transmiterea anonimă a mesajelor ("anonymous remailers"),
trimitându-le de la un server la altul de mai multe ori înainte de a
le directiona către adevărata destinatie.
Pentru autentificarea expeditorului unui mesaj (de postă electronică
sau un ansamblu de date transmis prin Internet în alte scopuri) se
foloseste cel mai adesea un sistem cu cheie publică. Astfel, dacă
expeditorul criptează mesajul cu cheia privată proprie, datele pot fi
decriptate doar utilizând cheia publică pereche (vezi figura de mai
jos), deci oricine poate verifica faptul că mesajul a fost transmis
într-adevăr de expeditor, si nu de o persoană ce pretinde a fi
expeditorul (după cum s-a explicat deja, mesajul criptat cu o cheie
poate fi decriptat doar utilizând cheia pereche acesteia si se
presupune că expeditorul este singurul care are acces la cheia sa
privată).
Evident că este posibil să se realizeze o criptare a mesajelor în
paralel cu autentificarea, astfel încât inclusiv datele transmise să
fie codificate. ÃŽn acest caz, se vor utiliza perechile de chei
privată, publică nu numai pentru autentificare, ci si pentru
criptarea, respectiv decriptarea mesajelor transmise. Practic, pentru
codificarea si semnarea digitală a unui mesaj emis, se va realiza o
criptare cu cheia privată a emitătorului si apoi o criptare cu cheia
publică a destinatarului. Astfel, destinatarul va putea decripta
mesajul si autentifica provenienta sa în conditii de securitate.
Având în vedere faptul că algoritmii de criptare cu cheie publică
consumă foarte mult timp, în general se implementează o tehnică
putin diferită: se utilizează o criptare cu cheie publică pentru
transmiterea unei chei secrete generate aleator (deci cheia secretă
este criptată si eventual se poate utiliza si autentificarea
expeditorului), după care datele propriu-zise vor fi transmise criptate
cu un algoritm simetric utilizând cheia secretă schimbată anterior.
Această metodă îmbunătăteste considerabil viteza de transmisie si
de criptare / decriptare.
PRIVATE "TYPE=PICT;ALT=f5-3.GIF (7407 bytes)" INCLUDEPICTURE d
"img/f5-3.GIF"
Semnarea digitală a mesajelor necriptate
Practic, pentru o identificare cât mai riguroasă a expeditorului se
utilizează un sistem complex, bazat pe certificare, în care fiecare
utilizator detine un certificat (ce are atasată o cheie publică si o
cheie privată, secretă). Acesta este emis de o autoritate de
certificare recunoscută, în urma examinării, pe bază de acte, a
identitătii reale a persoanei. În momentul în care se doreste
identificarea unei persoane, o căutare în baza de date a organizatiei
respective va indica indentitatea expeditorului (pe baza cheii publice a
acestuia, care este unică în lume).
Acest sistem este implementat sub forma unei structuri în care fiecare
autoritate de certificare poate împuternici la rândul ei alte
organizatii să emită certificate de autentificare, astfel încât
originea unui certificat poate fi verificată în mod complet testând
validitatea certificatului, apoi validitatea certificatului detinut de
organizatia care a emis certificatului respectiv, si asa mai departe.
Sistemul de certificate digitale este utilizat nu numai pentru
protejarea comunicatiilor, ci si pentru certificarea originii
programelor. Astfel, prin folosirea unei criptări a programului de
instalare cu cheia publică a firmei producătoare, utilizatorul poate
verifica relativ usor că acel program a fost creat într-adevăr de o
anumită firmă si pentru a decide dacă să instaleze sau nu programul.
Aceasta este practic cea mai bună solutie de rezolvare a problemei
rulării de programe / coduri dăunătoare, enuntată la începutul
acestui capitol.
Problema modificării mesajelor
Pentru a preveni modificarea unui mesaj, se utilizează o tehnică
specifică, denumită tehnică hash (sau a rezumatului), care permite
construirea unui cod de identificare a datelor transmise, numit
"rezumatul datelor". Principiile de bază ale tehnicii hash se aplică
în numeroase domenii ale informaticii. Rezumatul unui mesaj se
construieste prin aplicarea, în sens unic ("unisens"), a unei functii
de transformare (functie "hash") într-o secventă de biti - de lungime
mare, pentru a fi dificil "spart". Sensul unic de transformare asigură
faptul că nu se pot deduce datele de intrare pe baza datelor de iesire.
Datele ce trebuie transmise sunt utilizate ca si date de intrare,
obtinându-se astfel o valoarea de transformare ("hash value"). Dacă
datele în tranzit sunt modificate, la destinatie se va obtine o altă
valoarea de transformare, ceea ce va indica falsificarea datelor.
Valoarea de transformare este în general criptată ulterior prin
utilizarea aceleiasi chei secrete ca si pentru criptarea datelor
transmise. Astfel, se formează o "semnătură digitală" a datelor,
care nu mai pot fi modificate fără ca acest lucru să fie depistat.
HYPERLINK l "sigure" Câteva protocoale "sigure"
HYPERLINK l "inapoi" inapoi
Implicatii sociale ale problemelor de securitate
Din motive strategice lesne de înteles, dezvoltarea tehnicilor
criptografice este o problemă delicată si în general politicile
guvernamentale încearcă să tină sub control acest domeniu. Evident
că această abordare nu este pe placul cercetătorilor care urmăresc
evolutia algoritmilor în primul rând din ratiuni stiintifice si nici
al publicului larg, în măsura în care s-ar leza libertătile
individuale.
Un caz renumit de reactie guvernamentală negativă la distribuirea unui
soft criptografic, dezbătut în cele din urmă instantă juridică,
este cel al sistemului de postă electronică criptată Pretty Good
Privacy, creat de Phil Zimmerman si distribuit pe Internet.
În unele tări (de exemplu, Franta), criptografia neguvernamentală
este interzisă, cu exceptia cazurilor în care guvernul primeste toate
cheile utilizate. De asemenea, interceptările guvernamentale ale
comunicatiilor private s-au practicat pe scară destul de extinsă. De
exemplu, guvernul SUA a propus o tehnică de criptare a viitoarelor
telefoane digitale care include o caracteristică specială ce ar
permite institutiilor autorizate (si care detin un ordin judecătoresc
în acest sens) interceptarea si decriptarea oricărui apel telefonic
din SUA. Acest subiect a iscat numeroase discutii contradictorii atât
din punct de vedere din punct de vedere tehnologic (au fost propuse
chiar metode de contracarare a procedeului), cât si juridic fiindcă,
pe de o parte, ar putea fi lezate libertătile individuale iar, pe de
altă parte, s-ar putea asigura depistarea unor actiuni antisociale.
HYPERLINK l "inapoi" inapoi
Retele de arie largă
Retelele cu arie largă de răspândire geografică sau WAN-urile (Wide
Area Networks) acoperă o arie extinsă (o tară, un continent). Reteaua
contine masini care execută programele utilizatorilor (aplicatii),
numite masini gazdă sau sisteme finale. Gazdele sunt conectate printr-o
subretea de comunicatie care transportă mesajele de la o gazdă la alta
(ca în sistemul telefonic, între doi vorbitori). Separarea
activitătilor de comunicare (subretele) de cele referitoare la
aplicatii (gazde) simplifică proiectarea retelei.
O subretea este formată din linii de transmisie (circuite, canale,
trunchiuri) care asigură transportul datelor si elemente de comutare
(noduri de comutare a pachetelor, sisteme intermediare, comutatoare de
date), numite cel mai frecvent routere. Când sosesc date pe o anumită
linie si ajung într-un nod de comutare, acesta trebuie să aleagă o
nouă linie pentru retransmisia datelor. Dacă se conectează mai multe
LAN-uri, atunci fiecare ar trebui să aibă o masină gazdă pentru
executarea aplicatiilor si un router pentru comunicarea cu alte
componente ale retelei globale; routerele conectate vor apartine
subretelei.
WAN-urile pot contine cabluri sau linii telefonice între routere. Două
routere pot comunica nu numai direct, ci si prin intermediul altor
routere; acestea retin fiecare pachet primit în întregime si îl
retransmit când linia de iesire cerută devine liberă. O subretea care
functionează pe aceste principii se numeste "punct-la-punct" (sau
"memorează si retransmite" sau cu "comutare de pachete"). Acest tip de
retele este foarte răspândit.
O problemă importantă este topologia de conectare a routerelor din
subretele: stea, inel, arbore, completă, inele intersectate,
neregulată. Retelele locale folosesc de obicei topologii simetrice iar
retelele de arii largi - topologii neregulate.
Comunicarea dintre routere se mai poate realiza prin intermediul
satelitilor de comunicatii sau folosind sisteme radio terestre (în
acest caz, routerele sunt dotate cu antene de emisie-receptie).
Se pot conecta retele diferite (teoretic incompatibile) prin intermediul
unor masini numite gateways (porti de comunicare). Acestea realizează
conectarea si asigură translatările necesare din punct de vedere hard
si soft. O colectie de retele interconectate se numeste inter-retea sau
internet. O inter-retea ar putea fi constituita din mai multe LAN-uri
conectate printr-un WAN. Dacă comunicările se realizează prin
routere, este vorba de o subretea, pe când dacă apar în plus gazde si
util proprii, este un WAN. Un LAN contine doar gazde si cabluri, deci nu
are o subretea.
Internet-ul - cea mai cunoscută retea mondială - este un internet
specific, care conectează universităti, birouri guvernamentale, firme
si chiar persoane particulare, oferind o multitudine de servicii de
informare, comunicare si chiar de realizar activităti pe cale
electronică (de la distantă).
HYPERLINK l "inapoi" inapoi
Câteva protocoale "sigure"
Pentru a se asigura aplicarea metodelor de criptare si autentificare
anterior descrise, au fost dezvoltate sisteme specifice de transmisii de
date, bazate pe un transfer securizat al datelor.
Secured Socket Layer este un sistem dezvoltat de firma Netscape
Communications care asigură criptarea pentru comunicările realizate
între două orice calculatoare din Internet prin intermediul
protocolului universal folosit - TCP/IP. SSL se bazează pe criptarea cu
cheie publică si functionează în două etape: într-o primă etapă
se stabileste 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);
confidentialitatea 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.
SHTTP a fost dezvoltat de asociatia CommerceNet si asigură criptarea
documentelor web transmise, utilizarea semnăturilor digitale si 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 comertul electronic si permite
realizarea de tranzactii financiare confidentiale si operatii comerciale
pe cale electronică.
Implementări similare au fost dezvoltate si pentru sistemele de postă
electronică: S/MIME sau PGP/MIME.
HYPERLINK l "inapoi" inapoi
Bibliografie: Lars Klander, "Anti-hacker. Ghidul securitătii retelelor
de calculatoare", 679 p., ALL Educational, Bucuresti 1998; Andrew S.
Tanenbaum, "Retele de calculatoare", Ed. Computer Press Agora, 1997.
ì¥Â@