パスワード強度チェッカー|突破までの時間を計算(入力内容は送信されません)

パスワードの強さは「記号を入れたかどうか」ではなく、推測される可能性の総数(情報量)で決まります。このツールは、入力されたパスワードの情報量をビット単位で計算し、攻撃の種類ごとに突破までにかかる時間の目安を表示します。

入力した内容はどこにも送信されません。計算はすべてブラウザの中だけで行われ、保存もされません。

パスワード強度チェッカー

パスワードの「情報量」を計算し、総当たりで破られるまでの時間の目安を表示します

🔒 入力したパスワードは、どこにも送信されません。計算はすべてお使いのブラウザの中だけで行われ、保存もされません。ページを閉じた時点で消えます。それでも不安な場合は、実際に使っているものではなく「同じ長さ・同じ作り方の別の文字列」で試してください。

パスワードを入力してください

安全なパスワードを生成する(生成もブラウザ内で行われます)

「複雑さ」より「長さ」が効く理由

パスワードの強度は、次の式で決まります。

情報量(ビット) = log₂(使える文字の種類) × 文字数

ここで重要なのは、文字の種類は掛け算の「係数」にしかならないのに対し、文字数は指数として効くという点です。

  • 記号を追加して文字種を62→95に増やす … 1文字あたり 5.95 → 6.57 ビット(約10%増
  • 文字数を12→16に増やす … 全体で 71.5 → 95.3 ビット(約33%増、突破時間は1,400万倍

つまり「Pa$$w0rd! のように記号で置き換える」よりも、「単純でも長くする」ほうが圧倒的に効きます。しかも記号への置き換えは攻撃側のツールが標準で試すパターンなので、実際の効果はさらに小さくなります。

文字数と文字種による強度の違い

GPUで高速ハッシュ(MD5やSHA-1など)を総当たりする場合の、平均的な突破時間の目安です。毎秒1,000億回の試行を仮定しています。

文字数小文字のみ英大小英数字英数字+記号
8文字約1秒約4分約18分約10時間
12文字約6日約60年約540年約8万年
16文字約6,700年約4億年約80億年約7兆年
20文字約29億年約4,600兆年

※ ランダムな文字列である場合の理論値です。辞書に載っている単語や、よくあるパターンを含む場合は、この数値よりはるかに短時間で破られます。上のツールはそうしたパターンを検出して減点しています。

そもそも、パスワードはどうやって破られるのか

1. パスワードリスト型攻撃(もっとも現実的な脅威)

どこかのサービスから流出したメールアドレスとパスワードの組み合わせを、そのまま他のサービスで試す攻撃です。パスワードの強さは一切関係ありません。どんなに複雑なパスワードでも、使い回していれば1か所の流出で全部が抜かれます。

この攻撃に対する唯一の対策は、サービスごとに違うパスワードを使うことです。強度を上げても意味がありません。

2. 辞書攻撃

単語のリストや、過去の流出パスワードのリストを片っ端から試す方法です。sakura2020 のようなパスワードは、文字数が10文字あっても数秒で破られます。上のツールが「よく使われる文字列」を検出しているのはこのためです。

3. 総当たり攻撃(ブルートフォース)

すべての組み合わせを順に試す方法です。上の表が示すのがこれで、長さが十分なら現実的に不可能になります。

4. オンライン攻撃とオフライン攻撃の違い

この2つは速度が桁違いです。

  • オンライン攻撃…実際のログイン画面に対して試す方法。回数制限やロックがあるため、毎秒10回程度が限界
  • オフライン攻撃…サービスから流出したハッシュ値に対して、攻撃者の手元で試す方法。GPUを使えば毎秒数百億回

つまり「流出した後」を想定して強度を決める必要があります。ログイン画面のロック機能に頼るのは危険です。

現実的な、パスワードの作り方と管理

覚える必要があるパスワードは3つだけにする

すべてのパスワードを覚えるのは不可能です。次の3つだけを強く・覚えられる形にして、残りはツールに任せます。

  1. パスワード管理ツールのマスターパスワード(これが破られると全部終わるので最重要)
  2. PC・スマホのログインパスワード
  3. メインのメールアカウント(パスワードリセットの起点になるため)

覚えられて強い作り方:パスフレーズ

関連のない単語をつなげる方法です。上のツールの「日本語系パスフレーズ」ボタンで生成できます。

たとえば Hoshizora-umibe-kazenooto-4821 は32文字あり、意味のある日本語の並びなので覚えやすい一方、英語の辞書攻撃では引っかかりません。意味のある文にしないことがポイントです(「関連のない単語」を選びます)。

絶対にやってはいけないこと

  • 使い回し…これが最大のリスク。強度より優先して直すべき点です
  • 名前・誕生日・電話番号・ペットの名前…SNSから推測されます
  • a→4、o→0 などの置き換えで安心する…攻撃ツールは標準で試します
  • 「サービス名+固定文字列」パターンamazon_taro123google_taro123)…1つ漏れると全部推測されます
  • ブラウザに保存したまま、PCにロックをかけない…物理的に触られた時点で全部見られます

パスワードより強い認証:2段階認証とパスキー

正直なところ、パスワードを強くするより2段階認証を有効にするほうが、防御力の向上は大きいです。方式によって強さが違うので、選べるなら下にいくほど安全です。

方式安全性弱点
SMSで受け取るコードSIMスワップ詐欺、SMS傍受に弱い。ないよりは大幅にマシ
認証アプリ(TOTP)偽サイトに自分でコードを入力してしまうと突破される
パスキー / FIDO2セキュリティキー偽サイトでは動作しない設計。フィッシングに原理的に強い

パスキーが使えるサービスでは、迷わずパスキーを使ってください。パスキーはドメインと紐づいて動作するため、見た目がそっくりな偽サイトでは認証情報が出てきません。「うっかり入力してしまう」という人的ミスを、仕組みで防げるのが決定的な違いです。

エントロピーの数字は、どう計算されているか

このツールが表示する「◯ビット」は、そのパスワードを総当たりで破るために、何通り試す必要があるかを対数で表したものです。計算は単純です。

手順内容
1使われている文字種から、1文字あたりの候補数を求める
2候補数を文字数だけ掛け合わせる(候補数の文字数乗)
3その値を2を底とする対数に直す=ビット数
文字種の組み合わせ1文字あたりの候補数1文字あたりのビット数
数字のみ10約3.3
英小文字のみ26約4.7
英大小文字52約5.7
英大小文字+数字62約5.95
英大小文字+数字+記号約94約6.55

ここから、文字数を1つ増やす効果が分かります。記号を含む場合、1文字増やすごとに約6.55ビット増えます。一方、英小文字だけの構成に記号を足しても、増えるのは1文字あたり約1.85ビットです。「1文字増やす」ほうが「文字種を増やす」より効くのは、この差によります。

この計算には前提があります。エントロピーは「完全にランダムに選ばれた場合」の値です。Password123! は計算上79ビットになりますが、実際には辞書の先頭で破られます。意味のある単語や規則的な並びを使った時点で、計算値は上限としての意味しか持ちません。だからこそ、生成は人ではなく乱数に任せるべきです。

突破時間の前提を、明示します

「◯年かかる」という表示は、置いた前提によって桁が変わります。当ツールが使っている前提を公開します。

攻撃の種類前提している速度成立する条件
オンライン攻撃1秒あたり10回程度ログイン画面に対して試す。試行回数制限があれば、さらに遅くなる
bcryptで保存された値への攻撃1秒あたり数万回サービス側の保存データが流出し、適切にハッシュ化されている場合
GPUによる高速な総当たり1秒あたり数百億回流出データがSHA-256などの高速な方式で保存されていた場合

つまり、同じパスワードでもサービス側の保存方式によって、安全な時間が万倍単位で変わります。利用者側からは保存方式を確認できません。したがって、「最悪の前提(GPU総当たり)でも十分な長さ」を選ぶのが現実的な判断になります。

なお、計算に使う速度は年々上がります。表示される年数は2026年時点の目安であり、将来はより短くなります。長めに見積もっておくのが安全です。

総当たりの前に、辞書が試される

攻撃側は、いきなり総当たりを始めません。成功率の高い順に試します。この順番を知ると、何を避けるべきかが分かります。

順番試すもの該当すると
1過去に流出したパスワードの一覧一瞬で破られる。使い回しが最も危険な理由
2よく使われるパスワードの上位リスト数秒
3辞書の単語+数字や記号の定番変形(a→@、o→0 など)数分〜数時間
4対象者に関係する語(名前、誕生日、ペット名、勤務先)狙い撃ちの場合に有効
5総当たりここまで来て初めて、長さが効いてくる

重要なのは、1〜4を回避して初めて、エントロピーの数字に意味が出るということです。強度の数字が高くても、流出リストに載っていれば即座に破られます。「どこにも使っていない、ランダムに生成した文字列」であることが前提条件です。

よくある質問

入力したパスワードは本当に送信されませんか?

されません。このページのJavaScriptはすべてブラウザ内で完結しており、通信を行うコードは含まれていません。ブラウザの開発者ツール(F12)のネットワークタブを開いた状態で入力すれば、通信が発生していないことをご自身で確認できます。それでも不安な場合は、実際のパスワードではなく「同じ長さ・同じ作り方の別の文字列」でお試しください。

辞書の単語をつなげた場合も正しく判定されますか?

ある程度は検出しますが、完全ではありません。このツールは英語の全単語辞書を持っているわけではないため、実在する英単語を並べたパスワードは、表示より実際の強度が低い場合があります(攻撃側は単語リストを使って「単語単位」で総当たりするためです)。上のツールの生成機能で作られる文字列は、この点を考慮して十分な長さを確保しています。

「非常に強い」と出れば安心ですか?

総当たり攻撃に対しては安心ですが、使い回していれば意味がありません。また、フィッシングサイトに自分で入力してしまえば強度は無関係です。強度・使い回し防止・2段階認証の3つをセットで考えてください。

定期的な変更は必要ですか?

不要です。現在の主要なガイドライン(米国NISTのSP 800-63など)では、定期変更はむしろ推奨されていません。強制的に変更させると、人は覚えやすい単純なパターン(末尾の数字を1ずつ増やすなど)に流れるためです。変更すべきなのは「流出が判明したとき」だけです。

パスワード管理ツールが破られたら全部終わりでは?

理屈のうえではそのとおりです。ただし現実には、使い回しによる被害のほうが桁違いに多いのが実情です。管理ツールを使ったうえでマスターパスワードを長くし、管理ツール自体にも2段階認証をかける。これが現実的な最適解です。

あわせて読みたい

あわせて使える無料ツール