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.
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
Relaterade begrepp
- Argon2Argon2 är en familj minneskrävande hashfunktioner för lösenord. Variant, minnesbehov och körtid måste passa säkerhetskraven och driften.
- PasskeyEn passkey möjliggör inloggning med ett tjänstebundet nyckelpar. Enhetsbyte, kontoåterställning och rättigheter behöver fortfarande hanteras.
- HttpOnly-kakaHttpOnly hindrar skript från direkt åtkomst till kakan. Förfrågningar som matchar kan fortfarande skicka den; session och rättigheter måste kontrolleras.
- DataminimeringDataminimering begränsar personuppgifter till vad som är lämpligt, relevant och nödvändigt för ett bestämt ändamål.
- Policy för datalagringEn policy för datalagring anger syfte, start, varaktighet och slut för lagringen. Raderingsjobb och kopior måste ingå i den tekniska lösningen.
- Envelope-krypteringEnvelope-kryptering skiljer datanyckeln från den nyckel som skyddar den. Den krypterade filen och inpackade datanyckeln behöver hanteras tillsammans.
Ditt projekt med ASES
Beskriv ditt projekt för oss. Vi hör av oss med en första bedömning.