"Käytä vahvaa salasanaa" on yleinen neuvo, mutta "vahva" on epämääräinen käsite. Entropia on sen taustalla oleva todellinen mittari — luku, biteissä ilmaistuna, joka kertoo, kuinka monta arvausta hyökkääjä tarvitsee pahimmassa tapauksessa. Tässä artikkelissa selitetään, mitä tämä luku tarkoittaa ja miten se lasketaan salasanalle, jonka todella valitset.
Tiivistelmä
- Entropia (biteissä) mittaa sen hakuavaruuden kokoa, joka hyökkääjän on käytävä läpi raa'alla voimalla:
entropia = log2(merkistön koko ^ pituus). - Jokainen lisämerkki kertoo hakuavaruuden; jokainen lisämerkkityyppi kertoo sen vain kiinteällä, suhteellisen pienellä kertoimella.
- 12 merkin salasanalla, jossa käytetään vain pieniä kirjaimia, on vähemmän entropiaa kuin 8 merkin salasanalla, jossa yhdistetään kaikki neljä merkkityyppiä — mutta 20 merkin pienaakkosinen tunnuslause voittaa molemmat.
- CSPRNG:llä luodut salasanat saavuttavat teoreettisen entropiansa täsmälleen; ihmisen valitsemat salasanat eivät juuri koskaan, koska ihmiset eivät ole satunnaisia.
Lyhyt vastaus
Entropia biteissä on log2(N), jossa N on kyseisen pituuden ja merkistön kaikkien yhtä todennäköisten salasanojen kokonaismäärä. Käytännössä: entropia = pituus × log2(merkistön koko). 16 merkin salasanalla, joka on poimittu tasaisesti 95 tulostettavasta ASCII-merkistä, on noin 16 × log2(95) ≈ 105 bittiä entropiaa — verrattavissa 256-bittisen AES-avaimen käytännön raa'an voiman kestävyyteen, mikä on liioittelua vertailuna, mutta 105 bittiä on jo kaukana siitä, mitä mikään nykyinen tai ennakoitavissa oleva laitteisto pystyy tyhjentämään. PassGenerate luo salasanoja tällä tavalla käyttäen Web Crypto API:n CSPRNG:tä, joten entropialuku on todellinen, ei vain teoreettinen.
Entropiakaava vaihe vaiheelta
Entropia olettaa, että jokainen merkki valitaan itsenäisesti ja tasaisen satunnaisesti kiinteästä joukosta. Kun merkistön koko on C ja salasanan pituus L, mahdollisten salasanojen määrä on C^L, ja entropia biteissä on:
entropia = L × log2(C)
| Merkistö | Joukon koko (C) | Bittiä per merkki (log2 C) |
|---|---|---|
| Vain numerot (0-9) | 10 | 3.32 |
| Pienet kirjaimet (a-z) | 26 | 4.70 |
| Pienet kirjaimet + numerot | 36 | 5.17 |
| Iso/pieni kirjainkoko + numerot | 62 | 5.95 |
| Iso/pieni kirjainkoko + numerot + symbolit (~33 yleistä) | 95 | 6.57 |
Pituus vs. merkistön koko: miksi pituus voittaa
Tämä taulukko näyttää, miksi NIST SP 800-63B vähentää painoarvoa pakotetuilta monimutkaisuussäännöiltä pituuden hyväksi:
| Pituus | Vain numerot | Pienet kirjaimet | Sekoitettu (isot+pienet+numerot+symbolit) |
|---|---|---|---|
| 8 | 27 bittiä | 38 bittiä | 52 bittiä |
| 12 | 40 bittiä | 56 bittiä | 79 bittiä |
| 16 | 53 bittiä | 75 bittiä | 105 bittiä |
| 20 | 66 bittiä | 94 bittiä | 131 bittiä |
| 24 | 80 bittiä | 113 bittiä | 157 bittiä |
| 32 | 106 bittiä | 150 bittiä | 210 bittiä |
Huomaa, että 8 merkin salasanalla, jossa käytetään kaikkia neljää merkkityyppiä (52 bittiä), on vähemmän entropiaa kuin 12 merkin salasanalla, joka koostuu pelkästään pienistä kirjaimista (56 bittiä). Tämä on matemaattinen perusta tunnetulle havainnolle: neljän ylimääräisen satunnaisen merkin lisääminen tekee enemmän turvallisuutesi hyväksi kuin symbolien ja numeroiden pakottaminen lyhyeen salasanaan. Se selittää myös, miksi pitkät, satunnaisesti luodut tunnuslauseet (useita satunnaisia sanakirjasanoja) voivat olla sekä vahvempia että helpompia kirjoittaa kuin lyhyt symbolisekamelska — jokainen lisäsana lisää tyypillisesti 11–13 bittiä, jos se on poimittu muutaman tuhannen sanan listalta, mikä kertyy nopeasti 4–6 sanan yli.
Miltä tämä näyttää oikealla laitteistolla
Yllä olevat bittiluvut ovat hyödyllisiä vertailuun, mutta ne eivät kerro, kuinka kauan todellinen hyökkäys todellisuudessa kestää — se riippuu arvauksia tekevästä laitteistosta, ja se laitteisto nopeutuu joka vuosi. Hive Systems julkaisee vuosittain juuri tästä vertailuarvon, testaten raa'an voiman nopeutta vuokrattua kuluttaja-GPU-laivastoa vasten. Heidän vuoden 2026 taulukkonsa mukaan satunnaisesti luotu 8 merkin salasana, jossa käytetään täyttä sekoitettua merkistöä (isot, pienet, numerot, symbolit), kestää murtaa noin 132 vuotta — pudotus 164 vuodesta vuonna 2025 ja 225 vuodesta vuonna 2024, eli noin 20–25 %:n vuosittainen lasku GPU-laitteiston parantuessa. 8 merkin salasana, jossa käytetään vain pieniä kirjaimia, putosi vielä nopeammin: kolmesta viikosta murtamiseen vuonna 2025 noin kahteen viikkoon vuonna 2026.
Kaksi asiaa tästä vertailuarvosta kannattaa tietää. Ensinnäkin trendi kulkee vain yhteen suuntaan — mikä tahansa näyttää "turvalliselta" tänään, heikkenee joka vuosi pelkästään laitteistoparannusten vuoksi, mikä on käytännön argumentti pidempien salasanojen valitsemiselle nykyisen minimin sijaan. Toiseksi, ja hieman vastoin intuitiota, kielimallien kouluttamiseen rakennetut erikoistuneet tekoälykiihdytinsirut eivät osoittautuneet nopeammiksi salasanojen raa'an voiman murtamisessa kuin vastaavat pelaaja-GPU:t, ja joissakin testeissä jopa hitaammiksi — salasanojen murtaminen on puhdas numeroihin perustuva ongelma, joka ei hyödy matriisikertolaskuoptimoinneista, joihin tekoälylaitteisto perustuu.
Kuinka monta bittiä todella tarvitset?
Yhtä universaalia lukua ei ole, koska se riippuu siitä, mitä vastaan puolustaudut:
- ~40–60 bittiä: Kestää satunnaisen arvailun ja pienimuotoiset automatisoidut hyökkäykset, mutta on hyvin resursoidun offline-hyökkäyksen ulottuvilla heikosti tiivistettyä (hashattua) tietokantaa vastaan. Sopii vain aidosti matala-arvoisille tileille, joiden vaarantumisella on vähäiset seuraukset.
- ~70–90 bittiä: Selvästi raa'an voiman ulottumattomissa, jopa optimoitua murtolaitteistoa vastaan, missä tahansa realistisessa hyökkäysaikataulussa. Kohtuullinen tavoite useimmille henkilökohtaisille tileille.
- 100+ bittiä: Käytännössä saavuttamaton raa'alla voimalla nykyisellä tai ennakoitavissa olevalla laskentateholla, kryptografisesti samassa mielessä kuin vahva salausavain. Sopii salasananhallintasi pääsalasanalle tai muille yksittäisille kriittisille pisteille.
Keskeiset havainnot
- Entropia on
pituus × log2(merkistön koko)— pituudella on lineaarinen vaikutus, merkistön koolla logaritminen, minkä vuoksi pituus hallitsee. - Lyhyellä salasanalla, jossa on jokainen merkkityyppi, voi olla vähemmän entropiaa kuin pidemmällä salasanalla, jossa on vain yksi tyyppi.
- Todellinen entropia vastaa teoreettista entropiaa vain silloin, kun merkit ovat aidosti tasaisen satunnaisia — mitä CSPRNG takaa ja ihmisen valinta yleensä ei saavuta.
- Tavoittele 70+ bittiä jokapäiväisille tileille ja 100+ bittiä pääsalasanoille tai muille yksittäisille kriittisille pisteille.
Miksi voit luottaa PassGenerateen
- Salasanat luodaan paikallisesti selaimessasi Web Crypto API:n avulla.
- Salasanoja ei lähetetä palvelimille.
- Käyttää kryptografisesti turvallista pseudosatunnaislukugeneraattoria (CSPRNG).
- Noudattaa nykyaikaisia NIST:n ja OWASP:n suosittelemia tietoturvan parhaita käytäntöjä.
Lähteet
- Hive Systems 2026 Password Table (raa'an voiman vertailutiedot)
- NIST SP 800-63B – Digital Identity Guidelines
- OWASP Authentication Cheat Sheet
- MDN Web Crypto API Documentation
Johtopäätös
Entropia on täsmällinen, laskettavissa oleva mittari salasanan vahvuudelle, ei epämääräinen käsitys "monimutkaisuudesta". Pituus on tärkeämpi kuin merkkityyppien pakotettu sekoittaminen, koska se kasvattaa hakuavaruutta lineaarisesti, kun taas merkistön koko kasvattaa sitä vain logaritmisesti — eikä mikään tästä pidä paikkaansa, elleivät merkit ole todella satunnaisia, minkä vuoksi CSPRNG-pohjainen generaattori kuten PassGenerate tuottaa salasanoja, jotka saavuttavat teoreettisen entropiansa täsmälleen — jotain, mitä ihmisen valitsema salasana ei käytännössä koskaan saavuta.