Web kliens-szerver struktúra és adatvédelem
Előadásvázlat
dr. Kovács László
Web struktú struktúra elemei
HTTP
Listener-WS
szerver Web szerver
BI modul kliens Web bö böngé ngésző sző
BI CGI ODBC-JDBC
szerver adatbá adatbázis szerver
GEIAL Kovács László
Dokumentum kijelö kijelölés URI : univerzá univerzális (WEB(WEB-) erő erőforrá forrás azonosí azonosító
URL URI URN
URL: erő erőforrá forrás megadá megadás protokoll://gazdaprotokoll://gazda-gép : port / filené filenév ? paramé paraméterek URN: erő erőforrá forrás né név névté vtér: né név
GEIAL Kovács László
HTTP protokoll
-
szö szöveges (ASC) formá formátum önálló lló üzenet csomagok állapotmentes
1. Kliens kapcsolatot kezdemé kezdeményez 1.b Szerver visszajelez 2. Kliens ké kérés csomagot kü küld 2.b Szerver feldolgozza a ké kérést 3. Szerver vá válasz csomagot kü küld 3.b Kliens fogadja a csomagot 4. Szerver bontja a kapcsolatot
GEIAL Kovács László
HTTP csomagok (ké (kérés) csomag = elemi | összetett Elemi csomag =
GET URI CrLf
Összetett csomag = Method URI ProtocolVersion CrLf [*
] [] CrLf>]
[]
GET, PUT, POST, DELETE,... GEIAL Kovács László
HTTP csomagok (vá (válasz) Összetett csomag =
ProtocolVersion Stá Státuszkó tuszkód CrLf [*] [] CrLf>] []
1xx: 2xx. 3xx: 4xx: 5xx:
GEIAL Kovács László
informá információ ció OK átirá tirányí nyítás kliens hiba szerver hiba
HTTP üzenetvá zenetváltá ltás Kliens: GET
/peter/doksik.html
HTTP/1.1
Szerver: HTTP/1.1 400 Bad Request Date: Thu,20.May.2004 21.23 GMT Server: 157.56.23.13 Content-type: text/html Error Not found..
GEIAL Kovács László
Dokumentumok tí típusai Statikus (LACI.HTML) dokumentum Dinamikus (LACI.PHP)
A dinamikus lapot egy WEBWEB-szerver belső belső (modul) vagy külső lső (CGI) program állí llítja elő elő
kliens
GEIAL Kovács László
WEB szerver
modul(dll modul(dll) dll) CGI(exe CGI(exe) exe)
WEB szerverek
Top Developers Developer January 2004 Percent Apache 31040922 67.38 Microsoft 9675979 21.00 SunONE 1503855 3.26 Zeus 752053 1.63
GEIAL Kovács László
February 2004 Percent 31703884 67.21 9849971 20.88 1657295 3.51 755227 1.60
Change -0.17 -0.12 0.25 -0.03
Apache WEB szerver konfigurá konfiguráció ció - szolg szolgá áltatá ltatás - önálló indí ítás lló ind Main server parameters
Port 80 ServerAdmin [email protected]@iit.uni-miskolc.hu ServerName laszlo.iit.unilaszlo.iit.uni-miskolc.hu DocumentRoot "C:/Program Files/Apache Gr/Apache/htdocs” Gr/Apache/htdocs” Gr/Apache/htdocs"> Options Indexes FollowSymLinks MultiViews Order allow,deny Allow from all DefaultType text/plain ErrorLog logs/error.log ScriptAlias /cgicgi-bin/ "C:/Prog/Apache/cgi "C:/Prog/Apache/cgiProg/Apache/cgi-bin/” bin/” AddEncoding x-gzip .gz .tgz AddHandler cgicgi-script .cgi .cgi ServerRoot/ ServerRoot/conf/ conf/httpd.conf GEIAL Kovács László
Apache védelmi mechanizmusai szintek: szintek:
-
what you have what you know what you are mód1: voluntary (jelsz (jelszó jelszó) - authentication - authorisation - involuntary (IP cím) realm: védett terü terület : Authname paramé paraméterezhető terezhető
kérés hiba: hiba: nincs azonosí azonosító adat kliens
név, jelszó jelszó Kérés, név és jelszó jelszó
GEIAL Kovács László
realm szerver
Apache védelmi mechanizmusai Adatá Adatátvitel kódolá dolása: sa:
Authtype
base64 (basic) digest
IP alapú alapú ellenő ellenőrzé rzés:
Allow from IP /domain Deny
Kié Kiérté rtékelé kelés sorrendje: sorrendje:
Order
Név/jelszó v/jelszó ellenő ellenőrzé rzés:
Require
jogosultsá jogosultsági lista lista:
AuthUserFile filené filenév
validvalid-user xx yy group zz yy
név:jelszó v:jelszó AuthGroupFile AuthGroupFile filené filenév
GEIAL Kovács László
Apache védelmi mechanizmusai htdocs/proba"> Order Deny,Allow Allow from All Authtype Basic Authname Proba Require validvalid-user Authuserfile "C:/… "C:/…/Apache/conf/ Apache/conf/ulist.txt ache/conf/ulist.txt" ulist.txt" httpd.conf
GABI:gabi Anna:Anna ulist.txt
GEIAL Kovács László
Kriptográ Kriptográfiai alapok Szteganográ Szteganográfia és kriptográ kriptográfia: informá információ ciók elrejté elrejtése A kriptográ kriptográfia lehet egy vagy ké kétkulcsú tkulcsú A feldolgozott szö szövegré vegrész lehet: - karakter - blokk - karakterlá karakterlánc
Megvaló Megvalósítás lehet: - szoftveres - hardveres
Lehet egyirá egyirányú nyú kódolá dolásró sról is beszé beszélni GEIAL Kovács László
Kriptográ Kriptográfiai alapok szö szöveg
titkosí titkosítás
titkos kulcs szö szöveg
rejtjelezett szö szöveg
visszafejté visszafejtés egykulcsos rendszer
szö szöveg
titkosí titkosítás
nyilvá nyilvános kulcs
szö szöveg
titkos kulcs
visszafejté visszafejtés kétkulcsos rendszer
GEIAL Kovács László
rejtjelezett szö szöveg
DES algoritmus vá váza
egykulcsú egykulcsú blokk kó kódolá dolás bitszintű bitszintű műveletek XOR, permutá permutáció ció S-BOX
GEIAL Kovács László
egysé egységek
RSA algoritmus vá váza - kétkulcsú tkulcsú - szá számolá molásigé sigényes - speciá speciális aritmetika
p1 , q = e,d
p2 : prí prímek p1*p2 : qq-ból szá származtatott
e: nyilvá nyilvános kulcs d: titkos kulcs m = nyí nyílt szö szöveg c = rejtjelezett szö szöveg
c = me mod q m = cd mod q kódolá dolás/dekó s/dekódolá dolás A gyakorlatban a q GEIAL Kovács László
szá szám kb. 1000 szá számjegybő mjegyből is
állhat
RSA algoritmus vá váza Kulcs meghatározás menete 1. 2. 3. 4. 5. 6.
p1,p2 prímszámok q = p1*p2, f = (p1-1)*(p2-1) e : lnko(e,f) = 1 d : e*d = 1 (mod f) nyilvános kulcs: q, e titkos kulcs: d
P1 = 5 P2 = 11 Q = 55 F = 40 E = 13 D = 37 M = 5 M’ = 5 ^ 13 mod 55 = 15 15 ^ 37 mod 55 = 5 GEIAL Kovács László
Újlenyomat A teljes sz szö öveget jellemző jellemző rövid szö szöveg. Működése egy has hasí ító algoritmuson (hash (hash) hash) alapszik.
Célja: egy [1..N] intervallum elemeinek leké leképzé pzése egy [1..n] intervallumba, ahol n << N Leggyakoribb hash függvé ggvény: h(x) = x mod n nagy szö szövegekné vegeknél: blokkolá blokkolás és XOR MD5 : 128 bites lenyomat SHASHA-1: 160 bites lenyomat
Aladár megy a kertbe Char GEIAL Kovács László
5624132563421 Int
652 n mod m
Digitá Digitális aláí aláír áírás Dokumentum eredetisé eredetiség ellenő ellenőrzé rzésének eszkö eszköze
hash
szö szöveg
titkos kulcs
újlenyomat
titkosí titkosítás
aláí aláír áírás’
szö szöveg' hash
nyilvá nyilvános kulcs
újlenyomat’’ jlenyomat’’
GEIAL Kovács László
aláí aláír áírás
ellenő ellenőrzé rzés
visszafejté visszafejtés
újlenyomat’ jlenyomat’
Digitá Digitális aláí aláír áírás Elfogadá Elfogadás felté feltételei: - újlenyomat’’ jlenyomat’’ = újlenyomat’ jlenyomat’ - aláí aláír áírás’ = aláí aláír áírás - szö szöveg’ veg’ = szö szöveg - nyilvá nyilvános kulcs és titkos kulcs egymá egymáshoz tartoznak
Véd a k kö övetkező problé émák ellen: vetkező probl - szö szöveg mó módosulá dosulása - feladó feladó meghamisí meghamisítása
Alapfelté lennü ünk, hogy a nyilvá Alapfeltétel: biztosnak kell lenn nyilvános kulcs a való valóban megadott szemé személyhez tartozik
GEIAL Kovács László
Kulcsok kezelé kezelése Vannak nyilv nyilvá ános kulcstá kulcstárak, amelyek - rendelkezé rendelkezésre bocsá bocsátjá tják a nyilvá nyilvános kulcsokat - garantá garantáljá lják a tulajdonos azonossá azonosságát
Tanú Tanúsítvá tvány tartalma: - tulajdonos azonosí azonosító adatait (pl. né név,..) - nyilvá nyilvános kulcsá kulcsát - a tanú tanúsítvá tványt kiá kiállí llító szervezet digitá digitális aláí aláír áírását - érvé rvényessé nyességi adatokat - kiá kiállí llító azonosí azonosító adatait
Tanú Tanúsítvá tványok, kulcstá kulcstárak hierarchiá hierarchiája épül ki
GEIAL Kovács László
Kulcsok kezelé kezelése tanú tanúsítvá tványtá nytár
Fő hitelesí hitelesítő szerver
Kibocsá Kibocsátó hitelesí hitelesítő szerver Kibocsá Kibocsátó hitelesí hitelesítő szerver Regisztrá Regisztráció ciós egysé egység Regisztrá Regisztráció ciós egysé egység
Regisztrá Regisztráció ciós egysé egység
ügyfelek ügyfelek
ügyfelek ügyfelek
GEIAL Kovács László
Szabvá Szabványok, gyakorlati megoldá megoldások X.509 szabvá szabvány (PKI, PKCS) Legfő Legfőbb magyar hitelesí hitelesítés szolgá szolgáltató ltatók: Netlock Kft (www.netlock.hu (www.netlock.hu) www.netlock.hu) MÁV Informatika (www.mavinformatika.hu (www.mavinformatika.hu/ www.mavinformatika.hu/ca) ca) Matá Matáv e-szigno Microsec e-szigno (www.ewww.e-szigno.hu) szigno.hu) Informá Információ ciók: e-alá aláirá irás.lap.hu
GEIAL Kovács László