• No se han encontrado resultados

Seminarski Rad - Zastita Podataka

N/A
N/A
Protected

Academic year: 2021

Share "Seminarski Rad - Zastita Podataka"

Copied!
17
0
0

Texto completo

(1)

Smer: Informacione tehnologije

Predmet: Zaštita podataka

SEMINARSKI RAD

Kreiranje i distribucija ključeva za zaštitu

podataka

Profesor:

Studenti:

Vladimir Mladenović

Asistent:

Olga Ristić

Nenad Miloradović 540/2014

Aleksandra Milenković 553/2014

Čačak

Decembar, 2014.

UNIVERSITY OF KRAGUJEVAC FACULTY OF TEHNICAL SCIENCE УНИВЕРЗИТЕТ У КРАГУЈЕВЦУ ФАКУЛТЕТ ТЕХНИЧКИХ НАУКА

(2)

Sadržaj:

1. Uvod ... 1

2. Kreiranje ključa ... 2

3. Sistemi za šifrovanje ... 2

3.1 Sistemi za šifrovanje sa simetričnim ključevima ... 3

3.2 Sistemi za šifrovanje sa asimetričnim ključevima ... 3

3.3 Kombinovani sistemi za šifrovanje ... 4

4. Distribucija ključeva ... 4

4.1 Distribucija ključeva u simetričnim kriptografskim sistemima ... 4

4.1.1 Centar za distribuciju ključeva (KDC) ... 5

4.1.2 Needham-Schroeder protocol ... 6

4.1.3 Otway-Rees protocol ... 7

4.2 Distribucija ključeva u asimetričnim kriptografskim sistemima... 8

4.2.1 Potvrda identiteta ... 8

4.2.2 X.509 protokol ... 9

4.2.3 Infrastruktura javnog ključa (Public Key Infrastrukture, PKI) ... 10

4.2.4 Kerberos ... 11

5. Zaključak ... 14

(3)

1

1. Uvod

Ukoliko neka osoba poseduje određeni ključ za dekriptovanje lako moţe pročitati odgovarajuću poruku, a ukoliko se ključ ne poseduje čitanje poruke je nemoguće. Upravo ta

činjenica ukazuje na to da su ključevi najbitnije informacije u kriptografiji, a samim tim upravljanje ključevima je od suštinske vaţnosti u svim kriptosistemima.

Na Slici 1 je prikazan ţivotni vek ključa. Svaki ključ započinje svoj ţivot kreiranjem, a završava sa uništenjem. Pre upotrebe ključ mora da prođe kroz fazu distribucije do korisnika i

čuvanje ključa do upotrebe. U dosta slučajeva se dešava da je potrebno da se ključ, usled nekog nedostatka, zameni odgovarajućim novim ključem.

Slika 1. Životni vek ključa

Zadatak upravljanja ključevima je da u svakom trenutku obezbedi tajnost i integritet ključeva. Upravljanje ključevima se ne odnosi samo na zaštitu ključeva tokom upotrebe, nego i na kreiranje sigurnog ključa, njegovu distribuciju do udaljenog korisnika, utvrđivanje korektnosti ključa i njegovo uništavanje u slučaju da se dovede u sumnju ili izgubi.

Veoma je vaţan odabir odgovarajućeg ključa za kriptovanje određene vrste podataka. Ranije je bilo govora o korišćenju simetrične i asimetrične kriptografije u zaštiti poruka i autentifikaciji, međutim nije bilo reči kako se vrši distribucija ključeva u okviru simetrične kriptografije ili kako se vrši provera ključeva u okviru asimetrične kriptografije. Distribucija i provera ključeva su takođe od ključne vaţnosti u sigurnosnim sistemima.

(4)

2

2. Kreiranje ključa

Pojedini ključevi mogu imati nezadovoljavajuće karakteristike ako se upotrebe u određenim algoritmima za kriptovanje. Na primer, ako se u okviru DES algoritma upotrebi ključ koji sadrţi sve nule, po pitanju sigurnosti neće dati zadovoljavajuće rezultate. Isto tako, kada se koristi RSA algoritam brojevi p i q se moraju birati iz skupa prostih brojeva.

Većina sistema za kriptovanje poseduje više metoda za generisanje ključeva. Obično korisnik formira ključ izborom određene lozinke. Lozinka se posredstvom nekog algoritma transformiše u ključ. Na ovaj način se korisniku omogućava pamćenje jednostavne lozinke, umesto pamćenja ključa velike duţine. Pametan izbor lozinke uključuje korišćenje brojeva i specijalnih karaktera. Treba napomenuti da je prostor predviđen za ukucavanje lozinke promenjive veličine i da je poţeljno koristiti što veći broj karaktera. Ovo smanjuje mogućnost, a i produţava vreme koje je potrebno, za otkrivanje ključa. Neki ključevi se dobijaju uz pomoć pseudo-slučajnog broja. Za ovakav način dobijanja ključa potrebni su generatori slučajnih brojeva. Ukoliko generator generiše baš slučajne brojeve malo je verovatno da će napadač otkriti ključ predviđajući cifre koje ga čine.

Jedna od najvaţnijih karakteristika koja se mora imati u vidu je duţina ključa. Neki od algoritama koriste ključeve fiksne duţine, kao što je DES algoritam sa ključem od 56 bita, međutim najbolja varijanta je kada korisnik moţe da vrši izbor duţine ključa. Ključ duţine 1024 bita u okviru RSA algoritma je sigurniji nego ključ od 512 bita kod istog algoritma.

3.Sistemi za šifrovanje

Na slici 2. je prikazana opšta blok šema sistema za šifrovanje. Sistem za šifrovanje se sastoji od bloka za šifrovanje, bloka za dešifrovanje, generatora ključa i skupa poruka koje oni emituju. U bloku za šifrovanje se primenjuje neka matematička funkcija koja transformiše skup poruka koje se prenose u neprepoznatljiv oblik. Na ulaznu poruku, se pored same funkcije, primenjuje i ključ, koji predstavlja niz simbola čiji je zadatak da dodatno doprinesu promeni izvorne poruke. Ključ je nezavisan od izvorne poruke i od same funkcije i generiše se u generatoru ključa. Ovako izmenjena poruka se potom šalje preko nesigurnog telekomunikacionog kanala ka odredištu. Poruku u kanalu moţe presresti prisluškivač u cilju dobijanja koristi bilo kroz samu informaciju koju poruka sadrţi ili kroz izmenu poslatih podataka.

(5)

3

3.1 Sistemi za šifrovanje sa simetričnim ključevima

Sistemi za šifrovanje sa simetričnim ključevima (algoritmi simetrične kriptografije) predstavljaju sisteme kod kojih se ključ za šifrovanje moţe lako odrediti iz ključa za dešifrovanje, i obrnuto. Najčešće su ova dva ključa ista pa je neophodno da se pošiljalac i primalac unapred dogovore o vrednosti ključeva koji će se koristiti za enkripciju/dekripciju podataka.

3.2 Sistemi za šifrovanje sa asimetričnim ključevima

Rešavanje problema skalabilnosti i distribucije ključeva između učesnika u komunikaciji dovelo je do pojave sistema sa asimetričnim ključevima (algoritmi asimetrične kriptografije). U ovim sistemima svaka strana poseduje par ključeva, privatni i javni ključ, od kojih se jedan koristi za šifrovanje a drugi za dešifrovanje podataka. Privatni ključ je tajni i poseduje ga samo njegov vlasnik, dok je javni ključ dostupan svima. Korišćenjem sistema sa asimetričnim ključevima obezbedjuje se poverljivost podataka ali i autentifikacija pošiljaoca. Kako bi se obezbedila autentifikacija, pošiljalac vrši enkripciju podataka koje šalje svojim privatnim ključem. Kada primalac primi poruku, vrši njenu dekripciju javnim ključem pošiljaoca. Na taj način primalac je siguran da je poruku poslao samo onaj ko ima odgovarajući privatni ključ. Poverljivost podataka se dobija enkripcijom tako što pošiljalac vrši enkripciju koristeći javni ključ primaoca. Na taj način samo onaj kome je poruka namenjena moţe da je dešifruje jer samo on poseduje odgovarajući privatni ključ.

Jedan od prvih sistema koji se bazira na ovoj ideji je sistem Diffie i Hellmana koji omogućava korisnicama koji nisu imali prethodni kontakt generisanje simetričnog ključa preko nesigurnog kanala. Kod ovog sistema, svi korisnici poseduju jedan ključ koji je javno poznat i dostupan svim korisnicima (javni ključ), i drugi koji je dobro skriven (tajni ili privatni ključ). Ovi ključevi se generišu tako da iako su matematički povezani, računarski je neisplativo (u razumnom vremenskom periodu) pronalaţenje privatnog ključa iz poznatog javnog. Sam proces generisanja simetričnog ključa počinje razmenom javnih ključeva zainteresovanih strana. Nakon toga, svaka strtana primenjuje odgovarajuću matematičku funkciju na dobijeni javni i svoj privatni ključ.

Zahvaljujući osobinama primenjene funkcije, rezultat je isti na obe strane i predstavlja deljeni simetrični ključ koji moţe da se koristi u daljoj komunikciji za šifrovanje/dešifrovanje podataka koji se razmenjuju. Na ovaj način se ni privatni ni generisani simetrični ključ nikada ne transportuju nesigurnim kanalom, a primenjena funkcija je takva da bez poznavanja ovih ključeva sistem vrlo teško moţe da se analizira.

Na bazi rada Diffie i Helmana pojavili su se i drugi sistemi kao što su RSA, ElGamal, Cramer-Shoup. Ovi sistemi takođe koriste par asimetričnih ključeva koji se vrlo teško određuju jedan iz drugoga, ali za razliku od sistema Diffie i Helmana koristi se javni ključ korisnika kome se šalje poruka za šifrovanje same poruke. Na prijemu se uz pomoć privatnog ključa i algoritma za dešifrovanje primenjuje inverzan postupak i dobija originalna poruka. Kako je vlasnik privatnog ključa i jedina osoba koja ga poseduje, niko drugi ne moţe da dešifruje poruku te je sigurnost komunikacije zagarantovana. Sa matematičke strane, kod ovih sistema funkciju šifrovanja je vrlo lako izračunati, dok je pronalaţenje inverzne funkcije veoma sloţeno.

(6)

4

3.3 Kombinovani sistemi za šifrovanje

Kombinovanjem sistema za šifrovanje sa simetričnim i asimetričnim ključevima na odgovarajući način, dobijaju se kombinovani sistemi za šifrovanje koji objedinjuje njihove najbolje osobine. Algoritmi simetrične kriptografije su jednostavniji pa omogućavaju veće brzine rada koristeći ključeve manjih veličina dok se skalabilnost i distribucija ključeva realizuju korišćenjem algoritama asimetrične kriptografije.

Na slici 3. je prikazana blok šema kombinovanog sistema za šifrovanje.

Slika 3.Blok šema kombinovanog sistema za šifrovanje

4. Distribucija ključeva

Nakon generisanja ključeva, isti se mogu koristiti na različitim lokacijama i sa različitom opremom. Da bi se dopremili do udaljenih lokacija, ključevi se po pravilu transportuju preko nezaštićenih komunikacionih linija. Ako se ključevi tokom transporta ne zaštite, mogu biti „ukradeni“, što ceo sistem za kriptovanje čini nesigurnim. Preporučljivo rešenje je da se za prenos ključeva koriste sigurne linije, kao što je na primer dostavljanje ključa korisnicima putem pošte.

Isto tako, format zapisivanja ključa treba biti razumljiv i na neki način univerzalan, tj. mora biti prepoznatljiv za svakog korisnika ili mašinu. Zbog razlika u načinu funkcionisanja simetričnih i asimetričnih sistema nameće se različita upotreba ključeva što rezultuje različitim problemima prilikom distribucije istih.

4.1 Distribucija ključeva u simetričnim kriptografskim sistemima

Prilikom korišćenja simetričnih ključeva javljaju se tri osnovna problema: Prvi, ukoliko n osoba ţeli da ostvari neku komunikaciju, potrebno je da raspolaţe sa n(n – 1)/2 simetričnih ključeva. Treba imati u vidu to da svaki od n osoba moţe komunicirati sa (n – 1) drugih, što iziskuje upotrebu

(7)

5

n(n – 1) ključeva. Zbog toga što se simetrično kriptovanje odnosi na komunikaciju između dve osobe, potrebno je n(n – 1)/2 ključeva. Problem nastaje ukoliko je n veliki broj. Na primer, ako n iznosi 1 milion osoba za sigurnu komunikaciju je neophodno pola milijarde ključeva. Drugo, u grupi od n osoba, svaka osoba mora posedovati a i zapamtiti (n – 1) ključeva, po jedan za po svaku osobu u grupi. To znači da ukoliko 1 milion ljudi ţeli da komunicira sa ostalima, mora da zapamti oko 1 milion ključeva. Treće, ključevi se moraju prenositi preko sigurne komunikacione linije, nikako preko telefona ili interneta.

Razmatrajući navedene probleme, kao najbolje, nameće se rešenje da se ključevi kreiraju dinamički za svaku sesiju i nakon nje uništavaju. U tom slučaju se ne zahteva pamćenje ključeva od strane osoba koje komuniciraju.

Kao najjednostavnija metoda za distribuciju ključa putem računarske mreţe predstavlja ranije opisana Diffie- Hellman ili D-H metoda. Ova metoda se najčešće koristi za sesije sa ključevima za jednokratnu upotrebu (eng. one-time key). Dve strane u komunikaciji koriste ove ključeve za razmenu podataka bez pamćenja istih. Prilikom razmene ključeva ova metoda ne pruţa mogućnost autentifikacije strana koje su u komunikaciji, što predstavlja veliki nedostatak po pitanju sigurnosti.

4.1.1 Centar za distribuciju ključeva (KDC)

Ranije opisana D-H metoda se zasniva na slanju nezaštićenih ključeva putem komunikacione linije, čime je ugroţena njihova bezbednost. Sa druge strane, da bi se uspostavila komunikacija između dvaentiteta obe strane moraju posedovati isti par ključeva. U cilju sigurne razmene ključeva među entitetimakoristi se neki treći entitet kome veruju obe strane u komunikaciji. Ovaj entitet se naziva centar za distribuciju ključeva ili KDC (eng. Key Distribution

Center).

Osobe A i B su klijenti KDC-a (Slika 4.). Između osobe A i KDC-a se koristi jedan simetrični tajni ključ do koga osoba A dolazi na siguran način, na primer ličnim odlaskom u centar.

KA je tajni ključ osobe A, dok je KB tajni ključ osobe B. Ove tajne ključeve mora posedovati svako

ko ţeli komunicirati pomoću KDC-a.

(8)

6

KljučKAB je zajednički ključ za sesiju između osobe A i B. Postupak razmene ključa se

obično obavlja u nekoliko koraka:

• Korak1. Osoba A šalje poruku KDC-u sa zahtevom za komunikacijom sa osobom B, a u cilju kreiranja zajedničkog ključa sesije KAB. Poruka sadrţi podatke o identitetu osobe A i

identitetu osobe B. Treba napomenuti da ova poruka nije kriptovana.

• Korak2. KDC prima poruku i kreira takozvani tiket namenjen osobi B. Pošto KDC zna tajni ključ osobe B, koristi ga kako bi kriptovao pomenuti tiket. Tiket sadrţi identitete osoba A i B i zajednički ključKAB. Ovako formiran tiket se upakuje zajedno sa zajedničkim ključem za

jednu sesiju KAB, kriptuje sa ključem KA i na kraju pošalje osobi A, kao poruku. Nakon

prijema poruke osoba A je dekriptuje, a zatim otpakuje zajednički ključ, KAB. Pošto nema

ključKB ne moţe da otpakuje tiket namenjen osobi B.

• Korak3. U okviru ovog koraka osoba A prosleđuje tiket namenjen osobi B. Osoba B pošto primi tiket, otpakuje ga i pamti ključKAB koji joj je neophodan radi razmene poruka sa osobom A.

Nakon trećeg koraka, Osobe A i B mogu razmeniti podatke korišćenjem ključa KAB kao

ključa za one-time sesiju. Pored navedenog standardnog načina razmene ključeva sa KDC-om postoji nekolikodrugih varijanti odnosno protokola za razmenu ključeva.

4.1.2 Needham-Schroeder protocol

Kako bi postigao što sigurniju razmenu ključeva između entiteta ovaj protokol čini više naizmeničnih akcija gde se pod akcijom smatra razmena poruka tipa „izazov-odgovor između dva entiteta. Tokom akcija razmene ključeva Needham-Schroeder protokol koristi KDC i predstavlja odlično rešenje po pitanju sigurnosti. Vaţi za fundamentalni protokol na osnovu koga su

nastali mnogi drugi protokoli.

Prema poslednjoj verziji ovog protokola tokom akcija se koriste četiri slučajna broja: RA, RB,

R1 i R2. Ovi brojevi se generišu samo za jednu sesiju. Na Slici 5. je prikazana razmena ključa

pomoćuNeedham-Schroeder protokola.

(9)

7

Protokol se sastoji od sedam koraka:

• Korak 1. Osoba A šalje svoj identitet osobi B, i na taj način joj saopštava da ţeli komunikaciju.

• Korak 2. Osoba B pomoću svog tajnog ključa KB kriptuje predhodno generisani broj RB koji

namenjuje KDC-u, ali ga šalje osobi A. Kada primi poruku, osoba A će je proslediti do KDC-a u cilju dokKDC-azivKDC-anjKDC-a dKDC-a je osobKDC-a kojKDC-a komunicirKDC-a sKDC-a osobom B jedinKDC-a kojKDC-a će komunicirati sa KDC, odnosno da nije napadač.

• Korak 3. Poruka koju osoba A šalje ka KDC sadrţi slučajan broj RA, identitet osobe A,

identitet osobe B i kriptovani broj RB. Treba napomenuti da ova poruka nije kriptovana, i da

predstavlja zahtev osobe A namenjen KDC-u u cilju obezbeđivanja tajnog ključa sesije KAB

za obavljanje sigurne razmene podataka između osoba A i B.

Korak 4. KDC vraća osobi A poruku sa sledećim sadrţajem: broj RA, identitet osobe B, ključ sesije KAB i kriptovani tiket koji je namenjen osobi B. Ovaj tiket je kriptovan tajnim ključem osobe B, a sadrţi ključ sesije KAB, identitet osobe A i broj koji je predhodno generisala osoba B, RB. Na taj način je osoba A dobila odziv od KDC-a koji sadrţi sve

neophodne podatke za bezbednu komunikaciju sa osobom B.

• Korak 5. Osoba A prosleđuje osobi B tiket dobijen od KDC i novi broj R1 u cilju prozivanja i verifikacije osobe B.

• Korak 6. Osoba B odgovara na poziv osobe A slanjem kriptovanog broja R1 – 1 i pozivom osobe A brojem R2. Ako osoba A nakon dekriptovanja primljene poruke dobije očekivani

broj R1-1, to znači da je identitet osobe B verifikovan, jer je onaj ko je poslao ovu poruku bio

u stanju da primenom KB dođe do KAB, a to moţe samo osoba B.

• Korak 7. U okviru poslednjeg koraka osoba A ponovo odgovara na poziv slanjem kriptovanog (pomoću ključa KAB) broja R2 – 1. Ovom porukom osoba A obaveštava osobu B

da je primila verifikaciju i istovremeno verifikuje sebe osobi B.

4.1.3 Otway-Rees protocol

Otway-Rees protokol je takođe baziran na metodi razmene poruka pomoću KDC-a. Protokolčininekoliko koraka koji su prikazani na Slici 6.

(10)

8 Prednost ovog protokola u odnosu na prethodnu metodu je u manjem broju poruka koje se razmenjuju, odnosno, pet poruka u odnosu na ranijih sedam. Tačnije, protokol čini sledećih pet koraka:

• Korak 1. Na početku, osoba A šalje poruku osobi B, koja sadrţi slučajni broj R, identitete osoba A i B i kriptovani tiket namenjen KDC-u koji uključuje broj RA, kopiju zajedničkog broja R i identitete osoba A i B.

• Korak 2. Osoba B kreira tiket istog tipa namenjen KDC-u, a čine ga broj RB, broj R, identiteti osoba A i B. Ovaj tiket kriptuje pomoću ključa KB i zajedno sa tiketom koji je primila od

osobe A šalje ka KDC-u. Ova poruka se šalje u cilju dokazivanja identiteta KDC-u od strane osoba A i B.

• Korak 3. KDC kreira poruku koja sadrţi zajednički broj R, tikete namenjene osobama A i B i tako kreiranu poruku šalje osobi B. Tiketi sadrţe odgovarajuće brojeve RA ili RB i zajednički

ključ sesije KAB.

• Korak 4. Osoba B prosleđuje tiket namenjen osobi A.

• Korak 5. Osoba A šalje kriptovanu poruku sa ključem KAB, koji je dobila od osobe B.

4.2 Distribucija ključeva u asimetričnim kriptografskim sistemima

U okviru asimetričnih kriptografskih sistema ne postoji potreba za razmenom tajnih ključeva. Ukoliko osoba A ţeli da pošalje poruku osobi B, potrebno je da zna samo javni ključ osobe B. Do ovog ključa se dolazi na jednostavan način i on je dostupan za bilo koga. Takođe, ako osoba B ţeli da pošalje poruku osobi A, mora da zna samo javni ključ osobe kojoj ţeli poslati poruku. Moţe se naglasiti prednost asimetričnih sistema za kriptovanje da svako moţe imati svačiji javni ključ.

Prethodna konstatacija nameće pitanje da li je kod asimetričnih sistema uopšte potrebna bezbedna razmena ključeva. Svako ko ţeli da primi neku poruku od nekoga, treba da objavi svoj javni ključ osobi koja šalje poruku. Upravo tu se javlja problem kako objaviti javni ključ, a da ga neka osoba C ili napadač ne moţe zloupotrebiti. Ako osoba B objavi javni ključ da bi ga osoba A iskoristila za slanje poruke osobi B, neka osoba C ga moţe uhvatiti. Nakon hvatanja, osoba C moţe poslati svoj javni ključ umesto javnog ključa osobe B. Neznajući od koga dolazi ključ osoba A prihvata podmetnuti ključ i kriptuje poruku pomoću njega a zatim je šalje osobi B. Sada opet nastupa osoba C koja hvata kriptovanu poruku umesto osobe B i lako je dekriptuje pomoću svog tajnog ključa. Iz navedenog primera se vidi da je i kod asimetričnih sistema za kriptografiju jako bitno da entiteti koji komuniciraju ili razmenjuju poruke potvrde identitete jedan drugom.

4.2.1 Potvrda identiteta

Za potvrdu identiteta osoba koje vrše razmenu podataka na Internetu se dodeljuju tkz. digitalni sertifikati. Digitalni sertifikati se često koriste prilikom elektronskog poslovanja, a mogu ih koristiti fizička i pravna lica, drţavne uprave, javne sluţbe, preduzeća, organizacije i drugi. Digitalne sertifikate (ili elektronske sertifikate) izdaju organizacije pod nazivom sertifikaciona tela (eng.

CertificationAuthority, CA). Za izdavanje digitalnih sertifikata, sertifikaciona tela koriste

infrastrukturu javnihključeva (eng. Public Key Infrastructure, PKI). PKI je sloţena infrastruktura koja se sastoji od kriptografskih protokola, standarda, procedura, servisa i aplikacija koje sluţe za izdavanje digitalnih sertifikata. Najzastupljeniji standard za izdavanje digitalnih sertifikata je X.509.

(11)

9

Digitalni sertifikat sadrţi podatke o identitetu korisnika (ime i prezime, E-mail, adresa), korisnikov javni ključ i podatke o izdavaocu sertifikata odnosno sertifikacionom telu. Sertifikaciono telo koje izdaje sertifikat garantuje autentičnost podataka koji se nalaze u sertifikatu. Digitalni sertifikat je nemoguće falsifikovati jer je potpisan tajnim ključem sertifikacionog tela.

Postupak izdavanja sertifikata u praksi se moţe pojasniti na sledećem primeru: Osoba A podnosi zahtev za izdavanje sertifikata nekoj od CA organizacija. CA proverava njen identitet na osnovu uvida u lična dokumenta koje je osoba A prikazala pri podnošenju zahteva. Ako je sve u redu, osoba A prosleđuje svoj javni ključ CA organizaciji za koji ona kreira digitalni potpis i nakon toga izdaje sertifikat kojim se potvrđuje da taj javni ključ zaista pripada osobi A. Ako osoba A kasnije ţeli da komunicira sa nekim, šalje mu digitalni sertifikat i svoj javni ključ. S obzirom da primalac veruje CA organizaciji lako moţe proveriti validnost sertifikata odnosno identitet osobe A. Postoji više vrsta digitalnih sertifikata:

• Kvalifikovani sertifikat predstavlja osnovni vid digitalnog sertifikata u vidu digitalnog potpisa koji je istovetan običnom potpisu.

• Web sertifikat se koristi u okviru aplikacija za autentifikaciju, kriptovanje/dekriptovanje, potpis i verifikaciju datoteka, elektronske pošte i raznih transakcija.

• Sertifikat namenjen za Web servere, a koriste se za konfigurisanje SSL (eng. Secure

SocketsLayer) i/ili TLS (eng. Transport Layer Security) protokola na Web serverima

(Microsoft IIS,

Apache, Sun-Netscape iPlanet, Red Hat Stronghold, Sun ONE, IBM HTTP Server,...).

NamenaSSL i TLS protokola je uspostavljanje zaštićenog komunikacionog kanala između Web servera i Web klijenata. Ovo praktično znači da ako se ţeli da se na nekoj Web prodavnici kupcima omogući plaćanje kreditnim karticama ili pruţanje poverljivih informacija, neophodno je da server na kome se nalazi ta Web prezentacija radi kao Secure Web Server. Uslov koji mora da ispuni pomenuti Web server je da poseduje digitalni sertifikat od nekog CA.

Za čuvanje digitalnih sertifikata se koriste sledeći mediji: hard disk računara, CD, USB flash memorija, PKI smart kartica ili PKI USB smart token.

4.2.2 X.509 protokol

Iako sertifikaciono telo rešava problem zloupotrebe javnog ključa javlja se jedan nedostatak. Ovaj nedostatak se odnosi na različitost formata koje sertifikati mogu imati. To znači da jedan sertifikat moţe imati javni ključ u jednom formatu, a drugi u drugom formatu. Javni ključ moţe biti u okviru prve linije nekog sertifikata, a kod nekog drugog moţe biti i u okviru treće linije.

Radi eliminisanja prethodno opisanog nedostatka, ustanovljen je protokol koji se naziva X.509. Nakon nekih izmena ovaj protokol je široko prihvaćen na Internetu. X.509 je postupak pomoću koga se opisuje sertifikat na strukturalnom nivou. X.509 sertifikat na strukturalnom nivou sadrţi: - Verziju, - Serijski broj, - Algoritam za identifikaciju, - Izdavalac, - Validnost, - Naslov,

(12)

10

- Informacije o javnom ključu,

- Jedinstveni identifikator izdavača sertifikata (opciono), - Naslov jedinstvenog identifikatora (opciono),

- Ekstenzija (opciono),

- Algoritam potpisa sertifikata, - Potpis sertifikata.

Na Slici 7. je prikazan sadrţaj jednog X.509 sertifikata.

Slika 7.Sadržaj X.509 sertifikata

4.2.3 Infrastruktura javnog ključa (Public Key Infrastrukture, PKI)

Upotrebom javnih ključeva se javlja problem sličan DNS-u (eng. Domain Name System). Problem se sastoji u tome da jedan DNS server ne moţe da opsluţi sve zahteve na internetu. Iz tog razloga se uvodi više servera koji zajedno opsluţuju zahteve, uz to došlo se do rešenja da je najbolje da se između servera uspostavi hijerarhijski odnos. To znači da ukoliko neka osoba A ima potrebu za IP adresom osobe B, osoba A šalje zahtev lokalnom serveru koji moţe a ne mora imati traţenu IP adresu. Ukoliko ne poseduje IP adresu osobe B server prosleđuje zahtev ka drugom serveru koji se nalazi na višem nivou, i tako nadalje sve dok se ne pronađe zahtevana adresa.

Slično DNS-u, problem pribavljanja javnih ključeva se rešava upotrebom hijerarhijske strukture koja se naziva PKI (eng. Public Key Infrastructure). Primer jedne ovakve strukture je dat na Slici 8.

(13)

11

U okviru prvog nivoa strukture, nalazi se Root CA koji moţe da sertifikuje CA-ove u okviru sledećeg niţeg nivoa kao što su: Level-1 CA1 i Level-1 CA2. Ovi CA-ovi operišu nad velikim 52 geografskim i logičkim oblastima. Na nivou Level-2 se nalaze CA-ovi koji operišu nad manjim oblastima. CA-ove u okviru ovog nivoa mogu da sertifikuju CA-ovi koji se nalaze na nivou više.

Ovakvom hijerarhijom upravlja Root CA, tako da svi korisnici imaju poverenje u njega. Za razliku od Root CA ostalim CA-ima mogu, a i ne moraju verovati svi korisnici. Na primer, ako osoba A traţi sertifikat osobe B moţe ga pribaviti od bilo kog CA, ali mu ne mora verovati. Ukoliko mu ne veruje osoba A moţe zatraţiti sertifikat od CA koji se nalazi u nekom višem nivou. Traganje za validnim sertifikatom se moţe nastaviti u pravcu Root-a.

4.2.4 Kerberos

Kerberos je istovremeno autentifikacioni protokol i KDC. U poslednje vreme jako popularan, i koristi se u velikom broju aplikacija i operativnih sistema.

Kerberos se moţe opisati kao siguran protokol za autentifikaciju koji koristi prijavljivanje tipa „prijavi se samo jednom“ (eng. Single Sign On) što omogućava veliku efikasnost u radu. Korisnicima je omogućeno da se samo jednom prijave na sistem i da nakon toga, u skladu sa svojim ovlašćenjima, imaju pristup resursima u sistemu ili mreţi.

Postoji više implementacija Kerberos protokola, koje su razvijane za različite namene:

• Osnovnu verziju kerberosa je formirao MIT (Massachusetts Institute of Technology) ranih devedesetih godina. Do danas se pojavilo više verzija ovog protokola, a najpopularnije su MIT verzija 4 i verzija 5.

• Heimdal kerberos je Švedska kopija MIT Kerberos-a sa kojim je u potpunosti kompatibilan. • Aktivni direktorijum je razvio Microsoft i sam po sebi nije Kerberos ali sadrţi neke njegove

elemente u kombinaciji sa drugim servisima, kao što je LDAP (eng. Lightweight

DirectoryAccess Protocol). Treba napomenuti da Aktivni direktorijum nije kompatibilan sa

MIT i HeimdalKerberosom.

• Trust Broker predstavlja komercijalnu implementaciju Kerberos protokola. Ovu implementacijupodrţava većina operativnih sistema. Uz to, Trust Broker je potpuno kompatibilna sa svim navedenim implementacijama Kerberos protokola, što je čini jako fleksibilnom.

• Shishi je GNU implementacija MIT Kerberosa verzije 5.

U cilju razumevanja redosleda operacija i načina rada Kerberos protokola, najpre je potrebno objasniti nekoliko pojmova vezanih za njega. Komunikacije između entiteta u okviru Kerberos protokola se baziraju na razmeni tiketa. Tiket predstavlja vrstu kriptovanih podataka koji se prenose putem mreţe, i dostavljaju klijentu koji ih čuva i kasnije koristi kao propusnicu za uspostavljanje komunikacije sa odgovarajućim serverom. Prilikom kriptovanja poruka/tiketa Kerberos protokol koristi simetrični DES algoritam ili njegove varijante kao što je 3DES a Kerberos verzija 5 koristi isključivo AES algoritam za kriptovanje. Okruţenje Kerberosa čine tri servera i to: server za autentifikaciju (eng. Authenticationserver, AS), server za izdavanje tiketa (eng. Ticket-Granting Server) i server za podatke koji se štitiopšteg tipa. Na Slici 9. je prikazan odnos između pomenutih servera.

(14)

12

Slika 9.

Serveri koji se koriste u okviru Kerberos protokola

Server za autentifikaciju (AS) koji se koristi u Kerberos protokolu ima ulogu KDC-a. Svaki entitet, ukoliko ţeli pristup serveru za podatke koji se štiti, mora se registrovati kod AS. AS poseduje bazu podataka u kojoj čuva identitete i odgovarajuće šifre za pristup serveru koji se štiti. Pošto dobije zahtev za pristupom od strane nekog entiteta (Osobe A), AS vrši utvrđivanje identiteta entiteta (osobe A), izdaje ključ koji se moţe koristiti za jednu sesiju između osobe A i servera za izdavanje tiketa i šalje tiket TGT (eng. Ticket GrantingTicket) ka osobi A, kao odgovor.

Server za izdavanje tiketa izdaje tiket TGS (eng. Ticket Granting Service) namenjen osobi A i serveru B a obezbeđuje ključ sesije KAB koji se koristi u komunikaciji između osobe A i servera B.

Kerberos razdvaja servise provere identiteta i izdavanja tiketa, što predstavlja pravo rešenje u slučaju kada neka osoba ţeli koristiti usluge više različitih servera. Dovoljno je da ta osoba izvrši verifikaciju svog identiteta kod AS samo jednom, onda se više puta obrati serveru za dozvolu tiketa u cilju dobijanja tiketa za pristup različitim serverima.

Svaki zaštićeni server pruţa izvesne usluge entitetu, pri čemu se razmena podataka između entiteta i servera isključivo obavlja pomoću klijent-server aplikacija kao što je FTP (eng. File

Transfer Protocol). Princip rada procesa pristupa klijenta serveru, pomoću Kerberos protokola,

je prikazan na Slici 10.

(15)

13

Postupak pristupa klijenta (Osoba A) serveru B, u cilju bezbednog korišćenje njegovih usluga, se obavlja u okviru sledećih šest koraka:

• Korak 1. Osoba A šalje zahtev ka AS. Zahtev sadrţi identitet osobe A u nekriptovanom obliku.

• Korak 2. Kada primi zahtev, AS šalje osobi A poruku, u vidu tiketa TGT, kriptovanu pomoću KA odnosno simetričnog ključa osobe A. Poslati TGT se sastoji od dva podatka:

Ključ sesije KS koji će osoba A koristiti za komunikaciju sa serverom za dozvolu tiketa i tiket namenjen serveru zadozvolu tiketa koji je kriptovan sa simetričnim ključem KTG. Osoba A ne mora da čuva svoj ključKAu originalnom obliku, ali ga po potrebi moţe formirati. Kada primi poruku od AS, osoba Aunosi odgovarajuću šifru koja (ukoliko je korektna) uz pomoć odgovarajućeg algoritma kreira ključ KA. Neposredno nakon

uspešnog kreiranja ključa, uneta šifra se uklanja sa računara, radi sprečavanja eventualnih zloupotreba. Pomoću ključa KA se uspešno dekriptuje poruka dobijena od strane AS-a

čime osoba A dobija KS i tiket namenjen serveru za dozvolu tiketa.

• Korak 3. Osoba A šalje ka serveru za dozvolu tiketa tri podatka: tiket primljen od AS-a, ime servera čije usluge ţeli koristiti (server B) i kriptovani (pomoću ključa KS) vremenski zapis

T, koji sadrţi informacije o datumu i vremenu trajanja sesije. Vremenski zapis se koristi kao preventivna mera od eventualnog kasnijeg pristupa neke osobe C. Ovako upakovani podaci, namenjeni serveru za dozvolu tiketa, predstavljaju zahtev za izdavanje TGS tiketa.

• Korak 4. Pošto je primio zahtev, server za dozvolu tiketa šalje odgovor u vidu TGS tiketa ka osobi A. TGS tiket sadrţi dva tiketa i to: jedan tiket namenjen upravo osobi A, a drugi namenjen serveru B. Tiket namenjen osobi A sadrţi ključ sesije KAB i identitet servera B,

a kriptovan je pomoću ključa KS. Tiket namenjen serveru B, takođe sadrţi ključ sesije

KAB, identitet osobe A, a kriptovan je pomoću tajnog ključa servera B, KB. Ukoliko neka

osoba C dođe u posed ključa sesije KAB moţe nesmetano obaviti razmenu podataka sa serverom B, međutim pošto ne poseduje tajne ključeve KS ili KB nije u mogućnosti da dekriptuje neki od tiketa koji sadrţe ključ sesije.

• Korak 5. Osoba A šalje tiket namenjen serveru B i vremenski marker koji je kriptovan ključem sesije KAB.

• Korak 6. Na kraju server vraća poruku osobi A, kao potvrdu komunikacije. Poruka se sastoji od primljenog vremenskog zapisa T uvećanog za 1 koji je kriptovan pomoću ključa sesije KAB.

Ukoliko osoba A ţeli da koristi usluge nekog drugog servera, potrebno je da ponovi operacije samo u okviru poslednja četiri koraka. Prva dva koraka se odnose na proveru identiteta osobe A i nisu neophodna. Osoba A moţe zahtevati od servera za dozvolu tiketa da mu izda tikete za pristup različitim serverima.

Kerberos protokol predstavlja pouzdanu metodu za autentifikaciju u okviru javnih mreţa kao što je na primer Internet. Na pouzdanost i opravdanost korišćenja utiču sledeće konstatacije:

• Kerberos se koristi već duţe vreme, što ukazuje na činjenicu da je opstao i da je dosta testiran.

• Projektovan je da odgovori na strogo definisane zahteve po pitanju sigurne autentifikacije u otvorenim okruţenjima koja koriste nezaštićene komunikacione linije.

• Sastoji se iz seta jednostavnih arhitekturalnih i funkcionalnih pojmova, koji omogućavaju jednostavnu integraciju sa drugim sistemima što ga čini jako fleksibilnim.

• Većina operativnih sistema i softverskih aplikacija ga već ima implementiranog u svom kodu, odnosno predstavlja deo IT infrastrukture današnjice.

(16)

14

5. Zaključak

Sve brţi razvoj informacionih sistema i promet elektronskih dokumenata u drţavnoj administraciji, bankarstvu, pravosuđu i ostalim sferama društva, kao i komuniciranje u otvorenim mreţama bez direktnog ličnog kontakta, zahteva nove oblike utvrđivanja identiteta i zaštite sadrţaja koji se razmenjuje.

Dok se funkcije zaštite tajnosti i integriteta podataka mogu realizovati i primenom tradicionalnih simetričnih tehnika, funkcije autentičnosti transakcija zahtevaju primenu asimetričnih kriptografskih sistema. Najbolje karakteristike pokazuju sistemi u kojima su realizovane sve pomenute četiri funkcije. Infrastruktura sa javnim ključevima (PKI) obezbeđuje pouzdan metod za realizaciju sva četiri osnovna bezbednosna zahteva (servisa), koji je baziran na precizno utvrđenoj politici rada. Ona će brzo postati ključna karika svih sistema elektronske trgovine i korporacijske bezbednosti i sigurno će dominirati u bezbednosnim sistemima budućnosti.

Suština PKI je uspostavljanje poverenja između dva entiteta, koje se zasniva na međusobnoj autentifikaciji i razmeni kriptografskog materijala za buduću šifrovanu komunikaciju. Pri tome, koriste se usluge institucije od visokog poverenja - sertifikacionog tela (CA). U okviru digitalnog sertifikata koji izdaje sertifikaciono telo korisniku, nalazi se, pored ostalog, i korisnikov javni kriptografski ključ. Sertifikaciono telo garantuje tačnost podataka u sertifikatu tj. garantuje da javni ključ koji se nalazi u sertifikatu pripada korisniku čiji su podaci navedeni u tom istom sertifikatu. Zbog toga ostali korisnici na Internetu, ukoliko imaju poverenje u sertifikaciono telo, mogu da budu sigurni da određeni javni ključ zaista pripada korisniku koji je vlasnik pripadajućeg tajnog ključa.

(17)

15

6. Literatura

[1]Dejan Simić, “Tehnike zaštite u računarskim mreţama“, Fakultet Organizacionih NaukaBeograd, PPT Prezentacija, Beograd, Jun 2002.

[2]S. Sinkovski, B. Lučić, “Informaciona bezbednost i kriptografija“, Jugoimport SDPR Beograd, ZITEH 06-R27.pdf, 2006.

[3]C. Adams, S. Ferrell, “Internet X.509 Public Key Infrastructure”, IETF RFC 2510, 1999

[4]Thomas Hardjono, “Why is Kerberos a credible security solution?”, MIT KerberosConsortium,

Dec 2008. (http://www.kerberos.org/software/whitepapers.html)

[5]http://sr.wikipedia.org/sr-el/Криптографија, 2015.

[6]Z. Ţ. Avramović, Draţen Petrović, “Kriptografija simetrični i asimetrični algoritmi“,

Referencias

Documento similar

La RAD también podría explicar la respuesta subóptima a intervenciones específicas (evitación de alérgenos o inmunoterapia con alérgenos) en algunos pacientes

u Como capa de acabado aplicar mortero de Estuco Exterior o Estuco Exterior con Fibra de DRYMIX, en espesor no mayor a 1 cm (segunda carga).. u Rellenar con plana y

existen diferencias en el desempeño, lo que nos indica que la manipulación del estado emocional tuvo efecto no solo en el tiempo de respuesta sino también en la atención en el

Fundación Ramón Menéndez Pidal / Universidad Autónoma de Madrid... Fundación Ramón Menéndez Pidal / Universidad Autónoma

Este Máster tie ne u na fi nali da d te

EI Programa de Alimentación Hens para Vacuno Campero ofrece una amplia gama de productos y servicios que aportan las soluciones alimentarias más adecuadas a cada caso. Estos produc-

Na Bibliji, koja je poticala sa broda „Baunti” (još uvek se čuva na ostrvu), naučio je nekoliko pokolenja ostrvljana da se mole, čitaju i pišu. „Topaz” se vratio u Ameriku,

Nibbana nije samo stanje u koje idemo posle smrti; to je nešto što se može doživeti sad i ovde.. Opisana je negativnim terminima, ne zato što je to negativan doživljaj, već zato