„On the Internet, Nobody Knows You‘re a Dog“ – ši 1993 m. „New Yorker" išspausdinta Peterio Steinerio komikso frazė aktuali ir šiandien. Tačiau naršydami anonimiškai, prisijungę prie interneto sistemų, norime būti atpažinti. Įprastu vartotojo vardo ir slaptažodžio reikalaujančiu tapatybės nustatymo būdu vis dažniau pasinaudoja įvairūs sukčiai ir įsibrovėliai. Naujasis „Windows CardSpace“, įtrauktas į „.NET 3.0“ rinkinį, žada permainų šioje srityje. Pažvelkime, kaip viskas turėtų veikti...
Šiandienos iššūkiai
Daugelis šių dienų internetą kamuojančių problemų yra susijusios su patikimu vartotojo tapatybės ir lankomos svetainės identifikavimu. Lankydamasis realiame banko poskyryje, vartotojas žino ir supranta, kur lankosi. Būtų labai sunku pastatyti netikrą banką ir prisivilioti į jį klientų. Virtualioje erdvėje tokiai apgavystei reikia gerokai mažiau pastangų. Vartotojai nemoka patikrinti, ar lankoma svetainė iš tiesų yra tikra. Klonuotame apgavikų tinklalapyje jie gali įvesti savo slaptažodžius, kitus slaptus duomenis, kurie vėliau gali būti panaudoti tapatybės vagystei (identity theft) ar kitai veiklai.
Kita problema yra susijusi su slaptažodžių nepatikimumu. Dažnai nesivarginame įsiminti skirtingų slaptažodžių lankydamiesi skirtingose svetainėse, atversdami programas ar el. pašto dėžutę – visur išsiverčiame su dviem trimis, o kartais ir su vienu bendru slaptažodžiu. Užsiregistravus nepatikimame interneto tinklalapyje, jo savininkas gali matyti įvestą slaptažodį ir panaudoti jį prisijungti prie svetimos el. pašto dėžutės bei kitų sistemų, kuriose yra bendras slaptažodis.
Neretai PIN kodus, slaptažodžius ir kitą slaptą informaciją galima rasti priklijuotus prie monitoriaus, užrašytus ant lapelio ir pakištus po klaviatūra, įdėtus į stalčių ar piniginę. Pasak tarptautinės tarnybos APWG (AntiPhishing Working Group, antiphishing.org), kovojančios su sukčiavimu internete, 2005 m. sukčių svetainių skaičius išaugo 1 000 proc. 2006 m. jis toliau didėja – kiekvieną mėnesį atsiranda iki 14 200 naujų pinklių patikliems vartotojams. Tai net 460 naujų sukčių tinklalapių kasdien – po vieną kas tris minutes. Dažniausiai tokie tinklalapiai bando apsimesti e. bankais ir kitomis finansų institucijomis.
Būtina bendra sistema, leidžianti paprastai identifikuoti tikrąją lankomos svetainės tapatybę ir saugiai prisistatyti pačiam vartotojui. Iki šiol matėme keletą nesėkmingų bandymų. Drauge su „Windows Vista“ ir „.NET 3.0“ rinkiniu pristatomas „Windows CardSpace“, kuriuo siekiama populiarinti visuotinę tapatybės nustatymo sistemą.
Visuotinė tapatybės nustatymo sistema
Bendrą vartotojų identifikavimo sistemą „.NET Passport“ kompanija „Microsoft“ jau bandė įdiegti. „Windows XP“ suteikia galimybę jungiantis prie vartotojo paskyros būti atpažintam ir „.NET Passport“ sistemoje. Įvairūs tinklalapiai, suderinami su šia technologija, iškart atpažįsta tokį vartotoją ir jam nereikia kaskart vesti savo prisijungimo duomenų. Toks vieno prisijungimo (single sign-on) modelis – visų tapatybės nustatymo sistemų tikslas.
„.NET Passport“, šiuo metu vadinama „Windows Live ID“, yra plačiai naudojama visose „Microsoft“ sistemose (MSN, „Hotmail“, „MSN Spaces“, „Soapbox“, „MSN Messenger“ ir t. t.). Tačiau ji neprigijo kitose didelėse interneto svetainėse („Amazon“, „Ebay“, „Paypal“). Vartotojai nenori, kad „Microsoft“ atliktų tarpininko vaidmenį ten, kur jai nelabai derėtų būti. Prie nesėkmės prisidėjo ir nemažas mokestis už „.NET Passport“ integravimą, licencijavimo sąlygos bei ribotas suderinamumas su kitomis platformomis („Mac“, „Linux“).
Pasimokęs iš praeities klaidų K. Cameronas su grupele patarėjų entuziastų savo interneto puslapyje www.identityblog.com sukūrė septynias pagrindines taisykles (įstatymus), kurias turi atitikti moderni visuotinė tapatybės nustatymo sistema:
- Vartotojas privalo visiškai kontroliuoti tinklalapiams pateikiamus duomenis. Siunčiant informaciją naujam tinklalapiui, turėtų būti paprasta nurodyti, ką galima pateikti ir ko ne.
- Sistemoms reikia suteikti tik tiek duomenų apie vartotoją, kiek yra būtina. Geriausiu atveju visi duomenys turėtų būti nurodomi kiekvieną kartą jungiantis ir nesaugomi tinklalapio duomenų bazėse.
- Perduodant vartotojo duomenis, turėtų dalyvauti tik tos šalys, kurios yra būtinos.
- Neturėtų būti įmanoma lengvai susekti to paties vartotojo skirtingose sistemose ir taip susieti jo duomenų, jei jis pats to nepageidauja.
- Tai turėtų būti su įvairiais vartotojo identifikavimo (prisijungimo) būdais suderinama sistema, veikianti specialiu atviruoju protokolu bet kurioje kompiuterio platformoje. Vartotojo tapatybės dokumentą išdavusi trečioji šalis privalo turėti galimybę tą tapatybę patvirtinti. Tokiu būdu patikimai prisijungti prie įvairiausių tinklalapių būtų galima naudoti „Windows Live ID“, „Google“, „Amazon“, „Ebay“, „Paypal“, „Visa“, „MASTERCARD“ ar net valstybės išduotą elektroninį tapatybės dokumentą.
- Vartotojas turi būti sistemos dalis ir pats gebėti patikrinti, ar lankomas tinklalapis nėra sukčių.
- Vartotojas privalo turėti galimybę valdyti keletą savo tapatybių, kurias nurodo skirtinguose tinklalapiuose. Tokiu būdu lieka galimybė būti atpažintam, bet sąlygiškai anonimiškam.
„Windows CardSpace“
„Microsoft“ jau pradeda įgyvendinti šiomis taisyklėmis pagrįstos visuotinės tapatybės nustatymo sistemos viziją. K. Camerono teigimu, tai gali būti didysis sprogimas (big bang), visiems laikams pakeisiantis prisistatymo interneto tinklalapiuose būdą.
„Windows CardSpace“ – metasistema, siejanti grupę vartotojo tapatybę galinčių patvirtinti šaltinių. Pavyzdžiui, valstybės išduotas elektroninis vairuotojo pažymėjimas patvirtina vartotojo vardą, amžių, vairuotojo kategoriją. Bankas gali informuoti apie vartotojo sąskaitos numerį, klubai – apie slapyvardį, pomėgius, reputaciją.
Visos šios skirtingos vartotojo tapatybės vaizduojamos kortelėmis, panašiomis į kreditines, nuolaidų ar klubų korteles mūsų piniginėse. Tai paprastas, suprantamas ir gerai pažįstamas modelis. Norėdami patekti į saugomą teritoriją, neretai turime parodyti pažymėjimą, leidimą ar asmens dokumentą, patvirtinantį tapatybę arba įgaliojimus.
Atsiskaitydami už paslaugas, pateikiame kreditinę kortelę ir įvedame PIN kodą, patvirtinantį, jog kortelė yra mūsų.
„Windows CardSpace“ šį modelį perkelia į internetą. Nuo šiol apsilankius „CardSpace“ technologijos tinklalapiuose reikės tik parodyti kortelę – jokių slaptažodžių!
Kaip tai veikia
Kortelės pateikiamos specialiuose .crd failuose, pasirašytuose skaitmeniniu parašu. Galima sukurti ir paties pasirašytą (self-signed, self-asserted) kortelę, kuri išduodama tame pačiame kompiuteryje veikiančios tapatybių išdavimo tarnybos.
Kortelėje yra tik informacija apie ją išdavusios šalies serverį, prisijungimo prie jo algoritmą ir duomenis, kuriuos gali patvirtinti (laiduoti) ta šalis. Visi duomenys (vardas, pavardė, kortelių numeriai, asmens kodas ir pan.) saugomi tik kortelę išdavusios šalies serveriuose. Jei kortelę yra sukūręs pats vartotojas, jo įvesta informacija saugoma tame pačiame kompiuteryje.
Įkeliant naują kortelę, pateikiama pagrindinė informacija apie jos išdavėją. Ekrane matomas elektroninę tapatybės kortelę išdavusios bendrovės pavadinimas, adresas, logotipas (jei pasirašyti naudojamas naujo tipo EV SSL sertifikatas) ir tų duomenų patikimumą užtikrinančios organizacijos (pvz., „Verisign“) ženklas.
Šiuo paprastu, tačiau informatyviu pranešimu siekiama apsaugoti vartotojus nuo neaiškios kilmės kortelių importavimo.
Toks pat dialogo langas atsiveria pirmą kartą apsilankius svetainėje, reikalaujančioje tapatybės kortelės. Vartotojui įsitikinus, kad svetainė nėra apgavikų, pateikiamas visų kortelių sąrašas. Lankomas tinklalapis „Windows CardSpace“ sistemai nurodo, kokie duomenys jam reikalingi, tad paryškinamos tik tos kortelės, kurios gali suteikti reikiamą informaciją. Pažymėjus kortelę, „CardSpace“ prisijungia prie pasirinktą tapatybę išdavusios organizacijos serverio, prisistato jam ir paprašo reikiamo formato pažymos (security token). Tokioje elektroniniu būdu pasirašytoje pažymoje yra visi lankomo tinklalapio prašyti duomenys.
Pažymos formatas „Windows CardSpace“ nėra svarbus tol, kol abi šalys (tapatybės išdavėjas ir lankoma svetainė) jį supranta. Tai gali būti SAML (Security Assertion Markup Language), „Gerberos“, „X.509“ ar net koks nors naujoviškas konfidencialių duomenų perdavimo formatas.
Drauge su pažyma siunčiama „CardSpace“ suprantama informacija, rodanti, kokie duomenys bus perduodami lankomai svetainei. Siunčiant pažymą pirmą kartą, siūloma peržiūrėti duomenis, kuriuos gaus tinklalapis. Apsilankius svetainėje kitąkart, jokie įspėjimai nerodomi – automatiškai pažymima paskutinį kartą tame tinklalapyje naudota kortelė. Pakanka paspausti mygtuką „send“. Visi duomenų perdavimo kanalai šifruojami SSL būdu, tad informacija perduodama visiškai saugiai.
Drauge su vartotojo duomenimis tinklalapiui siunčiamas jo identifikacijos kodas. Tai ilga ir unikali atsitiktinių simbolių seka. Šis kodas sukuriamas pirmą kartą jungiantis prie svetainės ir vėliau nekinta. Tai paprasčiausias būdas identifikuoti lankytoją, nes kiti siunčiami duomenys gali kisti, sutapti su kitų vartotojų ar būti lengvai atspėjami.
Kortelės saugomos šifruotame faile, o rinkdamasis siunčiamą kortelę vartotojas nepastebimai perkeliamas į atskirą saugų darbastalį (secure desktop), tad jokia sistemoje veikianti programa negali paveikti šio mechanizmo. Korteles galima eksportuoti į slaptažodžiu apsaugotą .crds failą, perkelti į nešiojamąjį ar kitus kompiuterius. Sukūrus vienodas korteles kitoje sistemoje, jos būtų bevertės, nes skirtųsi automatiškai sudaryti unikalūs identifikacijos kodai. Tad vienintelis būdas naudoti tas pačias korteles keliuose kompiuteriuose – importuoti jas iš vieno į kitą.
Tačiau tai nėra idealus sprendimas vartotojams, norintiems naudoti korteles viešuose kompiuteriuose. Kūrėjai žada, jog ši problema bus išspręsta antrojoje „CardSpace“ sistemos versijoje. Taip pat svarstomos mobiliojo telefono panaudojimo galimybės ir daugelis kitų variantų. Skirtingiems vartotojams tame pačiame kompiuteryje skirtos atskiros „CardSpace“ sritys, jie vienas kito kortelių nemato, o besinaudojantys ta pačia vartotojo paskyra (account) gali apsaugoti savo korteles PIN kodais.
„Windows CardSpace“ – ambicingas projektas. Jei ši sistema prigis, slaptažodžių reikės vis rečiau. „Windows CardSpace“ jau subūrė draugišką būrį entuziastų, kurie sutarė dėl šios problemos sprendimo principų. Šiuo metu „CardSpace“ veikia „Windows Vista“ ir „Windows XP“ sistemose su „Interet Explorer 7“ naršykle. Tačiau „Microsoft“ skatina naudoti atviruosius standartus ir kurti visiškai suderinamus sprendimus kitose naršyklėse bei platformose.
Tokią atvirą sistemą remia „Firefox“, „Opera“, „Apple“, atvirojo kodo stovykla („OpenID“, „OSIS“, „SAML“, „Liberty“...) ir didžiųjų interneto portalų savininkai (ypač amazon.com). Sausio pabaigoje pasirodžius naujajai „Windows Vista“ sistemai, šios technologijos svetainių turėtų padaugėti. „Microsoft“ prognozuoja, kad po trejų ketverių metų „CardSpace“ taps tapatybės nustatymo internete standartu.