Salasanoja on käytetty tuhansia vuosia keinona tunnistaa itsemme muille ja viime aikoina myös tietokoneille. Se on yksinkertainen käsite – jaettu tieto, joka pidetään salassa yksilöiden välillä ja jota käytetään henkilöllisyyden ”todistamiseen”.
Salasanat tietoteknisessä kontekstissa tulivat esiin 1960-luvulla suurtietokoneiden myötä – suurten keskuskäyttöisten tietokoneiden, joihin käyttäjät pääsivät käsiksi etäpäätteillä. Nykyään salasanoja käytetään kaikkeen pankkiautomaatilla syötettävästä PIN-koodista tietokoneillemme ja erilaisille verkkosivustoille kirjautumiseen.
Mutta miksi meidän on ”todistettava” henkilöllisyytemme järjestelmille, joita käytämme? Ja miksi salasanoja on niin vaikea saada oikein?
Millainen on hyvä salasana?
Vielä suhteellisen hiljattain hyvä salasana saattoi olla sana tai lause, jossa oli vain kuudesta kahdeksaan merkkiä. Mutta nyt meillä on vähimmäispituutta koskevat ohjeet. Tämä johtuu ”entropiasta”.
Salasanoista puhuttaessa entropia on ennustettavuuden mitta. Matematiikka tämän takana ei ole monimutkaista, mutta tarkastellaan sitä vielä yksinkertaisemmalla mittarilla: mahdollisten salasanojen lukumäärällä, johon joskus viitataan nimellä ”salasana-avaruus”.
Jos yksimerkkinen salasana sisältää vain yhden pienen kirjaimen, mahdollisia salasanoja on vain 26 (”a” – ”z”). Sisällyttämällä isoja kirjaimia lisäämme salasana-avaruutta 52 mahdolliseen salasanaan.
Salasana-avaruus laajenee edelleen, kun salasanan pituutta lisätään ja muita merkkityyppejä lisätään.
Katsomalla edellä mainittuja lukuja on helppo ymmärtää, miksi meitä kannustetaan käyttämään pitkiä salasanoja, joissa on isoja ja pieniä kirjaimia, numeroita ja symboleja. Mitä monimutkaisempi salasana on, sitä useampia yrityksiä sen arvaamiseen tarvitaan.
Salasanan monimutkaisuudesta riippuvaisuuden ongelmana on kuitenkin se, että tietokoneet ovat erittäin tehokkaita toistamaan tehtäviä – myös arvaamaan salasanoja.
Viime vuonna tehtiin ennätys, kun tietokone yritti luoda kaikki mahdolliset salasanat. Se saavutti nopeamman nopeuden kuin 100 000 000 000 000 arvausta sekunnissa.
Hyödyntämällä tätä laskentatehoa kyberrikolliset voivat murtautua järjestelmiin pommittamalla niitä mahdollisimman monilla salasanayhdistelmillä, mitä kutsutaan raa’an voiman hyökkäyksiksi.
Pilvipohjaisen teknologian avulla kahdeksanmerkkisen salasanan arvaaminen onnistuu jopa 12 minuutissa, ja se maksaa vain 25 Yhdysvaltain dollaria.
Edelleen, koska salasanoja käytetään lähes aina arkaluonteisten tietojen tai tärkeiden järjestelmien käyttämiseen, tämä motivoi verkkorikollisia etsimään niitä aktiivisesti. Se synnyttää myös tuottoisat verkkomarkkinat, joilla myydään salasanoja, joista osaan liittyy sähköpostiosoitteita ja/tai käyttäjätunnuksia.
Miten salasanoja tallennetaan verkkosivustoilla?
Web-sivustojen salasanat tallennetaan yleensä suojattuna käyttäen matemaattista algoritmia nimeltä hashing. Hashattu salasana on tunnistamaton, eikä sitä voida muuttaa takaisin salasanaksi (peruuttamaton prosessi).
Kun yrität kirjautua sisään, syöttämäsi salasana hakkeroidaan samalla prosessilla ja sitä verrataan sivustolle tallennettuun versioon. Tämä prosessi toistetaan joka kerta, kun kirjaudut sisään.
Salasana ”Pa$$w0rd” saa esimerkiksi arvon ”02726d40f378e716981c4321d60ba3a325ed6a4c”, kun se lasketaan SHA1-hashausalgoritmilla. Kokeile itse.
Kun edessä on tiedosto, joka on täynnä hashattuja salasanoja, voidaan käyttää raa’an voiman hyökkäystä kokeilemalla kaikkia merkkikombinaatioita eri pituisia salasanoja varten. Tästä on tullut niin yleinen käytäntö, että on olemassa verkkosivustoja, joilla luetellaan yleisiä salasanoja sekä niiden (laskettu) hashed-arvo. Voit yksinkertaisesti hakea hash-arvoa, jolloin vastaava salasana paljastuu.
Salasanaluetteloiden varastaminen ja myyminen on nykyään niin yleistä, että erityinen verkkosivusto – haveibeenpwned.com – auttaa käyttäjiä tarkistamaan, ovatko heidän tilinsä ”luonnossa”. Se on kasvanut sisältämään yli 10 miljardia tilitietoa.
Jos sähköpostiosoitteesi on listattu tällä sivustolla, sinun pitäisi ehdottomasti vaihtaa havaittu salasana, samoin kuin kaikilla muilla sivustoilla, joilla käytät samoja tunnuksia.
Onko monimutkaisuuden lisääminen ratkaisu?
Luulisi, että kun salasanojen murtoja tapahtuu päivittäin niin paljon, salasanojen valintakäytäntöjä olisi pitänyt parantaa. Valitettavasti viime vuoden vuosittainen SplashData-salasanatutkimus osoitti, että viiden vuoden aikana ei ole tapahtunut juurikaan muutoksia.
Laskentakapasiteetin kasvaessa ratkaisu näyttäisi olevan monimutkaisuuden lisääminen. Ihmisinä emme kuitenkaan ole taitavia (emmekä motivoituneita) muistamaan erittäin monimutkaisia salasanoja.
Olemme myös ohittaneet pisteen, jossa käytämme vain kahta tai kolmea järjestelmää, jotka tarvitsevat salasanan. Nykyään on tavallista käyttää lukuisia sivustoja, joista jokainen vaatii salasanan (usein eri pituisen ja monimutkaisen). Tuoreen tutkimuksen mukaan henkilöllä on keskimäärin 70-80 salasanaa.
Hyvä uutinen on, että näihin ongelmiin on olemassa työkaluja. Useimmat tietokoneet tukevat nykyään salasanojen tallentamista joko käyttöjärjestelmässä tai verkkoselaimessa, ja yleensä on mahdollista jakaa tallennettuja tietoja useilla laitteilla.
Esimerkkeinä mainittakoon Applen iCloud Keychain ja mahdollisuus tallentaa salasanoja Internet Explorerissa, Chromessa ja Firefoxissa (tosin vähemmän luotettavasti).
KeePassXC:n kaltaiset salasanahallintaohjelmat voivat auttaa käyttäjiä luomaan pitkiä ja monimutkaisia salasanoja ja tallentamaan ne turvalliseen paikkaan silloin, kun niitä tarvitaan.
Vaikka tämä sijainti on edelleen suojattava (yleensä pitkällä ”pääsalasanalla”), salasanahallintaohjelman käyttäminen antaa sinulle mahdollisuuden käyttää ainutlaatuista, monimutkaista salasanaa jokaista verkkosivustoa varten, jolla vierailet.
Tämä ei estä salasanan varastamista haavoittuvalta verkkosivustolta. Mutta jos se varastetaan, sinun ei tarvitse huolehtia saman salasanan vaihtamisesta kaikilla muilla sivustoilla.
Tietysti näissäkin ratkaisuissa on haavoittuvuuksia, mutta se on ehkä toisen päivän juttu.