Lösenordsstyrkemätare som faktiskt hjälper: UX- och NIST-vägledning
Hur man designar lösenordsfält och styrkemätare som följer gällande NIST-vägledning: längd över symboler, blockeringslistor, klistra in och lösenordshanterare och tydlig feedback.
Core Takeaway
Nuvarande NIST-vägledning (SP 800-63B) gynnar längd och blockeringslistor framför kompositionsregler: lösenord som används på egen hand måste vara minst 15 tecken, tjänster bör tillåta minst 64 och de får inte kräva blandningar av teckentyper. En bra styrkemätare uppskattar verklig gissbarhet, belönar längd, förklarar problem med klara ord och fungerar med inklistrings- och lösenordshanterare.
Vad NIST nu säger
NIST Special Publication 800-63B anger moderna lösenordsregler för verifierare:
- Lösenord som används som enda faktor måste vara minst 15 tecken; lösenord som används inom multifaktorautentisering kan vara kortare men minst 8.
- Tjänsterna bör tillåta en maximal längd på minst 64 tecken.
- Tjänster får inte införa kompositionsregler som att kräva blandningar av karaktärstyper.
- Nya lösenord måste kontrolleras mot en blockeringslista med vanliga, förväntade eller komprometterade värden, med orsaken till avslaget visad.
- Tjänsterna måste erbjuda vägledning för att hjälpa människor att välja ett starkt lösenord.
Vilken bra mätare
Att räkna teckentyper belönar "Lösenord1!" och straffar en lång lösenfras. Uppskattare som Dropbox open-source zxcvbn letar istället efter mönster som angripare använder, känner igen tiotusentals vanliga lösenord, namn och ord och uppskattar hur gissbart lösenordet verkligen är. Basera mätaren på en sådan uppskattning, plus din blocklista.
Designa fältet
Små detaljer avgör om människor lyckas:
- Tillåt klistra in och autofyll så att lösenordshanterare fungerar.
- Erbjud en visa/dölj-växel istället för ett bekräftelse-lösenordsfält där du kan.
- Visa krav innan du skriver, och se sedan hur folk skriver.
- Förklara avslag i vanliga ord: "Detta lösenord visas vid kända intrång."
- Ställ inte in en konstgjort låg maxlängd.
Rörelse och feedback
En mätare som fylls smidigt när lösenordet förbättras ger uppmuntrande, omedelbar feedback. Animera den inte så mycket att den distraherar, använd inte färg ensam (lägg till en textetikett som "Stark") och undvik att skaka fältet medan folk fortfarande skriver.
Nyckel Principles att komma ihåg
- NIST: 15+ tecken för enfaktorlösenord, minst 64 tillåtna
- Inga sammansättningsregler; kolla mot en blockeringslista istället
- Uppskatta gissbarhet (till exempel med zxcvbn), inte teckentyper
- Tillåt inklistrings- och lösenordshanterare; erbjuda visa/gömma
- Para ihop mätarens färg med en textetikett
Vanliga frågor
Källor
- NIST SP 800-63B: Authentication and Authenticator Management — NIST
- zxcvbn: low-budget password strength estimation — GitHub (Dropbox)
- Error-Message Guidelines — Nielsen Norman Group