It's so annoying to have to discover the rules one rejected attempt at a time. Worse yet: sometimes you just get vague feedback a la "password contains illegal characters". I usually let KeePassXC generate a safe password for me but in that case I then have to manually permutate the different character classes (numbers, letters, spaces, punctuation, etc) until I find the offender. No good.
Password must contain an uppercase letter.
Password must contain a special character.
Not that one.
Not that one either.
Nearly had it there! Too bad you only get 5 attempts. Account locked.
I've had that happen a couple of times too. In the most striking example, I was able to log in by typing html escape tags instead of the special characters in the password. ... ... That's a very bad sign for the website security for several obvious reasons.
Walmart's internal systems used to do this, if you used a special char in your password (such as an % or &) on newer devices you couldn't log in anymore, only solution was having HR reset your login lol
None of these possibilities have any effect on their password handling security since all of that is usually handled on the frontend (on your computer).
My company forces me to change the password every 3 months AND I cannot use the last 10. I use a very strong password and this rule is ridiculous. So I just change it 11 times, iterating a number at the end until I can use my last one. Fuck you.
This'll happen if there's been a suspected data breach with poor password encryption or requirements. Gotta be safe and change the algorithm, breaking everyone's existing passwords. But yeah, it is annoying...
I wouldn't have a problem with this if the website just told us there was a breach and we need to change our password. The problem is when they gaslight me about it.
Oh, I thought it had something to do with password hashes, where websites don't actually know your password, but if the hash is the same, then it assumes that you entered the right PW. At least that's how my non-technical brain understands how it works.
That's correct, let's say a database was breached and the hacker has every user and their password hashes. They can login with testuser@email.com with password "password123" and see if the generated hash matches any other user's password hash. If so, they might be able to hack many accounts with the same password or even reverse engineer and decrypt every other password.
Developers can make the hash more secure by adding arbitrary characters to the password (aka a salt), and this becomes the site's "authentication algorithm". But if the hashes are stolen, it may be a matter of time before the algorithm is figured out, which leads to updates, which leads to your pre-existing hash no longer matching.