NIST SP 800-63B lật ngược khá nhiều quy tắc cũ vì chúng làm giảm chứ không tăng an toàn thực tế.
Nên làm:
- Cho phép mật khẩu dài tối thiểu 8 ký tự (khuyến khích 15+), tối đa ít nhất 64 ký tự.
- Chấp nhận mọi ký tự in được, kể cả khoảng trắng và Unicode — để passphrase dùng được.
- Đối chiếu với danh sách mật khẩu đã lộ / quá phổ biến và từ chối ngay khi user đặt.
- Cho phép dán (paste) để người dùng dùng password manager được.
Không nên làm:
- Không ép đổi định kỳ (60/90 ngày) trừ khi có bằng chứng lộ. Lý do: khi bị ép, người dùng chọn biến thể có thể đoán (Matkhau01 → Matkhau02) hoặc ghi ra giấy → entropy thực tế giảm.
- Không ép luật thành phần kiểu "phải có 1 hoa, 1 số, 1 ký tự đặc biệt" — đẩy người dùng về những khuôn mẫu quen thuộc mà công cụ bẻ khoá đã học.
- Không dùng câu hỏi bí mật (tên trường cấp 1, tên thú cưng) làm yếu tố xác thực.
Chốt: thay "phức tạp + đổi liên tục" bằng "dài + chưa từng lộ + có MFA", và chỉ ép đổi khi có dấu hiệu tài khoản bị xâm phạm.