Miksi salasana on yhä tärkeä

Salasana on edelleen yleisin tapa todistaa, kuka olet, kun kirjaudut verkkopalveluun. Vaikka rinnalle on tullut sormenjälki-, kasvo- ja avaintunnistus, salasana on lähes aina taustalla, ja sen laatu ratkaisee, kuinka helppoa tili on kaapata. Heikko salasana on kuin lukko, jonka avain on piilotettu oven viereen. Vahva salasana sen sijaan nostaa murtautumisen kynnyksen niin korkealle, että useimmat hyökkääjät luovuttavat ja siirtyvät helpompaan kohteeseen.

Ongelma ei ole pelkästään yksittäisen salasanan vahvuus vaan myös tapa, jolla ihmiset käyttävät salasanoja. Sama salasana kymmenessä palvelussa tarkoittaa, että yhden palvelun vuoto vaarantaa ne kaikki. Helposti muistettava salasana on usein myös helposti arvattava. Näiden ristiriitojen ratkaiseminen on salasanaturvallisuuden ydin, ja siihen on olemassa selkeät, käytännölliset keinot.

Pituus voittaa monimutkaisuuden

Pitkään uskottiin, että hyvä salasana on lyhyt mutta täynnä erikoismerkkejä, isoja kirjaimia ja numeroita. Tämä neuvo johti salasanoihin, jotka olivat ihmiselle vaikeita muistaa mutta koneelle suhteellisen helppoja murtaa. Nykyinen ymmärrys on toinen: pituus on tärkein yksittäinen tekijä salasanan vahvuudessa.

Syy on matemaattinen. Jokainen lisätty merkki kertoo arvattavien yhdistelmien määrän moninkertaiseksi. Hyökkääjä, joka kokeilee salasanoja automaattisesti, törmää nopeasti siihen, että pitkän salasanan läpikäyminen kestää epäkäytännöllisen kauan, vaikka salasana koostuisi pelkistä pienistä kirjaimista. Tästä syystä useista tavallisista sanoista koottu pitkä tunnuslause voi olla sekä vahvempi että helpompi muistaa kuin lyhyt mutta sekava merkkijono.

Hyvän tunnuslauseen periaatteet

Toimiva tunnuslause on pitkä, vähintään noin parinkymmenen merkin mittainen, eikä se perustu yleiseen sanontaan, sitaattiin tai laulun sanoihin, jotka hyökkääjä voi löytää valmiista listoista. Satunnaisesti valitut, toisiinsa liittymättömät sanat toimivat parhaiten, koska niitä on vaikea arvata mutta helppo palauttaa mieleen. Vältä henkilökohtaisia tietoja kuten nimiä, syntymäaikoja tai lemmikin nimeä, sillä ne ovat usein julkisesti saatavilla ja siksi hyökkääjän ulottuvilla.

Merkkien monimutkaisuus ei ole haitaksi, mutta se ei korvaa pituutta. Jos palvelu vaatii numeron ja erikoismerkin, lisää ne, mutta älä luota siihen, että ne tekevät lyhyestä salasanasta turvallisen. Pituus on perusta, ja monimutkaisuus on lisämauste.

Miksi sama salasana ei kelpaa moneen paikkaan

Vaikka salasanasi olisi kuinka vahva, sen käyttäminen useassa palvelussa tekee siitä haavoittuvan. Kun yksi palvelu joutuu tietomurron kohteeksi ja salasanasi vuotaa, hyökkääjät kokeilevat samaa tunnus- ja salasanaparia automaattisesti muihin palveluihin. Tätä kutsutaan tunnusten täyttöhyökkäykseksi, ja se on yksi yleisimmistä tilien kaappaustavoista. Aihetta käsitellään tarkemmin tietomurtoja koskevassa artikkelissa.

Ratkaisu on yksinkertainen periaatteessa mutta vaativa käytännössä: jokaisella palvelulla tulee olla oma yksilöllinen salasana. Näin yhden palvelun vuoto ei vaaranna muita. Kukaan ei kuitenkaan pysty muistamaan kymmeniä pitkiä, satunnaisia salasanoja ulkoa, ja juuri tähän ongelmaan on olemassa työkalu.

Salasanojen hallintaohjelma

Salasanojen hallintaohjelma on sovellus, joka luo, tallentaa ja täyttää salasanat puolestasi. Sinun tarvitsee muistaa vain yksi vahva pääsalasana, joka avaa hallintaohjelman. Ohjelma huolehtii lopusta: se luo jokaiseen palveluun pitkän, satunnaisen ja yksilöllisen salasanan, tallentaa sen salatusti ja täyttää sen automaattisesti, kun kirjaudut sisään.

Hallintaohjelman käyttö ratkaisee monta ongelmaa kerralla. Et enää joudu valitsemaan helposti muistettavan ja turvallisen salasanan väliltä, koska sinun ei tarvitse muistaa niitä. Et joudu kierrättämään salasanoja, koska ohjelma luo jokaiseen palveluun uuden. Lisäksi monet hallintaohjelmat varoittavat, jos jokin tallennettu salasana on heikko, kierrätetty tai löytyy tunnetuista vuodoista. Pääsalasanan tulee olla erityisen vahva, koska se suojaa kaikkia muita, ja sen rinnalle kannattaa kytkeä kaksivaiheinen tunnistautuminen.

Miten palvelut suojaavat salasanasi

Hyvin suunniteltu palvelu ei koskaan tallenna salasanaasi sellaisenaan. Jos se tekisi niin, tietomurto paljastaisi kaikkien käyttäjien salasanat suoraan luettavassa muodossa. Sen sijaan palvelu tallentaa salasanasta tiivisteen, jota kutsutaan myös tiivistearvoksi tai hashiksi.

Tiivistäminen

Tiivistefunktio muuntaa salasanan kiinteänmittaiseksi merkkijonoksi tavalla, jota ei voi kääntää takaisin. Samasta salasanasta syntyy aina sama tiiviste, mutta tiivisteestä ei voi laskennallisesti palauttaa alkuperäistä salasanaa. Kun kirjaudut sisään, palvelu tiivistää syöttämäsi salasanan ja vertaa tulosta tallennettuun tiivisteeseen. Jos ne täsmäävät, salasana oli oikea. Palvelun ei siis koskaan tarvitse säilyttää itse salasanaa. Tiivistefunktioiden toimintaa selitetään tarkemmin salausta käsittelevässä osiossa.

Suolaaminen

Pelkkä tiivistäminen ei yksin riitä, koska hyökkääjät voivat valmistella etukäteen taulukoita yleisten salasanojen tiivisteistä ja verrata niitä vuotaneisiin tiivisteisiin. Tähän vastataan suolaamisella. Suola on jokaiselle käyttäjälle satunnaisesti luotu lisäarvo, joka yhdistetään salasanaan ennen tiivistämistä. Näin samasta salasanasta syntyy eri käyttäjillä eri tiiviste, ja valmiiksi lasketut taulukot menettävät tehonsa. Hyökkääjän on murrettava jokainen tiiviste erikseen, mikä hidastaa työtä merkittävästi.

Hyvät palvelut käyttävät lisäksi tarkoituksella hitaita tiivistefunktioita, jotka on suunniteltu salasanoja varten. Hitaus ei haittaa yksittäistä kirjautumista, mutta se tekee miljoonien arvausten kokeilemisesta epäkäytännöllisen raskasta. Yhdessä suolaus ja hidas tiivistäminen tekevät vuotaneista salasanoista huomattavasti vaikeampia hyödyntää.

Kaksivaiheinen tunnistautuminen

Vahvinkaan salasanan voi joskus saada selville, esimerkiksi tietojenkalastelun kautta. Kaksivaiheinen tunnistautuminen lisää salasanan rinnalle toisen, riippumattoman vaiheen. Tyypillisesti tämä on sovelluksen luoma kertakoodi, joka vaihtuu muutaman kymmenen sekunnin välein, tai fyysinen turva-avain, jonka kytket laitteeseen. Vaikka salasanasi vuotaisi, hyökkääjä ei pääse sisään ilman tätä toista tekijää.

Kaikki kaksivaiheisen tunnistautumisen muodot eivät ole yhtä vahvoja. Tekstiviestillä lähetetty koodi on parempi kuin ei mitään, mutta se on alttiimpi väärinkäytöksille kuin sovelluspohjainen koodi tai fyysinen avain. Suosi siksi tunnistussovellusta tai turva-avainta, kun palvelu sellaista tukee. Ota kaksivaiheinen tunnistautuminen käyttöön ainakin sähköpostissa, koska sähköposti toimii avaimena moneen muuhun palveluun, sekä pankki- ja maksupalveluissa.

Miten salasanoja yritetään murtaa

Ymmärtääksesi, miksi pituus ja yksilöllisyys ovat tärkeitä, kannattaa tietää, millä keinoin salasanoja käytännössä yritetään selvittää. Hyökkääjät eivät yleensä istu kokeilemassa salasanoja käsin, vaan he käyttävät automaattisia työkaluja, jotka kokeilevat valtavia määriä vaihtoehtoja nopeasti. Eri menetelmät soveltuvat eri tilanteisiin.

Yksinkertaisin tapa on kokeilla järjestelmällisesti kaikkia mahdollisia merkkiyhdistelmiä. Tämä toimii lyhyitä salasanoja vastaan, mutta muuttuu nopeasti mahdottomaksi salasanan pidetessä, koska vaihtoehtojen määrä kasvaa räjähdysmäisesti. Juuri tämä on syy siihen, miksi pituus on niin tehokas suoja. Toinen yleinen menetelmä on sanakirjahyökkäys, jossa kokeillaan yleisiä sanoja, nimiä, sanontoja ja aiemmin vuotaneita salasanoja sekä niiden tavallisia muunnelmia. Koska ihmiset valitsevat usein samankaltaisia salasanoja, tämä menetelmä löytää heikon salasanan paljon nopeammin kuin kaikkien yhdistelmien läpikäynti.

Vuotaneet tiivisteet murretaan tyypillisesti juuri näillä menetelmillä. Hyökkääjä laskee arvauksilleen tiivisteet ja vertaa niitä vuotaneisiin. Jos palvelu oli suolannut salasanat ja käyttänyt tarkoituksella hidasta tiivistefunktiota, jokainen arvaus vie enemmän aikaa ja valmiiksi lasketut taulukot eivät auta, jolloin murtaminen hidastuu olennaisesti. Jos taas salasanat oli suojattu heikosti, murtaminen on nopeaa. Tästä syystä sekä oma salasanavalintasi että palvelun suojauskäytännöt vaikuttavat lopputulokseen.

Salasanattomat menetelmät

Salasanojen rinnalle on kehitetty menetelmiä, joissa salasanaa ei tarvita lainkaan. Yksi yleistyvä lähestymistapa perustuu laitteeseen tallennettuun salaiseen avaimeen, joka todistaa henkilöllisyytesi ilman, että mitään salasanaa lähetetään palvelulle. Kirjautuessasi laite allekirjoittaa palvelun lähettämän haasteen avaimellaan, ja palvelu varmistaa allekirjoituksen. Itse avain ei poistu laitteelta, joten sitä ei voi varastaa vuodosta eikä urkkia huijaussivulla.

Tällaisten menetelmien etu on, että ne kestävät hyvin tietojenkalastelua. Koska todistus on sidottu oikeaan verkkotunnukseen, väärennetty sivu ei pysty huijaamaan laitetta allekirjoittamaan väärälle palvelulle. Ne myös poistavat salasanan uudelleenkäytön ongelman kokonaan, koska salasanaa ei ole. Menetelmät yleistyvät vähitellen, ja kun palvelu tarjoaa tällaista vaihtoehtoa, sen käyttöönottoa kannattaa harkita. Toistaiseksi salasanat eivät kuitenkaan ole katoamassa, joten niiden hyvä hallinta säilyy tärkeänä taitona.

Tiivistelmä käytännön toimista

Salasanaturvallisuus tiivistyy muutamaan päätökseen. Suosi pitkiä tunnuslauseita lyhyiden, sekavien merkkijonojen sijaan. Älä koskaan käytä samaa salasanaa kahdessa palvelussa. Ota käyttöön salasanojen hallintaohjelma, joka luo ja muistaa yksilölliset salasanat puolestasi. Kytke kaksivaiheinen tunnistautuminen päälle tärkeimmissä tileissä. Luota siihen, että hyvin suunniteltu palvelu suojaa salasanasi tiivistämällä ja suolaamalla sen, ja vältä palveluita, jotka osoittavat suhtautuvansa turvallisuuteen huolimattomasti. Nämä toimet eivät vaadi teknistä osaamista, mutta ne torjuvat suurimman osan käytännön uhista.