Slik lager du et sterkt passord (lengde slår kompleksitet)
Et sterkt passord er langt, tilfeldig og brukes aldri på nytt. Lengde betyr mer enn kompleksitet: et passord på 8 tegn med alle tegntyper aktivert kan knekkes i løpet av dager, mens et passord på 16 tegn med samme blanding ville tatt lengre tid enn universets alder å knekke med dagens angrepshastighet.
Hvorfor lengde slår kompleksitet
Passordstyrke handler om entropi, altså hvor mange gjetninger en angriper i gjennomsnitt trenger før hen treffer riktig passord. Entropien avhenger av to ting: hvor mange mulige tegn som finnes på hver posisjon (tegnsettet), og hvor mange posisjoner passordet har (lengden).
Å legge til en ny tegntype flytter tegnsettet forbausende lite. Små bokstaver alene gir deg 26 muligheter per tegn. Legg til store bokstaver og tall, og du er oppe i 62. Legg til symboler, og du havner på rundt 95. Å gå fra bare små bokstaver til det fulle settet på 95 tegn multipliserer antall muligheter per posisjon med rundt 3,7 ganger.
Å legge til ett ekstra tegn i lengden, derimot, multipliserer det totale antallet kombinasjoner med hele tegnsettets størrelse, ikke bare 3,7 ganger. Med et tegnsett på 95 tegn multipliserer hvert ekstra tegn de totale kombinasjonene med 95. Det er derfor et lengre passord med et mindre tegnsett kan slå et kortere passord med alle symboler påslått: lengde bygger seg opp eksponentielt, kompleksitet per tegn gjør ikke det samme.
Dette er også grunnen til at “krev minst ett symbol og ett tall” som eneste sikkerhetstiltak er en svak strategi. Kravet får brukeren til å legge til ett symbol og kalle det en dag, i stedet for å tenke på lengden i det hele tatt. Et nettsted som i stedet satte et minimumskrav på 14 eller 16 tegn, uansett tegntype, ville i praksis presset frem sterkere passord enn et krav om blandede tegntyper på et kort passord noensinne kan.
Regneeksempel: knekketid etter lengde og tegnsett
Tabellen under forutsetter en angriper som kjører 10 milliarder gjetninger i sekundet, et realistisk budsjett for et moderne GPU-oppsett bygget for å knekke en offline kopi av hashede passord. Gjetningen antas i snitt å dekke halvparten av det totale søkerommet.
| Lengde | Bare små bokstaver (26 tegn) | Full blanding: store + små + tall + symboler (95 tegn) |
|---|---|---|
| 8 | 10,4 sekunder | 3,8 dager |
| 10 | 2,0 timer | 94,9 år |
| 12 | 1,8 måneder | 8 567 århundrer |
| 16 | 691 århundrer | 697,8 milliarder århundrer |
To ting stikker seg ut. For det første er et passord på 8 tegn aldri trygt mot offline knekking, selv med alle tegntyper aktivert: 3,8 dager er godt innenfor rekkevidde for noen som virkelig vil inn på kontoen din. For det andre, å gå fra 12 til 16 tegn i det fulle tegnsettet hjelper ikke bare litt, det flytter passordet fra “knekkbart dette århundret” til et tall som ikke lenger har noen praktisk mening som tidsramme.
Matematikken bak tabellen: entropi i bits er lengde × log2(tegnsettstørrelse). Et passord på 16 tegn som bruker alle fire tegntyper, får 16 × log2(95) ≈ 105 bits entropi. Hver ekstra bit dobler antallet gjetninger som kreves, så entropien stiger raskt så snart lengden øker.
Legg merke til hvor lite som skal til for å krysse fra “gjennomførbart” til “meningsløst” på tidsskalaen. Forskjellen mellom 12 og 16 tegn i det fulle tegnsettet er bare fire ekstra tegn å skrive, men den flytter knekketiden fra litt over åtte tusen århundrer til et tall der “milliarder av århundrer” knapt sier noe intuitivt lenger. Angriperens datakraft kan tidobles flere ganger over uten at det monner mot et gap av den størrelsen. Det er derfor rådet i denne artikkelen alltid lander på lengde først: den gir mer beskyttelse per tastetrykk enn noen kombinasjon av store bokstaver, tall og symboler noensinne kan.
Lag et sterkt passord
Velg en lengde på 16 tegn eller mer, og la alle fire tegntyper stå avkrysset for maksimal entropi per tegn. Passordet genereres direkte i nettleseren din med Web Crypto API, ingenting sendes til en server.
Vanlige feil
Forutsigbare bokstaverstatninger. Å bytte ut “a” med ”@” eller “o” med “0” i et ordboksord øker knapt entropien, fordi knekkeverktøy allerede tester slike erstatninger som standardregler mot hvert eneste ord i ordbøkene sine. “P@ssw0rd1” knekkes omtrent like fort som “passord1”.
Gjenbruk av et sterkt passord på flere sider. Ett sterkt passord brukt på ti forskjellige sider er bare så trygt som den svakeste av disse ti. Så snart én av sidene blir utsatt for et datainnbrudd, prøver credential-stuffing-botter den samme kombinasjonen av e-post og passord mot banker, e-posttjenester og sosiale medier i løpet av timer. Et unikt, nygenerert passord per side begrenser skaden til én enkelt konto.
Å nøye seg med minstekravet fremfor et reelt mål. Mange sider krever “minst 8 tegn, ett tall, ett symbol.” Det er et gulv, ikke et mål. Et passord på 8 tegn som så vidt oppfyller kravet, kan fortsatt falle i løpet av dager mot offline knekking, som tabellen over viser. Behandle 16 tegn som det praktiske minimumet for alt du ville hatt vondt av å miste.
Å oppbevare passord kun i hukommelsen. Å prøve å huske et dusin unike, tilfeldige passord på 16 tegn fører de fleste tilbake til svake, gjenbrukte eller lett varierte passord. En passordbehandler løser dette ved å generere og lagre et unikt, sterkt passord per side, slik at du bare trenger å huske ett hovedpassord.
Ofte stilte spørsmål
Er et passord på 20 tegn med bare bokstaver og tall tryggere enn et passord på 10 tegn med symboler? Ja, med god margin. Lengde dominerer entropiformelen. Et alfanumerisk passord på 20 tegn har rundt 119 bits entropi, mot rundt 66 bits for et passord på 10 tegn som bruker hele symbolsettet, en forskjell på omtrent 9 billiarder ganger flere mulige kombinasjoner.
Hvor ofte bør jeg bytte ut et sterkt, unikt passord? Hvis det ble generert tilfeldig, er unikt for akkurat den ene kontoen, og det ikke finnes tegn på et innbrudd, gir det ingen sikkerhetsgevinst å bytte det ut på en fast tidsplan. Bytt passord umiddelbart hvis tjenesten melder om et datainnbrudd, hvis du brukte det samme passordet et annet sted før du genererte et unikt et, eller hvis du mistenker at det er blitt eksponert (phishing, noen som kikket deg over skulderen, en kompromittert enhet).
Er passordgeneratorer på nett trygge å bruke? Det kommer an på hvor genereringen faktisk skjer. Dette verktøyet lager passordet helt og holdent i nettleseren din, med den kryptografisk sikre tilfeldighetsgeneratoren i Web Crypto API. Passordet sendes aldri noe sted, så det finnes ingenting for en server å logge eller lekke. Unngå generatorer som lager passordet på en server og bare viser det til deg etterpå.
Hva er en passordfrase, og er den bedre enn et tilfeldig passord? En passordfrase setter sammen flere tilfeldige, urelaterte ord (som diceware-metoden) i stedet for tilfeldige tegn. En passordfrase på fire ord fra en stor ordliste kan nå 40 til 50-pluss bits entropi, samtidig som den er langt lettere å skrive og huske enn et tilsvarende tilfeldig tegnpassord. Det er et godt valg for et hovedpassord du faktisk skal huske, for eksempel det som beskytter en passordbehandler. For alle andre kontoer er et generert, tilfeldig passord lagret i den passordbehandleren enklere og sterkere for en gitt lengde.