Webbplatser där användare loggar in med användarnamn och lösenord måste lagra dessa lösenord på något sätt, åtminstone om de vill kunna visa någon data som skyddas av lösenordet. Det innebär i praktiken någon form av hashfunktion, en matematisk förvrängning som resulterar i en lång till synes slumpmässig teckensträng. När användaren loggar in skapas en hashsumma av lösenordet och skickas till servern, där den jämförs med det lagrade värdet. Om de stämmer överens släpps användaren in.

Tidigare lagrade många webbplatser sådana hashsummor skapade med hashfunktionerna MD5 eller SHA-1, men dessa har numera visat sig vara osäkra och numera rekommenderar experter funktioner som Bcrypt och SHA-256. Hur stor är skillnaden? Hive Systems har i flera år publicerat en guide till säkra lösenord som utgår från att företag fortfarande lagrar dessa med den osäkra MD5-funktionen, men i år har firman bytt till att räkna på Bcrypt-hashkodade lösenord istället. Resultaten är tydliga.

Med ett lösenord som består av åtta slumpmässiga tecken – minimumkravet på många webbplatser – tar det ett enda RTX 4090 mindre än en timme att cracka ett MD5-kodat lösenord. Med Bcrypt tar det 99 år att hitta samma lösenord. Ett annat sätt att illustrera det är med en kraftfull AI-server med 10 000 Nvidia A100-kort – något i stil med Chat GPT – som tar en sekund på sig med MD5 men fem dagar med Bcrypt.

Med en lösenordshanterare är det enkelt att slumpa fram betydligt längre lösenord än vad som idag är nödvändigt för att hindra ens de mest kraftfulla datorer att gissa rätt. Å andra sidan kan digitala nycklar göra lösenord överflödiga och har ännu högre säkerhet.