You are here: TUTWiki>Tietoturva/Tutkielmat>TyoLuettelo?>2008-13 (revision 2)

Jari Puustinen

Visuaaliset salasanat

Johdanto

Käsittelen harjoitustyössäni visuaalisia salasanoja, mitä ne ovat ja mihin niiden käyttö perustuu. Salasanoihin ja niiden muistamiseen liittyen käyn lyhyesti läpi ihmisen muistiin liittyviä rakenteita ja toimintaa. Kuten tekstistä selviää, on visuaalisista salasanoista olemassa useita erilaisia variaatioita, ja niistä esittelen muutaman toisistaan poikkeavan. Perinteisiin numeroita ja kirjaimia sisältäviin salasanoihin verrattuna esittelemilläni järjestelmillä on monia hyötyjä, mutta niihin liittyy myös tiettyjä ongelmia.

Tausta ja teoria

Käyttäjien tunnistamisessa käytetyin menetelmä ovat erilaiset salasanat. Tyypillisesti salasana on kirjaimia ja numeroita sisältävä merkkijono, eli ne ovat alfanumeerisia. Tietoturvan kannalta salasanojen tulisi olla tarpeeksi monimutkaisia, jotta niiden arvaaminen ja murtaminen olisi hankalaa.

Ihmisen työmuistin kapasiteetti luo kuitenkin pitkien ja monimutkaisten salasanojen muistamiselle oman rajoitteensa. Keskimäärin pystymme pitämään mielessämme vain tietyn määrän erillisiä asioita eli mieltämisyksiköitä, kuten numeroita, kirjaimia tai sanoja. Psykologisissa tutkimuksissa on todettu, että muistin kapasiteetti riippuu käytetystä mieltämisyksiköstä, mutta on keskimäärin 5-7 yksikön kokoinen. [1]

Tämän rajoitteen vuoksi ihmisillä on taipumus luoda itselleen joko näennäisesti satunnaisia tai jopa aivan normaaleja sanoja salasanoiksi. Tämä on yksi alfanumeeristen salasanojen puute, sillä se mahdollistaa sanakirjahyökkäykset. Tällaisten hyökkäysten toteuttamiseksi on olemassa useita työkaluja jotka käyvät automaattisesti läpi sanakirjoista löytyvät sanat oikean salasanan löytämiseksi. [2]

Visuaaliset salasanat perustuvat ihmisen kykyyn muistaa kuvallisesti esitettyjä käsitteitä paremmin kuin sanallisesti esitettyjä. Kaksoiskoodausteorian (dual-coding theory) mukaan aivot käsittelevät visuaalisen ja sanallisen informaation eri tavoin. Testeissä ihmiset ovat pystyneet palauttamaan muististaan paremmin kuvia kuin sanoja, kun niiden järjestyksellä ei ole ollut merkitystä. [3]

Käytännön sovellukset

Visuaalisten salasanojen luokittelu

Salasanat voidaan jakaa kolmeen luokkaan [4]:

  • Tunnistamiseen perustuvat järjestelmät,
    joissa käyttäjä valitsee kuvia, symboleja tai vastaavia suuresta kokoelmasta. Autentikoituakseen käyttäjän on tunnistettava samat valinnat useasta annetusta vaihtoehdosta.

  • Vain muistamiseen perustuvat järjestelmät,
    joissa käyttäjän on luotava salasanansa ilman minkäänlaisia vihjeitä. Tähän ryhmään kuuluvat myös perinteiset alfanumeeriset salasanat.

  • Avustettu mieleen palauttaminen (Cued Recall),
    jossa järjestelmä tarjoaa vihjeitä tai asiayhteyden joka helpottaa salasanan muistamista.

Tunnistamiseen perustuvat järjestelmät

Passfaces

Passfaces on patentoitu autentikointitekniikka, jossa alfanumeeristen salasanojen sijaan käytetään kasvokuvia. Käyttäjälle näytetään tietty määrä kuvia ihmisten kasvoista, joista hän valitsee aiemmin sovitun kuvan. Kasvokuvien käyttö perustuu ihmisen luontaiseen kykyyn tunnistaa kasvot paremmin kuin muut objektit. Muissa salasanamenetelmissä vaaditaan ihmisen kykyä muistaa objekteja, mutta kasvot aivot tunnistavat ilman, että niitä tarvitsee erikseen muistaa. Tämä kyky on universaali, eikä ole millään tavalla sidottu kulttuuriin, koulutukseen tai älykkyyteen. Passfaces ei vaadi myöskään käyttäjää identifioimaan kenellä kasvot kuuluvat, vaan ainoastaan tunnistamaan tutut kasvot muiden joukosta. [5]

Tyypillisesti salasanan luomiseen käytetään 3-7 kasvokuvaa (Passface). Niistä jokainen esitetään autentikoinnin yhteydessä ruudukossa, jossa oikean kasvokuvan seurana on useampi harhautuskuva (decoy). Tyypillisesti ruudukon koko on 3 x 3 kuvaa joista yksi on oikea kasvokuva ja muut 8 harhautuskuvia. Käytännössä ruudukko voi olla kuinka suuri tahansa ja sisältää useampia Passfaceja, mutta tällaiset tilanteet saattavat tehdä käytöstä vaikeaa. 3 x 3 -ruudukko on lisäksi helppo integroida järjestelmiin joissa käytetään numeronäppäimistöä (1 – 9, kuten esimerkiksi pankkiautomaateissa). Kun käytössä on 5 Passfacea, joista jokainen valitaan 3 x 3 -ruudukosta, on mahdollisia kombinaatioita yli 59 000 (9^5), kun esimerkiksi 4-numeroisessa PIN-koodissa kombinaatioita on 10 000 (10^4). [5]

Passfaces-järjestelmällä on useita etuja perinteisiin salasanoihin nähden. Niitä ei pysty kirjoittamaan paperille muistiin tai kopioimaan, eikä siten antamaan muille. Oikean vastauksen sanallista kuvaamista vaikeutetaan myös sillä, että kaikki samassa ruudukossa olevat kasvokuvat edustavat samaa sukupuolta ja ovat muiltakin ominaisuuksiltaan hyvin samanlaisia. Lisäksi oikeiden kasvokuvien arvaaminen on hyvin hankalaa, eikä järjestelmän käyttäminen edellytä käyttäjältä muistamista, vaan ainoastaan luontaista kognitiivista tunnistamista. Tarvittaessa lisäturvaa saadaan esittämällä kasvokuvat harmaasävyisinä. Tämä ei vaikuta kasvojen tunnistamiseen lainkaan, mutta kuvien kuvaileminen sanallisesti vaikeutuu entisestään. Lisäksi ruudukoita voidaan näyttää hyvin lyhyen aikaa, jolla estetään olkapään yli kurkkivia selvittämästä oikeaa vastausta. Harjoittelulla voidaan tarvittavaa näyttöaikaa lyhentää jopa puoleen sekuntiin. [5]

Järjestelmässä käytetään tiettyjä menetelmiä, joilla oikeiden kasvokuvien tunnistamista helpotetaan. Käytössä on esimerkiksi vain hymyilevien ihmisten kuvia, koska tällaisten kasvojen tunnistamisen on todettu olevan helpompaa. Tunnistamisen helpottamiseksi myös kuvien tausta ja valaistus pysyy muuttumattomana. [5]

PassFaces?-järjestelmästä löytyy demo verkosta, osoitteesta http://www.passfaces.com/enterprise/demo/try_passfaces.htm.

Vain muistamiseen perustuvat järjestelmät

Draw a Secret

Draw a Secret (DAS) on graafinen salasanajärjestelmä, joka on täysin kirjaimista riippumaton, eikä näin olleen ole rajoittunut mihinkään aakkostoon tai kieleen, toisin kuin alfanumeeriset salasanat. DAS-järjestelmässä käyttäjän salasanana on N x N -kokoiselle ruudukolle vapaasti piirretty piirros. Jokaisella ruudukon ruudulla on diskreetit koordinaatit (x,y). Piirroksesta koodataan järjestyksessä jokaisen ruudun koordinaatit, joissa piirtämisen yhteydessä käydään, sekä lisäksi jokainen kynän nosto (pen-up). Kahden salaisuuden katsotaan olevan identtisiä, jos niiden koodaukset ovat identtisiä. Näin olleen piirrosta ei tarvitse toistaa täysin samanlaisena. [7]

DAS-järjestelmässä salasanan pituus on piirroksen viivojen yhteispituus. Viiva (stroke) on sarja ruutuja, jota rajoittaa molemmista päistä kynän nosto. Esimerkiksi sarja kynän nosto, (2,4), (3,4), (4,4), kynän nosto määrittelee viivan, joka käy ruudut (2,4), (3,4) ja (4,4). Viivan pituus on sen sisältämien ruutujen summa, esimerkin tapauksessa siis 3. [7]

Salasanan pituuden lisäksi viivojen lukumäärä (stroke count) määrää DAS-salasanan vahvuuden. Esimerkiksi salasana-avaruus on noin 2^57, kun salasanan pituus (eli viivojen yhteispituus) on 20 ja viivojen lukumäärä on 4 tai alle, ruudukon koon ollessa 5 x 5. Tämä on suurempi kuin salasana-avaruus joka saadaan aikaan tulostettavista ASCII-merkeistä (yhteensä 94 kappaletta [6]) muodostetulla kahdeksan merkin mittaisella salasanalla. [7]

Background Draw a Secret

DAS-järjestelmän ongelmana on se, että käyttäjät saattavat valita heikkoja graafisia salasanoja, eli piirtää liian yksikertaisia piirroksia. Tällaiset ovat haavoittuvia graafisia ”sanakirjoja” käyttäville hyökkäyksille. Yhtenä keinona DAS-salasanan vahventamiseksi on käyttää 'ruudukon valinta' -menetelmää (grid selection), jossa käyttäjä valitsee ensin N x N -kokoisesta ruudukosta tietyn alueen, jolle sitten piirtää kuvionsa. Toisena keinona voidaan käyttää taustakuvia, joista käyttäjä valitsee yhden jolle sitten piirtää kuvion. Tämä järjestelmä on nimeltään Background Draw a Secret (BDAS). [7]

BDAS-järjestelmässä hyvä taustakuva on sellainen jossa on runsaasti yksityiskohtia ja jonka sisältö on ymmärrettävä. Vähäinen yksityiskohtien määrä ohjaa käyttäjät helposti muodostamaan piirroksensa jäljellä olevien yksityiskohtien ympärille. Vaikeasti ymmärrettävä sisältö aiheuttaa helposti saman ongelman kuin mikä DAS-järjestelmässä on; eli käyttäjät tekevät herkästi piirroksestaan symmetrisen ja näin helpommin arvattavan. Optimaalisessa tapauksessa kuvassa on useita huomion kiinnittäviä yksityiskohtia, jolloin jokaisen käyttäjän piirros sijaitsee eri kohdassa ja on erilainen. Tällöin taustakuvasta ei pystytä ennustamaan millä tavalla se vaikuttaa käyttäjiin. Taustakuvan käytöllä pyritään myös siihen, että käyttäjä muistaisi salaisuutensa paremmin. Tältä osin BDAS käyttää avustettua mieleen palauttamista, eikä ole pelkkä muistamiseen perustuva järjestelmä. [7]

Avustettu mieleen palauttaminen (Cued Recall)

PassPoints?

PassPoints?-järjestelmässä salasana koostuu sarjasta klikkauspisteitä (click points), jotka käyttäjä valitsee kuvasta. Itse kuva ei ole millään tavalla salainen, vaan sen ainoa tehtävä on avustaa käyttäjää palauttamaan mieleen klikkauspisteet. Kirjautuakseen käyttäjän on valittava oikeassa järjestyksessä samat pisteet kuin aiemmin. Järjestelmä sallii tietyn virhemarginaalin, jonka sisällä klikkauksen on oltava tullakseen hyväksytyksi. Tämä sen vuoksi, että täysin samojen kuvapikselien valitseminen on lähes mahdotonta. [4]

Virhemarginaalina käytetään yleensä r-säteistä ympyrää (esimerkiksi r = 10 pikseliä). Klikkauspisteet kvantisoidaan käyttämällä kolmea ruudukkoa, joista jokaisen ruudun läpimitta on 6r. Nämä ruudukot sijoitetaan lomittain niin, että yhden ruudukon vaaka- ja pystysuorasta viivasta on 2r pituinen matka seuraavan ruudukon vastaavan suuntaiseen viivaan. Yhden ruudukon käytöllä eteen voisi helposti tulla tilanne, jossa käyttäjä on klikannut alunperin lähelle ruudukon pysty- tai poikkiviivaa ja pieni heitto uudelleenklikkauksen yhteydessä voisi tuottaa virheellisen salasanan. Kuvassa 3.1 näkyy että kolmen ruudukon käytöllä jokainen klikkaus virhemarginaaleineen on aina kahden ruudukon sisällä ja leikkaa vain yhtä ruudukkoa. [4]

ruudukkokuva.gif
Kuva 3.1: Kolme lomitettua ruudukkoa (R1, R2 ja R3), jokaisen läpimitta 6r. Piste P on ruudukoiden R1 ja R2 sisällä, piste Q on ruudukoiden R1 ja R3 sisällä.

Sekä PassPoints-, että BDAS -järjestelmät käyttävät kuvia helpottamaan käyttäjää muistamaan oikean salasanan. Erona on se, että PassPoints'ssa käyttäjän tarvitsee muistaa vain tietyt kuvapisteet, kun taas BDAS:ssä käyttäjän täytyy muodostaa kuvan päälle kuvio [7].

Suurin haaste PassPoints-järjestelmässä on sopivan kuvan valinta. Periaatteessa mikä tahansa kuva kelpaa, mutta parhaita ovat luonnolliset paljon yksityiskohtia sisältävät kuvat. Kuvien luonnollisuus auttaa monimutkaisten salasanojen muistamisessa. Yksityiskohtien tulisi olla sellaisia, että ne kiinnittävät käyttäjien huomion ja niitä tulisi olla paljon, jotta klikkauspisteet olisivat mahdollisimman ennalta-arvaamattomia. Kontrasti on tärkein yksittäinen tekijä, joka kiinnittää käyttäjien huomion. Muita keinoja ovat esimerkiksi yksityiskohtien koko, tietyt värit (kuten punainen) ja ihmishahmot. Ihmishahmoissa huomio kiinnittyy varsinkin silmiin, suuhun ja käsiin. [4]

Kuvan valinnan lisäksi haasteena ovat tilanteet jossa käyttäjän salasanaa yritetään urkkia kurkkimalla olkapään yli. Salasanan paljastumista voidaan ehkäistä vaatimalla käyttäjää klikkaamaan myös epäolennaisia pisteitä. Esimerkiksi käyttäjää pyydetään klikkaamaan kymmentä pistettä kuvassa, kun salasana itse on 5 klikkausta. Autentikointiin riittää antaa kaikki 5 klikkausta oikeassa järjestyksessä, mutta niiden välissä voi olla 0 tai useampi harhautusklikkaus. PassPoints-järjestelmästä löytyy esimerkki verkosta (http://labs.mininova.org/passclicks/), josta selviää hyvin myös klikkauspisteiden ennalta-arvattavuus. [8]

Ongelmat

Visuaalisissa salasanoissa ongelmat ovat pitkälle samoja kuin alfanumeerisissa salasanoissa; olkapään yli kurkkiminen, sekä käyttäjien taipumus luoda liian helppoja salasanoja. Osassa järjestelmiä näihin ongelmiin pystytään kuitenkin vaikuttamaan paljon paremmin, kuin alfanumeerisia salasanoja käytettäessä. Esimerkiksi on olemassa olkapään yli kurkkimiselle vastustuskykyisiä menetelmiä [9]. Myös hyökkäyskeinot järjestelmiä vastaan ovat samanlaisia, oli käytettävä järjestelmä visuaalinen tai alfanumeerinen. Hyökkäys voidaan toteuttaa käyttämällä (kuva)sanakirjoja tai pelkkää raakaa voimaa, eikä lukemassani aineistossa esiintynyt mitään uusia menetelmiä niiden torjumiseksi.

Yhteenveto

Käyttämieni lähteiden perusteella visuaalisia salasanoja ei ole tutkittu vielä suurilla käyttäjämäärillä, mutta jo tehdyt tutkimukset osoittavat ainakin osin selviä etuja perinteisiin alfanumeerisiin salasanoihin nähden. Visuaaliset salasanat perustuvat psykologisiin tutkimuksiin ja malleihin. Lisäksi niissä pyritään käyttämään hyväksi ihmisen luontaiseen kykyyn tunnistaa kuvia, objekteja ja kasvoja.

Mikään mainituista järjestelmistä ei ole laajemmassa käytössä, vaikka potentiaalia niissä löytyy. Yhtenä esimerkkinä mahdollisista käyttökohteista voisi olla PDA-laitteet, joissa visuaaliset salasanat ovat ainakin miellyttävämpi autentikointitapa, kuin salasanan kirjoittaminen.

Omasta mielestäni mielenkiintoisin ja lupaavin järjestelmä on PassFaces. Sen käyttö tuntuu luontevimmalta ja tehokkaimmalta. Sen sijaan PassPoints-järjestelmässä minua häiritsi se, kuinka selvästi pystytään päättelemään mitä kohtia käyttäjät kuvissa todennäköisimmin klikkaavat.

Lähteet

Print version |  PDF  | History: r3 < r2 < r1 | 
Topic revision: r2 - 05 Oct 2009 - 21:57:04 - NiroAAhman?
 

TUTWiki

Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TUTWiki? Send feedback