sql >> Database teknologi >  >> RDS >> Mysql

Brugernavn, Adgangskode, Saltning, Kryptering, Hash – Hvordan fungerer det hele?

Hvis du udelukker captchas, så prøv limits, lockouts osv. så ja. Du skal bare brute force ren tekststrengen.

Det tager dog tid - i det mindste er det begrænset af den hastighed, hvormed serveren vil reagere på login-anmodninger. Selvom udvikleren ikke tilføjer nogen foranstaltninger for at forhindre brute forcering, kan serveren selv kun gå gennem kryptering + verifikationsprocessen så hurtigt og kan kun håndtere så mange parallelle anmodninger.

Når det er sagt, er det derfor, det er vigtigt at

  • Som bruger skal du bruge en stærk adgangskode, der er svær at bruge bruteforce
  • Som udvikler skal du have tilstrækkelige foranstaltninger til at forhindre brute-forcement af din login-proces

Hashing og saltning af adgangskoder er ikke for at beskytte mod folk, der brutalt tvinger den naturlige login-proces (der er andre ting, der beskytter mod det). I stedet skal de beskytte mod potentiel kompromittering af selve adgangskodelagringen (f.eks. en person, der dumper indholdet af databasen).

Både hashing og saltning tjener til at mindske hastigheden hvor en person med adgang til de lagrede adgangskoder kan hente den almindelige tekststreng, de skal bruge for at kunne gennemgå den naturlige login-proces (på dit websted eller andre websteder , da adgangskoder almindeligvis deles mellem websteder) uden at udløse anti-brute-tvingende sikkerhedsforanstaltninger.



  1. hvad er den bedste metode til at lave ubegrænsede underkategorier

  2. Sphinx vs. MySql - Søg gennem listen over venner (effektivitet/hastighed)

  3. Gem base64-kodet billede til server-side database som BLOB

  4. MIN() – Find minimumsværdien i en kolonne i MySQL