Password policies. Every site has a different one. How often they should be changed. Special characters. Do they display as you enter, etc. By 2021 we have all come to the realisation that the password is imperfect. But, its all we know. Does that mean we cannot improve?
The US National Institute of Standards has a special publication, NIST 800-63B that talks about Identity guidelines. I cover it in more detail here. It is a set of best practices for password policies, codified. And, I will wager, your system is not compliant. Let’s look at a couple of examples:
Password Complexity (Composition Rules)
Verifiers SHOULD NOT impose other composition rules (e.g., requiring mixtures of different character types or prohibiting consecutively repeated characters) for memorized secrets.
https://pages.nist.gov/800-63-3/sp800-63b.html, 5.1.1.2 Memorized Secret Verifiers
Huh. Is that what your password policy says? Or does it say “at least one special character, at least one upper case, one lower case and 2 numbers”? Now, I’m not suggesting you should use “12345“, but, forcing too much complexity is not increasing the odds people will remember a more complex passphrase.
Password Change Frequency
Verifiers SHOULD NOT require memorized secrets to be changed arbitrarily (e.g., periodically). However, verifiers SHALL force a change if there is evidence of compromise of the authenticator.
https://pages.nist.gov/800-63-3/sp800-63b.html, 5.1.1.2 Memorized Secret Verifiers
Huh, is that what your password policy says? Or does it require you to change it every 19 days +- 3?
Show The Password
In order to assist the claimant in successfully entering a memorized secret, the verifier SHOULD offer an option to display the secret — rather than a series of dots or asterisks — until it is entered. This allows the claimant to verify their entry if they are in a location where their screen is unlikely to be observed. The verifier MAY also permit the user’s device to display individual entered characters for a short time after each character is typed to verify correct entry. This is particularly applicable on mobile devices.
https://pages.nist.gov/800-63-3/sp800-63b.html, 5.1.1.2 Memorized Secret Verifiers
As someone who has poor vision, this is a password policy that bothers me. I know the password I’m creating. I’m not sure I’m typing it properly. Let me see please.
It also goes on to talk about salt+hashed passwords, something that is inexcusable if sites don’t do it. I’ll let you in on a secret: if your system can retrieve your password, it is not salt+hashed.