Vytauto Didžiojo Universitetas Informatikos fakultetas INFORMACINIŲ SISTEMŲ SAUGUMAS SET PROTOKOLAS REFERATAS Atliko: Rokas Sabaliauskas Tikrino :Dėst. Dr. R. Liutkevičius Kaunas 2006 ĮVADAS Internetas – viena iš labiausiai plėtojamų šių dienų technologijų. Visuomenė plačiai naudoja interneto galimybes kasdieniniame gyvenime: bendravimas tarpusavyje, nuotolinis mokymas, resursų dalinimasis, informacijos paieška, darbas. Vartotojų poreikiai auga su kiekviena diena. Naujų technologijų atėjimas keičia mūsų visuomenės modelį. Interneto plėtojimas įgalina visuomene naudotis naujomis technologijomis, paslaugomis. Šalia šių visų plėtros padarinių iškyla naujų problemų. Tai yra saugumo problemos. Plečiantis tinklams ir didėjant vartotojų poreikiams, paslaugų tiekėjai norėdami patenkinti klientus ar nukonkuruoti kitą tiekėja diegia naujas paslaugas ir technologijas. Tai priveda prie didelės tikimybės pažeidžiamumų atsiradimui ir informacijos saugumui. Vienas iš šių dienų interneto plėtojimo uždavinių yra įdiegti saugius protokolus ir sistemas. Interneto tinklai yra didelės apimties. Blogai suprojektuotose sistemose informacijos srautai gali nukekėti ir patekti į blogas rankas. Vartotojų aplaidumas ir neatsakomybės jausmas taip pat turi įtakos duomenų saugumui. Viena iš labiausiai naudojamų paslaugų yra elektroninė komercija (E-commerce, E-buisness). Tai apsipirkimas internete ar manipuliavimas finansinėm operacijom. Šioje srityje diegiamos technologijos turi būti ypač saugios ir patikimos. Vykdomu piniginių transakcijų informacija keliauja tinklų per kompiuterius. Šis srautas turi būti ypatingai apsaugota. Dauguma piniginių operacijų yra atliekama panaudojant kreditinių kortelių duomenis. Šį informacija yra asmeninė ir patekusi į nepageidaujamo asmens rankas gali būti panaudota netinkamiems tikslams. Norint apsaugoti informaciją yra diegiamos naujos paslaugos, servisai kurių tarpusavio bendravimas yra pagrįstas saugiais protokolais. SAUGAUS DUOMENŲ PERDAVIMO PROBLEMOS Saugiam informacijos perdavimui turi būti naudojami koduoti duomenys, saugūs informacijos perdavimo kanalai, ir saugumo protokolai surišantys perdavimą ir duomenis į bendrą visumą. Protokolas tai yra taisyklių ir algoritmų rinkinys nusakantis objektų tarpusavio bendravimo taisykles ir palengvinantis duomenų perdavimą. Vienas iš svarbiausių naujų protokolų diegimo aspektų yra testavimas saugioje aplinkoje. Tai reiškia kad prieš naudojant protokolą interneto tinkluose jis turi būti ištestuojamas saugioje aplinkoje modeliuojant įvairius pažeidžiamumo atvejus. Dėl keliamų protokolams reikalavimų kartais yra neįmanoma sumodeliuoti protokolų veiksmingumo. Protokolo saugumą ir patikimumą įrodyti yra labai sunku. Dauguma nulaužimo atveju įvyksta ne dėl protokolo kūrimo klaidų, o dėl programinės įrangos realizuojančios protokolo veikimą klaidų arba nepakankamos informacijos apie protokolo veikimą. Pastaruoju metu labiausia yra naudojami trys saugūs protokolai: SSL (secure socket layer), TLS (Tranport layer security) ir SET (Secure electronic transaction). SSL/TLS protokolai kaip ir dauguma modernių protokolų naudoja duomenų kodavimą perduodant informacija tinkle. Tačiau pastarieji protokolai tinkami naudoti e-pašto, fakso žinučių, failų siuntimo kodavimui. Be to SSL/TLS protokolai sąveikauja tik point-to-point rėžimu. Kreditinių kortelių transakcijoje dalyvauja bent trys šalys: pirkėjas, pardavėjas ir kortelės emitentas (bankas). Naudojant (1 pav.) SSL/TLS protokolus finansinėm transakcijom nei viena šalis nėra apsaugota: pirkėjas nėra apsaugotas nuo to, kad pardavėjas nepaskleis jo asmeninių banko sąskaitų duomenų, o pardavėjas gali tapti suklastotų kreditinių kortelių ar netikrų banko sąskaitų auka. Vienas iš svarbiausių šių protokolų trūkumų yra tai kad SSL naudojant 40-bitų ar didesnius raktus. Rakto dydis priklauso nuo atsako i serverio užklausimą apie rakto dydį, serverio-kliento pasisveikinimo metu (handshaking). Serverio-kliento pasisveikinimo žinutės paketų vientisumas nėra tikrinamas dėl to atakuotojas žinodamas minimalų rakto dydį (40-bit) gali pasiųsti suklastota užklausą ir taip BruteForce metodo atrinkti raktą ir lengvai stebėti transakcija. 1 pav. Finansinės transakcijos naudojant SSL protokolą SSL naudoja 40/56 bitų tarptautinį kodavimą ir 128 bitų Jungtinių Amerikos valstijų kodavimą. Šie apribojimai yra sudaryti pagal tam tikrus valstybinius nutarimus. Be to tinklo analizavimo metu iš pirmos pasisveikinimo žinutės atakuotojas gali nustatyti kas yra ryšio dalyviai. Taip jis toliau gali analizuoti užsimezgusi ryšį: paketų dydi, duomenų perdavimo dažnumą. Vienas iš didžiausių trūkumu yra tai kad pardavėjas gautą kliento informaciją laiko duomenų bazėse. Šiuo atveju pirkėjas turi labai pasitikėti pardavėju informacinėmis sistemomis. Dėl netinkamos Du administracijos šie duomenys gali būti lengvai prieinami pašaliniams asmenims. SSL/TLS protokolai yra plačiai naudojami tačiau jie turi trūkumu. Saugiam piniginių transakcijų vykdymui yra naudojamas SET (Secure electronic transaction) protokolas. Protokolas buvo specialiai sukurtas šiai problemai išspręsti. SET PROTOKOLAS SET (Secure electronic transaction) - saugios elektroninės transakcijos protokolas. Šį elektroninės bankininkystės protokolą sukūrė dvi pasaulyje lyderiaujančios bankininkystės kompanijos MasterCard ir VISA. Protokolo kūrime taip pat dalyvavo tokios IT kompanijos kaip IBM, Netscape, Terrisa systems, VerySign, SAIC, Micrsoft. 1996 metu vasario pirmą dieną šios kompanijos pristatė pirmą vieninga standartą skirta apsaugoti pinigines transakcijas vykdomas internetu. Prie šio projekto prisijungė ir kitos kreditinių kortelių kompanijos: American Express, Discovery. SET (2 pav.) naudoja sertifikatų technologija kuri padeda nustatyti šalių (pirkėjo, pardavėjo, banko) identitetas. 2 pav. Finansinės transakcijos naudojant SET protokolą Dėl savo įmantrių kriptografinių algoritmų ir greitų transakcijų SET yra nepakeičiamas protokolas elektroninėje bankininkystėje. SET protokolo specifikacijos yra platinamos viešai. SET protokolo reikalavimai SET protokolo tikslas užtikrinti saugu finansinių transakcijų vykdoma elektroninėje erdvėja. Jis suteikia galimybe, pirkėjui ir pardavėjui, saugiai apsikeisti asmeniniais duomenimis. Kuriant šį protokolą buvo laikomasi šių reikalavimų: • Užtikrinti duomenų saugumą – koduojant bendravimo žinutes. • Užtikrinti visų siunčiamų duomenų vientisumą – naudojant skaitmeninius parašus. • Užtikrinti vartotojo autentiškumą (asmuo yra tikras kritinės kortelės savininkas) naudojant unikalius vartotojo sertifikatus ir skaitmeninius parašus. • Užtikrinti pardavėjo autentiškumą ir jo priklausomybe tam tikrai finansiniai institucijai – naudojant unikalius pardavėjo sertifikatus ir skaitmeninius parašus. • Apsaugoti visas teisėtas sandėrio šalis naudojant geriausius saugumo metodus • Palengvinti tarpusavio ryšius tarp programinės įrangos ir tinklo paslaugų tiekėjų naudojant specialius protokolus ir žinučių formatus. Viena iš svarbiausių vaidmenų SET protokolo vystyme atlieka programinės įrangos gamintojai. Programinės įrangos gamintojams taip pat yra keliami reikalavimai: • Kurti elektroninius prašus naudojant skirtingas raktų poras. • Generuoti dvigubus parašus naudojamus susieti užsakymo žinutes su kitais objektais. • Tikrinti skaitmeniniu parašų teisingumą. Programinė įranga turi koduoti SET bendravimo žinutes atsitiktiniu būdu sugeneruotais raktais kuris papildomai yra koduojamas gavėjo viešuoju raktu. Šis procesas vadinamas elektroninio voko kūrimu. Gavėjo programinė įranga turi atkoduoti skaitmeninį voką naudojant savo asmeninį raktą. Atkoduotas turinys papildomai turi būti atkoduojamas naudojant simetrinius raktus. Dažniausia pažeidžiamumu atsiradimo priežastis yra netinkamas ir netaisyklingas programinės įrangos kūrimas. SET protokolo veikimu paremtų sistemų dalyviai Naujos technologijos diegimas skatina naujų vartotojų susidomėjimą ja. Kiekvienoje sistemoje yra objektai kurie atlieka tam tikrą vaidmenį, funkcijas. Ne visi objektai yra vienodu privilegijų (administratorius, paprastas vartotojas). Privilegijų paskirstymas naudojamas sistemos stabilumui užtikrinti. Tai ką gali atlikti vienas objektas negali atlikti kiti ir atvirkščiai. SET protokolo sistemoje taip pat yra išskiriami skirtingų privilegijų ir tipų objektai. Visi objektai apmokėjimo operacijų metu sąveikauja tarpusavyje naudodami tik jiem skirtas budingas funkcijas. Objektu autentiškumas ir patikimumas yra tikrinamas sertifikatais. Kortelės savininkas naudoja kortelę išduota savo banko. SET šiuo atveju užtikrina, kad informacija vartotojo ir pardavėjo sąveikos metu liktu slapta. Emitentas (bankas) tai finansinė institucija išduodanti vartotojui kreditine kortelę ir užtikrinanti galimybe naudotis saugiomis autorizacijos reikalaujančiomis transakcijomis. Pardavėjas tai objektas parduodantis paslaugas arba fizines prekes. Norėdamas priimti kreditines korteles pardavėjas turi turėti ryšius su kombinuotoju. Kombinuotojas tai – finansinė institucija kuri sukuria sąskaita kartu su pardavėju ir vykdo apmokėjimo bei autorizacijos procesus. Vienas iš svarbiausių SET sistemos objektų yra apmokėjimo sąsaja (Payment gateway). Tai įrenginys kuri dažniausiai valdo kombinuotojas ar paskirta trečioji sandėrio šalis. Apmokėjimo sąsaja operacijas vykdo pagal specialiai kortelės savininko pateiktas apmokėjimo instrukcijas. Gerbiamo ir patikimo firminio ženklo (Brand) naudojamas SET sistemoje sukuria palankia kliento atmosferą kortelės savininkui. Gerai užsirekomendavusių firminių ženklų kortelių savininkams SET naudojanti sistema suteikia daugiau galimybių ir privilegijų. Neretai kortelių emitentai ir kombinuotojai atlikti finansinėm operacijom paskiria trečiąsias šalis. Tačiau prieš paskirdami atsakingas operacijas trečiosioms šalims jie turi nustatyti šių objektų autentiškumą ir patikimumą naudojant sertifikatus. SET veikimo erdvė SET protokolas apsaugo visas sandėrio šalis. Šis protokolas susideda iš protokolų šeimos. Pagrindiniai penki protokolai būtu tokie: kreditinės kortelės savininko registracija, pardavėjo registracija, pirkimo informacija, mokėjimo autorizacija, mokėjimo paėmimas. Kiti likusieji protokolai nėra tokie svarbus. Dauguma jų atsakingi už klaidų kontroliavimą, ar tinklo ir programinės įrangos surišimą. SET protokolas apima: • Aplikacijų kriptografinius algoritmus – duomenų vientisumas, duomenų slaptumas, vartotojų autentiškumas. • Sertifikatų žinutes ir objektų formatus – sertifikatais stiprinama vartotojų tapatybių apsauga • Pirkimo operacijų žinutes ir objektų formatai – tikrina užsakymo vykdymo procesą. Taip pat nustato autorizacijos statusą. • Autorizacijos operacijų žinutes ir objektų formatai – žinutės yra siuntinėjamos tarp dalyvaujančių objektų ir banko. Šios žinutės sudarytos iš užklausimas-atsakymas dalių • Užsakymo perėmimo žinutes ir objektų formatai – skaitmeniniu parašu pažymėtos perėmimo užklausos savyje turi informacija apie transakcija kuri yra užkoduota naujai sugeneruotu simetriniu raktu ir išsiusta i banką. • Bendraujančių objektų žinučių protokolai – žinučių gavėjai gaunantis tam tikro tipo žinutes turi naudoti tam tikra SET standartus atitinkanti protokolą. SET protokolas nesirūpina tokiais dalykais kaip piniginių operacijų atlikimas sistemose kurios nenaudoja SET protokolo, ekrano formatais, įvedimo laukų, formų išdėstymu taip pat neužtikrina apsaugos nuo virusu, Trojos arklių ir kompiuterių įsilaužėliu pirkėjo, pardavėjo ir banko kompiuterinėse sistemose. SET protokolo veikimo aplinka yra labai sudėtinga ir klaidi. Didžiulės ir sudėtingos SET protokolo žinutės reikalauja šio protokolo supaprastinimo. Protokolo supaprastinimas gali sukelti papildomu saugumo problemų. Visos atakos nukreiptos prieš SET protokolą iškyla dėl neaiškios SET protokolo prigimties ir veikimo. Naujos sistemos susilaukia visuomenės susidomėjimo ir nuomonės. Kaip jau išsiaiškinome SET protokolas yra sudarytas iš vidinių protokolų kurie tarpusavyje bendrauja tam tikro formato žinutėmis. Šios žinutės yra apsaugotos šalių sertifikatais, o jose saugoma informacija yra koduojama atsitiktinai sugeneruotais simetriniais raktais. Gavėjas gavęs žinutes turi jas analogiškai atkoduoti naudojant savo sertifikatus ir simetrinius raktus. SET protokolo veikimas SET protokolo veikimas paremtas žinučių ir kriptografijos pagrindu. Kiekviena išsiųsta žinutė iš pat pradžių yra užkoduojama atsitiktiniu simetriniu raktu. Sekančiu žingsniu šis raktas yra koduojama gavėjo viešuoju raktu (3 pav.). Gavėjas panaudojąs savo privatų raktą atkoduoja atsitiktinai sugeneruota simetrini rakta ir ji iškoduoja naudojant simetrinį raktą. Simetrinio rakto veikimo principas yra labai parastas. Ta patį raktą užkodavimui ir atkodavimui naudoja abi šalys: pirkėjas ir pardavėjas. Tačiau yra vienas trūkumas. Objektai besidalinantys tuo pačiu raktu turi turėti tarpusavyje pasitikėjimą vienas kitu. Šiuo principu veikia DES kodavimo algoritmas. 3 pav. Simetrinio rakto iliustracija Naudojant viešąjį raktą koduoti simetriniam raktui kiekvienas iš dalyviu turi turėti viešąjį ir privatų raktus šie raktai yra tarpusavyje susieti matematiškai. Dalyvis platina tik savo viešąjį raktą siuntėjas užkodavęs objektą gavėjo viešuoju raktu jį jam išsiunčia taip užtikrindamas kad informacija galės peržiūrėti tik tam skirtas asmuo. Toks kodavimas vadinamas asimetriniu. Ji naudoja RSA algoritmas. 4 pav. Asimetrinio rakto iliustracija Trečioji apsaugos priemonė kuria naudoja SET protokolas yra vartotojų sertifikatai. Prieš pradėdami informacijos apsikeitimo procesą šalys turi įrodyti savo autentiškumą Certificate Authority (CA). CA gavęs vartotojo duomenis ir jo viešąjį raktą sukuria specialią žinutę ir patvirtina ją skaitmeniniu parašu. Simetriniu raktu užkoduota žinutė, vartotojo sertifikatas su CA skaitmeniniu parašu ir vartotojo viešuoju raktu yra dar syki užkoduojami naujai sugeneruotu simetriniu raktu kuris yra užkoduojamas gavėjo viešuoju raktu. Toks paketas yra išsiunčiamas gavėjui. 5 pav. Siuntėjo atliekami veiksmai prieš išsiunčiant žinutę 6 pav. Gavėjo atliekami veiksmai gavus žinutę Norint naudotis SET protokolą palaikančiais servisais kiekvienas objektas turi atlikti jam budingas operacijas. Kortelės savininkas turi prisiregistruoti prie sertifikatus suteikiančios CA sistemos. Kortelės savininko kompiuteris nusiunčia CA sistemai žinutę INITIATE REQUEST. CA sureagavusi siunčia vartotojui INITIATE RESPONSE žinutę. Gavęs atsakymą iš CA kortelės savininkas nusiunčia atgal žinutę REGISTRATION FORM REQUEST, kuri reikalauja registracijos formos. CA gavęs tokia užklausa nusiunčia atgal siuntėjui registracijos formą. Gavęs formą kortelės savininkas nusiunčia CARDHOLDER CERTIFICATE REQUEST žinutę. CA gražina atgal sugeneruota kortelės savininko sertifikatą. Kortelės savininkui gavus sertifikatą šis procesas yra baigiamas. Procesas gali nutrukti ir tuo atveju jei bent viena iš šalių atsiunčia pranešimą ERROR. Šios vartotojo registracijos žinutės yra tam tikrų formatų. Pardavėjai taip pat turi atlikti vartotojo registraciją CA sistemoje. Pardavėjo kompiuteris kaip ir kortelės savininko nusiunčia INITIATE REQUEST žinutę CA sistemai. CA atsako INITIATE RESPONSE žinute. Gavęs atsakymą iš CA pardavėjas nusiunčia CA REGISTRATION FORM REQUEST žinutę taip pareikalaudamas registracijos formos Gavęs formą prekeivis nusiunčia MERCHANT CERTIFICATE REQUEST žinutę. CA vykdo užklausa, sugeneruoja ir gražina pardavėjui jo sertifikatą. Šios žinutės yra taip pat tik jom savito formato. Po sėkmingos registracijos ir apsipirkimo kortelės savininkas aktyvuoja SET protokolą. Kortelės savininkas nusiunčia pardavėjo kompiuteriui INITIATE RESPONSE žinutę. Pardavėjas atsako į šį užklausymą su INITIATE RESPONSE žinute ir savo sertifikato kopija. Gavęs žinutė kortelės savininkas siunčia parnešimą pardavėjui PURCHASE REQUEST kuris reiškia kad pirkėjas nori įsigyti pardavėjo parduodamą paslaugą arba daiktą. Pardavėjas atsako į šia žinutę PURCHASE RESPONSE žinute. Po šios operacijos yra pradedama apmokėjimo žinučių operacija. Pardavėjas pirmiausia turi autorizuoti transakciją sugeneruodamas ir skaitmeniniu parašu pažymėdamas autorizacijos užklausą. Pažymėtą autorizacijos užklausą AUTHORIZATION REQUEST pardavėjas nusiunčia apmokėjimo sąsajai. Apmokėjimo sąsaja įvykdo autorizacijos užklausą ir gražina atsakymą AUTHORIZATION RESPONSE pardavėjui su autorizacijos vykdymo rezultatais. Po užsakymo įvykdymo pardavėjas pradeda pinigų perėmimo operacijas. Pirkėjo programinė įranga siunčia skaitmeninių parašu pažymėta CAPTURE REQUEST žinute apmokėjimo sąsajai. Įvykdžius operacija apmokėjimo sąsaja gražina pirkėjui CAPTURE RESPONS atsaką su informacija apie apmokėjimo perėmimą. Šiomis skirtingomis žinutėmis yra surišami skirtingi SET protokolo objektai. 7 pav. SET objektų bendravimas žinutėmis Kaip ir minėjau SET protokolo žinutės yra skirtingų formatų. Tokia sistema yra įvesta dėl papildomos apsaugos. Naudojant skirtingų formatų žinutes sistemą galima padaryti minimaliai pažeidžiama nes ji tampa paini ir sudėtinga. SET protokole yra išskiriamos trys žinučių grupės: sertifikatų valdymo žinutės, kortelės savininko ir pardavėjo žinutės, pardavėjo ir apmokėtojo sąsajos žinutės. • Sertifikatų valdymo žinutės ◦ CardCInitReq kortelės savininko inicializavimo užklausa ◦ CardCInitRes kortelės savininko inicializavimo atsakas ◦ Me-AqCInitReq pardavėjo, kombinuotojo inicializavimo užklausa ◦ Me-AqCInitRes pardavėjo, kombinuotojo inicializavimo atsakas ◦ CertReq sertifikato reikalavimo užklausa iš sandėrio objektų (kortelės savininkas, pardavėjas, apmokėjimo sąsaja). ◦ CertRes sertifikato atsiuntimo užklausa iš CA sistemos. • Kortelės savininkų-pardavėjų žinutės ◦ PinitReq pirkimo inicializavimo užklausa ◦ PinitRes pirkimo inicializavimo atsakas ◦ PReq pirkimo užklausa ◦ Pres Apmokėjimo užklausa • Pardavėjo apmokestinimo sąsajos žinutės ◦ AuthReq autorizacijos inicializavimo užklausa ◦ AuthRes autorizacijos atsako su autorizacijos rezultatais žinutė ◦ CapReq pinigų perėmimo užklausa ◦ CapRes pinigu perėmimo atsakas su rezultatais ◦ CredReq kredito pervedimo užklausimo žinutė ◦ CredRes kredito pervedimo atsakas. Programinio kodo pavyzdys (apmokėjimo inicializacijos užklausa) 1. -- Action : Initiate Transaction 2. -- Message : Purchase Initialization Request (PInitReq) 3. -- Initiated by : Customer 4. C: RRPID: = new; 5. C: Chall_C: = new; 6. C: PInitReq: =
Šį darbą sudaro 2656 žodžiai, tikrai rasi tai, ko ieškai!
★ Klientai rekomenduoja
Šį rašto darbą rekomenduoja mūsų klientai. Ką tai reiškia?
Mūsų svetainėje pateikiama dešimtys tūkstančių skirtingų rašto darbų, kuriuos įkėlė daugybė moksleivių ir studentų su skirtingais gabumais. Būtent šis rašto darbas yra patikrintas specialistų ir rekomenduojamas kitų klientų, kurie po atsisiuntimo įvertino šį mokslo darbą teigiamai. Todėl galite būti tikri, kad šis pasirinkimas geriausias!
Norint atsisiųsti šį darbą spausk ☞ Peržiūrėti darbą mygtuką!
Mūsų mokslo darbų bazėje yra daugybė įvairių mokslo darbų, todėl tikrai atrasi sau tinkamą!
Kiti darbai
Atsisiuntei rašto darbą ir neradai jame reikalingos informacijos? Pakeisime jį kitu nemokamai.
Pirkdamas daugiau nei vieną darbą, nuo sekančių darbų gausi 25% nuolaidą.
Išsirink norimus rašto darbus ir gauk juos akimirksniu po sėkmingo apmokėjimo!