28
Sigurnosni aspekti Sigurnosni aspekti elektronskog elektronskog poslovanja poslovanja Dejan Lacmanović asistent Tehnički fakultet “Mihajlo Pupin” Zrenjanin

05 Sigurnosni Aspekti Elektronskog Poslovanja

Embed Size (px)

DESCRIPTION

05 Sigurnosni Aspekti Elektronskog Poslovanja

Citation preview

Page 1: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Sigurnosni aspekti Sigurnosni aspekti elektronskog poslovanjaelektronskog poslovanja

Dejan Lacmanovićasistent

Tehnički fakultet “Mihajlo Pupin” Zrenjanin

Page 2: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Bezbednost svetske mreže Internet kao globalna mreža danas sve više postaje

mesto za obavljanje različitih vrednosnih transakcija.

Prisustvo ogromnog broja "zainteresovanih strana" na globalnoj mreži uslovljavaju i izuzetnu nebezbednost svetske mreže

Da bismo takvu sredinu ukrotili i učinili je potpuno bezbednom za poslovanje, moramo primeniti mere obezbeđivanja sigurnosti podataka na Internetu.

Page 3: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Uslovi bezbednosti Postoje četiri osnovna uslova bezbednosti:

integritet podataka - podaci moraju stići do korisnika bez neželjenih transformacija i modifikacija. Ovo podrazumeva da korisnik može da proveri korektnost i verodostojnost pristiglog sadržaja.

identifikacija pošiljaoca i primaoca poruke - ovaj uslov omogućava obema stranama proveru porekla poruke. Ukoliko se implementira pravilno, identifikacija mora da bude jednostavna i da ne ostavlja prostora sumnji u verodostojnost druge strane. Drugim rečima, ne može se desiti da neki "piratski" sajt preuzme identitet pravog i dođe do osetljivih podataka koje bi poslala druga strana, u uverenju da podatke šalje na pravo odredište.

Page 4: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Uslovi bezbednosti neporecivost poruke - pošiljalac poruke nema načina da

negira da je poruku poslao. Ovo je, pored ostalog, i mera zaštite biznis strane elektronskog poslovanja, jer klijent nema načina da, recimo, opovrgne sopstvenu narudžbu.

poverljivost i tajnost podataka - podaci koji se prenose od pošiljaoca do primaoca moraju na neki način biti zaštićeni od "prisluškivanja".

Bezbednost se obezbeđuje kontrolom pristupa mrežnim resursima, kao i posebnim tehnikama zaštite samih podataka, poznatim pod imenom kriptografija.

Page 5: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Kriptografske metode Kriptografija obuhvata matematičke transformacije

kojima se modifikuju podaci tako da samo korisnici sa pravom pristupa, odnosno "pravim ključem" mogu da ih prepoznaju.

Tokom kriptografskog postupka originalni podaci, koji se često nazivaju i "čist tekst" (clear text ili plain text) određenom matematičkom funkcijom se transformišu u zaštićeni ili enkriptovani format (ciphertext).

Page 6: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Enkripcija i dekripcija podataka Primenjena funkcija se zasniva na enkripcionom

algoritmu (cipher), koji za ulazne parametre ima originalnu poruku i jedan ili više kriptografskih ključeva, specijalno izabranih brojeva konačne dužine.

Obrnuti proces, transformacija iz zaštićenog oblika poruke u originalnu poruku naziva se dekripcija, i takođe je baziran na primeni matematičke funkcije, koja za ulazne podatke ima prethodno zaštićenu poruku i jedan ili više dekripcionih ključeva, koji mogu biti različiti od enkripcionih ključeva.

Page 7: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Podela kripto-algoritama Kriptografski se algoritmi dele na simetrične i

asimetrične. Simetrični su bazirani na korišćenju istog tajnog

ključa za enkripciju i dekripciju (shared secret key cryptography)

Asimetrični se baziraju na korišćenju različitih ključeva za enkripciju i dekripciju od kojih je jedan javni i poznat svima, a drugi tajni i poznat samo jednom od učesnika u komunikaciji (public key cryptography).

Page 8: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Simetrična kriptografija Kod simetrične kriptografije postupak enkripcije i

dekripcije zasniva se na dve matematički srodne funkcije:

Originalnaporuka

(clear-text)

m

Zaštićenaporuka

(cipher-text)

c

Originalnaporuka

(clear-text)

m

Pošiljalac poruke Primalac poruke

k k

E(k,m) = c D(k,c) = m

enkripcija dekripcija

Enkripciona funkcija E, na osnovu ključa k i ulazne poruke m, kreira zaštićenu poruku c. Dekripciona funkcija D, na osnovu

istog ključa k i zaštićene poruke c, restaurira originalnu poruku m.

Page 9: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Simetrična kriptografija Prednost ovog načina kriptografije u odnosu na

asimetričnu kriptografiju: manje je računski intenzivna, tako da se veće količine podataka brže enkriptuju/dekriptuju.

Velika mana: moramo pronaći bezbedan način za distribuciju tajnog ključa, tj. osigurati bezbedan kanal za razmenu ključeva između zainteresovanih strana. Šta će nam onda kriptografija, ako takav kanal već postoji?

Takođe, mana je i potreba za velikim brojem ključeva, po jedan par za komunikaciju sa svakim klijentom

Page 10: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Asimetrična kriptografija Proces enkripcije i dekripcije se kod ovih algoritama

takođe zasniva na dve funkcije - imamo enkripcionu funkciju E i dekripcionu funkciju D.

One opet manipulišu originalnom porukom m, odnosno zaštićenom porukom c, ali se ovog puta za enkripciju i dekripciju koriste dva ključa - jedan za enkripciju (ključ e), a jedan za dekripciju (ključ d).

Page 11: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Asimetrična kriptografija Prvi od ovih ključeva se naziva javni ključ (public

key) i poznat je svima, a drugi se zove privatni ključ (private key), i poznat je samo jednoj strani:

Originalnaporuka

(clear-text)

m

Zaštićenaporuka

(cipher-text)

c

Originalnaporuka

(clear-text)

m

Pošiljalac poruke Primalac poruke

Privatni ključ e

E(e,m) = c D(d,c) = m

enkripcija dekripcija

Javni ključ d

Page 12: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Asimetrična kriptografija Enkripcija podataka se može obaviti, u principu, na

dva načina: enkripcija originalne poruke javnim ključem - samo

vlasnik privatnog ključa može dekriptovati poruku, ali ne može biti siguran ko je poruku poslao, jer je javni ključ dostupan svima;

enkripcija originalne poruke privatnim ključem - ovog puta je poreklo poruke nedvosmisleno, kao i nemogućnost poricanja vlasnika javnog ključa da je poruku poslao, ali je tajnost poruke kompromitovana - svako ko ima javni ključ koji odgovara tajnom ključu korišćenom za enkripciju može videti poruku. Ova mana se ispravlja mehanizmom digitalnih potpisa i sertifikata.

Page 13: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Asimetrična kriptografija Prednosti korišćenja infrastrukture javnog ključa

(public key infrastructure, PKI) - potrebno je znatno manje ključeva za komunikaciju, nije potreban siguran kanal za distribuciju ključeva. Loša strana - računski su intenzivni, tako da su nepogodni za enkripciju većeg obima podataka.

Page 14: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Moderna kriptografija – hibridni pristup U današnjim modernim enkripcionim sistemima

koristićemo i simetričnu i asimetričnu kriptografiju za postizanje potrebnog nivoa zaštite podataka - najpre ćemo asimetričnom kriptografijom razmeniti tajni ključ za ostvarivanje simetrične kriptografije, koju ćemo kasnije koristiti za prenos velike količine podataka.

Na taj način funkcioniše SSL (Secure Sockets Layer) tehnologija, sa kojom ćemo se kasnije upoznati.

Page 15: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Digitalni potpisi Digitalni potpis (digital signature) predstavlja

digitalnu verziju svojeručnog potpisa - kao što takav potpis jednoznačno identifikuje osobu, digitalni potpis može da identifikuje autora neke poruke, ali i da dokaže da poruka prilikom prenosa komunikacionim kanalom nije izmenjena.

Svaki potpis, bio on digitalni ili vlastoručni, mora da zadovolji pet osnovnih pravila: mora da pruži identifikaciju; ne može biti manipulisan; ne može biti kopiran; mora da bude verodostojan; ne može biti opovrgnut.

Page 16: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Digitalni potpisi U najvećem broju slučajeva nije potrebna enkripcija

celokupne poruke - dovoljno je enkriptovati samo digitalni potpis, a poruku ostaviti nepromenjenu. Naravno, ako je tajnost poruke kritična, i ona može biti zaštićena.

Za kreiranje digitalnih potpisa koriste se tzv. hash funkcije.

To su funkcije slične enkripcionim, koje imaju osnovnu karakteristiku da na osnovu ulaznih podataka promenljive dužine definišu niz konačne dužine, a koji na jedinstven način definiše ulazni podatak:

Page 17: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Digitalni potpisi

Digitalnopotpisana

poruka

Originalnaporuka

(clear-text)

Hashfunkcija

Hashvrednost

hPrivatni ključ e

Enkriptovanahash

vrednosth'

(digitalnipotpis)

Originalnaporuka

(clear-text)

Javni ključ d

Hashfunkcija

Hashvrednost

h

Hashvrednost

h

Poređenje

Page 18: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Digitalni sertifikati Digitalni sertifikat je elektronska datoteka koja

jedinstveno identifikuje pojedince i web sajtove na Internetu i omogućuje sigurnu, poverljivu komunikaciju.

On povezuje ime entiteta koji učestvuje u sigurnoj transakciji (e-mail adresu ili web adresu) sa javnim ključem (public key) koji je korišćen za zaštitu komunikacije sa tim entitetom u kriptografskom sistemu.

Page 19: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Digitalni sertifikati "Potpisnik" digitalnog sertifikata je "sigurna treća

strana", odnosno telo poznato pod imenom Certificate Authority (CA), kao što su VeriSign, Thawte i slično.

To su tela specijalizovana za brigu o digitalnim sertifikatima, i ta tela izdaju, kreiraju i potpisuju sertifikate, te učestvuju i u njihovoj distribuciji.

Page 20: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Digitalni sertifikati Sertifikat koji je izdat od odgovarajućeg CA nosi i

digitalni potpis tog CA, i ta je činjenica ključna za jednoznačnu identifikaciju organizacije koja je sertifikat dobila.

Kada korisnikov browser pristupi sajtu organizacije koja poseduje digitalni sertifikat, taj sertifikat se automatski prenosi do klijenta u formi datoteke određenog formata.

Browser čita ovaj fajl i odlučuje da li će verovati udaljenom serveru, na osnovu činjenice da je sertifikat digitalno potpisan od strane CA, a javni ključevi svih većih CA su ugrađeni u sam browser.

Page 21: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Postupak kreiranja digitalnog sertifikata

PRVI KORAK:Aplikant generiše par ključeva, privatni i javni.

DRUGI KORAK:Aplikant prikuplja informacije

koje traži sertifikaciono telo (podaci o organizaciji, overe, e-mail adrese, čak i otisci prstiju ako CA to

zatraži)

Page 22: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Postupak kreiranja digitalnog sertifikata

TREĆI KORAK:Aplikant šalje zahtev za sertifikatom, koji se sastoji iz njegovog javnog ključa,

i traženih podataka. Zahtev se enkriptuje

javnim ključem sertifikacionog tela.

ČETVRTI KORAK:Dostavljene informacije se

proveravaju.

Page 23: 05 Sigurnosni Aspekti Elektronskog Poslovanja

Postupak kreiranja digitalnog sertifikataPETI KORAK:

CA kreira i digitalno potpisuje sertifikat koji se sastoji iz

aplikantovog javnog ključa i ostalih dostavljenih

informacija. Potpis CA vezuje javni ključ aplikanta sa

podacima koje je dostavio – za tu vezu sada garantuje CA. Sertifikat je zaštićen javnim

ključem aplikanta.

ŠESTI KORAK:Sertifikat se prosleđuje aplikantu.

Page 24: 05 Sigurnosni Aspekti Elektronskog Poslovanja

SSL komunikacija SSL (Secure Sockets Layer) je tehnologija koja služi

za siguran prenos podataka preko weba, a izvorno je razvijena od strane Netscape Communications.

Zasniva se upravo na mehanizmu digitalnih serverskih sertifikata, izdatih od strane nezavisnih CA.

SSL omogućuje dve krucijelne stvari u sigurnim komunikacijama: autentifikaciju, putem gore opisanog mehanizma serverskih sertifikata izdatih od strane CA, i enkripciju, čime se vrši zaštita podataka koji se razmenjuju.

Da bi se uspostavila SSL konekcija, najpre se vrši tzv. SSL handshake

Page 25: 05 Sigurnosni Aspekti Elektronskog Poslovanja

1

Kupac kontaktira zaštićeni URL (prefiks adrese jehttps umesto uobičajenog http, ili se javlja poruka

od strane browsera). To je obično zaštićenaforma za prikupljanje podataka od kupca, kao što

su lični podaci ili broj kreditne kartice.

2Browser klijenta automatski šalje verziju SSL

protokola koju podržava, jačinu enkripcije (dužinuključa) i ostale informacije koje su potrebne za

komuniciranje sa klijentom preko SSL.

3Server odgovara, automatski šalje browseru

klijenta digitalni sertifikat sajta, zajedno sa SSLverzijom servera, jačinom enkripcije itd.

SSL handshake

klijent

server

Page 26: 05 Sigurnosni Aspekti Elektronskog Poslovanja

4

Klijentov browser proverava informacije izdigitalnog sertifikata servera:

1. da li je sertifikat validan i da li ima validandatum;2. da li je sertifikat izdat od strane CA koji je naspisku browsera kao CA kojem se veruje;3. da li javni ključ CA, koji je ugrađen u browser,može da izvrši dekripciju digitalnog potpisa CAkoji je stigao sa sertifikatom (ako može, u pitanjuje verodostojan sertifikat);4. da li ime domena kojem smo pristupiliodgovara imenu domena koje je navedeno usertifikatu.

5

Ako je server uspešno autentifikovan, webbrowser klijenta generiše jedinstveni sesijskiključ. Taj ključ će biti korišćen za simetričnu

enkripciju podataka tokom zaštićenekomunikacije sa serverom,

SSL handshake

klijent

server

Page 27: 05 Sigurnosni Aspekti Elektronskog Poslovanja

6

Vrši se enkripcija samog sesijskog ključa javnimključem sajta (koji je stigao sa digitalnimsertifikatom), tako da samo sajt može da

dekriptuje ključ, te se ključ šalje serveru. Tako serešava problem sigurne distribucije ključa u

simetričnoj kriptografiji.

7 Server dekriptuje sesijski ključ koristeći svojprivatni ključ.

SSL handshake

klijent

server

Page 28: 05 Sigurnosni Aspekti Elektronskog Poslovanja

8Klijent i server razmenjuju poruke u kojimadecidno kažu da će sve buduće poruke biti

enkriptovane sesijskim ključem.

9

SSL zaštićena sesija je uspostavljena. Koristi sesimetrična enkripcija, koja je mnogo brža od

asimetrične, za enkripciju velike količinepodataka. Uspostavljen je «SSL pipeline». Nakon

završetka zaštićene komunikacije SSL veza seraskida, a sesijski ključ eliminiše.

SSL handshake

klijent

server