Despite clear guidance from leading security standards like NIST SP 800-63B and the OWASP Authentication Cheat Sheet, many websites and enterprise security policies still cling to complexity rules from the early 2000s—while ignoring modern best practices like breach password detection that actually improve security.
What the Security Experts Actually Say
The latest security standards are crystal clear about password complexity:
NIST SP 800-63B states:
"No other complexity requirements for memorized secrets SHOULD be imposed."
"There should be no password composition rules limiting the type of characters permitted. There should be no requirement for upper or lower case or numbers or special characters."
OWASP Authentication Cheat Sheet echoes this guidance, emphasizing length over complexity.
Why Password Complexity Rules Backfire
1. Predictable User Behavior
When you require "uppercase + lowercase + numbers + symbols," users don't create random passwords. They follow predictable patterns:
password
becomesPassword1!
john
becomesJohn123@
love
becomesLove2024#
The problem: These patterns are well-known to attackers. Password cracking tools test these exact transformations first.
2. Users Get Frustrated and Give Up
Complex requirements lead to password fatigue: users either abandon account creation entirely (hurting business growth) or resort to reusing the same "complex" password everywhere to avoid the frustration
3. Counterproductive Workarounds
Complex policies push users toward risky behaviors:
- Writing passwords down insecurely: Sticky notes on monitors, unencrypted phone notes, or email drafts with
MyComplex123!@#
- Password reuse across systems: Creating one "super complex" password like
MyWork2024!@#
and using it everywhere—one breach compromises all accounts - Predictable incrementing:
Spring2024!
→Summer2024!
→Fall2024!
—if attackers get one password, they can predict the next - Personal info + complexity rules:
CompanyName123!
orHometown2024@
using easily researched information from social media
What Actually Works: The Foundation
Focus on Length, Not Complexity
- Minimum 8 characters for user-chosen passwords
- At least 64 characters maximum to support passphrases like "correct horse battery staple is easier to remember than C0rr3ct!"
- Allow ALL characters including unicode, spaces, and emojis 🔒
Note: For higher-security systems, NIST allows longer minimums based on risk assessment.
The Real Security Measures That Matter
A simple 8-character password isn't secure enough on its own. Here's what actually protects users:
Block Breached Passwords
- Use services like "Pwned Passwords" to check against 10+ billion known compromised passwords
- Block common passwords like
password123
regardless of complexity - This stops more attacks than complexity rules ever will
Rate Limiting & Account Protection
- Limit failed attempts (max 100 consecutive failures per NIST)
- Progressive delays (1 second, then 2 seconds, then 4 seconds...)
- Account lockout policies after repeated failures
Password Strength Feedback
- Visual strength meters help users understand what makes passwords strong
- Real-time feedback during password creation
The Game-Changers: Modern Authentication UX
Support Password Managers Properly
Your login forms should:
- Allow pasting into password fields (don't block Ctrl+V!)
- Use standard HTML
<input type="password">
- Support Tab navigation between username/password fields
- Avoid custom input widgets that break auto-fill
Why this matters: Password managers enable truly random, unique passwords per site—exactly what security professionals want.
Multi-Factor Authentication (MFA)
Microsoft research shows MFA stops 99.9% of account compromises. Even if passwords are compromised, MFA provides protection.
Passkeys: The Future
Passkeys eliminate passwords entirely, using cryptographic keys tied to your device. They're:
- Impossible to phish
- Unique per site automatically
- No user memory required
The Bottom Line
We understand that for enterprise organizations, adopting these modern best practices requires more work than simply adding "password must contain symbols" to your policy.
But requiring P@ssw0rd123!
instead of correct horse battery staple
provides only a false sense of security while frustrating users into unsafe behaviors.
The path forward:
- Remove complexity requirements from your password policies
- Implement breach password checking and rate limiting
- Design login forms that work well with password managers
- Deploy MFA for meaningful protection
- Plan for passkeys as the long-term solution
Your users—and your security posture—will thank you.
Sources: NIST Special Publication 800-63B "Digital Identity Guidelines" and OWASP Authentication Cheat Sheet