(To be clear, we're talking about truly "must be memorized" secrets: the "initial" passwords to your password manager, your AD / VPN login, etc.)
These NIST principles:
"length is more important that complexity"
"forced rotation is bad"
... are a start, but they are all outdated proxies for the only true password principle:
This uniqueness s not terribly hard. A five-word random passphrase from a 20K+ dictionary, with no other requirements:
And if you're dealing with a system that enforces other complexity, just apply the same complexity every time. This is safe because the strength of the password comes from the number of combinations. Capitalizing the first word, and appending 1 and an underscore is what I do to meet naive complexity. And I'm totally fine sharing that with the world because that's not what makes my passwords strong.
And if the platform has a length maximum, it's usually not one that requires memorization, and the password can just be set to random 15 ASCII chars and stored in your password manager.
tl;dr Give your users a password manager, and teach them to make random passphrases for their must-be-memorized secrets. Anything else is wasting time, teaching them things that are already outdated.
¹This is 3x1021 combinations. Worried about nation states or aliens? Use a bigger wordlist ... or just add one more word. Instantly makes it 20K+ times harder to crack (6x1025).
GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.
All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.