14Aug
Hvis du nogensinde har modtaget en besked om, at din nye adgangskode er for ligner din gamle, kan du være nysgerrig om, hvordan dit Linux-system 'ved' de er for meget ens. Dagens SuperUser Q & A-post giver et kig bag 'magisk gardin' til hvad der foregår for en nysgerrig læser.
Dagens Spørgsmål &Svar session kommer til os høflighed af SuperUser-en underafdeling af Stack Exchange, en community-drevet gruppe af Q & A-websteder.
Skærmbillede høflighed af marc falardeau( Flickr).
Spørgsmål
SuperUser-læser LeNoob ønsker at vide, hvordan et Linux-system ved ", at adgangskoder er for ligner hinanden:
Jeg forsøgte at ændre et brugeradgangskode på forskellige Linux-maskiner et par gange, og da den nye adgangskode var meget som dengamle, operativsystemet sagde, at de var for ens.
Jeg har altid spekuleret på, hvordan kender operativsystemet dette? Jeg troede, at adgangskoder blev gemt som en hash. Betyr det, at når systemet er i stand til at sammenligne den nye adgangskode til lighed med den gamle, at den rent faktisk gemmes som almindelig tekst?
Hvordan kender et Linux-system, at adgangskoder er for ligner hinanden?
Svaret
SuperUser-bidragyder slhck har svaret for os:
Da du skal forsyne både de gamle og de nye adgangskoder, når du bruger passwd, kan de let sammenlignes i almindelig tekst.
Din adgangskode er faktisk hashed, når den endelig gemmes, men indtil det sker, kan værktøjet, hvor du indtaster dit kodeord, kun få adgang til det direkte.
Dette er en funktion af PAM-systemet, som bruges i baggrunden af passwd-værktøjet. PAM bruges af moderne Linux distributioner. Mere specifikt er pam_cracklib et modul til PAM, der gør det muligt at afvise passwords baseret på ligheder og svagheder.
Det er ikke kun adgangskoder, der er for lignede, der kan betragtes som usikre. Kildekoden indeholder forskellige eksempler på, hvad der kan kontrolleres, f.eks. Om et kodeord er et palindrom eller hvad redigeringsafstanden er mellem to ord. Tanken er at gøre adgangskoder mere modstandsdygtige mod ordboksangreb.
Se pam_cracklib manpage for mere information.
Sørg for at læse resten af den livlige diskussion på SuperUser via emnetråden, der er linket nedenfor.
Har du noget at tilføje til forklaringen? Lyde af i kommentarerne. Vil du læse flere svar fra andre tech-savvy Stack Exchange brugere? Tjek den fulde diskussionstråd her.