パスワード強度チェック
新しく決めたパスワードが十分かどうか、すぐに確かめたいときに。入力はこのブラウザの中だけで判定し、サーバーへは送りません。
🔒 入力内容はお使いのブラウザ内だけで処理され、サーバーには送信されません。
判定結果にはパスワードそのものは含めません。長さ・文字種・エントロピー・検出したパターンだけを出力します。
使い方
- 上の欄にパスワードを入力します。マスク表示で、「表示する」で確認できます。
- 入力するたびに、長さ・文字種・エントロピー・推定解読時間が更新されます。
- 「検出したパターン」に、辞書語や連続した文字など攻撃者が先に試す作り方が出ていないか確認します。
- 「改善の提案」を参考に作り直し、総合評価が「強い」以上になることを目安にしてください。
判定の決まり
| 項目 | 計算・判定 |
|---|---|
| 文字の種類数 | 小文字 26、大文字 26、数字 10、記号 33。日本語などは 1 文字ごとに加算 |
| エントロピー | 長さ × log2(文字の種類数)。ランダムに選んだ場合の値で、パターンがあると実際はこれより低くなります |
| 推定解読時間 | 候補の総数の半分 ÷ 攻撃速度。オフライン攻撃は 1 秒に 10^10 回(漏れたハッシュを GPU で総当たり)、オンライン攻撃は 1 秒に 100 回(ログイン画面に直接試す) |
| よく使われるパスワード | 内蔵の約 800 語と大文字小文字を無視して照合。一致した場合は「即時」 |
| 辞書語 | 英単語と日本語のローマ字の短い内蔵リストと照合。@→a、0→o などの置き換えも戻して照合 |
| 連続・繰り返し・配列 | abcd 1234 のような連続、aaaa abab のような繰り返し、qwerty 1qaz のようなキーボード配列 |
| 年号・日付 | 1900〜2099 の 4 桁と、月日に見える 4 桁 |
| 総合評価 | エントロピーからパターンごとに減点した値で 5 段階 |
こんな時に
- 新しいサービスに登録するとき: 決めたパスワードが「弱い」なら、登録前に作り直せます。
- 社内のパスワードルールを決めるとき: 「8 文字以上・記号必須」のようなルールが実際にどの程度の強さになるか試せます。
- 既存のパスワードを見直すとき: 同じ作り方の別の文字列で試せば、実物を入力せずに傾向が分かります。
注意
- 判定はすべてブラウザ内で行い、入力内容を送信・保存しません。それでも、共有の端末や画面共有中の入力は避けてください。
- 推定解読時間は桁の目安です。サービス側のハッシュ方式(bcrypt や Argon2 なら大幅に長くなります)や攻撃者の設備で変わります。
- 強いパスワードでも、使い回すと他のサービスからの漏えいで突破されます。サービスごとに別にし、可能なら二要素認証を有効にしてください。
よくある質問
本当に入力したパスワードは送信されませんか?
送信しません。このページの JavaScript は通信を行う処理(fetch や XMLHttpRequest)を含んでおらず、判定はすべてお使いのブラウザの中で行います。ブラウザに保存する機能もありません。それでも心配な場合は、実際に使うパスワードそのものではなく、同じ構成(長さ・文字種・作り方)の別の文字列で試してください。
推定解読時間はどう計算していますか?
文字種から求めた候補の総数(文字の種類数の長さ乗)の半分を試すのにかかる時間を、オフライン攻撃は 1 秒に 100 億回、オンライン攻撃は 1 秒に 100 回として計算しています。よく使われるパスワードや辞書語、パターンに当てはまる場合は、総当たりより先に試されるため、この計算より大幅に短くなります。実際の攻撃速度はハッシュ方式や攻撃者の設備で変わるため、桁の目安としてご覧ください。
記号を入れれば安全になりますか?
記号を入れると候補の総数は増えますが、Password1! のように辞書語の末尾に数字と記号を足す作り方は攻撃側のルールとして織り込まれており、ほとんど効果がありません。長さを増やす方が確実です。無関係な単語を 4 つ以上つなげる、またはパスワード管理ソフトで生成した 16 文字以上のランダムな文字列を使うことを推奨します。
強いパスワードなら使い回しても大丈夫ですか?
どれほど強くても、使い回しは避けてください。あるサービスから漏れたパスワードは、他のサービスにそのまま試されます(パスワードリスト攻撃)。この攻撃にはパスワードの強さは関係ありません。サービスごとに別のパスワードを使い、管理ソフトで保管することを推奨します。