akademin körs anonymt — inget sparas
skapa kontonummer →
Akademin / Nivå I / Lektion 01
lektion 01 · grunderna

Vad är ett lösenord egentligen?

När du skriver in ditt lösenord på en sajt — vad sparas på andra sidan? Inte vad du tror. Den här lektionen visar varför, och varför det är en bra sak.

Välj spår Hur tekniskt vill du ha det?

Föreställ dig att en sajt sparar ditt lösenord som en lapp i en låda. Om någon bryter upp lådan — har de din lapp. Det är så det fungerade på 90-talet. Nuförtiden gör bra sajter något helt annat.

01Sajter sparar inte ditt lösenord

Du skriver in kanin123 och trycker på Skapa konto. På andra sidan får sajten ditt lösenord en kort sekund — men sparar det aldrig. Istället mals det genom en sorts kvarn som spottar ut en oigenkännlig sträng:

kanin123  →  kvarn  →  3a7d4f...e29b

Det är kvarn-versionen som sparas, inte ditt riktiga lösenord. Kvarnen heter hash-funktion bland tekniker. Men du kan tänka kvarn — det är samma idé.

02Kvarnen går bara åt ett håll

Det smarta med en hash-kvarn: den kan inte malas baklänges. Om någon stjäl 3a7d4f...e29b kan de inte mala det tillbaka till kanin123. Det är som att försöka få tillbaka mjöl från färdig deg. Omöjligt.

När du loggar in nästa gång gör sajten samma sak igen: tar lösenordet du skriver, mal det, och jämför med den sparade kvarn-versionen. Matchar de — då är det rätt lösenord. Sajten behövde aldrig veta vad lösenordet faktiskt var.

03Prova själv

Skriv in vad du vill nedan — vilken text som helst, det är en demo. Du ser kvarn-versionen direkt. Pröva att ändra en enda bokstav och se vad som händer.

kvarn (SHA-256)
skriv något ovan så ser du resultatet
Längd: 0 Algoritm: SHA-256
Lägg märke till: ändrar du en bokstav ändras hela kvarn-versionen. Det är meningen — det betyder att kvarnen är "rättvis" och inte avslöjar något om vad som matades in.

04Vad det betyder för dig

När en sajt blir hackad och lösenordsläckor hamnar på nätet — det är oftast kvarn-versionerna som läcker, inte själva lösenorden. Det är därför HIBP (som vi använder här på säkerkoll) kan kolla om ditt lösenord finns i läckor utan att vi behöver se det.

Men: dåliga sajter sparar fortfarande lösenord i klartext (utan kvarn). Och dåliga kvarnar kan knäckas. Det går vi igenom djupare i spår 2 och i lektion 4 (om brute force). För nu räcker det att veta: bra sajter ser aldrig ditt riktiga lösenord. Bara kvarn-versionen.

Ett lösenord är, från sajtens perspektiv, inte ett lösenord — det är input till en envägsfunktion. Vad som faktiskt lagras är funktionens output: en hash. Frågan blir vilken hash-funktion, och varför valet faktiskt spelar roll.

01Hash vs kryptering — inte samma sak

Kryptering är tvåvägs: med rätt nyckel kan du dekryptera tillbaka till originalet. En hash är envägs — designad för att vara beräkningsmässigt omöjlig att invertera. För lösenord är det envägs vi vill ha. Sajten behöver aldrig återställa ditt lösenord; den behöver bara verifiera det.

En bra kryptografisk hash-funktion har tre egenskaper:

02SHA-256 räcker inte för lösenord

SHA-256 är en bra hash-funktion — men för snabb. En modern GPU kan beräkna miljarder SHA-256-hashar per sekund. Det betyder att en angripare med en läckt hash-tabell kan testa hela ordlistor på minuter.

Lösningen är två saker tillsammans:

Det är därför moderna lösenordshashar inte är SHA-256. De heter bcrypt, scrypt, eller argon2id — och har inbyggt salt + justerbar work factor.

03Prova själv — med salt

Här ser du samma input hashas två gånger: en gång rakt av (osaltad SHA-256), en gång med ett unikt salt. Notera hur det saltade resultatet ändras varje gång du genererar nytt salt — även om input är samma.

8f3a2b1c
utan salt
skriv något ovan
med salt — SHA-256(salt + lösenord)
skriv något ovan
Notera: två olika sajter med samma lösenord men olika salt = helt olika hashar

04Vad detta betyder i praktiken

När du läser om en läcka och hör "hashade lösenord" — fråga dig: vilken hash? En SHA-1 eller MD5-läcka från 2014 är i praktiken klartext idag. En bcrypt-läcka med work factor 12 är fortfarande långsam att brute-forca tio år senare.

För dig som användare är detta abstrakt — du väljer inte sajternas hash-algoritm. Men det påverkar dig: använd unika lösenord per sajt, för en bra-hashad sajt kan inte rädda dig från en dåligt-hashad sajt om du återanvänder samma lösenord. Mer om det i lektion 6.

Teknisk anmärkning: demon ovan är SHA-256(salt + lösenord) för att illustrera idén — verkliga lösenordshashar använder algoritmer som bcrypt/argon2 där salt-hanteringen och work factor är inbyggda i funktionen. Konceptet är detsamma; primitivt-värdena är säkrare.

Snabb-koll — tre frågor

lektion 01 · klarad ✓ Nästa upp

Lektion 02 — Varför är "Sommar2024!" dåligt?

Komplexitetsregler, mönster, och varför längd alltid vinner. Cirka sex minuter.

Nästa lektion