パスワード強度チェック
パスワード強度チェックでは、辞書語・連番・反復などの推測されやすいパターンを診断します。新しいパスワードを作る機能ではなく、候補の弱点を見直すためのツールです。重要なアカウントの実物は避け、特徴を再現した近似サンプルでお試しください。
診断処理はブラウザ内で行います。入力は最大256文字(Unicodeコードポイント)。空白や全角文字を変換せずに評価します。
日本語辞書の対象は主にローマ字表記です。漢字・かな・固有名詞・表記ゆれを網羅しないため、日本語を含む候補は過大評価される場合があります。
強度診断アルゴリズムの仕組み
zxcvbn-ts core 4.2.0 と common・英語・日本語の言語パッケージ 4.1.1 を使用します。初回の診断時に必要なコードと辞書を読み込み、ブラウザ内で照合します。外部の漏洩確認APIは使いません。
人が選ぶ文字列には辞書語や規則性があるため、文字種の多さだけでは評価できません。ここではパターンを考慮した0〜4のスコアと改善案を表示し、エントロピーや解読時間は表示しません。ランダム生成パスワードの理論値とは別の指標です。
| 方法 | 出典 | 対象と限界 |
|---|---|---|
| パターン評価 | zxcvbn-ts core 4.2.0 | 辞書、置換、反復、連番、日付、キーボード配列。既知の規則に基づく推定で、安全を保証しません。 |
| 照合辞書 | language-common / language-en / language-ja 4.1.1 | 共通・英語・日本語の同梱辞書。日本語は主にローマ字表記で、漢字・かな・固有名詞・表記ゆれを網羅しません。 |
| 研究の背景 | Wheeler, zxcvbn(USENIX Security 2016) | パスワードの推測可能性を評価する手法。現在の攻撃環境や利用者ごとの個人情報を完全に再現するものではありません。 |
| 運用上の基準 | NIST SP 800-63B-4 | 長さ、漏洩候補の拒否、試行制限などの運用要件。このツールはNIST適合性を判定しません。 |
入力は最大256 Unicodeコードポイントで、空白・全角文字を正規化せずに評価します。日本語を含む候補は、辞書の対象外の表現によって過大評価される場合があります。漏洩の有無や他サービスでの使い回しも判定できません。
辞書データの帰属:日本語の commonWords は OpenSubtitles 2024(Helsinki-NLP / OPUS)由来で、字幕の投稿者・権利者に帰属します。パッケージにはトークン化・頻度集計・正規化・フィルタリング済みの派生データが含まれます(入力自体は正規化しません)。ODC-BY。zxcvbn-ts のコードは MIT ライセンス(© 2012–2016 Dan Wheeler and Dropbox, Inc.; © 2021 @zxcvbn-ts)です。
よくある弱いパターンと実例
① 辞書単語ベースのパスワード
「password」「welcome」「admin」のような辞書に載っている単語は、攻撃者が最初に試す候補リストに含まれています。末尾に数字を付けた「password123」「welcome2024」も、単語と数字の規則を残します。辞書攻撃では候補リストとその変形を試すため、長さがあっても予測できる構造なら推測されやすくなります。
② 連続・反復パターン
「123456」「abcdef」「qwerty」(キーボード配列順)、「aaaaaa」(同じ文字の反復)は、規則が予測しやすい候補です。zxcvbn-tsは連番・キーボード配列・反復などを照合します。文字数を増やしても同じ規則を繰り返すだけでは、推測されにくさは十分に改善しません。
③ 個人情報の組み合わせ
誕生日(19900515)、名前(tanaka)、ペットの名前、住所の一部など、公開情報や推測可能な情報を含むパスワードは、ソーシャルエンジニアリング攻撃の対象になります。FacebookやInstagramのプロフィールから誕生日・ペット・趣味などの情報を収集し、それらを組み合わせたパスワードを優先的に試す手法が一般化しています。IPAは「個人情報を含むパスワードは避ける」ことを明確に推奨しています。
④ 短すぎるパスワード
短いパスワードは推測されやすく、文字種だけを増やしても辞書語や使い回しのリスクは解消しません。NIST SP 800-63B-4(2025年)は、単一要素認証に使うパスワードを最低15文字、多要素認証の一部としてのみ使うパスワードを最低8文字と定めています。このツールの強度表示はNIST適合性の判定ではありません。サービスが許す範囲で、十分に長く使い回しのないパスワードを選んでください。
推測されにくさと実際の安全性の違い
当サイトの診断ツールが示す評価は、既知のパターンをもとにした推測されにくさの目安です。実際のセキュリティは、以下の要因にも大きく左右されます:
- サービス側の対策:ログイン試行回数制限(5回失敗でロック)、CAPTCHA、多要素認証(MFA)、アカウントロックアウト機能があれば、総当たり攻撃は事実上不可能になります。
- パスワードハッシュの強度:サービスがbcrypt、Argon2、PBKDF2などの遅いハッシュ関数を使用していれば、仮にデータベースが漏洩しても解読に膨大な時間がかかります。逆に、MD5やSHA-1などの高速ハッシュでは危険です。
- 使い回しの有無:他のサービスで同じパスワードを使っている場合、そのサービスから漏洩すれば「パスワードリスト攻撃」で即座に不正ログインされます。スコアが高くても、使い回しは致命的です。
- 過去の漏洩データベース:Have I Been Pwnedには100億件以上の漏洩パスワードが登録されており、攻撃者はまずこれらを試します。当サイトでは漏洩確認機能は提供していませんが、気になる方は専用サービスをご利用ください。
診断結果「強い」でも油断しない:スコアが高くても、辞書単語を含む・他サービスと使い回している・フィッシング詐欺で直接盗まれる、といったリスクは別に存在します。パスワードの強度向上は多層防御の1つであり、パスワードマネージャー・MFA・フィッシング対策を併用することが重要です。
診断結果が弱かった場合の対処法
診断で「推測されやすい」と表示された場合、以下の手順で改善してください:
ステップ1:新しいパスワードを生成
現在のパスワードを修正するのではなく、パスワード生成ツールで完全にランダムな新しいパスワードを作成してください。「標準」モード、16文字以上、英大文字・英小文字・数字・記号をすべて有効にするのが推奨設定です。
ステップ2:パスワードマネージャーに保存
生成したパスワードは人間が記憶できないため、パスワードマネージャー(1Password、Bitwarden、Google パスワード マネージャーなど)に保存します。マスターパスワード1つを覚えれば、あとは自動入力されます。
ステップ3:サービス側で変更
対象のWebサービスにログインし、「設定」→「パスワード変更」から新しいパスワードに更新します。変更後は、パスワードマネージャーに保存したパスワードで正常にログインできることを確認してください。
ステップ4:多要素認証(MFA)を有効化
パスワードを強化しても、フィッシング詐欺で盗まれるリスクは残ります。重要なアカウント(銀行・メール・SNS)では、多要素認証(SMS認証・認証アプリ・セキュリティキー)を必ず有効にしてください。
パスワード強度チェックでわかること・わからないこと
わかること:辞書語・反復・連番・日付・キーボード配列など、診断辞書で検出できるパターンと、それに基づく0〜4の評価・改善案です。
わからないこと:そのパスワードがすでに漏洩・流出しているかどうかは判定できません。漏洩の有無を確認したい場合は、Have I Been Pwnedなどの専用サービスの利用をご検討ください(この診断エンジンでは外部APIへの送信・照合は行いません)。
入力前の注意:診断文字列を当サイトへ送信しなくても、悪意のあるブラウザ拡張機能、画面共有、キーロガー、クリップボード履歴などの端末側リスクは残ります。実際に利用中の秘密情報を貼り付ける必要はありません。
診断結果が良くなかった場合:「パスワード生成ツール」で、より安全なパスワードを新しく作成することをおすすめします。