
Mitä on suolaaminen tietoturvassa? Opas
Suolaaminen on yksi tärkeimmistä salasanojen suojausmenetelmistä, mutta monille sen toimintaperiaate jää epäselväksi. Toisin kuin salaus, suola ei ole salaisuus – se on julkinen merkkijono, joka tekee jokaisesta tiivisteestä ainutlaatuisen.
Yleisin käyttökohde: Salasanan tiivistys (hashing) tietokannassa ·
Tarkoitus: Estää ennalta laskettujen taulukoiden (esim. rainbow-taulut) käyttö ·
Suolan pituus (suositus): Vähintään 16–32 satunnaista merkkiä ·
Tunnettu algoritmi: bcrypt (sisältää suolan automaattisesti)
Pikakatsaus
- Suola on satunnainen merkkijono, joka lisätään salasanaan ennen tiivistystä (OWASP Password Storage Cheat Sheet)
- Suola estää ennalta laskettujen taulukoiden käytön (OWASP Password Storage Cheat Sheet)
- bcrypt on yleisesti käytetty algoritmi, joka sisältää suolan automaattisesti (Auth0 blog)
- Tarkka suolan pituuden vaikutus tietoturvaan eri algoritmeilla
- Pippurin (pepper) turvallisuus verrattuna suolaan
- Suolaaminen on ollut tunnettu käytäntö 1970-luvulta lähtien (Wikipedia – Salt (cryptography))
- NIST SP 800-63B (2024) velvoittaa suolaamaan salasanat (NIST SP 800-63B)
- Yhdistä suolaaminen key stretching -tekniikoihin kuten bcrypt tai Argon2 (OWASP Password Storage Cheat Sheet)
Seuraava taulukko tiivistää suolan käytön ydinosat.
| Ominaisuus | Arvo |
|---|---|
| Käsitteen tyyppi | Kryptografinen tekniikka |
| Ensisijainen käyttökohde | Salasanan tiivistys |
| Tunnetuin toteutus | bcrypt |
| Suositeltu suolan pituus | 16–32 merkkiä |
| Tärkein hyöty | Estää rainbow-tauluhyökkäykset |
The pattern: suolan arvo on yksinkertainen mutta sen vaikutus turvallisuuteen on valtava.
Mitä suola tarkoittaa tietoturvassa?
Kryptografinen suola on satunnainen merkkijono, joka lisätään salasanaan ennen sen tiivistämistä. Sen päätarkoitus on tehdä jokaisesta tiivisteestä uniikki, vaikka kaksi käyttäjää valitsisi täysin saman salasanan.
Mitä on kryptografinen suola?
OWASP (tietoturvan johtava standardijärjestö) määrittelee suolan yksiselitteisesti: se on satunnainen arvo, joka lisätään salasanaan ennen hashin laskemista. Ilman suolaa sama salasana tuottaa aina saman tiivisteen – tämän vuoksi tietomurrossa paljastuneet tiivisteet voidaan verrata ennalta laskettuihin taulukoihin.
- Suola lisätään salasanaan ennen tiivistysfunktion käyttöä (OWASP Password Storage Cheat Sheet)
- Ennalta lasketut taulukot (rainbow-taulut) eivät toimi suolattuja tiivisteitä vastaan (OWASP Password Storage Cheat Sheet)
- Jokainen suola on uniikki, joten samalla salasanalla on eri tiiviste eri käyttäjillä (OWASP Password Storage Cheat Sheet)
Mikä on suolan tehtävä salasanojen suojauksessa?
Yhdysvaltain kansallinen standardointi- ja teknologianstituutti NIST (SP 800-63B) tiivistää asian: salasanat tulee suolata ja tiivistää sopivalla salasanan tiivistysmenetelmällä. Suola vähentää suolien törmäyksiä eri käyttäjätilien välillä ja estää sen, että usealla tilillä olisi sama hash samaa salasanaa käytettäessä.
Yksi tietomurto paljastaa helposti kymmeniätuhansia tiivisteitä. Ilman suolaa hyökkääjä vertaa niitä muutamassa tunnissa koko rainbow-taulukkoon. Suolan ansiosta jokainen tiiviste on murrettava erikseen – työmäärä kasvaa tuhansista miljooniksi.
Miten suolaaminen toimii?
Suolan luominen
Suolan tulee olla kryptografisesti vahvaa satunnaisuutta. Auth0 (tunnettu identiteetinhallinta-alusta) suosittelee CSPRNG:tä (kryptografisesti turvallinen satunnaislukugeneraattori). NIST määrittää suolan vähimmäispituudeksi 32 bittiä, mutta käytännössä suositellaan 128–256 bittiä (16–32 merkkiä).
- Suola lisätään salasanaan ennen tiivistysfunktion käyttöä
- Suola tallennetaan yleensä tiivisteen yhteyteen tietokantaan (OWASP Password Storage Cheat Sheet – DeteAct mirror)
- Kirjautumisen yhteydessä suola haetaan ja käytetään uudelleen tiivistykseen
Suolan lisääminen salasanaan
Authgear (identiteetin hallinnan asiantuntija) kuvaa viisivaiheisen työnkulun: generoi suola, yhdistä salasana ja suola, hashaa yhdistelmä, tallenna suola ja hash, ja verifioi kirjautumisessa uudelleenhashauksella.
Tiivisteen laskeminen ja tallentaminen
Tiivistys on yksisuuntainen funktio: alkuperäistä salasanaa ei voida palauttaa tiivisteestä. NIST SP 800-132 (salasanapohjainen avaimen johtaminen) selittää, että suolan tarkoitus on tuottaa suuri joukko avaimia kutakin salasanaa kohti tietyllä iteraatiomäärällä – tämä hidastaa murtoa.
Kuvittele, että palvelimella on miljoona käyttäjää. Ilman suolaa yksi rainbow-taulukko murtaa 90 % salasanoista minuuteissa. Suolan ansiosta hyökkääjän on laskettava jokainen hash erikseen – miljoona laskutoimitusta yhden sijaan.
Mitä on suolaaminen salasanan tiivistyksessä?
Ero salaamiseen
Suolaaminen on osa tiivistysprosessia, ei salausta. Auth0 (identiteetin turvallisuuden asiantuntija) korostaa, ettei suola ole salaista tietoa – se on julkinen arvo, joka tallennetaan tiivisteen yhteyteen. Toisin kuin salaus, tiivistys on yksisuuntainen funktio: sitä ei voida kääntää takaisin alkuperäiseksi salasanaksi.
Ero pelkkään tiivistykseen
- Ilman suolaa: “Salasana1” tuottaa aina tiivisteen “abc123”
- Suolalla: “Salasana1 + suola_A” tuottaa “def456”, “Salasana1 + suola_B” tuottaa “ghi789”
- OWASP (tietoturvan viitekehyksen ylläpitäjä) mukaan suolattu hash hidastaa massamittaista murtamista, koska hyökkääjän täytyy murtaa hashit yksi kerrallaan suolan kanssa (OWASP Password Storage Cheat Sheet)
Suolan ja pippurin vertailu
Pippuri (pepper) on salaisuus, joka lisätään ennen tiivistystä mutta eroaa suolasta: sitä ei tallenneta tietokantaan vaan sovelluksen salaisuutena. Suola on julkinen, pippuri on salainen. Tämä tekee pippurista lisäturvan – vaikka tietokanta varastettaisiin, hyökkääjä ei tiedä pippuria.
Suola on jokaiselle käyttäjälle uniikki ja tallennetaan näkyvästi. Pippuri on sama kaikille käyttäjille ja pidetään salassa. Monet kehittäjät sekoittavat nämä käsitteet, mikä voi johtaa tietoturva-aukkoihin.
The implication: suola ja pippuri ovat täydentäviä, eivät kilpailevia tekniikoita.
Mitä on suolaaminen kyberturvallisuudessa?
Suolan käyttö käyttäjien tunnistautumisessa
Suolaamista käytetään ensisijaisesti salasanojen suojaukseen. OWASP (tietoturvan viitekehyksen ylläpitäjä) ohjeistaa, että suolan tulee olla uniikki jokaiselle tallennetulle tunnistetiedolle, ei vain käyttäjälle tai järjestelmälle. Se suojaa sanakirjahyökkäyksiltä ja brute force -hyökkäyksiltä, koska jokainen tiiviste on laskettava erikseen.
- Suolaaminen on yleinen käytäntö nykyaikaisissa järjestelmissä
- OWASP (tietoturvan viitekehyksen ylläpitäjä) mukaan suolan turvallisuus ei riipu suolan salaamisesta; suola saa olla näkyvissä tallenteessa (OWASP Password Storage Cheat Sheet – DeteAct mirror)
- OWASP (tietoturvan viitekehyksen ylläpitäjä) mukaan suola tekee mahdottomaksi päätellä, onko kahdella käyttäjällä sama salasana, ilman hashien murtamista (OWASP Password Storage Cheat Sheet)
Suolan käyttö muissa tietoturvasovelluksissa
Vaikka suolaaminen yhdistetään yleisimmin salasanoihin, sitä käytetään myös muissa kryptografisissa sovelluksissa, kuten digitaalisissa allekirjoituksissa ja viestien eheyden varmistuksessa. Periaate on sama: satunnainen arvo estää ennalta lasketut hyökkäykset.
Vaikka suola estää rainbow-taulut ja hidastaa brute forcea, se ei korvaa vahvaa salasanaa. Jos salasana on “12345”, suola ei tee siitä turvallista – se vain estää ennalta lasketut taulukot. Vahva salasana + suola + key stretching on yhdistelmä, joka kestää.
Mikä on kolmen sanan salasanasääntö?
Miten valita kolme satunnaista sanaa
Kolmen satunnaisen sanan yhdistelmä on pitkä ja vaikeasti arvattava, mutta helpompi muistaa kuin monimutkainen merkkijono. Esimerkki: “kissa lentokone kahvi” on 22 merkkiä pitkä, mutta helposti muistettava.
Miksi kolmen sanan salasana on vahva
- Pituus tekee siitä brute force -kestävän
- Arvattavuus on pieni, jos sanat valitaan satunnaisesti
- Se on kuitenkin edelleen suolattava ja tiivistettävä ennen tallennusta
Kolmen sanan yhdistelmä on 10⁶ kertaa vaikeampi arvata kuin kahdeksan merkin satunnainen merkkijono, mutta muistettavuus on moninkertainen. Suomalaisille käyttäjille: valitse kolme suomenkielistä sanaa, jotka eivät liity toisiinsa.
Mitkä ovat kryptografian neljä pilaria?
Kryptografian neljä pilaria ovat salaus, tiivistys, digitaalinen allekirjoitus ja todennus. Suolaaminen liittyy tiivistykseen ja todennukseen. Salaus suojaa tietoa matkalla, tiivistys varmistaa eheyden, digitaalinen allekirjoitus todentaa lähettäjän, ja todennus varmistaa, että käyttäjä on se, joka väittää olevansa.
Kun ymmärrät nämä pilarit, näet, miksi suolaaminen on vain yksi pala palapeliä – mutta erittäin tärkeä pala juuri todennuksen osalta. Ilman sitä koko järjestelmä on haavoittuvainen.
Lainauksia asiantuntijoilta
Salt is random data that is used as an additional input to a one-way function that hashes a password or passphrase.
Adding salt to your password hashing is a critical step in protecting user credentials. It ensures that even if two users have the same password, their hashes will be different.
– Auth0 – Add Salt to Hashing
Yhteenveto
Suolaaminen on yksinkertainen mutta elintärkeä tietoturvakäytäntö. Se muuttaa jokaisen tiivisteen ainutlaatuiseksi, estää rainbow-tauluhyökkäykset ja hidastaa brute forcea. OWASP (tietoturvan viitekehyksen ylläpitäjä) ja NIST (Yhdysvaltain kansallinen standardointi-instituutti) ovat yksimielisiä: suolaaminen on pakollista. Verkkoturvallisuus on käsitteenä muuttunut, ja tasapaino turvallisuuden ja helppokäyttöisyyden välillä on jatkuva haaste. Suomalaisille verkkopalveluiden käyttäjille tämä tarkoittaa: valitse vahva salasana, mutta luota siihen, että palvelun kehittäjä on suolannut sen oikein. Jos palvelu ei käytä suolaa – vaihda salasana välittömästi.
The takeaway: suola ei ole valinnainen – se on pakollinen osa nykyaikaista salasanaturvallisuutta.
plisio.net, medium.com, geeksforgeeks.org, github.com, stackoverflow.com
Tietoturvassa suolaaminen on keskeinen menetelmä, ja suolauksesta tietoturvassa tarjoaa lisää esimerkkejä sen käytöstä.
Usein kysytyt kysymykset
Miten suola eroaa salausavaimesta?
Suola on julkinen, satunnainen arvo, joka lisätään salasanaan ennen tiivistystä. Salausavain on salainen arvo, jolla tietoa salataan ja puretaan. Suolaa ei koskaan käytetä salauksen purkamiseen.
Voiko suola olla julkinen?
Kyllä. OWASP (tietoturvan viitekehyksen ylläpitäjä) mukaan suolan turvallisuus ei riipu siitä, että se pidetään salassa. Suola tallennetaan tiivisteen yhteyteen tietokantaan, ja se on julkista. Pippuri puolestaan on salainen.
Mitä on suolan uudelleenkäyttö ja miksi sitä tulee välttää?
Suolan uudelleenkäyttö tarkoittaa saman suolan käyttämistä usealle salasanalle. Jos hyökkääjä murtaa yhden hashin, hän voi käyttää samaa laskutoimitusta muille samalla suolalla. Jokaiselle salasanalle tulee luoda oma uniikki suola.
Mikä on bcrypt-algoritmin toimintaperiaate?
bcrypt on salasanan tiivistysalgoritmi, joka sisältää automaattisesti suolan ja key stretching -toiminnon. Se generoi suolan, lisää sen salasanaan, ja toistaa tiivistysprosessin useita kertoja (iteraatioita), mikä hidastaa brute force -hyökkäyksiä.
Tarvitseeko suolaa salata erikseen?
Ei. OWASP (tietoturvan viitekehyksen ylläpitäjä) ohjeiden mukaan suolaa ei tarvitse salata. Se tallennetaan tiivisteen yhteyteen avoimesti. Suolan tehtävä on tehdä jokaisesta tiivisteestä uniikki, ei olla salainen.
Miten suola vaikuttaa salasanan pituuteen?
Suola ei vaikuta salasanan pituuteen. Se lisätään salasanaan ennen tiivistystä, joten alkuperäinen salasana pysyy samana. Tiivisteen pituus on aina sama riippumatta suolan pituudesta.
Voiko suolaamista käyttää muuhun kuin salasanoihin?
Kyllä. Suolaamista käytetään myös digitaalisissa allekirjoituksissa, viestien eheyden varmistuksessa ja kryptografisissa protokollissa, joissa halutaan estää ennalta lasketut hyökkäykset.
Mikä on suositeltu suolan pituus bcryptissä?
bcrypt käyttää oletuksena 16 merkin suolaa (128 bittiä). Tämä on riittävä pituus useimpiin käyttötarkoituksiin. NIST (Yhdysvaltain kansallinen standardointi-instituutti) määrittää vähimmäispituudeksi 32 bittiä, mutta 128 bittiä on nykyinen suositus.