Hoppa till innehållet

Saltning av lösenord

Vid saltning får varje ny lösenordshash ett eget slumpmässigt tilläggsvärde. Saltet sparas tillsammans med hashen och behöver inte vara hemligt.

IT-säkerhet

Använd ett eget salt för varje lösenordshash

Vid saltning får varje ny lösenordshash ett eget tilläggsvärde som genereras säkert och slumpmässigt. Saltet är en indata till hashfunktionen för lösenord. Det behöver inte vara hemligt och sparas tillsammans med kontrollvärdet. Ett korrekt använt bibliotek för lösenordshashning kan sköta genereringen och hanteringen.

I en fiktiv applikation väljer account-A och account-B samma lösenord. Biblioteket genererar oberoende slumpmässiga salt åt dem. Namnen salt-A och salt-B står bara för dessa värden; de är inga användbara saltinställningar. Olika salt hindrar en angripare från att enkelt återanvända en förberäknad hash för alla konton.

Kontrollera med det sparade värdet

Vid en senare inloggning använder biblioteket det sparade saltet och parametrarna för att kontrollera det angivna lösenordet. Det genererar inte ett nytt salt varje gång en befintlig lösenordshash kontrolleras. När en ny lösenordshash skapas används däremot ett nytt salt.

Ett salt är inte en pepper: en pepper är en ytterligare hemlighet som kan skydda flera lösenordsposter och förvaras åtskild från lösenordsdatabasen. Ett salt ersätter inte heller en tillräckligt krävande hashfunktion för lösenord. Den som har en databaskopia kan fortfarande prova lösenordskandidater med respektive salt; svaga lösenord är därför fortfarande utsatta.

Källor