NIST SP 800-63B パスワードガイドライン

NIST SP 800-63Bパスワードガイドラインを理解します。最小長さ要件、禁止パスワードリスト、NISTが強制的な複雑さルールと定期的なローテーションに反対する理由を学びます。

Security Standards

詳細な説明

NIST SP 800-63B パスワード要件

米国国立標準技術研究所(NIST)はSpecial Publication 800-63B(デジタルアイデンティティガイドライン)を発行し、パスワードのベストプラクティスを根本的に変更しました。その多くの推奨事項は従来の企業パスワードポリシーと矛盾しています。

NISTの主要な推奨事項

1. 最小長さ:8文字(15文字以上推奨)

NISTはユーザーが選択するパスワードに最低8文字を要求し、少なくとも64文字までのパスワードをサポートすることを推奨しています。生成されたパスワードやパスフレーズには、はるかに長い文字列を推奨しています。

2. 構成ルールなし

NISTは特定の文字タイプ(大文字、小文字、数字、記号)の要求に明確に反対しています。研究によると、強制的な複雑さは予測可能なパターンにつながります:

Password1!    <- 複雑さルールを満たすが弱い
Tr0ub4dor&3   <- ルールを満たすがパターンに従っている

代わりに、NISTは主要な強度指標として複雑さよりも長さを支持しています。

3. 漏洩パスワードリストとの照合

パスワードは既知の侵害されたパスワードのデータベースと照合すべきです:

  • データ侵害で漏洩したパスワード
  • 辞書の単語
  • 反復的または連続的な文字(aaaa1234
  • コンテキスト固有の単語(ユーザー名、サービス名)

4. 強制的な定期ローテーションなし

NISTはスケジュールに基づくパスワード変更の強制(30/60/90日ごと)に反対しています。強制ローテーションは予測可能な増分変更につながります:

Summer2024! -> Fall2024! -> Winter2025!

パスワードは侵害の証拠がある場合にのみ変更すべきです。

5. パスワードヒントや知識ベースの質問なし

セキュリティの質問(「お母さんの旧姓は?」)はソーシャルメディアを通じて簡単に調査できます。NISTはこれらを完全に排除することを推奨しています。

NISTガイドラインの実装

NIST推奨に準拠したパスワードを生成する場合:

  • 最大限のセキュリティのために長さを15文字以上に設定
  • ランダム性にCSPRNGを使用
  • 生成されたパスワードを侵害データベース(例:Have I Been Pwned API)と照合
  • モダンなハッシュ関数(Argon2id、bcrypt、またはscrypt)を使用してパスワードを保存

ユースケース

NISTガイドラインは米国政府機関のゴールドスタンダードであり、民間組織にも広く採用されています。認証システムを構築する開発者、パスワードポリシーを評価するセキュリティ監査人、Active DirectoryやLDAPポリシーを設定するIT管理者は、NIST SP 800-63Bを最新のパスワード要件のベースラインとして従うべきです。

試してみる — Password Generator

フルツールを開く